Ошибка #7

Показывать клиенту ответ местного оператора на запрос проверки параметров платежа

Added by Александр Королёв 274 days ago. Updated 113 days ago.

Status:Новый Start:10/30/2009
Priority:Нормальный Due date:
Assigned to:- % Done:

0%

Category:- Spent time: -
Target version:-

Description

Очень востребована следующая функциональность:

Если клиент ввёл номер заказа у местного оператора, то обратиться к сервису местного оператора, передав ему номер заказа, в ответ получить сумму платежа и информацию для показа клиенту, которую он может прочитать и решить, платить ему или не платить

History

Updated by spawn 2 death 246 days ago

У нас данный функционал реализован на собственном платежном сервере. Вот пример конфига operators.xml

<operator id="10005" cyber_id="1">
<name>Астел Телевидение</name>
<name_for_cheque>ООО "АСТЕЛ"</name_for_cheque>
<inn_for_cheque>4246008279</inn_for_cheque>
<cheque filename="asteltv.xml"/>
<limit min="1" max="30000"/>
<fields>
<field id="100" type="masked" minlength="5" maxlength="5">
<name>Номер счета</name>
<mask>*****</mask>
<comment>[b]Внимание![/b] Номер счета [b]5[/b] цифр.</comment>
</field>
</fields>
<processor type="Cyberplat" id="1" keys_id="1" offline="0" showAddInfo="1">
<check amount-value="10">
<url>http://xxxxxxx.ru/bill/asteltv/asteltv_pay_check.php</url>
<request-property name="NUMBER" field-id="100"/>
</check>
<payment with-check="1">
<url>http://xxxxxxx.ru/bill/asteltv/asteltv_pay.php</url>
<request-property name="NUMBER" field-id="100"/>
</payment>
<status>
<url>http://xxxxxxx.ru/bill/asteltv/asteltv_pay_status.php</url>
</status>
</processor>
<image>tel_astel-asud.png</image>
<rootmenuimage>tel_astel-asud.png</rootmenuimage>
<comission>
<part value="15"/>
</comission>

Написаны свои скрипты, используется своя пара ключей (keys_id="1"), в конфиге добавлено:

<keys id="1">
<hasp>0</hasp>
<SD>xxxxxx</SD>
<AP>yyyyyy</AP>
<OP>zzzzzz</OP>
<serial_no>nnnnnnn</serial_no>
<pub_key>.\keys\pubkeys1.key</pub_key>
<sec_password>321654987</sec_password>
<sec_key>.\keys\secret1.key</sec_key>
</keys>

Всё работает как часы. Абоненту после ввода расчетного счета показывается его адрес, если адрес совпадает, то абонент платит, нет - отказывается.
Всё сделано на php на freebsd. Правда пришлось писать программу для проверки подписи ключами, реализовал на си, до этого на си не программил, тем более под фряхой.

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

Updated by korolev korolev 246 days ago

spawn 2 death написал(а):

Абоненту после ввода расчетного счета показывается его адрес, если адрес совпадает, то абонент платит, нет - отказывается. Всё сделано на php на freebsd. Правда пришлось писать программу для проверки подписи ключами, реализовал на си

Большое спасибо за информацию. Думал, что такое кибером не поддерживается.
Есть ли шанс попросить у Вас пример кода на PHP, который отрабатывает такой запрос?
Удивлён, что программу для проверки подпись пришлось писать самому, разве кибер не предоставляет её операторам?

Updated by Valery - 113 days ago

korolev korolev написал(а):

spawn 2 death написал(а):

Абоненту после ввода расчетного счета показывается его адрес, если адрес совпадает, то абонент платит, нет - отказывается. Всё сделано на php на freebsd. Правда пришлось писать программу для проверки подписи ключами, реализовал на си

Можно подробнее про свои ключи. А ответ в сторону терминала подписывается? Очень хотелось бы пообщаться. Не сочтите за труд мой email.

Also available in: Atom PDF