HTML-форма

Вставка формы на сайт

Один из основных методов интеграции платежной платформы PayKeeper с сайтом — это вставка обычной HTML формы. При этом можно использовать собственную верстку, CSS стили и элементы оформления, что позволяет достичь значительной гибкости создаваемой формы при сохранении простоты интеграции.

Данный метод будет в первую очередь полезен, если нужно:

  • сделать собственный дизайн формы оплаты;
  • передавать в PayKeeper дополнительную информацию о платеже;
  • собственная сложная логика инициализации оплаты;
  • провести интеграцию с сайтом, который не использует стандартную CMS систему;

Ваша форма оплаты на сайте должна иметь метод POST и action, указывающий на URL /create/ вашего сервера PayKeeper (пример: http://demo.paykeeper.ru/create/). Форма может передавать следующие поля:

  Параметр Назначение Обязательный
1 sum Сумма к оплате Да
2 clientid Идентификатор клиента Нет
3 orderid Номер заказа Нет
4 service_name Название услуги Нет
5 client_email Адрес электронной почты Нет
6 client_phone Телефон плательщика Нет
7 pstype Тип платёжной системы Нет
8 sign Цифровая подпись запроса Нет
9 lang Язык оповещений и шлюза банка Нет

Ниже приведён пример HTML-кода простой формы оплаты:

Вы можете вставить данный HTML-код на любую страницу вашего сайта. Отображаться он будет следующим образом:

Введите сумму оплаты:
Введите номер заказа:
Введите название услуги:

 
Приведенный пример формы функционален. Форма настроена для работы с нашим демо шлюзом. Чтобы переключить форму на ваш сервер нужно указать вместо http://demo.paykeeper.ru  адрес вашего сервера.

С помощью CSS стилей форме можно придать любое необходимое оформление. К форме, отображенной выше, применены следующие стили:

Проверка цифровой подписи запроса

По умолчанию, paykeeper не проверяет цифровую подпись запроса. Если данная проверка необходима, её включение происходит отдельно.

Цифровая подпись представляет собой SHA-256 хэш от конкатенации параметров запроса 1-6 (если параметра нет, то он подставляется как пустая строка) и секретного слова. Результат хэширования записывается в виде строки из шестнадцатеричных цифр. Секретное слово задаётся в настройках в личном кабинете PayKeeper, в разделе «Получение информации о платежах», при выборе способа получения уведомлений «POST-оповещения».

Пример кода на PHP для составления цифровой подписи запроса:

Язык оповещений и шлюза банка

Страница ввода реквизитов карты на стороне банка может отображаться на разных языках. Для его изменения в параметре lang передаётся двубуквенный код требуемого языка. Например, en для английского языка. Клиент также получит оповещение об оплате от PayKeeper на выбранном языке.

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