Инструкции
Помощь
Подключить ЮKassa
Возвраты
С помощью API ЮKassa можно возвращать успешные платежи. Комиссии за проведение возврата нет. Комиссия ЮKassa за проведение платежа не возвращается.
Особенности
Вернуть деньги через ЮKassa можно только на то платежное средство, которое использовалось для оплаты. Например, если при платеже деньги списали с карты 5555555555554477, то сделать возврат можно только на нее.
Возврат платежа может быть полным или частичным. В первом случае вы возвращаете принятый платеж целиком. Во втором — часть от суммы платежа, например если хотите сделать возврат одного товара, а не всей покупки. Частичный возврат доступен не для всех способов оплаты.
Перед возвратом платежа проверьте, что:
  • платеж со способом оплаты sberbank создан менее одного года назад, любым другим способом — менее трех лет назад;
  • платеж успешно завершен и находится в статусе succeeded;
  • способ оплаты поддерживает нужный вам тип возврата (полный, частичный).
Полный возврат
Чтобы сделать полный возврат, в запросе на создание возврата  передайте уникальный идентификатор (payment_id) и сумму (amount) возвращаемого платежа.
Пример запроса на создание возврата
cURL
PHP
Python
curl https://api.yookassa.ru/v3/refunds \
  -X POST \
  -u <Идентификатор магазина>:<Секретный ключ> \
  -H 'Idempotence-Key: <Ключ идемпотентности>' \
  -H 'Content-Type: application/json' \
  -d '{
        "amount": {
          "value": "2.00",
          "currency": "RUB"
        },
        "payment_id": "21740069-000f-50be-b000-0486ffbf45b0"
      }'
Пример тела ответа
JSON
  {
    "id": "216749f7-0016-50be-b000-078d43a63ae4",
    "status": "succeeded",
    "amount": {
      "value": "2.00",
      "currency": "RUB"
    },
    "created_at": "2017-10-04T19:27:51.407Z",
    "payment_id": "21740069-000f-50be-b000-0486ffbf45b0"
  }
Частичный возврат
Частичный возврат создается аналогично полному, только в параметре amount нужно передать ту часть от суммы принятого платежа, которую вы хотите вернуть. Вы можете сделать сколько угодно частичных возвратов, если:
  • сумма всех частичных возвратов не превышает размер платежа;
  • сумма возврата больше 1 рубля;
  • сумма остатка больше 1 рубля.
Неуспешные возвраты
В процессе возврата что-то может пойти не так. Например, может не хватать денег для возврата. В этом случае возврат будет отменен и перейдет в статус canceled.
Чтобы вы могли лучше понимать, что произошло и что с этим делать, ЮKassa пришлет в объекте возврата  комментарий к отмене возврата (cancellation_details). В нём будут указаны инициатор и причина отмены возврата. Вы можете использовать эти данные для анализа и решения проблем, вывода сообщений пользователю и любых других целей.
Пример объекта возврата в статусе canceled
JSON
  {
    "id": "216749f7-0016-50be-b000-078d43a63ae4",
    "status": "canceled",
    "amount": {
      "value": "2.00",
      "currency": "RUB"
    },
    "created_at": "2017-10-04T19:27:51.407Z",
    "payment_id": "21740069-000f-50be-b000-0486ffbf45b0",
    "cancellation_details": {
        "party": "yoo_money",
        "reason": "insufficient_funds"
    }
  }
Инициаторы отмены возврата
Инициатор отмены возвращается в параметре party объекта cancellation_details.
ЗначениеОписание
yoo_moneyЮKassa
refund_networkЛюбые участники процесса возврата, кроме ЮKassa и вас (например, эмитент банковской карты)
Причины отмены возврата
Причина отмены возвращается в параметре reason объекта cancellation_details.
ЗначениеОписание
insufficient_funds
Не хватает денег, чтобы сделать возврат: сумма платежей, которые вы получили в день возврата, меньше, чем сам возврат, или есть задолженность. Что делать в этом случае
general_decline
Причина не детализирована. Для уточнения подробностей обратитесь в техническую поддержку.
rejected_by_payee
Эмитент платежного средства отклонил возврат по неизвестным причинам. Предложите пользователю обратиться к эмитенту для уточнения подробностей или договоритесь с пользователем о том, чтобы вернуть ему деньги напрямую, не через ЮKassa.
yoo_money_account_closed
Пользователь закрыл кошелек ЮMoney, на который вы пытаетесь вернуть платеж. Сделать возврат через ЮKassa нельзя. Договоритесь с пользователем напрямую, каким способом вы вернете ему деньги.
Что почитать еще
Ежесуточные реестрыПроведение платежейОтправка чеков в налоговуюСпособы оплаты