3.35. /api/v4/payout-check

Введение

Выплата инициируется через зарос HTTPS POST на указанный ниже URLs с использованием указанных parameters в зависимости от типа выплаты. Для аутентификации запроса используется OAuth RSA-SHA256

API URL

Примечание

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

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

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

https://sandbox.payneteasy.com/paynet/api/v4/payout-check/ENDPOINTID

https://gate.payneteasy.com/paynet/api/v4/payout-check/ENDPOINTID

https://sandbox.payneteasy.com/paynet/api/v4/payout-check/group/ENDPOINTGROUPID

https://gate.payneteasy.com/paynet/api/v4/payout-check/group/ENDPOINTGROUPID

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

Примечание

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

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

Описание

Значение

client_orderid

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

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

amount

Сумма к оплате. Сумма должна быть указана в минимальных единицах с “.” разделителем. Например, 100.5 в RUB означает 100 российских рублей и 50 копеек.

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

currency

Валюта, в которой проводится операция (трёхбуквенные алфавитные коды валют) Примеры значений: USD для доллара США, EUR для европейского евро, RUB для российского рубля.

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

order_desc

Описание заказа.

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

ipaddress

IP адрес получателя (IPv4 или IPv6)

Необходимость: Условно
Тип: String
Длина: 7-45

purpose

Назначение платежа.

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

server_callback_url

URL-адрес, по которому будет отправлен обратный вызов с результатом транзакции. Присоединяющаяся сторона может использовать обратные вызовы для индивидуальной обработки завершения транзакции (например, для сбора данных о платежах в информационной системе Присоединяющейся стороны).Список параметров, включенных в обратный вызов, см. в разделе Обратного вызова Присоединяющейся cтороны. Данный параметр может быть передан вместо notify_url. При использовании server_callback_url платежный шлюз отправляет callback-уведомление только при получении финального статуса исходной транзакции. При использовании notify_url платежный шлюз отправляет уведомление при получении финального статуса и продолжает отправлять уведомления о всех последующих изменениях (возвраты, chargeback и др.)
Необходимость: Опционально
Тип: String
Длина: 128

notify_url

URL-адрес, по которому будет отправлен обратный вызов с результатом транзакции. Присоединяющаяся сторона может использовать обратные вызовы для индивидуальной обработки завершения транзакции (например, для сбора данных о платежах в информационной системе Присоединяющейся стороны).Список параметров, включенных в обратный вызов, см. в разделе Обратного вызова Присоединяющейся cтороны. Данный параметр может быть передан вместо server_callback_url. При использовании notify_url платежный шлюз отправляет уведомление при получении финального статуса и продолжает отправлять уведомления о всех последующих изменениях (возвраты, chargeback и др.). При использовании server_callback_url платежный шлюз отправляет callback-уведомление только при получении финального статуса исходной транзакции.
Необходимость: Опционально
Тип: String
Длина: 128

redirect_url

URL-адрес, на который будет перенаправлен Плательщик после завершения транзакции. Перенаправление выполняется в любом случае, независимо от того, получила ли транзакция успешный, неуспешный или любой другой конечный статус (см. Статусы транзакций).
Не следует использовать параметры, отправленные вместе с HTTP-запросом перенаправления, для обработки статуса транзакции. Вместо этого необходимо использовать server_callback_url или запрос статуса. Если транзакция не предполагает возврата «плательщика, параметр может быть использован со значением https://doc.payneteasy.com. Допускается использование либо параметра redirect_url, либо комбинации параметров redirect_success_url и redirect_success_url, но не и того, и другого одновременно.
Необходимость: Опционально
Тип: String
Длина: 128

redirect_success_url

URL-адрес, на который будет перенаправлен Плательщик после получения успешного статуса транзакции.(cм. Статусы транзакций).
Не следует использовать параметры, отправленные вместе с HTTP-запросом перенаправления, для обработки статуса транзакции. Вместо этого необходимо использовать server_callback_url или запрос статуса. Если транзакция не предполагает возврата плательщика, параметр может быть использован со значением http://https://doc.payneteasy.com. Допускается использование либо параметра redirect_url, либо комбинации параметров redirect_success_url и redirect_success_url, но не и того, и другого одновременно.
Необходимость: Опционально
Тип: String
Длина: 1024

redirect_fail_url

URL-адрес, на который будет перенаправлен Плательщик после получения неуспешного статуса транзакции.(cм. Статусы транзакций).
Не следует использовать параметры, отправленные вместе с HTTP-запросом перенаправления, для обработки статуса транзакции.Вместо этого необходимо использовать server_callback_url или запрос статуса. Если транзакция не предполагает возврата плательщика, параметр может быть использован со значением http://https://doc.payneteasy.com. Допускается использование либо параметра redirect_url, либо комбинации параметров redirect_success_url и redirect_success_url, но не и того, и другого одновременно.
Необходимость: Опционально
Тип: String
Длина: 1024

credit_card_number

Номер банковской карты клиента. Примечание: Для сценария оплаты на карту внутри системы, эта карта рассматривается как источник, и к ней будут относиться все процессинговые ограничения, списки и проверки мошенничества.

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

card_printed_name

Имя владельца карты, напечатанное на банковской карте.

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

expire_month

Месяц окончания срока действия банковской карты.

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

expire_year

Год окончания срока действия банковской карты.

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

cvv2

CVV2-код Плательщика. CVV2 (Card Verification Значение) — это трех- или четырех-значное число ПОСЛЕ номера кредитной карты в области подписи карты.

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

account_number

Номер банковского счета

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

account_name

Банковский счет

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

ewallet_type

Тип e-wallet.

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

ewallet_wallet

Идентификатор e-wallet.

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

crypto_wallet_address

Адрес криптокошелька.

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

bank_name

Имя банка.

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

bank_branch

Имя банковского отделения.

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

bank_code

Код банка.

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

bank_city

Город банка.

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

bank_address1

Адрес банка.

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

bank_zip_code

Почтовый индекс банка.

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

bank_province

Штат банка.

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

bank_area

Область банка

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

routing_number

Номер маршрута, используется для определения отдела банка в Китае.

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

legal_person_name

Имя на юридическом документе.

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

legal_person_document_number

Номер юридического документа

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

receiver_first_name

Имя получателя, так-же можно отправить как first_name.

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

receiver_last_name

Фамилия получателя, так-же можно отправить как last_name.

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

receiver_middle_name

Отчество получателя, так-же можно отправить как middle_name.

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

receiver_birthday

Дата рождения получателя, так-же можно отправить как birthday.

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

receiver_country_code

Код страны получателя, так-же можно отправить как country.

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

receiver_state

Штат получателя, обязательный параметр для стран которые делятся на штаты (США, Канада, Австралия), так-же можно отправить как state.

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

receiver_city

Город получателя, так-же можно отправить как city.

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

receiver_zip_code

Почтовый индекс получателя, так-же можно отправить как zip_code.

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

receiver_address1

Адрес получателя, так-же можно отправить как address1.

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

receiver_phone

Номер телефона получателя, так-же можно отправить как phone.

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

receiver_email

Адрес электронной почты получателя, так-же можно отправить как email.

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

receiver_identity_document_id

Идентификатор удостоверения личности получателя, так-же можно отправитькак identity_document_id.

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

receiver_identity_document_number

Номер удостоверения личности получателя, так-же можно отправитькак identity_document_number.

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

merchant_data

Может содержать данные, которые будут полезны во внешней системе Присоединяющейся Стороны, например VIP customer, TV promo campaign lead. Информация возвращается в ответе на запрос статуса и в обратном вызове Присоединяющейся Стороны.

Необходимость: Опционально
Тип: String
Длина: 64k

bank_bic

BIC-код банка получателя

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

receiver_inn

Уникальный идентификатор для налогообложения получателя

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

customer_level

Уровень клиента в системе CMS.

Необходимость: Опционально
Тип: Varchar
Длина: 32

customer_id

Идентификатор клиента в системе CMS. Параметр становится обязательным, если включена система CMS в режиме определения клиента Платёжным шлюзом.

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

merchant_customer_identifier

Идентификатор клиента в системе CMS, назначенный Присоединяющейся Стороной. Параметр становится обязательным, если включена система CMS в режиме CRM.

Необходимость: Опционально
Тип: Varchar
Длина: 64

card_recurring_payment_id

Токенизированный идентификатор владельца карты. Нужно отправлять или параметр card_recurring_payment_id или комбинацию из credit_card_number, card_printed_name, expire_month и expire_year, но не все в одном запросе. Для создания card_recurring_payment_id см. /api/v4/create-card-ref. Примечание: ля сценария оплаты на карту внутри системы, эта карта рассматривается как источник, и к ней будут относиться все процессинговые ограничения, списки и проверки мошенничества.

Необходимость: Условно
Тип: Long

recurring-payment-id

Recurring Payment ID может быть передан вместо данных держателя карты. Для нативных транзакций CVV не требуется. Обновление данных клиента возможно через /api/v4/update-recurring-payment/. Процесс создания Recurring Payment ID инициируется HTTPS POST запросом с использованием указанных ниже URLs и параметров. Используйте OAuth RSA-SHA256 для аутентификации

Необходимость: Условно
Тип: Long

* Спросите менеджера службы поддержки если условные параметры обязательны для интеграции

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

Примечание

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

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

Описание

type

Тип ответа. Может принимать такие значения как: async-response, validation-error, error. Если Тип вернул validation-error или error, error-message и error-code будут содержать сведения об ошибке.

paynet-order-id

Номер заказа в системе gate.payneteasy.com.

merchant-order-id

Номер заказа в системе Присоединяющейся Стороны.

serial-number

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

error-message

Для транзакций в статусе declined или error, этот параметр будет содержать причину отклонения или сведения об ошибке.

error-code

Код ошибки для транзакций в статусе declined или error.

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

POST /paynet/api/v4/payout-check/39915 HTTP/1.1
Host: sandbox.payneteasy.com
User-Agent: curl/7.83.0
Accept: */*
Authorization: OAuth oauth_consumer_key="TestMerchant", oauth_nonce="b5E31Tw6SVjauE29uOf2jOLnuUSXmVdE", oauth_signature="WrW79JHNUVwDRhCGWQYgaN6xmJXpQxy8XSNyCOL6b2Wyf7V5BWGMe2TZa1bjC9ZeO0Q3FcQxeGGHv0%2F7hsMAsJNQEET321VNsbDwao2Ep%2Bp7eoYiGYrVveSrSW1diCrBf3AJYJZM0PTJ67Sl8XyeTVBHT4kpC5qBu3xDQ3aFfKnmRTmn9fiVsYsYu3DQrsHM1K9uAoltGt3Muz0kCDZ3MWNGrNqtdpWuar8HRQD3kckcPjuN9D6VrSuQm9eLx27G%2FvkiP%2BZ44i8ghIUp61NWSrJ4Ky69JiZ%2FoaVVmUTEaanc%2F%2B%2BQT6jBwWy%2Bb%2FTLUrxtSakeNfcjn1JVwRf4aCX2fhyG5ozH%2BjiXF6eRb83WVqBUAwykSq35pLU3Vmua3pKMKAJK1ZRDZdjGrT50KJg5tBniC4JFzdQqjQf%2FhFnDYodfIK3S2qZo%2FD3Bmlya46iEcK6SAQdNBBQue3E5Qi8FEHYrY1o7K8wDyzT1QzqqHF%2BQdmXcElSGu9ge0Y655%2BbGtXhnsUWnKEO0NGqErvAwzm7yUg0e5QWHVf505aE7pr5K4z%2Fzj7AvkuD7R1savqam%2BnnuSfq1E%2BnnnN7mTcC0g18Sr38vdTshcGq99YW3xWKc%2FpuooZYdYa5A6u46o%2BREZSTCD2XexcV49%2F9eVn3xdoTXYq4NISJSY8U7ThKnr0g%3D", oauth_signature_method="RSA-SHA256", oauth_timestamp="1677831012", oauth_version="1.0"
Content-Length: 150
Content-Type: application/x-www-form-urlencoded
Connection: close

account_name=1234
&account_number=1234
&amount=10.42
&client_orderid=1
&currency=USD
&routing_number=15
&server_callback_url=https%3A%2F%2Fhttpstat.us%2F200

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

HTTP/1.1 200
Server: server
Date: Fri, 03 Mar 2023 08:10:34 GMT
Content-Type: text/html;charset=utf-8
Connection: close
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: 137

type=async-response
&serial-number=00000000-0000-0000-0000-000002e2c322
&merchant-order-id=1
&paynet-order-id=6982864
&end-point-id=39915

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

HTTP/1.1 403 Forbidden
Server: server
Date: Thu, 25 Aug 2022 06:50:16 GMT
Content-Type: text/html
Content-Length: 735
Connection: close
X-XSS-Protection: 1
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>403</title>

<style type="text/css">
body {
font-family: Arial, sans-serif;
font-size: 130%;
background-color: #eee;
}

p {
margin: 10em auto 0;
width: 500px;
border: 1px solid gray;
text-align: center;
vertical-align: middle;
padding: 40px 20px;
background-color: #fff;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
}
</style>
</head>

<body>
<p>Access is denied</p>
</body>
</html>

Коллекция Postman

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

Введите приватный ключ, содержащийся в PKCS#1. См. RSA-SHA256.

Debug form
URL
parameters
login

login should be used as Consumer Public for OAuth

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.