Метод repeatCardPayment
Это старая версия API. Переходите на API ЮKassa.
 
Описание
Повтор платежа с использованием данных карты плательщика (при его согласии) для оплаты товаров и услуг магазина.
Для выполнения запросов на повтор платежа банковской картой необходимо подключение по HTTP-протоколу.
После подключения для магазина опции повторных платежей, в запросах проверки заказа (
checkOrder
) и уведомление о переводе (
paymentAviso
) будет передаваться параметр
rebillingOn
(
boolean
):
  • rebillingOn=true
    или
    rebillingOn=1
    : пользователь разрешил повторять платеж с его карты. Значение параметра
    invoceId
    такого платежа в дальнейшем следует использовать для повторных платежей.
  • rebillingOn=false
    или
    rebillingOn=0
    : оплата проходит как обычно, повторить ее не получится.
Если магазин подключает отложенные платежи и повторы платежей банковской картой, повторяемые платежи будут выполняться как отложенные платежи. Т.е. после запроса на повтор платежа банковской картой (
repeatCardPayment
) магазину необходимо выполнить запрос подтверждения (
confirmPayment
) или аннулирования отложенного
платежа
(cancelPayment).
 
Формат запроса
Адрес для вызова операции
https://shop.yookassa.ru/webservice/mws/api/repeatCardPayment
Параметры запроса
ПараметрТипОписание
clientOrderIdClientTransactionNumber
Уникальный идентификатор операции. Обеспечивает защиту от ошибочных повторов операций. Рекомендуемые значения: целое, положительное, линейно нарастающее десятичное число.
Если запрос отправлен с уже обработанным номером операции (
clientOrderId
) и остальные параметры запроса, кроме
requestDT
(дата и время запроса по часам магазина), совпадают с предыдущей попыткой, то ЮKassa вернет результат обработки ранее отправленного запроса.
Если запрос отправлен с уже обработанным номером операции (
clientOrderId
), а остальные параметры имеют отличные от первой попытки значения, то ЮKassa отвергнет такой запрос и вернет в ответе
status=3
,
error=405
.
invoiceIdlongНомер транзакции повторяемого перевода.
amountCurrencyAmountСумма, на которую необходимо провести платеж (валюта совпадает с валютой товара).
orderNumberstring
Номер заказа на стороне магазина (может отсутствовать).
Если магазин в своих запросах использует параметр
orderNumber
(номер заказа на стороне магазина), то значение данного параметра должно быть уникальным. Т.е. значение этого параметра в запросе на повтор платежа должно отличаться от значения
orderNumber
платежа, который нужно повторить.
cvvstringCVC/CVV2 код авторизации карты, может отсутствовать.
ym_merchant_receiptstring
Данные для формирования чека в формате JSON.
Параметр передается и является обязательным, если вы настроили взаимодействие со своей онлайн-кассой через ЮKassa и передаете в платежной форме данные для формирования чека.
Пример запроса
clientOrderId=123456789&invoiceId=2000000123&amount=10.00&cvv=643
 
Параметры для чека
Эти параметры нужны (и обязательно передаются), если вы настроили взаимодействие со своей онлайн-кассой через ЮKassa. См. Описание процесса оплаты с отправкой данных для чека
Параметры для чека нужно передавать, если:
  • меняется сумма платежа;
  • меняется состав заказа;
  • платеж, который нужно повторить, проводился без отправки чека.
В этом случае к запросу добавляется параметр
ym_merchant_receipt
, данные отправляются в формате JSON (так же, как в платежной форме).
В остальных случаях используются данные для чека, которые передавались при исходном платеже.
 
Формат ответа
В ответ приходят параметры, общие для всех типов запросов на исполнение финансовых операций.
Пример ответа
XML
<repeatCardPaymentResponse
         clientOrderId="123456789"
         status="0" error="0"
         processedDT="2011-07-02T20:38:01.000Z"
         techMessage=""
/>
 
Дополнительные параметры в уведомлениях
При выполнении запроса на повтор платежа (
repeatCardPayment
) в запросах проверки заказа (
checkOrder
) и уведомления о переводе (
paymentAviso
) придут дополнительные параметры.
ПараметрТипОписание
baseInvoiceIdlongЗначение параметра
invoiceId
платежа, который нужно повторить.
cdd_pan_maskstringМаска банковской карты плательщика, содержит 6 первых и 4 последние цифры номера карты в формате
XXXXXX|XXXX
, например
123456|7890
.
 
Что почитать еще
Сценарий повтора оплатыПравила обработки запросовКоды ошибокТипы данныхЗапрос уведомления об успешном платеже