3.31. /api/v4/process-recurring-payment

Введение

Если запрос принят без ошибок, платежный шлюз находит профиль повторяющегося платежа по предоставленному recurring-payment-id и инициирует новую повторяющуюся транзакцию, используя данные платежа, сохраненные в этом профиле.
Процесс повторяющегося платежа инициируется через запрос HTTPS POST с использованием URLs и parameters, указанных ниже. Используйте OAuth RSA-SHA256 для аутентификации.

API URL

Примечание

Путь API URL не должен быть задан фиксированным значением, т.к. он может быть изменён позднее.

Интеграционная среда

Производственная среда

https://sandbox.doc2.com/paynet/api/v4/process-recurring-payment/ENDPOINTID

https://gate.doc2.com/paynet/api/v4/process-recurring-payment/ENDPOINTID

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

Примечание

Запрос должен иметь content-type=application/x-www-form-urlencoded и Заголовки авторизации.

Название параметра

Описание

Значение

client-orderid

Идентификатор заказа Присоединяющейся стороны.

Необходимость: Обязательно
Тип: String
Длина: 128

recurring-payment-id

Повторяющийся идентификатор, присвоенный заказу отделом QA.

Необходимость: Обязательно
Тип: String
Длина: 10

amount

Сумма валюты должна совпадать с валютой назначенного проекта. По достижении даты окончания регулярный платеж перейдет в статус остановки. Поддерживается для типов SRC и DST. Требуется, если не используются amount-from и amount-to или amount-sequence.

Необходимость: Условно
Тип: Numeric
Длина: 10

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

Примечание

Ответ имеет заголовок Content-Type: text/html;charset=utf-8. Все поля кодируются как x-www-form-urlencoded, с символом (0xA) в конце значения каждого параметра.

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

Описание

type

Тип ответа. Пример: process-recurring-payment-response, validation-error, error. Если тип равен validation-error или error, параметры error-message и error-code содержат сведения об ошибке.

status

Если запрос принят, этот параметр имеет значение processing. Это не статус транзакции.

serial-number

Уникальный номер, присваиваемый сервером Doc2.0 конкретному запросу от Присоединяющейся стороны.

Пример запроса

POST /paynet/api/v4/process-recurring-payment/ HTTP/1.1
User-Agent: curl/8.4.0
Accept: */*
Authorization: OAuth oauth_consumer_key="ErwinTestMerchant", oauth_nonce="XGsxKTfd4uiaQKOSyXkHQwKxFqLCEKRz", oauth_signature="KX7KEjFUEJo8rLJ2PvusGDlu5cxqMm%2BU%2Bn%2F1KxH18QUeZ57QghfnXyiXKCxwAr76uxMk9X10QL8YI4kuEHVmxThIomtIZML3yRLESneHNqZzlwXvTSG5o%2B7DTSdAeNGZ40PIbF4XAUzwp%2FQbpYGWBS4Yk36%2BPQbziJlsFa21gRo7e03fizxPEIYi1algEqOT5uu%2F07Yci6NsSyGGMGo4vyDhqPMLuDcaTeO%2Fzr51RfRa4jh2bT4tUriZLVrjYP0AJeHGlZdosTkqEyVAz5Q5yD67xmjUGlW4luezOWdR70wrfQ8JZ7QuXzueAb9TqyZfi%2BvCD4MrhXG299ujWUUtZ%2F8qi09p%2F7GmBiFSud7wgMjPGOC%2BijBEFIpsfiBFzd6%2FX7MBLAdTpHXrExT2C71dJysde31isAMVuIIuvXogY7YE0ZttWY1oYqcWDNSWXsUx5pQTjbBf1vyJB3CqtAFVFi6LwckqsYTAXkxfp%2B2IgFFhadEvf35XzFPv%2FEjsTqRLJuPYBa85mK9vaY7WJRtX89TjSdEPulFnz1EEFg5KHe5WxVp9GFw2XqLneqBu%2FwGAGg3NXRumBMHK3E%2Bh96cVdU5b3AkqVjS2Q36jpQtAhUIIGYyT02n4W9avhw2cHCJzErqGjALHJjkFQD1bhDRKyTm1Fqeh%2BplDaPwDKjy5EHY%3D", oauth_signature_method="RSA-SHA256", oauth_timestamp="1721316898", oauth_version="1.0"
Content-Length: 407
Content-Type: application/x-www-form-urlencoded
Connection: keep-alive

recurring-payment-id=1492124
&amount=10
&client-orderid=1575634981130

Пример успешного ответа

HTTP/1.1 200
Server: server
Date: Thu, 18 Jul 2024 15:35:46 GMT
Content-Type: text/html;charset=utf-8
Connection: keep-alive
Keep-Alive: timeout=60
Vary: Accept-Encoding
X-XSS-Protection: 1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000
Content-Language: en-US
Strict-Transport-Security: max-age=31536000
Content-Length: 110

type=process-recurring-payment-response
&serial-number=00000000-0000-0000-0000-000002f36d8d
&status=processing

Пример неуспешного ответа

HTTP/1.1 500
Server: server
Date: Thu, 18 Jul 2024 15:39:05 GMT
Content-Length: 61
Connection: keep-alive
Keep-Alive: timeout=60
X-XSS-Protection: 1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000

Internal server error [b2a06c5a-c770-4c01-b32c-e4fcb1da4cd6]

Конструктор запросов

Debug form
URL
client-orderid
Merchant login
Endpoint
recurring-payment-id
amount
order_desc
first-name
last-name
country
city
zip-code
address1
state
phone
e-mail
customer-ip
currency
purpose
birthday
ssn
notify_url
server_callback_url

Normalized parameters string to sign, according to OAuth 1.0a rules
POST body parameters to submit
OAuth 1.0a headers to submit.
HEX Encoded Signature
* HEX encoded string is for debug purposes only. You shouldn't send this string to the server neither in HEX nor in Encoded HEX representation.
Base64 Encoded Signature
* Binary RSA-SHA256 signature directly encoded in base64 should be sent to the server.