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

wallet-one-logo

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

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

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

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

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

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

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

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

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

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

Генератор случайной строки в одну строку кода на PHP

Ноябрь 21, 2018 г.

Задача генерации случайной строки возникает часто в алгоритмах связанных с безопасностью. Начиная с версии PHP 5.3, стала доступна функция [crayon-6a28e515c60e0789409458/] которая позволяет генерировать цепочку псевдослучайных байтов произвольной длины. ...

Читать

Создание публикации по отправленным данным Contact form 7

Июнь 6, 2018 г.

Это продолжение статьи о сохранении данных формы WPCF7, где я рассказал о том зачем это может понадобиться и подходе к реализации. Здесь мы перейдем уже более техническим вещам, к коду. Итак, нам необходимо создать публикацию на основе данных, ...

Читать

Как получить строку из R.string по имени

Ноябрь 30, 2022 г.

В общем случае, когда вы находитесь в контексте Activity, это выглядит так: [crayon-6a28e515c642a179729305/] При этом вызов getResources() в этом контексте и необязателен, т.е. работает и так: [crayon-6a28e515c6430964689608/] Если вы находитесь ...

Читать

Поиск и замена терминов. Пример реализации.

Август 15, 2016 г.

Задача поиска и замены каких либо терминов в тексте кажется на первый взгляд довольно простой в PHP.  Есть очень мощные инструменты вроде str_replace, а также поиск и замена с помощью регулярных выражений, например, preg_replace и preg_replace_callback. ...

Читать
 

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

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



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