нет совсем не это.
Я хочу чтобы на сайте через интеркассу человек пополнил "карту постоянного клиента" которая у него уже есть на момент создания этой темы и для которой (для карты имеется ввиду) уже разработан механизм "удаленного взаимодействия", пополнения счета, он описан в документации (/ru/forum/comment/10837835)
"карта постоянного клиента" - имеется ввиду карта такая пластиковая там скидки, счет, накопительная система, ну как в супермаркетах, финтес залах и т.д.
Все верно!
Какие-нибудь предложения по поводу?
Можно считать что Интеркасса уже подключена - с ней проблем не возникло.
Заказчик хочет на ту сумму которая была зачислена на Интеркассу, пополнить "карту постоянного клиента", которая идет пластиковая, которую обслуживает отдельная организация. Собственно от представителя этой организации я и получил материал по приготовлению DLL.
вопрос как происходит оплата в ресторане меня не касается )
задача такая - у постоянного клиента есть карта (я не знаю кто ее выдал как и зачем). Он приходит домой и решает пополнить карту через интернет - заходит на сайт, совершат платеж в Интеркассе, скажем карточной Visa, и эти деньги зачисляются ему на счет на карте.
что он будет делать с этими деньгами на карте мне тоже не интересно )
а что по 54-ФЗ? я нашел только это:
... согласно Федеральному закону уточнена подсудность уголовных дел, связанных с контрабандой наркотических средств, психотропных веществ, их прекурсоров или аналогов и незаконным производством, сбытом или пересылкой наркотических средств, психотропных веществ или их аналогов.
Оплата производится на сайте через Интеркассу - с ней как бы все ясно )
решено было по получению подтверждения о зачислении средств на счет в интеркассе производить пополнение карты.
я собственно вебмастер )
Кстати С ДНЕМ ПРОГРАММИСТА, ТОВАРИЩИ!
опишу более подробно:
в процессе подключения системы оплаты к сайту ресторана, заказчик сказал - О! а давайте чтоб карты пополнялись автоматически а не вручную менеджером.
я переговорил с менеджером карточного сервиса, который обслуживает этот ресторан и тот ответил что у них все готово на этот случай - API есть.
Вот через несколько дней я получаю этот "API с документацией" - архив в котором: exe файл, ini файл настроек и txt документ (собственно и являющийся документацией по словам менеджера. Приводил содержание файла здесь /ru/forum/comment/10837835)
Я подумал что возможно я чего-то не знаю, возможно стоит написать dll (решил это исходя из "документации"), запустить exe файл на своем сервере, чтоб тот связался с сервером и получил данные.
После таких размышлений мне пришел в голову вполне логичный вопрос - как это сделать?
Я не отрицаю того что мои умозаключения могут быть в корне не верными.
Вполне вероятно что менеджер неадекватен в этих вопросах.
По сути я хочу знать что делать - послать заказчика или нет?
я бы так описал схему:
[сайт]<===>[dll]<===>[тут что?]<===>[сервер обработки карт]
вот собственно вся функциональность: )
DLL, эмулирующая работу сервера персональных карт для касс.
DLL должна предоставить функции:
----------------------------------------------------------------------
function GetCardInfoL( Card: Int64; Restaurant, UnitNo: DWORD; Info: Pointer ): Integer; stdcall;
возвращает информацию о карте
входные параметры:
Card - номер карты
Restaurant - код ресторана
UnitNo - номер кассы
Info - адрес структуры, которую функция должна заполнить
если карта существует
результат
0 - без ошибок, структура Info заполнена
1 - карта не существует
Структура, на которую указывает Info:
Word размер структуры = 644 байт (это поле заполнено при вызове)
Byte Карта существовала, но была удалена
0 - нет, и сейчас есть
1 - да, удалена
.....
-----------------------------------------------------------------------
function TransactionL( Account: DWORD; Info: Pointer ): Integer; stdcall;
проводит транзакцию для карты
Account - номер счета
Info - адрес структуры, содержащей информацию о транзакции
0 - без ошибок
1 - транзакция не проведена
Word размер структуры = 104 байт
DWORD номер чека
Необязательная функция
function GetCardImageL( Account: DWORD; Info: Pointer ): Integer; stdcall;
Возвращает файл с картинкой для карты, например фотографию владельца
или его подпись.
Тип изображения - BMP, JPEG, GIF.
Кол-во пикселов - до 64000, если больше - будет промасштабировано.
1 - нет счета либо нет картинки
Word размер структуры = 258 байт
256 байт Asciiz строка - имя файла с картинкой
Дополнительно можно предоставить процедуры:
procedure Init; - вызовется после загрузки DLL
procedure Done; - вызовется перед выгрузкой DLL
=====================================================================
С сайтом все ясно, с php тоже.
dll какбы нет, ее и нужно написать, есть инструкция с требованиями что должно содержать dll
как я понимаю php должен вызвать exe файл который подключит библиотеку, в которой описаны функции и в итоге php получит результат выполнения функции.
вопрос в том на каком языке написать в dll?
ну так а какого специалиста нанаять? PHP программиста или C++ или может javascript?
не понятен сам процесс взаимодействия exe-dll-php и кто его должен реализовать?