ДеньгиOnline

2017-12-11 18:07:56

Действие pay

Запрос на произведение выплаты

Запрос на произведение выплаты проводится после успешного действия check. Успех действия check не гарантирует, что действие pay будет выполнено успешно. Более того, если с момента получения ответа по действию check прошло достаточно большое количество времени, платеж получит статус 993 - INVOICE_LIFETIME_EXPIRED

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

Запрос, помимо обязательных общих параметров, содержит в теге params следующие параметры:

Параметр Описание Тип данных Обязательность
invoice ID транзакции, полученный в действии check integer Нет
txn_id ID транзакции во внешней системе (системе партнера) string(255) Да
amount

Сумма выплаты

Параметр обязателен, если сумма не была указана в действии check.
Если сумма была указана в действии check, то в текущем действии значение игнорируется.

integer /double(4)

Нет

 

 
currency

ID валюты платежа

Если валюта не была указана в check-запросе, то считается, что сумма платежа указана в валюте основного баланса проекта.

Если валюта была указана в действии check, то в текущем действии значение игнорируется.

Валюта платежа не может быть изменена!
Если в check-запросе указана одна валюта, а в pay-запросе - другая, то будет возвращена ошибка 21 - BAD_CURRENCY

string / integer

ISO 4217 number-3

comment

Комментарий, который получатель выплаты увидит в своем кошельке (только для Webmoney и QIWI)

string(255) Нет

Дополнительные параметры

Некоторые платежные системы требуют указывать дополнительные параметры, необходимые для проведения платежа или иных собственных проверок.
Соответствующие параметры и требования к ним приведены в теге params ответа на запрос commissions.

Если дополнительные параметры не будут переданы, платеж получит статус 20 - BAD_PARAM.
Если дополнительные параметры не пройдут собственную проверку платежной системы, платеж будет отклонен и получит статус 37 - SANCTION_BLOCKED.

Внимание!

Если при осуществлении действия check в инвойсе не были переданы сумма и валюта, то они должны быть переданы в запросе действия pay параметрами paramsamount и paramscurrency соответственно.

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

Ответ Системы в формате xml содержит, помимо общих, следующие теги:

Параметр Описание Тип данных
income Сумма входящего платежа в его валюте

decimal(11.2) разделитель – точка

rate Использованный курс конвертации decimal(11.4)  разделитель – точка
amount Сумма входящего платежа в валюте основного баланса decimal(11.2)  разделитель – точка
outcome Сумма выплаты в систему-получатель decimal(11.2)  разделитель – точка
fee Комиссия в валюте получателя decimal(11.4)  разделитель – точка

Внимание!

Действие pay для каждого счета может выполняться только 1 раз. Для получения актуального статуса платежа выполняйте запрос pay_status.

Если в процессе обработки запроса pay произошла ошибка, создайте новый платеж, используя другое значение txn_id.
  • Исключение: если запрос pay завершился со статусом 1000, следует повторить pay запрос с теми же параметрами. 

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

<?xml version="1.0" encoding="UTF-8"?>
<request>
	<action>pay</action>
	<project>1234</project>
	<timestamp>1360928335</timestamp>
	<params>
		<txn_id>511e1e34d785b</txn_id>
	</params>
<sign>dc1917fbb55ffc6012b5b1558a628813</sign>
</request>

Пример ответа (успех)

<?xml version="1.0" encoding="UTF-8"?>
<response>
	<status>1</status>
	<reference>501583</reference>
	<timestamp>1360928334</timestamp>
	<invoice>30876</invoice>
	<income>12.34</income>
	<rate>1</rate>
	<amount>12.34</amount>
	<outcome>12.34</outcome>
	<fee>-0.617</fee>
</response>

Пример ответа (ошибка)

 <?xml version="1.0" encoding="UTF-8"?>
<response>
    <status>18</status>
    <reference>25063</reference>
    <timestamp>1358265477</timestamp>
</response>