Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Если Вы хотите получать статус транзакции, использовать рекуррентные или двухстадийные платежи, то Вам может быть интересна возможность получать нотификации об оплате. Для этого Вам необходимо при создании сервиса указать .

В случае успешного завершения платежа информация о нем будет передана Вам POST­-запросом на данный URL, а также GET-­запросом на URL  URL страницы успешной покупки . Набор параметров для обеих рассылок идентичен. Таким образом вы можете уведомлять пользователя о деталях оплаченного заказа после редиректа на страницу успеха, основываясь на данных, полученных из нотификации: номер заказа, стоимость, дата и т.д. Подробности ниже в таблице параметров (см. оглавление).(или ошибки, если совершить транзакцию не удалось). Таким образом в передаче параметров нотификации участвует три поля из настроек вашего сервиса:

  • URL скрипта для получения веб-хуков

В заголовках Content-Type всегда равен application/x-www-form-urlencoded. Набор параметров для обеих рассылок идентичен. Таким образом вы можете уведомлять пользователя о деталях оплаченного заказа после редиректа на страницу успеха, основываясь на данных, полученных из нотификации: номер заказа, стоимость, дата и т.д. Подробности ниже в таблице параметров (см. оглавление).

Если при создании сервиса было заполнено поле email, Если при создании сервиса было заполнено поле email, то на указанную электронную почту также будет выслана информация о платеже.

Информация
titleСистема повторовПовторы

Запросы от нашего сервера в случае первой неудачной попытки передаются со следующей периодичностью: 180, 180, 180 с.

Раскрыть
titleКак выглядит в интерфейсе


Версия нотификаций 1.0 (по умолчанию)

Таблица параметров, передаваемых на

ПараметрВерсияОписание
tid1.0, 1.1
, 2.0
ID
ID
транзакции
name1.0, 1.1
, 2.0
Название товара или услуги. Отображается на странице оплаты.
comment1.0, 1.1
, 2.0
Комментарий платежа переданный в процессе инициализации платежа.
partner_id1.0, 1.1
, 2.0
ID партнера, то есть ваш ID
service_id1.0, 1.1
, 2.0
ID сервиса
order_id1.0, 1.1
, 2.0
ID заказа
type1.0, 1.1
, 2.0
Тип платежа
currency1.0, 1.1
, 2.0
Валюта операции, поддерживается только RUB, не участвует в формировании подписи при version = (1.0|1.1)
cost1.0, 1.1
, 2.0
Общая сумма заказа, переданная при инициализации платежной операции
income_total1.0, 1.1
, 2.0

Общая сумма в рублях, заплаченная покупателем, может отличаться от income и system_income только в случае оплаты частями или при переносе

комиссии на плательщика

income1.0, 1.1
, 2.0
Сумма в рублях, полученная от платежного инструмента по данной платежной транзакции
partner_income1.0, 1.1
, 2.0
Сумма в рублях, дохода магазина по данной платежной транзакции
system_income1.0, 1.1
, 2.0
Сумма в рублях, заплаченная покупателем по данной платежной транзакции
command1.0, 1.1
, 2.0
Текущее действие:
  • command=cancel – получен отказ от платежного канала, расшифровка причины в поле resultStr
  • command=success – вызывается при полной оплате сервиса
  • command=recurrent_cancel – вызывается в случае, если держатель карты отменил рекуррентные платежи.
  • command=recurrent_expire – вызывается когда истёк срок  рекуррента.
  • command=refund – вызывается в результате выполнения операции отмены платежа. В поле result=ok или fail. А в resultStr – причина отказа.
  • command=authorize_payment – вызывается при использовании двойной авторизации при платеже
  • command=funds_blocked – вызывается при использовании двух этапной оплаты (BLOCK + CHARGE). Описание в разделе “Двухэтапные платежи (предавторизация)”.

ВАЖНО: в случае полной оплаты сервиса придут и success и process.

result1.0, 1.1
, 2.0
Только для command=refund, значения ‘ok’ или ‘fail’
resultStr1.0, 1.1
, 2.0
Текст уведомления.
version1.0, 1.1
, 2.0
Версия протокола уведомления. (На данный момент: 1.0, 1.1
, 2.0
).
Версия по умолчанию — 1.0. Переключение на другие версии производится на стороне Провайдера
 по запросу от клиента
.
phone_number1.0, 1.1
, 2.0
Опционально, номер телефона
email1.0, 1.1
, 2.0
Опционально, email
date_created1.0, 1.1
, 2.0
дата и время создания транзакции, формат 'YYYY-MM-DD HH24.MI.SS' (MSK)
recurrent_order_id1.0, 1.1
, 2.0
ID заказа (order_id), который был передан при первом вызове рекуррентного платежа (только для рекуррентных операций)
card1.0, 1.1
, 2.0
v 1.0 Маскированный номер карты, в случае если проведенный платеж является рекуррентным (только для рекуррентных операций)
v 1
При v1.1 и
2cardholder2.0Имя держателя карты если присутствует в транзакцииcard_binding_id
v2.0 заполнено всегда
когда есть поле card
, если оплата осуществлялась с вводом номера карты.
card_binding_id
1.0, 1.1
, 2.0
уникальный токен для сохраненных данных карты. Устарело.
 Подробнее.
test1.0, 1.1
, 2.0
Значение 1 (только для тестовых платежей), См. описание
paid_date
check
2
1.0
дата и время оплаты транзакции (подтверждения оплаты платежным каналом), формат 'YYYY-MM-DD HH24.MI.SS' (MSK)check2.0Алгоритм формирования описан в приложении №1.check1.0, 1.1
, 1.1
MD5 хеш от параметров: tid + name + comment + partner_id + service_id + order_id + type + cost + income_total + income + partner_income + system_income + command + phone_number + email + result + resultStr + date_created + version + card +  recurrent_order_id + test + secret_key
Где secret_key – секретный ключ сервиса. Пример формирования продемонстрирован ниже.
check(если command=refund)1.0, 1.1

MD5 хеш от параметров:'tid'+'name'+'comment'+'partner_id'+'service_id'+'order_id'+'type'+'cost'+'command'+'result'+'resultStr'+'phone_number'+'email'+'date_created'+'version'+'secret_key'

refund_ext_id1.0, 1.1
, 2.0
дополнительный id возврата при осуществлении нескольких возвратов в рамках транзакции. Подробнее
Примечание
  • resultStr – текст уведомления. Для значения параметра command=success он стандартный. Для command=cancel выводится то, что ответит платёжный шлюз.

Формирование подписи check для первой версии API

Информация
Версия меняется по запросу в отдел технической интеграции

Все параметры участвуют в формировании подписи check. Подпись формируется как md5 от всех параметров, сцепленных в строку без пробелов + добавленный в конце секретный ключ сервиса.

Пример на PHP

Для рекуррентных платежей добавляются два поля card и recurrent_order_id и строка для подписи формируется следующим образом:

tid + name + comment + partner_id + service_id + order_id + type + cost + income_total + income + partner_income + system_income + command + phone_number + email + resultStr + date_created + version +card +  recurrent_order_id + secret_key


Оглавление