Перейти к основному содержимому

Денежные переводы без открытия счета

В рамках данной функциональности физические лица могут осуществлять денежные переводы из России в зарубежные страны без открытия счета.

Страны, в которые можно осуществить перевод

СтранаКод страныСпособ переводаВалюта переводаОграничения
ТурцияTURНаличнымиДоллары США (USD)Доступные пункты выдачи в Турции
ТурцияTURПо номеру IBANТурецкие лиры (TRY)Без ограничений
КыргызстанKGZНа банковскую картуКыргызские сомы (KGS)Перевод возможен только на карты MBANK

В документации используются следующие определения:

  • Платежный партнер — организация, которая осуществляет прием и перевод/выдачу денежного перевода.
  • Отправитель — физическое лицо, которое совершает денежный перевод.
  • Получатель — физическое лицо, которое получает денежный перевод от Отправителя. При этом Получателем может быть сам Отправитель, когда перевод оказался неполученным или был отправлен самому себе.
  • Код перевода - контрольный номер перевода, получаемый от платежного партнера. Он необходим для получения денег.
  • Платеж (Payment) — транзакция приема перевода от Отправителя.
  • Выплата (Payout) — транзакция выдачи перевода Получателю.

Обратите внимание, что:

  • Денежные переводы доступны лицам, достигшим 18 лет.
  • При заполнении информации по Получателю указывайте данные так, как в паспорте, по которому он будет этот перевод получать (то есть скорее всего латиницей).
  • Для денежных переводов создаются мультисессии, в рамках которых проходят все операции. Одна мультисессия может объединять несколько операций, например, пополнение (списание с отправителя) и выплата (зачисление получателю).
к сведению

Для проведения рекламных акций возможно отклонение от курса валюты в меньшую сторону.

При проведении транзакции по промокурсу в аутентификации в X-PARTNER-PROJECT передается идентификатор (id) соответствующего промокурса.

Общий порядок проведения перевода

  1. Перед стартом перевода можно запросить курс по последней операции с помощью метода bpa/calculate.
  2. Для списания с банковской карты или выплаты на банковскую карту нужно провести токенизацию карты.
  3. Отправьте запрос на старт перевода с помощью метода bpa/session/multi/init/payment.
  4. Дождитесь вебхука ready_to_confirm с информацией о готовности провести операцию по указанному курсу. В ответе может присутствовать другая дополнительная информация.

    Если курс обмена валюты изменится после подтверждения платежа и до его подтверждением провайдером, транзакция будет отменена.

  5. У отправителя будут заморожены денежные средства для списания, необходимо подтвердить списание через 3DS.
  6. После получения вебхука ready_to_confirm необходимо подтвердить транзакцию методом session/confirm или отклонить ее методом session/cancel.
  7. Дождитесь вебхука action_required с ссылкой на прохождение 3DS, после чего произойдет списание денежных средств и их зачисление Получателю.
  8. Дождитесь вебхука payment_finished с подтверждением перевода.

Токенизация банковской карты

Чтобы передавать данные банковских карт Получателя и Отправителя в зашифрованном виде, можно настроить токенизацию на стороне Банка 131. Для этого подключите виджет токенизации и виджет платежной формы.

Стиль виджетов может быть настроен под ваше решение.

Полученный с помощью виджета токен можно сохранить для совершения будущих переводов как рекуррентный, чтобы не передавать каждый раз информацию о банковской карте.
Подробнее о переводах с рекуррентным токеном

Общая схема денежного перевода

Общая схема денежного перевода

Метод POST.../api/v1/bpa/calculate

Метод предназначен для конвертации валюты при проведении денежных переводов.

Конвертация проходит только из rub в другую валюту и из другой валюты в rub, поэтому в запросе в объекте amounts необходимо передать значение currency = rub в source или destination.

Конвертация может проходить по прямому или обратному курсу:

  • Прямой курс — укажите сумму перевода в рублях, чтобы рассчитать сумму к получению в целевой валюте.
  • Обратный курс — укажите сумму к получению в целевой валюте, чтобы рассчитать, сколько рублей нужно отправить.

Адрес для отправки запроса

/api/v1/bpa/calculate

Параметры запроса

НазваниеОбязательностьТип данныхОписание
amounts+objectСумма и валюта конвертации
  source+objectСумма и валюта списания с отправителя
    amount+numberЗначение в минорных единицах валюты (в копейках) для расчета прямого курса, или значение null для расчета обратного курса валюты
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub, try, uzs
  destination+objectСумма и валюта зачисления получателю
    amount+numberЗначение в минорных единицах валюты (в копейках) для расчета обратного курса, или значение null для расчета прямого курса валюты
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub, try, uzs
Примеры запросов
curl -X POST \
https://demo.bank131.ru/api/v1/bpa/calculate \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"amounts": {
"source": {
"amount": 357912,
"currency": "RUB"
},
"destination": {
"amount": null,
"currency": "TRY"
}
}
}

Параметры ответа

НазваниеОбязательностьТипОписание
amounts+objectРасчет суммы конвертации
  source+objectСумма и валюта списания с отправителя
    amount+numberСумма, рассчитанная в валюте плательщика (рублях)
    currency+stringКод валюты списания согласно ISO 4217. Регистр не важен. Варианты: rub
  destination+objectСумма и валюта зачисления получателю
    amount+numberСумма, рассчитанная к получению
    currency+stringКод валюты получения согласно ISO 4217. Регистр не важен. Варианты: try, uzs
  transfer_fee+objectКомиссия с отправителя за перевод
    amount+numberСумма комиссии, взимаемой с отправителя за осуществление перевода
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub
  sms_fee+objectКомиссия с отправителя за отправку СМС получателю
    amount+numberСумма комиссии за отправку СМС получателю
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub
  payment+objectИтоговая сумма к списанию с отправителя
    amount+numberФактическая сумма к списанию с отправителя с учетом всех комиссий. Представляет собой сумму source + transfer_fee + sms_fee
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub
exchanges+objectДанные о курсе конвертации
  source+objectПолученные в запросе сумма и валюта списания с отправителя
    amount+numberЗначение в минорных единицах валюты (в копейках) для расчета прямого курса, или значение null для расчета обратного курса валюты
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub, try, uzs
  destination+objectПолученные в запросе сумма и валюта зачисления получателю
    amount+numberЗначение в минорных единицах валюты (в копейках) для расчета обратного курса, или значение null для расчета прямого курса валюты
    currency+stringКод валюты согласно ISO 4217. Регистр не важен. Варианты: rub, try, uzs
  rate+objectКурс валюты
    fx_rate+numberЗначение курса валюты к рублю (валюты получения к валюте списания)
    quantity+numberКоличество единиц валюты. Для некоторых валют расчеты ведутся в десятках, сотнях или тысячах единиц, значения валют на текущий день доступны на сайте Банка России
error-objectОшибка
Примеры ответов
{
"amounts": {
"source": {
"amount": 357913,
"currency": "RUB"
},
"destination": {
"amount": 131426,
"currency": "TRY"
},
"transfer_fee": {
"amount": 0,
"currency": "RUB"
},
"sms_fee": {
"amount": 0,
"currency": "RUB"
},
"payment": {
"amount": 5400,
"currency": "RUB"
}
},
"exchanges": {
"source": {
"amount": 357912,
"currency": "RUB"
},
"destination": {
"amount": null,
"currency": "TRY"
},
"rate": {
"fx_rate": 2.7233,
"quantity": 1
}
}
}

Метод POST.../api/v1/bpa/session/multi/init/payment

Метод предназначен для старта трансграничного перевода.

Перевод может быть выполнен с карты на карту, по номеру IBAN, а также для выдачи наличных денег через банковского платежного агента.

Адрес для отправки запроса

/api/v1.1/bpa/session/multi/init/payment

Параметры запроса

НазваниеОбязательностьТип данныхОписание
payment_options-objectПараметры для проведения платежа
  return_url-stringURL, на который нужно перенаправить пользователя после проведения платежа. URL должен быть валидным
  recurrent-boolНужно ли провести платеж с помощью сохраненного токена
payment_details_multi+arrayСпособ проведения платежа
  type+stringТип способа оплаты. Возможные варианты: card
  card+objectДанные банковской карты
    type+stringТип передачи данных карты. Возможные варианты: tokenized_card
    tokenized_card+objectТокенизированный номер карты
      token+stringТокен
    recurrent-objectДанные для повтора перевода по ранее сохраненному токену
      token-stringТокен
      initiator-stringВид рекуррентного платежа: client — платеж CIT
payout_details_multi+arrayСпособ получения перевода
  type+stringТип способа получения перевода. Возможные варианты:
- card — для получения на банковскую карту и выдачи наличных с карты,
- bank_account — для получения на IBAN,
- moneysend — для получения наличными
  card- (обязателен для type = card)objectДанные банковской карты
    type-stringТип передачи данных карты. Возможные варианты: tokenized_card
    tokenized_card-objectТокенизированный номер карты
      token-stringТокен
    recurrent-objectДанные для повтора перевода по ранее сохраненному токену
      token-stringТокен
      initiator-stringВид рекуррентного платежа: client — платеж CIT
    bank_account- (обязателен для type = bank_account)objectБанковский счет получателя перевода
      iban- (обязателен для выплаты по IBAN)objectIBAN получателя перевода
        account+stringНомер IBAN получателя
    moneysend- (обязателен для type = moneysend)objectОбъект передается при переводе наличными, всегда пустой: {}
    system_type- (обязателен для выплаты по IBAN)stringВозможные значения: iban
    country+stringСтрана получения выплаты по стандарту ISO 3166-1 alpha-3
participant_details+objectИнформация об отправителе и получателе
  sender+objectИнформация об отправителе
    citizenship_country_iso3+stringСтрана гражданства отправителя по стандарту ISO 3166-1 alpha-3
    first_name+stringИмя
    last_name+stringФамилия
    middle_name-stringОтчество
    address+objectАдрес отправителя
      structured_address+objectАдрес отправителя в структурированном виде
        country_iso3+stringСтрана (ISO 3166-1 alpha-3)
        postal_code-stringПочтовый индекс места регистрации отправителя
        state-stringРегион или район регистрации отправителя
        city+stringНаселенный пункт регистрации отправителя
        street-stringНазвание улицы места регистрации отправителя
        building+stringНомер дома места регистрации отправителя
        flat-stringКвартира места регистрации отправителя
    tax_reference-string12-значный ИНН отправителя
    date_of_birth+stringДата рождения отправителя в формате ГГГГ-ММ-ДД. Убедитесь, что возраст отправителя 18+
    contacts-objectКонтакты отправителя
      email-stringЭлектронная почта
      phone-objectДанные телефона
        full_number+stringПолный номер телефона в формате +<код страны><номер>
        country_iso3+stringКод страны, к которой относится номер телефона (ISO 3166-1 alpha-3)
        operator_code+stringКод оператора телефонного номера
        short_number+stringНомер телефона без кода оператора
    identity_document- (обязателен, если не передается documents_foreigner)objectДанные документа, удостоверяющего личность отправителя
      id_type+stringТип документа, удостоверяющего личность отправителя. Возможное значение: Паспорт гражданина Российской Федерации
      id_number+stringСерия и номер документа, удостоверяющего личность отправителя (без пробелов)
      issue_date+stringДата выдачи документа, удостоверяющего личность отправителя, в формате ГГГГ-ММ-ДД
      division_code-stringКод подразделения, выдавшего документ, удостоверяющий личность отправителя. Обязательно для заполнения при наличии в документе
      issued_by-stringНазвание подразделения, выдавшего документ, удостоверяющий личность отправителя. Обязательно для заполнения при наличии в документе
    documents_foreigner-objectПараметры документа отправителя-нерезидента. Обязательно для заполнения, если отправитель является иностранным гражданином
      id_number+stringСерия и номер документа, удостоверяющего личность отправителя (без пробелов)
      issue_date+stringДата начала срока действия документа, удостоверяющего личность отправителя-нерезидента, в формате ГГГГ-ММ-ДД
      id_expiration_date-stringДата окончания срока действия документа, удостоверяющего личность отправителя-нерезидента, в формате ГГГГ-ММ-ДД
  recipient+objectИнформация о получателе
    first_name- (обязательно для перевода по IBAN и наличными)stringИмя
    last_name- (обязательно для перевода по IBAN и наличными)stringФамилия
    middle_name-stringОтчество
    citizenship_country_iso3+stringСтрана гражданства получателя по стандарту ISO 3166-1 alpha-3
    date_of_birth-stringДата рождения получателя в формате ГГГГ-ММ-ДД. Убедитесь, что возраст получателя 18+
    contacts-objectКонтакты получателя
      email-stringЭлектронная почта
      phone-objectДанные телефона
        full_number+stringПолный номер телефона в формате +<код страны><номер>
source_of_money-objectИсточник поступления средств отправителя
  source+stringИсточник поступления средств отправителя
  description-stringДополнительная информация
calculate+objectИнформация о конвертации
  amounts+objectСумма и валюта конвертации
    source+objectСумма и валюта списания с отправителя
      amount+numberЗначение в минорных единицах валюты (в копейках) для расчета курса конвертации
      currency+stringКод валюты согласно ISO 4217. Регистр не важен
    destination+objectСумма и валюта зачисления получателю
      amount+numberЗначение в минорных единицах валюты (в копейках) для расчета курса конвертации
      currency+stringКод валюты согласно ISO 4217. Регистр не важен
Примеры запросов
curl -X POST \
https://demo.bank131.ru/api/v1.1/bpa/session/multi/init/payment \
-H 'Content-Type: application/json' \
-H 'X-PARTNER-PROJECT: your_project_name' \
-H 'X-PARTNER-SIGN: signature' \
-d '{
"payment_details_multi": [
{
"type": "card",
"card": {
"type": "tokenized_card",
"tokenized_card": {
"token": "6e9f60d7cb764803e153a2fdb04e5d17c"
}
}
}
],
"payout_details_multi": [
{
"type": "bank_account",
"bank_account": {
"iban": {
"account": "TR 33 0006 1005 1978 6457 8413 26"
}
},
"system_type": "iban",
"country": "TUR"
}
],
"calculate": {
"amounts": {
"source": {
"amount": 357912,
"currency": "RUB"
},
"destination": {
"amount": null,
"currency": "TRY"
}
}
},
"participant_details": {
"sender": {
"citizenship_country_iso3": "RUS",
"first_name": "Ольга",
"last_name": "Пахмутова",
"middle_name": "Семёновна",
"address": {
"structured_address": {
"country_iso3": "RUS",
"postal_code": "192300",
"state": "Новосибирская",
"city": "Уренгой",
"street": "Конаковская",
"building": "1",
"flat": "31"
}
},
"date_of_birth": "1998-03-15",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "8008 579120",
"issue_date": "2020-03-01",
"division_code": "213-432",
"issued_by": "ОВД ПО Кировскому району"
},
"contacts": {
"phone": {
"full_number": "+79376151530"
}
}
},
"recipient": {
"citizenship_country_iso3": "TUR",
"first_name": "Yusuf",
"last_name": "Bayındır",
}
}
}'

Параметры ответа

НазваниеОбязательностьТипОписание
status+stringСтатус. Возможные варианты: error, ok
session+objectПлатежная сессия
error-objectОшибка
Примеры ответов
{
"status": "ok",
"session": {
"id": "ps_592245",
"status": "in_progress",
"created_at": "2022-11-15T15:38:50.255803Z",
"updated_at": "2022-11-15T15:38:50.336303Z",
"acquiring_payments": [
{
"id": "pm_296251",
"status": "in_progress",
"created_at": "2022-11-15T15:38:50.357833Z",
"payment_details": {
"type": "card",
"card": {
"type": "tokenized_card",
"tokenized_card": {
"token": "6e9f60d7cb764803e153a2fdb04e5d17c"
}
}
},
"calculate": {
"amounts": {
"source": {
"amount": null,
"currency": "RUB"
},
"destination": {
"amount": 46943404,
"currency": "KGS"
}
}
},
"participant_details": {
"sender": {
"citizenship_country_iso3": "RUS",
"first_name": "Ольга",
"last_name": "Пахмутова",
"middle_name": "Семёновна",
"address": {
"structured_address": {
"country_iso3": "RUS",
"postal_code": "192300",
"state": "Новосибирская",
"city": "Уренгой",
"street": "Конаковская",
"building": "1",
"flat": "31"
}
},
"date_of_birth": "1998-03-15",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "8008 579120",
"issue_date": "2020-03-01",
"division_code": "213-432",
"issued_by": "ОВД ПО Кировскому району"
},
"contacts": {
"phone": {
"full_number": "+79376151530"
}
}
},
"recipient": {
"citizenship_country_iso3": "TUR",
"first_name": "Yusuf",
"last_name": "Bayındır"
}
}
}
],
"payments": [
{
"id": "po_2040",
"status": "in_progress",
"created_at": "2024-07-02T12:13:24.894376Z",
"payment_method": {
"type": "card",
"card": {
"type": "tokenized_card",
"tokenized_card": {
"token": "839d41cf716afcb01d581d2827e4472"
},
},
"country": "TUR"
},
"calculate": {
"amounts": {
"source": {
"amount": null,
"currency": "RUB"
},
"destination": {
"amount": 46943404,
"currency": "KGS"
}
}
},
"participant_details": {
"sender": {
"citizenship_country_iso3": "RUS",
"first_name": "Ольга",
"last_name": "Пахмутова",
"middle_name": "Семёновна",
"address": {
"structured_address": {
"country_iso3": "RUS",
"postal_code": "192300",
"state": "Новосибирская",
"city": "Уренгой",
"street": "Конаковская",
"building": "1",
"flat": "31"
}
},
"date_of_birth": "1998-03-15",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "8008 579120",
"issue_date": "2020-03-01",
"division_code": "213-432",
"issued_by": "ОВД ПО Кировскому району"
},
"contacts": {
"phone": {
"full_number": "+79376151530"
}
}
},
"recipient": {
"citizenship_country_iso3": "TUR",
"first_name": "Yusuf",
"last_name": "Bayındır"
}
}
}
],
}
}

Вебхук ready_to_confirm

Банк 131 отправляет этот вебхук, когда готов провести транзакцию и ожидает либо ее подтверждение методом session/confirm, либо отмену методом session/cancel. В вебхуке в объекте confirm_information будет содержаться подробная информация о сумме к выплате, комиссии за транзакцию и курсе конвертации.

"confirm_information"

Объект содержит следующую информацию:
● Source — сумма в валюте принятых средств
● Destination — сумма и валюта к выплате
● Fx_rate — курс конвертации
● Commission — комиссия с отправителя, взимается дополнительно к Source

Объект confirm_information нужно будет передать в методе session/confirm.

Также в вебхуке будет содержаться параметр tcn_code_encoded, который является контрольным номером перевода. Его необходимо сообщить Получателю, так как без него будет невозможно получить перевод. tcn_code_encoded обернут в BASE64, его необходимо декодировать.

Пример вебхука
{
"type": "ready_to_confirm",
"session": {
"id": "ps_1",
"status": "in_progress",
"created_at": "2022-11-15T13:22:31.847352Z",
"updated_at": "2022-11-15T13:22:32.638464Z",
"acquiring_payments": [
{
"id": "pm_1",
"status": "pending",
"created_at": "2022-11-15T13:22:32.132993Z",
"payment_details": {
"type": "moneysend",
"moneysend": {}
},
"amount_details": {
"amount": 9782,
"currency": "RUB"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanov Ivanovich",
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"tax_reference": "123456789012",
"country_iso3": "RUS",
"city": "Kazan",
"postal_code": "420000",
"building": "1",
"date_of_birth": "2008-01-01",
"street": "Nerkasova",
"flat": "131",
"state": "New York",
"description": "salary transfers",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "123456789",
"issue_date": "2020-01-01",
"division_code": "165-065",
"issued_by": "OVD Kazani",
"id_expiration_date": "2030-01-01"
},
"citizenship_country_iso3": "AUS",
"documents_foreigner": {
"id_type": "Виза",
"issue_date": "2020-01-01",
"issued_by": "OVD Kazani",
"id_expiration_date": "2030-01-01"
},
"service_point": {
"id": "1",
"name": "point_on_lenina",
"country_iso3": "RUS",
"state": "Moscow",
"city": "Moscow",
"oktmo": "36634436111",
"street": "lenin avenue",
"house": "1",
"terminal_id": "123124"
},
"source_of_money": "salary"
},
"recipient": {
"full_name": "Ivan Sidorov Ivanovich",
"first_name": "Ivan",
"last_name": "Sidorov",
"middle_name": "Ivanovich",
"date_of_birth": "2008-11-08",
"currency": "TRY",
"contacts": {
"phone": {
"full_number": "+79377654321",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "7654321"
},
"email": "test@test.com"
}
}
}
}
],
"next_action": "confirm"
},
"confirm_information": {
"exchanges": [
{
"id": "pm_1",
"source": {
"amount": 1000,
"currency": "RUB"
},
"destination": {
"amount": 300,
"currency": "TRY"
},
"fx_rate": "0.3000",
"commission": {
"amount": 100,
"currency": "RUB"
}
}
]
},
"details": {
"tcn_code_encoded": "NTkyMTc0LTY5NDEyMjEx"
}
}

Метод POST.../api/v1/session/confirm

Метод предназначен для подтверждения платежа после получения вебхука ready_to_confirm и получения подтверждения от Отправителя согласия с суммой зачисления, курсом конвертации и комиссией. В методе нужно передать объект confirm_information в том же виде, в котором он передается в вебхуке ready_to_confirm.

Параметры запроса

НазваниеОбязательностьТип данныхОписание
session_id+stringID сессии из ответа на инициацию транзакции
confirm_information+objectОбъект confirm_information из вебхука ready_to confirm без изменений
  exchanges+objectОбъект с дополнительными данными
    id+stringID транзакции
    source+objectПараметры приема средств
      amount+intСумма в минорных значениях (копейках)
      currency+stringВалюта
    destination+objectПараметры выдачи средств
      amount+intСумма в минорных значениях (копейках)
      currency+stringВалюта
    fx_rate+stringКурс конвертации
    commission+objectПараметры комиссии
      amount+intСумма в минорных значениях (копейках)
      currency+stringВалюта
Пример запроса
{
"session_id": "ps_1",
"confirm_information": {
"exchanges": [
{
"id": "pm_1",
"source": {
"amount": 1000,
"currency": "RUB"
},
"destination": {
"amount": 300,
"currency": "TRY"
},
"fx_rate": "0.3000",
"commission": {
"amount": 100,
"currency": "RUB"
}
}
]
}
}

Параметры ответа

Содержимое ответа совпадает с содержанием ответа на запрос bpa/session/init/payment.

Пример ответа
{
"status": "ok",
"session": {
"id": "ps_1634163",
"status": "in_progress",
"created_at": "2023-12-20T10:08:08.807876Z",
"updated_at": "2023-12-20T10:08:40.947967Z",
"acquiring_payments": [
{
"id": "pm_1062803",
"status": "in_progress",
"created_at": "2023-12-20T10:08:08.924899Z",
"customer": {
"reference": "customer_reference"
},
"payment_details": {
"type": "moneysend",
"moneysend": {}
},
"amount_details": {
"amount": 45000,
"currency": "RUB"
},
"participant_details": {
"sender": {
"full_name": "Gabriil Akulov",
"first_name": "Gabriil",
"last_name": "Akulov",
"middle_name": "",
"country_iso3": "RUS",
"city": "Кашира",
"postal_code": "761290",
"building": "39",
"date_of_birth": "1998-03-15",
"street": "наб. Будапештсткая",
"flat": "1",
"state": "Свердловская область",
"description": "описание описания",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "7012 244588",
"issue_date": "2020-03-01",
"division_code": "",
"issued_by": "ОВД ПО Кировскому району"
},
"citizenship_country_iso3": "RUS",
"service_point": {
"id": "1",
"name": "точка на Ленина",
"country_iso3": "RUS",
"state": "Москва",
"city": "Москва",
"street": "Ленина",
"house": "1",
"oktmo": "36634436111",
"terminal_id": "345"
},
"source_of_money": "зарплата",
"contacts": {
"phone": {
"full_number": "+79376151530",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "6151530"
}
}
},
"recipient": {
"full_name": "samidov burac",
"first_name": "samidov",
"last_name": "burac",
"middle_name": "",
"date_of_birth": "2005-03-15",
"currency": "TRY",
"contacts": {
"phone": {
"full_number": "+43523452345",
"country_iso3": "TUR",
"operator_code": "352",
"short_number": "3452345"
}
}
}
}
}
],
"actions": {
"confirm": "2023-12-20T10:09:01.904212Z"
}
}
}

Вебхук action_required

Банк ждет дополнительных действий от вас или ваших пользователей.

Банк отправляет вам этот вебхук в случае, когда для продолжения операции вам или вашим пользователям нужно совершить какие-то действия. Например, пользователю необходимо пройти аутентификацию по 3D Secure при платеже банковской картой.

Подробнее о вебхуке

Метод POST../api/v1/session/cancel

Метод предназначен для отмены платежа.

Параметры запроса

НазваниеОбязательностьТип данныхОписание
session_id+stringID сессии из ответа на инициацию транзакции
Пример запроса
"session_id": "ps_1"

Параметры ответа

Содержимое ответа совпадает с содержанием ответа на запрос bpa/session/init/payment.

Пример ответа
{
"status": "ok",
"session": {
"id": "ps_1634164",
"status": "in_progress",
"created_at": "2023-12-20T10:09:30.979373Z",
"updated_at": "2023-12-20T10:09:47.084110Z",
"acquiring_payments": [
{
"id": "pm_1062804",
"status": "pending",
"created_at": "2023-12-20T10:09:31.100292Z",
"customer": {
"reference": "customer_reference"
},
"payment_details": {
"type": "moneysend",
"moneysend": {}
},
"amount_details": {
"amount": 45000,
"currency": "RUB"
},
"participant_details": {
"sender": {
"full_name": "Gabriil Akulov",
"first_name": "Gabriil",
"last_name": "Akulov",
"middle_name": "",
"country_iso3": "RUS",
"city": "Кашира",
"postal_code": "761290",
"building": "39",
"date_of_birth": "1998-03-15",
"street": "наб. Будапештсткая",
"flat": "1",
"state": "Свердловская область",
"description": "описание описания",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "7012 244588",
"issue_date": "2020-03-01",
"division_code": "",
"issued_by": "ОВД ПО Кировскому району"
},
"citizenship_country_iso3": "RUS",
"service_point": {
"id": "1",
"name": "точка на Ленина",
"country_iso3": "RUS",
"state": "Москва",
"city": "Москва",
"street": "Ленина",
"house": "1",
"oktmo": "36634436111",
"terminal_id": "345"
},
"source_of_money": "зарплата",
"contacts": {
"phone": {
"full_number": "+79376151530",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "6151530"
}
}
},
"recipient": {
"full_name": "samidov burac",
"first_name": "samidov",
"last_name": "burac",
"middle_name": "",
"date_of_birth": "2005-03-15",
"currency": "TRY",
"contacts": {
"phone": {
"full_number": "+43523452345",
"country_iso3": "TUR",
"operator_code": "352",
"short_number": "3452345"
}
}
}
}
}
]
}
}

Метод POST../api/v1/session/status

При необходимости платежный партнер может использовать данный метод для получения информации по сессии.
Подробнее о платежной сессии.

Возможные статусы сессии

Статусы сессии

Параметры запроса

НазваниеОбязательностьТип данныхОписание
session_id+stringID сессии из ответа на инициацию транзакции
Пример запроса
"session_id": "ps_1"
Пример ответа
{
"status": "ok",
"session": {
"id": "ps_1",
"status": "in_progress",
"created_at": "2022-11-15T15:38:50.255803Z",
"updated_at": "2022-11-15T15:38:50.336303Z",
"acquiring_payments": [
{
"id": "pm_1",
"status": "in_progress",
"created_at": "2022-11-15T15:38:50.357833Z",
"payment_details": {
"type": "moneysend",
"moneysend": {}
},
"amount_details": {
"amount": 1000,
"currency": "rub"
},
"participant_details": {
"sender": {
"full_name": "Ivan Ivanov Ivanovich",
"first_name": "Ivan",
"last_name": "Ivanov",
"middle_name": "Ivanovich",
"tax_reference": "123456789012",
"country_iso3": "RUS",
"city": "Kazan",
"postal_code": "420000",
"building": "1",
"date_of_birth": "2008-01-01",
"contacts": {
"phone": {
"full_number": "+79371234567",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "1234567"
},
"email": "test@test.com"
},
"street": "Nerkasova",
"flat": "131",
"state": "New York",
"description": "salary transfers",
"identity_document": {
"id_type": "Паспорт гражданина Российской Федерации",
"id_number": "123456789",
"issue_date": "2020-01-01",
"division_code": "165-065",
"issued_by": "OVD Kazani",
"id_expiration_date": "2030-01-01"
},
"citizenship_country_iso3": "AUS",
"documents_foreigner": {
"id_type": "Виза",
"issue_date": "2020-01-01",
"issued_by": "OVD Kazani",
"id_expiration_date": "2030-01-01"
},
"service_point": {
"id": "1",
"name": "point_on_lenina",
"country_iso3": "RUS",
"state": "Moscow",
"city": "Moscow",
"oktmo": "36634436111",
"street": "Lenin avenue",
"house": "1",
"terminal_id": "123124"
},
"source_of_money": "salary"
},
"recipient": {
"full_name": "Ivan Sidorov Ivanovich",
"first_name": "Ivan",
"last_name": "Sidorov",
"middle_name": "Ivanovich",
"date_of_birth": "2008-11-08",
"currency": "TRY",
"contacts": {
"phone": {
"full_number": "+79377654321",
"country_iso3": "RUS",
"operator_code": "937",
"short_number": "7654321"
},
"email": "test@test.com"
}
}
}
}
]
}
}

Вебхук payment_finished

Банк отправляет этот вебхук, когда завершает транзакцию. В теле вебхука приходят все параметры транзакции, в том числе ее статус (в поле status). Если статус сессии succeeded, это значит, что оплата прошла успешно.
Подробнее о вебхуке