Сервис электронных платежей | |||
Платформа ФлексиДеньги Описание протокола взаимодействия Версия 0.9.1 |
Содержание
Введение....................................................................................................................... 3
Цель документа........................................................................................................ 3
Глоссарий.................................................................................................................. 3
Краткое описание сервиса...................................................................................... 3
Протокол взаимодействия.......................................................................................... 4
Исходные данные.................................................................................................... 4
Прием заявок на совершения платежа.................................................................. 4
Уведомление Партнера о Совершенных платежах............................................. 5
Реестр Платежей...................................................................................................... 5
Введение
Цель документа
Документ описывает суть сервиса мультиоплаты, механику его оказания и протокол взаимодействия в рамках данного сервиса между платформой Пластик и ИС Партнера.
Глоссарий
Платформа Флекси – программно-аппаратный комплекс для обработки транзакций.
Партнер – информационная система партнера – программно-аппаратный комплекс, используемый Компанией – Партнером для подключения к Платформе Флекси для проведения электронных платежей.
Товар – выделенная единица услуги или продукта, предоставляемая пользователю в результате оплаты.
Сервис – совокупность товаров, предоставляемых Партнером.
Краткое описание сервиса
Сервис представляет собой платежную страницу на которую Партнер направляет пользователя.
Пользователь производит выбор метода оплаты и следует дальнейшим инструкциям.
По факту совершения/не совершения платежа происходит возврат пользователя на страницу сервиса партнёра, а также уведомление партнера о результате платежа.
Протокол взаимодействия
Исходные данные
Для начала работы с платформой партнеру необходимо предоставить следующие данные:
· URL для уведомлений о проведенных платежей.
· URL сервиса партнера на который возвращается абонент после успешного проведения платежа.
· URL сервиса партнера на который возвращается абонент после неудачного проведения платежа
· E-mail на который будут отсылаться реестры платежей.
Со стороны платформы партнеру выдаются:
· Идентификаторы сервисов и товаров партнера.
· Секретное слово.
· URL платежной страницы.
Прием заявок на совершения платежа
Для совершения платежа пользователем, партнёру необходимо направить пользователя на страницу оплаты методом POST с передачей следующих параметров:
Обязательные параметры:
Параметр | Описание |
service_id | Идентификатор сервиса партнера, обязательный |
customer_id | Идентификатор пользователя у партнера, обязательный |
order_id | Идентификатор заказа у партнера, обязательный |
hash | Контрольная сумма. Высчитывается как md5(service_id+customer_id+order_id+secret_key), где "+"- знак конкатенации, "secret_key" - секретный ключ, выдаваемый при регистрации партнера |
Необязательные параметры:
Параметр | Описание |
product_id | Идентификатор товара на платформе. Если не указан - будет отображен список всех продуктов на сервисе; |
summ | Сумма платежа. |
currency | Валюта, обязательно, в случае если указана сумма. Ожидается трехбуквенный ISO 4217 код валюты |
count | Количество единиц товаров. |
После проведения платежа абонент будет возвращен на страницу сервиса партнера, указанную в настройках сервиса.
Уведомление Партнера о Совершенных платежах
После проведения платежа или его неудачи платформа отсылает HTTP GET запрос на URL партнёра для уведомлений, возможно использование SSL при желании партнера.
Запрос отсылаемый партнеру содержит следующие параметры с информацией о транзакции:
Параметр | Описание |
service_id | Идентификатор сервиса партнера |
customer_id | Идентификатор пользователя на стороне партнера |
order_id | Идентификатор заказа на стороне партнера |
processing_status | Статус обработки транзакции |
desc | Описание ошибки, если транзакция не удачна |
price | Сумма транзакции в валюте платежа, число с 2-мя знаками в дробной части, разделитель целой и дробной части - "." |
price_rub | Сумма транзакции в рублях, число с 2-мя знаками в дробной части, разделитель целой и дробной части - "." |
transaction_id | Номер транзакции на стороне платформы, целое число, до 20 знаков. |
currency | Валюта платежа на счет партнера, ISO 4217 |
share_rub | Вознаграждение партнера в рублях |
transaction_date | Дата проведения транзакции на стороне платформы в формате YYYY-MM-DD HH:mm:ss |
hash | md5 от конкатенации полей: service_id+transaction_id+customer_id+order_id+secret_key |
payment_method_id | Идентификатор способа оплаты см. Приложение 1 |
product_id | Идентификатор товара на стороне платформы. |
Поле processing_status может принимать следующие строковые значения:
Значение | Описание |
PROCESSED | Транзакция успешно оплачена пользователем |
FAILED | Транзакция не оплачена пользователем, в поле desc дается в этом случае описание причины ошибки |
Реестр Платежей
Платформа производит регулярное формирование реестров проведенных платежей и отсылает их партнеру на указанный им e-mail.
Данные, формируемые в соответствии с настоящим реестром, представляются в виде файлов в формате csv с разделителем “;”:
1. YYYYMMDD_N. csv, где YYYYMMDD - дата создания реестра (в соответствующем формате), N - положительное целое число, идентификатор отчета на платформе.
2. Файл содержит данные в кодировке UTF-8.
3. Далее содержится заголовок, определенный как набор названий полей, разделенных символом ";". Заголовок занимает одну строку.
4. Далее идет набор записей, набор значений, соответствующих заголовку, и разделенных символом ";". Каждая запись содержится в отдельной строке.
Далее приводится название колонок реестра, с их описанием. Следует заметить, что платформа может добавлять колонки к уже существующим (не нарушая порядок) без предварительного уведомления партнера.
Название столбца | Описание |
transaction_date | Дата проведения транзакции на стороне платформы в формате YYYY-MM-DD HH:mm:ss |
registry_date | Дата в формате YYYY-MM-DD HH:mm:ss, укзаывающая на день, на который попадает учет данного платежа |
transaction_id | Номер транзакции на стороне платформы, целое число, до 20 знаков. |
currency | Валюта платежа, ISO 4217 |
price | Сумма транзакции в валюте платжа, число с 2-мя знаками в дробной части, разделитель целой и дробной части - "." |
price_rub | Сумма транзакции в рублях, число с 2-мя знаками в дробной части, разделитель целой и дробной части - "." |
share_rub | Вознаграждение партнера в рублях |
order_id | Номер счета, указанный партнером при его выставлении |
transaction_status | Код статуса транзакции, целое число. |
payment_method_id | Идентификатор способа оплаты см. Приложение 1 |


