Доработка модуля оплаты onpay.ru

Ответить


Этот вопрос предназначен для предотвращения автоматической отправки форм спам-ботами.
Смайлики
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :| :mrgreen: :geek: :ugeek:

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[flash] ОТКЛЮЧЕН
[url] ВКЛЮЧЁН
Смайлики ВКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: Доработка модуля оплаты onpay.ru

Доработка модуля оплаты onpay.ru

Сообщение sasha181 » 2015-12-15 1:14:02

Да, нет. там больше под себя заточено несколько моментов. Если была б вероятность, что будут другим полезны, я бы выложил уже. Да и если быть честным, то не столько количество переделок (их не так уж и много), сколько нехватка времени мешает обновляться всегда. По опыту, это обычно 3-4 часа ночного времени всегда занимало. Сначала обновить, потом перенести изменения на новый код, потом ещё всё протестить.

Доработка модуля оплаты onpay.ru

Сообщение Alex Keda » 2015-12-15 1:08:25

если полезные переделки - выкладывайте.
включу в релиз ...

Доработка модуля оплаты onpay.ru

Сообщение sasha181 » 2015-12-15 1:00:12

Понял. Исправлюсь )
Да, билинг не последний. Есть ряд переделок, которые при обновлениях приходится портировать. Поэтому не с каждым релизом обновляюсь.

Доработка модуля оплаты onpay.ru

Сообщение Alex Keda » 2015-12-11 16:06:09

Код: Выделить всё

$price_final = true;
if($price_final) $amount_field = 'paid_amount';
else $amount_field = 'order_amount';

непонял вот этого...

Отправлено спустя 13 минут 11 секунд:
и, я так понимаю у вас не последняя версия биллинга
поскольку в последней больше нет User[Mobile] - оно вынесено в параметры...

Отправлено спустя 6 минут 48 секунд:
причесал, подправил под последние изменения, закоммитил.

и, просьба следовать в написании функций сложившейся традиции.
т.е. не isset а IsSet
и т.д =)

Доработка модуля оплаты onpay.ru

Сообщение sasha181 » 2015-12-11 15:10:27

Доработал тут немного модуль оплаты onpay.ru

-- добавил возможность переключать комиссию на получателя. В старой версии комиссия бралась с плательщика в любом случае
-- добавлена валидация post запроса md5 подписью при перенаправлении пользователя на onpay для оплаты (для опции Запрет платежей без API в кабинете onpay)
-- если у пользователя есть подтверждённый телефон, он автоматически подставляются в форму оплаты на onpay

Первая опция правда реализована только в самом коде (переменная $price_final)

Стоит отметить, что при её включении в теории должны более корректно обрабатываться платежи, принятые в другой валюте. В варианте, когда комиссию платит плательщик были проблемы с такими платежами. Возникали скорее всего из-за нескольких конвертаций по разным курсам. В результате, уведомление о платеже от onpay содержала другую сумму платежа (отличалось на копейки, но биллинг не принимал в итоге.

А вот в связке 1-й и 2-й доработок сумма берётся из другого поля уведомления о платеже от onpay. В этом поле используется именно та сумма, которая была выставлена по счёту.

В целом, если $price_final добавить в настройки модуля, может кому-то ещё пригодится, т.к. брать комиссию с пользователя в каком-то смысле не солидно, если пытаешься косить под большую компанию ))

Там есть заморочка в коде, на первый взгляд безсмысленная :

Код: Выделить всё

$Send['price_md5'] = number_format($Send['price'], 2, '.', '');
if(substr($Send['price_md5'], -1) == "0") $Send['price_md5'] = number_format($Send['price'], 1, '.', '');

Но смысл в ней есть. Это особенности валидации onpay.
Вложения
hosts.zip
(3.45 КБ) 1882 скачивания

Вернуться к началу