Создание запроса на выплату
/withdrawalКак использовать запрос
1. Укажите реквизиты получателя
Выберите пример /withdrawal для подключённого способа выплаты. Передайте новый order, сумму, валюту и обязательные поля получателя.
2. Выполните следующий шаг
Обработайте withdrawal_request.redirect, если он получен. Для продолжения используйте полученные url, method и form_data.
3. Подтвердите двухстадийную выплату
В двухстадийном режиме подтвердите созданную выплату через /withdrawal/submit или отмените её через /withdrawal/cancel до обработки.
4. Подтвердите итоговый статус
Проверьте /withdrawal_request по id или order либо обработайте webhook выплаты с проверкой подписи. Проверяйте поля ответа вместе с HTTP-статусом.
https://secure-api.404stage.com/withdrawalПрямой запрос к APIЗапрос
Заголовки
Accept: application/json · Content-Type: application/jsonУкажите свои реквизиты и подпись. Запрос отправляется на адрес выше.
Ответ
Запрос выполнен; проверяйте статус операции в ответе.
{
"status": "success",
"withdrawal_request": {
"account_id": "27",
"amount": "0.0000",
"created_at": "2023-12-28T11:01:24.167742+03:00",
"id": "853",
"merchant_id": "1",
"parts": [],
"redirect": {},
"requested_amount": "100.1200",
"status": "new",
"to_masked_pan": "411111XXXXXX1111"
}
}Поля выбранного запроса17
amountstringСумма выплаты; передайте amount или requested_amount.
currencystring · обязательноеКод валюты выплаты.
customerstringУникальный идентификатор плательщика в системе мерчанта.
endpoint_idstringID платёжного эндпоинта; передайте endpoint_id или product_id.
merchant_idstring · обязательноеID мерчанта, выданный при подключении.
notification_urlstringURL мерчанта для уведомлений о статусе выплаты.
orderstring · обязательноеИдентификатор выплаты в системе мерчанта.
payment_methodstringСпособ выплаты, настроенный для эндпоинта.
phone_numberstringТелефон получателя для выплаты по номеру телефона.
receiver_account_numberstringНомер банковского счёта получателя.
receiver_bank_namestringНазвание банка получателя.
receiver_branch_codestringКод отделения банка получателя.
receiver_countrystringСтрана получателя.
receiver_emailstringEmail получателя.
receiver_first_namestringИмя получателя.
receiver_last_namestringФамилия получателя.
signaturestring · обязательноеПодпись запроса; рассчитывается по правилам раздела о подписи запросов.
Описание и правила метода
Создаёт выплату по токену карты, PAN, номеру телефона (payment_method=spb для СБП) или банковским реквизитам. Доступные способы зависят от вашего endpoint.
Примеры выплат на карту, SEPA и FPS
Для этих сценариев передайте amount, currency, новый order, merchant_id, подключённый endpoint_id, customer, notification_url и signature, а также реквизиты из таблицы. Выберите соответствующий именованный пример запроса.
| Способ | Валюта | payment_method | Реквизиты для этого сценария |
|---|---|---|---|
| Карта (Host2Host) | Валюта, доступная endpoint | Не передаётся | pan, receiver_first_name, receiver_last_name |
| SEPA | EUR | sepa | receiver_iban, receiver_first_name, receiver_last_name, receiver_country, receiver_city, receiver_address, receiver_postalcode |
| Faster Payments (Великобритания) | GBP | fps | receiver_account_number, receiver_sort_code, receiver_first_name, receiver_last_name |
В этих сценариях передавайте имена и адресные данные получателя латиницей. Для SEPA используйте код страны ISO 3166-1 alpha-2. Для FPS передавайте номер счёта и шестизначный sort code строками, сохраняя начальные нули. Это требования конкретных способов выплаты: поле, необязательное в общей схеме API, может требоваться подключённым способом.
status: "success" подтверждает создание выплаты, а не отправку средств. Проверяйте withdrawal_request.status через /withdrawal_request или webhook с проверенной подписью: done означает завершение, rejected - отклонение. Для выплат без карты, в том числе SEPA и FPS, to_masked_pan в ответе и masked_pan в webhook пустые.
В двухстадийном режиме сначала создайте выплату, затем вызовите /withdrawal/submit для обработки или /withdrawal/cancel для возврата зарезервированных средств.
В notification_url укажите адрес вашего webhook для уведомлений о выплате. Если ответ содержит withdrawal_request.redirect.url, перенаправьте клиента с указанными method и form_data.
Передавайте JSON в теле запроса (Content-Type: application/json). Рассчитывайте signature по общим правилам подписи для пути URL этого метода. Подписи в примерах — заполнители: замените реквизиты доступа и URL, укажите новый order для новой выплаты и пересчитайте подпись по окончательному телу запроса.
Все параметры и схемы
Свернуть схемуapplication/json- body
Создание запроса на выплату. Обязательные реквизиты получателя зависят от способа выплаты.
amount?|||Сумма выплаты; передайте amount или requested_amount.
card_token?|Токен сохранённой карты для оплаты или выплаты.
currency*stringКод валюты выплаты.
custom_data?|Данные мерчанта в виде JSON-объекта; не показываются клиенту.
customer?|Уникальный идентификатор плательщика в системе мерчанта.
customer_card_id?||Идентификатор сохранённой карты клиента.
customer_id?||ID плательщика, присвоенный платёжной платформой.
customer_ip?||IP-адрес клиента.
description?|Описание или дополнительные сведения о платеже от мерчанта.
endpoint_id?||ID платёжного эндпоинта; передайте endpoint_id или product_id.
expire_month?|Месяц окончания действия карты строкой, например 12.
expire_year?|Год окончания действия карты: две цифры, например 29.
first_name?|Имя получателя.
language?stringЯзык интерфейса для плательщика.
"ru"last_name?|Фамилия получателя.
merchant_id*|ID мерчанта, выданный при подключении.
notification_url?|URL мерчанта для уведомлений о статусе выплаты.
order*stringИдентификатор выплаты в системе мерчанта.
pan?|Номер карты получателя для выплаты по номеру карты.
payment_method?|Способ выплаты, настроенный для эндпоинта.
phone_number?|Телефон получателя для выплаты по номеру телефона.
product_id?||ID платёжного эндпоинта; передайте product_id или endpoint_id.
receiver_account_number?|Номер банковского счёта получателя.
receiver_address?|Адрес получателя, если требуется способом оплаты.
receiver_bank_bik?|БИК банка получателя.
receiver_bank_id?||Идентификатор банка получателя.
receiver_bank_name?|Название банка получателя.
receiver_bank_name_internal?|Название или код банка, согласованный для выбранного способа выплаты.
receiver_birthdate?|Дата рождения получателя.
receiver_branch_code?|Код отделения банка получателя.
receiver_branch_name?|Название отделения банка получателя.
receiver_city?|Город получателя.
receiver_company_name?|Название компании получателя.
receiver_country?|Страна получателя.
receiver_email?|Email получателя.
receiver_first_name?|Имя получателя.
receiver_iban?|IBAN получателя для выплаты по IBAN.
receiver_id_number?|Номер удостоверяющего личность документа получателя.
receiver_ifsc_code?|IFSC-код банка получателя для платежей в Индии.
receiver_last_name?|Фамилия получателя.
receiver_messenger?|Контакт получателя в мессенджере, если требуется способом оплаты.
receiver_middle_name?|Отчество получателя.
receiver_network?|Сеть получателя, необходимая выбранному способу выплаты.
receiver_postalcode?|Почтовый индекс получателя.
receiver_receive_asap?|Запрос получения средств как можно скорее, если поддерживается способом оплаты.
receiver_receive_time?|Предпочтительное время получения средств, если поддерживается.
receiver_sort_code?|Sort code банка получателя для выплат в Великобритании.
receiver_state?|Штат или область получателя.
receiver_tax_id?|Налоговый идентификатор получателя.
receiver_username?|Имя пользователя получателя для способов оплаты по логину.
receiver_verification_code?|Код подтверждения получателя, если требуется способом оплаты.
recurrent_id?|Идентификатор рекуррентного платежа, если используется для выплаты.
requested_amount?|Запрошенная сумма выплаты; передайте amount или requested_amount.
security_question?|Секретный вопрос для перевода без автоматического зачисления.
security_question_answer?|Ответ на security_question.
sender_account_number?|Номер банковского счёта отправителя.
sender_address?|Адрес отправителя.
sender_birthdate?|Дата рождения отправителя, если требуется способом оплаты.
sender_city?|Город отправителя.
sender_country?|Страна отправителя.
sender_first_name?|Имя отправителя.
sender_id_number?|Номер удостоверяющего личность документа отправителя.
sender_id_type?|Тип удостоверяющего личность документа отправителя.
sender_last_name?|Фамилия отправителя.
sender_postalcode?|Почтовый индекс отправителя.
signature*stringПодпись запроса; рассчитывается по правилам раздела о подписи запросов.
source?|Идентификатор источника платежа, согласованный для способа выплаты.
Запрос выполнен; проверяйте статус операции в ответе.
application/json- response
Результат создания запроса на выплату.
status*stringРезультат выполнения запроса API.
withdrawal_request*Данные созданного запроса на выплату.