Форма оповещения
Форма оповещения о платеже
При создании СКО и изменении его статуса система IntellectMoney отправляет HTTP-запрос на адрес, указанный в поле Result Url в настройках магазина. Отправляемая форма имеет следующие атрибуты и поля (Все значения полей, отправляемые системой IntellectMoney будут транслированы):
- Action - URL информирования о платеже
- Method - POST
- Content-Type - application/x-www-form-urlencode
- encoding - UTF-8
Поля, передаваемые в форме, описаны в таблице формы оповещения о платеже.
После получения запроса от системы IntellectMoney о создании СКО или изменении статуса СКО магазин должен ответить системе IntellectMoney на этот запрос статусом 200 и текстом OK (две буквы латинского алфавита).
Если система IntellectMoney не получит ответ или текст ответа магазина будет отличным от OK, запрос будет направлен повторно.
Система IntellectMoney будет дублировать магазину запрос по одному и тому же событию до тех пор, пока не будет получен ответ OK (с этого момента запрос будет считаться принятым магазином).
В случае, когда система IntellectMoney дублирует сообщения магазину по разным событиям очередность прихода данных сообщений может быть произвольной.
Магазин должен в правильной последовательности, корректно обрабатывать запросы от системы IntellectMoney.
Пример корректного ответа обработчика магазина при успешном принятии уведомления о создании или изменении счета (частичная оплата счета, полная оплата счета и т.д.):
Поля формы оповещения о платеже
Название Имя | Поле HTML формы | Описание | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Номер сайта интернет-магазина | eshopId |
Номер сайта интернет-магазина, на который Пользователь (Покупатель) совершает платеж. | ||||||||||
Номер покупки в системе IntellectMoney | paymentId |
Номер покупки (СКО) в системе IntellectMoney. | ||||||||||
Внутренний номер покупки в интернет-магазине | orderId |
Номер покупки в соответствии с системой учета интернет-магазина, полученный системой с веб-сайта интернет-магазина. | ||||||||||
Номер счета магазина | eshopAccount |
Номер счета интернет-магазина в системе IntellectMoney. На этот счет будут зачислены средства после оплаты покупки. | ||||||||||
Назначение платежа | serviceName |
Назначение платежа в соответствии с системой учета Интернет-магазина, получаемое системой с веб-сайта Интернет-магазина. | ||||||||||
Исходная сумма платежа | recipientOriginalAmount |
Исходная сумма платежа. Разделитель дробной части “.”, точность до копейки (2 знака после разделителя). Не изменяется в процессе оплаты. | ||||||||||
Сумма платежа | recipientAmount |
Сумма, которую получает интернет-магазин. Разделитель дробной части “.”, точность до копейки (2 знака после разделителя). В процессе оплаты может быть изменена. | ||||||||||
Сумма возврата | refundAmount |
Сумма, которая будет передана плательщику при возврате. Разделитель дробной части “.”, точность до копейки (2 знака после разделителя). Так как по одному СКО может быть несколько возвратов, то в данном параметре будет передана сумма по текущему возврату. | ||||||||||
Валюта платежа | recipientCurrency |
Валюта платежа (RUB или TST). | ||||||||||
Статус покупки | paymentStatus |
Статус платежа:
|
||||||||||
Имя Пользователя | userName |
Имя Пользователя (покупателя) выписавшего счет в системе IntellectMoney. | ||||||||||
Email покупателя | userEmail |
Email Пользователя (покупателя) выписавшего счет в системе IntellectMoney. | ||||||||||
Дата и время выполнения платежа | paymentData |
Дата и время реального прохождения платежа в системе IntellectMoney в формате "yyyy-MM-dd HH:mm:ss". | ||||||||||
Способ оплаты | payMethod |
Способ оплаты счета. Возможные значения:
|
||||||||||
ShortPan пластиковой карты | shortPan |
Короткий номер пластиковой карты (первая и четыре последние цифры пластиковой карты), которой был оплачен счет. | ||||||||||
Страна | country |
Страна, в которой была выпущена пластиковая карта. | ||||||||||
Банк эмитент | bank |
Банк, выпустивший пластиковую карту. | ||||||||||
IP адрес | ipAddress |
IP адрес пользователя, совершившего оплату счета. | ||||||||||
Секретный ключ | secretKey |
Значение секретного ключа, известное только интернет-магазину и системе IntellectMoney. Передается, если включена функция "Отправлять секретный ключ". Это поле будет пустым, если параметр "URL Оповещение о платеже" не обеспечивает секретность (используется протокол HTTP, а не HTTPS). | ||||||||||
Контрольная подпись | hash |
Контрольная подпись оповещения о выполнении платежа, которая используется для проверки целостности полученной информации и однозначной идентификации отправителя. Алгоритм формирования описан в разделе "Контрольная подпись данных о платеже". | ||||||||||
Параметры интернет-магазина | Определяется интернет-магазином | Все поля, переданные с веб-сайта интернет-магазина в "Форме запроса платежа", имеющие префикс "UserField_N", "UserFieldName_N" (где N порядковый номер). | ||||||||||
Состояние операции по расписанию | reccurringState |
Отображает состояние операции по расписанию для данного платежа.
|
||||||||||
Исходный номер счета | sourceInvoiceId |
Номер исходного СКО. Дополнительный параметр уведомления, отправляется в счетах которые были созданы операциями по расписанию. |
Формирование контрольной подписи
При формировании контрольной подписи система IntellectMoney "склеивает" значения полей в одну строку разделяя их "::".
Для "Формы оповещения о платеже" склеиваются следующие поля в следующем порядке:
- Номер сайта интернет-магазина (eshopId);
- Номер покупки интернет-магазина (orderId);
- Описание покупки (serviceName);
- Номер счета в системе IntellectMoney (eshopAccount);
- Сумма платежа (recipientAmount);
- Валюта платежа (recipientCurrency);
- Статус платежа (paymentStatus);
- Имя Пользователя (userName);
- Email Пользователя (userEmail);
- Дата и время выполнения платежа (paymentData);
- Секретный ключ (secretKey)
Результата контрольной подписи сформированный при помощи алгоритма MD5, отправляется в параметре hash
в форме оповещения о платеже.