API

  1. Home
  2. API
  3. Вспомогательные запросы
  4. Запрос на выплату

Запрос на выплату

Магазин может осуществить выплату денег в адрес своего клиента без привязки к предшествующей оплате через Platron. Это может быть полезно, например, если платеж был принят не через Platron, или когда необходимо одной операцией возвратить деньги сразу по нескольким платежам одного клиента. Данная процедура возможна только после согласования проведения выплат с менеджером. Если от менеджера поступает отказ в разрешении произведения выплат, делается выплата с привязкой к транзакции.

Для создания выплаты необходимо отправить запрос на скрипт по адресу https://www.platron.ru/create_moneyback.php

При запросе могут быть переданы следующие параметры:

Название (обязательные поля выделены жирным) Описание
pg_merchant_id Идентификатор магазина
pg_contract_id Номер контракта, по которому будет произведена выплата
pg_moneyback_system Название платежной системы, через которую будет производиться выплата
pg_amount Сумма выплаты в валюте RUB
pg_description Описание
pg_salt Случайная строка
pg_sig Подпись
pg_payment_id Номер транзакции в системе Platron
additional_value Дополнительные параметры для каждой ПС свои

Для каждой ПС может существовать свой набор обязательных дополнительных параметров, которые необходимо передавать при запросе на создание выплаты, эти параметры будут возвращены при запросе на список доступных ПС.

Пример запроса с дополнительными параметрами (выделены жирным):

https://www.platron.ru/create_moneyback.php?pg_merchant_id=82&pg_contract_id=24258&pg_payment_id=22568489&pg_moneyback_system=CONTACT_O&pg_amount=120.00&pg_description=Тестовая_выплата&pg_salt=732343&bName=Фамилия_получателя&bLastName=Имя&bSurName=Отчество получателя&pg_sig=4f22f5a4903738a69e3ac74b96b23d4e

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

<?xml version="1.0" encoding="utf-8"?>
  <response>
	<pg_status>ok</pg_status>
	<pg_moneyback_id>727188</pg_moneyback_id>
	<pg_salt>kdjdope983</pg_salt>
	<pg_sig>a3fc5f602d287096ed237952f56bd5fa</pg_sig>
  </response>

Ответ будет содержать результат попытки создания выплаты. В случае ошибки, появится поле pg_error_code с номером ошибки и поле pg_description с описанием ошибки

Пример ответа в случае ошибки в запросе:

<?xml version="1.0" encoding="utf-8"?>
  <response>
	<pg_status>error</pg_status>
	<pg_error_code>100</pg_error_code>
	<pg_description>Описание ошибки</pg_description>
	<pg_salt>kdjdope983</pg_salt>
	<pg_sig>a3fc5f602d287096ed237952f56bd5fa</pg_sig>
  </response>

Коды ошибок:

340 Возврат не найден
200 Отсутствует необходимый параметр
400 Сумма выплаты больше суммы транзакции
101 Магазин не найден
100 Неверная подпись запроса

Статусы:

ok Успешно
pending В процессе
canceled Выплата отменена

Если передан параметр pg_payment_id, то выплата привязывается к транзакции и сумма выплаты не может превышать сумму прямой транзакции, в противном случае будет возвращена ошибка.

Можно делать выплату по транзакции не на полную сумму. Или же несколько выплат, до тех пор пока общая сумма выплат не будет превышать сумму прямой транзакции.