2.5. Bank wire Transfer

2.5.1. Спецификация протокола для платежа на произвольный счет в банке

Параметры передаются посредством метода POST по адресу: https://gate.payneteasy.com/paynet/api/v2/bank-wire-transfer/ENDPOINTID

2.5.2. Процесс перевода средств на произвольные банковские реквизиты

  1. Пользователь системы начинает перевод средств, передав необходимые параметры.
  2. Payneteasy возвращает новый идентификатор заказа для этого перевода
  3. Пользователь начинает опрашивать статус заказа аналогично Sale Transactions
  4. Payneteasy возвращает текущий статус заказа. processing статус подразумевает что обработка заказа еще не завершилась.
  5. Payneteasy выполняет обработку перевода.
  6. Пользователь продолжает опрашивать статус заказа аналогично Sale Transactions
  7. Payneteasy возвращает статус approved или declined

Параметры для перевода средств по свободным реквизитам

Наименование входного параметра Длина/Тип Описание Обязательность*
client_orderid 128/String Пользовательский идентификатор заказа. Обязателен
currency 3/String Трехзначный код валюты платежа, например RUB Обязателен
payer-fullname 128/String ФИО Плательщика Обязателен
recipient-account-number 20/Numeric Номер счета получателя Обязателен
recipient-bank-bic 9/Numeric БИК банка получателя Обязателен
amount 10/Numeric Сумма перевода. Копейки от рублей отделяются точкой. Например 10.5 Обязателен
payer-email 128/String E-mail плательщика Необязательно
payer-phone 128/String Телефон плательщика Необязательно
recipient-name 255/String Получатель платежа Обязателен
recipient-inn 255/String ИНН получателя Обязателен
payment-details 120/String Назначение платежа Обязателен
vat-amount 10/Numeric НДС (сумма) Обязателен
payer-identity-document 64/String

Тип, серия и номер документа, удостоверяющего личность. Укажите нужный тип документа (2 цифры) + запятая + символы от 4 до 64:

  • 01 паспорт гражданина Российской Федерации
  • 02 свидетельство органов ЗАГС, органа исполнительной власти или органа местного самоуправления о рождении гражданина - для гражданина Российской Федерации, не достигшего 14 лет
  • 03 общегражданский заграничный паспорт
  • 04 паспорт моряка
  • 05 удостоверение личности военнослужащего или военный билет
  • 06 временное удостоверение личности гражданина Российской Федерации
  • 07 паспорт иностранного гражданина или удостоверение личности лица без гражданства
  • 08 вид на жительство в Российской Федерации
  • 09 разрешение на временное проживание
  • 10 удостоверение беженца
  • 11 иные документы, признаваемые в соответствии с законодательством Российской Федерации документами, удостоверяющими личность
Обязателен
control 40/String Контрольная сумма, рассчитываемая по алгоритму SHA-1 для строки endpoint + client_orderid + payer-fullname + recipient-name + recipient-account-number + recipient-bank-bic + amount (в копейках) + vat-amount (в копейках) + currency + merchant_control. Обязателен
server_callback_url 128/String URL для получения результата перевода. Подробнее Merchant Callbacks Необязателен

* пробелы в начале и в конце строки будут опущены при рассчете контрольной суммы

Ответ

Note

Ответ имеет Content-Type: text/html;charset=utf-8 header. Все параметры ответа закодированы использованием x-www-form-urlencoded, с символом (0xA) на конце каждого значения.
Наименование выходного параметра Описание
type Тип ответа. Может принимать значения async-response, validation-error, error. Если тип принимает значение validation-error или error, то параметры error-message и error-code содержат описание ошибки.
paynet-order-id Идентификатор заказа, назначаемый Payneteasy
merchant-order-id Идентификатор пользователя.
serial-number Уникальный номер, назначаемый Payneteasy для каждого запроса пользователя.
error-message Если статус error то тогда этот параметр содержит описание ошибки
error-code Код ошибки для статуса error

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

type=async-response
&serial-number=00000000-0000-0000-0000-0000000624e8
&merchant-order-id=59e1e3ca-5d44-11e1-b3d6-002522b853b4
&paynet-order-id=94935

2.5.3. Описание расчета параметра control

Параметр control - это контрольная сумма запроса, рассчитываемая по алгоритму SHA-1 для строки, получаемой конкатенацией следующих параметров:

  • ENDPOINTID
  • client_orderid
  • payer-fullname
  • recipient-name
  • recipient-account-number
  • recipient-bank-bic
  • amount (в копейках)
  • vat-amount (в копейках)
  • currency
  • merchant_control

Получившаяся строка должна выглядеть примерно так:

31MID-d05f7318-15f2-4818-a1e6-87d0f0e17d2eИванов Иван ИвановичООО Рога и Копыта40963810202157880527044525700555000RUB874A3BBC-4B9F-D581-1234-111111111111

Далее необходимо получить хэш от этой строки с помощью SHA-1. Получившееся значение необходимо передать в параметр control. Для примера выше, параметр control будет следующий:

2c75b188433dfd92fc2e9f9eccd86bd09f27cb99

2.5.4. Отладка

endpointid or groupid input your ENDPOINTID
client_orderid make it or use your internal invoice ID
payer-fullname
recipient-name
recipient-account-number
recipient-bank-bic
amount
vat-amount
currency
merchant_control input your Control Key
payer-email
payer-phone
recipient-inn
payment-details
payer-identity-document
server_callback_url

String to sign
Signature
					
				
				
			
			
		

2.5.5. Получение статуса заказа

Пользователь должен использовать API получения статуса, для определения результата перевода. После отсылки запроса на перевод в Payneteasy , необходимо запомнить paynet-order-id , который будет возвращен в ответе, и использовать его для получения статуса.

URL для API получения статуса

API получения статуса использует обращение методом POST на следующий URL:

https://gate.payneteasy.com/paynet/api/v2/status/ENDPOINTID

Параметры для получения статуса заказа.

Note

Запрос должен иметь content-type=application/x-www-form-urlencoded.
Наименование входного параметра Описание
login Логин пользователя
client_orderid Идентификатор пользователя
orderid Идентификатор заказа, возвращаемый Payneteasy
control Контрольная сумма, SHA-1 для строки login + client-order-id + paynet-order-id + merchant-control.

Ответ на запрос получения статуса

Note

Ответ имеет Content-Type: text/html;charset=utf-8 header. Все параметры ответа закодированы использованием x-www-form-urlencoded, с символом (0xA) на конце каждого значения.
Наименование выходного параметра Описание
type Тип ответа, например status-response
status Подробнее Status List.
paynet-order-id Номер заказа, возвращаемый Payneteasy
merchant-order-id Идентификатор заказа клиента
serial-number Уникальный номер, назначаемый Payneteasy для каждого запроса пользователя..
transaction-type Тип транзакции (transfer).
order-stage Текущее состояние транзакции. Подробнее Order Stage
error-message Если статус error то тогда этот параметр содержит описание ошибки
error-code Код ошибки для статуса error

Пример ответа на запрос получения статуса.

type=status-response
&status=processing
&serial-number=00000000-0000-0000-0000-00000000006e
&merchant-order-id=MID-027f53ad-f5e1-43db-b954-3542f026e6ea
&paynet-order-id=12

Расчет параметра control для получения статуса заказа

Параметр control — это контрольная сумма запроса, рассчитываемая по алгоритму SHA-1 для строки, получаемой конкатенацией следующих параметров:

  • login
  • client_orderid
  • orderid
  • merchant_control

Пример:

Наименование параметра Значение параметра
Наименование параметра Значение параметра
client_orderid 5624444333322221111110
orderid 9625
merchant_control r45a019070772d1c4c2b503bbdc0fa22

Полностью строка:

cool_merchant56244443333222211111109625r45a019070772d1c4c2b503bbdc0fa22

Далее необходимо получить хэш от этой строки с помощью SHA-1. Получившееся значение необходимо передать в параметр control, пример:

c52cfb609f20a3677eb280cc4709278ea8f7024c