Создание платежа или ссылки оплаты

POST/init
Как использовать запрос

1. Выберите пример своего способа

Укажите подключённый payment_method и передайте обязательные для него поля. Примеры отличаются данными клиента и идентификаторами получателя.

2. Пройдите сценарий оплаты

Создайте платёж через /init, затем обработайте полученные url, method и form_data. Клиент выполняет подтверждение, предусмотренное выбранным способом.

3. Подтвердите результат

Проверьте payment_status через /status или webhook с проверенной подписью. Возврат клиента на вашу страницу не подтверждает оплату.

Примечания

Доступность и обязательные поля зависят от способа оплаты и endpoint.

POSThttps://secure-api.404stage.com/initПрямой запрос к API

Запрос

ЗаголовкиAccept: application/json · Content-Type: application/json

Укажите свои реквизиты и подпись. Запрос отправляется на адрес выше.

Ответ

Запрос выполнен; проверяйте статус операции в ответе.

application/json
{
  "deeplink": null,
  "form_data": {},
  "form_status_signature": null,
  "id": "019c6c4f-9a9c-e583-18f4-0e22eec8fc82",
  "method": "GET",
  "status": "redirect",
  "url": "https://pay.example/pay?customer_id=d4e816c8-eed4-4cff-a628-671c71594714&merchant_id=30b7d3bd-5f5d-4644-bf42-c2a1cd0dea0f&endpoint_id=e82b948f-5416-4560-bcd2-bbec03247dd5&order=order-00100&amount=100&currency=EUR&language=en&invoice_id=019c6c4f-9a9c-e583-18f4-0e22eec8fc82&first_name=Ivan&last_name=Ivanov&signature=KSpA6kIj7W-gLzIW5xwjB3AU_s3zgvc6J3qPHl8eKPA"
}
Поля выбранного запроса15
amountstring · обязательное

Сумма платежа в указанной валюте.

currencystring · обязательное

Код валюты платежа.

customerstring

Уникальный идентификатор плательщика в системе мерчанта.

emailstring

Email плательщика.

endpoint_idstring · обязательное

ID платёжного эндпоинта. Также принимается имя product_id.

finish_urlstring

URL возврата плательщика после оплаты.

first_namestring

Имя плательщика, если требуется способом оплаты.

ip_addressstring

IP-адрес плательщика; используется при отправке запроса с сервера мерчанта.

last_namestring

Фамилия плательщика, если требуется способом оплаты.

merchant_idstring · обязательное

ID мерчанта, выданный при подключении.

notification_urlstring

URL мерчанта для уведомлений о статусе платежа.

orderstring · обязательное

Идентификатор заказа или платежа в системе мерчанта.

payment_methodstring

Способ оплаты, настроенный для эндпоинта.

sender_account_numberstring

Номер банковского счёта отправителя.

signaturestring · обязательное

Подпись запроса; рассчитывается по правилам раздела о подписи запросов.

Описание и правила метода

Создаёт платёж. Для Host2Host передайте данные карты или сохранённый токен карты; для платёжной страницы не передавайте эти поля. Способ оплаты и валюта должны быть доступны вашему endpoint. Передайте параметры браузера, если карточный сценарий требует 3D-Secure 2.0. Для сохранения карты передайте save_card=1 в первом платеже. Ответ с перенаправлением описывает следующий шаг в браузере; итоговый статус платежа проверяйте через /status или webhook.

В finish_url укажите страницу возврата клиента после оплаты, в notification_url — адрес вашего webhook для уведомлений о платеже. Оба параметра включены в примеры. Открывайте полученный url с указанными method и form_data.

Поле, отмеченное необязательным в общей схеме API, может быть обязательным для конкретного канала. Уточните доступную валюту и данные клиента для вашего endpoint_id. Расширенный пример EUR показывает канал, которому также нужны адресные и контактные данные клиента.

Для redirect через Open Banking, Apple Pay и Google Pay способ оплаты определяется настройкой endpoint. Выберите соответствующий пример и откройте полученную платёжную страницу. В Open Banking клиент выбирает банк и разрешает проведение платежа, а в Apple Pay / Google Pay подтверждает оплату в кошельке. Для этих сценариев не нужно передавать данные карты или oem_token в запросе создания.

Для передачи браузерных данных 3DS 2.0 используйте ip_address как IP клиента и остальные поля из примера 3DS. В ответе могут прийти form_data.creq или другие поля формы: отправляйте все полученные поля с исходными именами и значениями.

Передавайте JSON в теле запроса (Content-Type: application/json). Рассчитывайте signature по общим правилам подписи для пути URL этого метода. Подписи в примерах — заполнители: замените реквизиты доступа и URL, укажите новый order для нового платежа и пересчитайте подпись по окончательному телу запроса.

Все параметры и схемыРасширенный справочник метода