Подключение сайта к walletone

wallet-one-logo

Подключал сайт к Wallet One. Механизм работы агрегатора стандартный, но есть определенные нюансы.

Самым сложным оказалось угадать, как формируется цифровая подпись при обращении к сайту из платежной системы.

Цифровая подпись для отправки данных «собралась» нормально, точно как и описывалось в примере из руководства по подключению. Поэтому проблема с подписью во время приема запроса была неприятной неожиданностью.

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

Было ясно, что я как то не верно собираю подпись, не так как она собиралась у провайдера. Но все было сделано в точности как в примере, данном в руководстве.

Тогда я решил пойти другим путем — я взял нужный код из предлагаемого модуля для Drupal. Он пестрел кучей всяких преобразований вроде urldecode и htmlentities, которых не было в тексте примера в руководстве. И опять — мимо!

В конце концов я решил взять набор $_POST данных и попробовать на нем разные способы вычисления цифровой подписи. Оказалось, что к присланным $_POST данным не следует вообще применять каких либо операций (менять кодировку, исправлять спец. символы и т.п.). Так какого же, господа, рожна вы их насовали в ваши примеры?

Вот мой рабочий пример, переделанный в заготовку для интеграции :

Надеюсь, кому то сэкономит время и нервы.

Мало букафф? Читайте есчо !

Удаление неиспользуемых файлов в Drupal

Октябрь 17, 2024 г.

Особенно полезно, когда вы использовали проект как шаблон для другого сайта и надо почистить данные. Друпал хоть и показывает статистику использования файлов, но удалять файлы не позволяет из реестра /admin/content/files. Напишем небольшой скрипт, ...

Читать

Как определить ip адрес посетителя сайта в PHP

Ноябрь 13, 2015 г.

PHP не имеет каких то специальных средств для определения ip адреса. Эту информацию ему поставляет веб-сервер в виде переменных окружения. Используя ...

Читать

Git pull с передачей логина и пароля

Декабрь 11, 2021 г.

Репозиторий почти всегда требует реквизитов доступа. И, если вы их не храните в локальной конфигурации, то скрипты, содержащие git pull, будут прерываться, запрашивая пару логин/пароль. Передать реквизиты с отдельным ключом нельзя, но можно задать ...

Читать

Нумерация при выборке строк в mySQL

Апрель 24, 2023 г.

В MSSQL есть функция ROW_NUMBER(), которая нумерует строки выборки. В MySQL такой функции пока нет, но мы можем использовать трюк с переменными для достижения нужного эффекта. К примеру, вы хотите выбрать название книг и пронумеровать список. Изначально ...

Читать
 

Комментарии к «Подключение сайта к walletone»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: