Финальный этап оформления покупки и оплаты счета клиентом происходит на сайте z-payment с помощью формы оплаты по адресу http://z-payment.com/merchant.php Для её корректного отображения с сайта магазина нужно передать post запрос с правильными параметрами.
Основные параметры, необходимые для передачи на форму оплаты:
Название
HTML Field Name
Обязательный?
Идентификатор магазина
LMI_PAYEE_PURSE
да
Сумма платежа
LMI_PAYMENT_AMOUNT
Назначение
LMI_PAYMENT_DESC
Внутренний номер счета магазина
LMI_PAYMENT_NO
E-mail клиента
CLIENT_MAIL
нет
Код вида платежа
ZP_CODE_OPER
Контрольная подпись
ZP_SIGN
да/нет
Возможные ошибки, отображаемые при переходе к форме оплаты и способы их устранения
1. Ошибка "Не заданы переменные" или не отображается ни одного способа оплаты и данных магазина.
Не задан параметр LMI_PAYEE_PURSE Обязательно передавать ID вашего магазина (LMI_PAYEE_PURSE), иначе клиент не сможет оплаить заказ. Пример простого решения на HTML:
#<input type="hidden" name="LMI_PAYEE_PURSE" value="1111"/>
2. Ошибка "Не задана подпись к данным оплаты!"
Отсутсвует параметр ZP_SIGN в передаваемой форме.
Решение:
Для получения контрольной подписи нужно "склеить" значения полей, передаваемых "Формой запроса платежа", в одну строку в следующем порядке:
Из полученной строки вычисляется контрольная подпись алгоритмом Message Digest 5 (MD5), полученное значение должно представлять последовательность из 32-х шестнадцатеричных цифр.
# Пример реализации:
/*склеиваем 4 параметра и вычисляем строку алгоритмом MD5*/var ZP_SIGN = $.md5(LMI_PAYEE_PURSE + LMI_PAYMENT_NO + LMI_PAYMENT_AMOUNT + PASS);
3. Ошибка "Сумма счета не задана!"
Значение в неправильном формате, например текстовом. Сумма должна передаватьсяя в виде числа, быть больше нуля, дробная часть отделяется точкой. Валюта определяется настройками магазина. Пример: 45.50, 1022.35, 5000.00
Добавить поле с этим параметром
#<input name="LMI_PAYMENT_AMOUNT" type="text" id="summ" value="1.00"/>
4. Ошибка "Примечание к платежу на задано!"
Отсутствует параметр LMI_PAYMENT_DESC в передаваемой форме.
#<input name="LMI_PAYMENT_DESC" type="hidden" value="описание" id="desc" />
5. Ошибка "Номер счета не задан!"
Отсутствует параметр LMI_PAYMENT_NO в передаваемой форме.
В этом поле продавец задает номер счета в соответствии со своей системой учета. Формат - целое положительное число, уникальное для каждого платежа.
# <input name="LMI_PAYMENT_NO" type="hidden" id="num" value= “”/>
Кодировка
Кодировка сайта настройках системы Z-Payment должна совпадать с кодировкой сервере/странице, генерирующей форму вашего магазина. Иначе информация о платеже сохраняется некорректно.
« Назад