Название: Модуль работы с Приват Банком Отправлено: Maks от 05 Июля 2010, 12:41:13 У приват банка новый Приват 24 для корпопатива и там появился API.
вот что написано на привате: Уважаемые клиенты, партнеры, разработчики! Рады сообщить Вам, что мы становимся еще более открытыми :-) и готовим набор финансовых и информационных API, которые позволят подключать к нашим платежным сервисам и базам данных любые интернет-сервисы, киоски, программы. первые API уже доступны! пользуйтесь на здоровье. За технической поддержкой обращайтесь в комментариях, на почтовый ящик api@privatbank.ua или в онлайн-поддержку. Обмен даными осуществляется XML запросами на адрес https://api.privatbank.ua:9083/p24api/xxxxxx, где xxxxxx - идентификатор типа операции, которая должна быть проведена в результате запроса. Внимание! Все кириллические символы, передаваемые по API должны быть представлены в кодировке UTF-8 и закодированы как URL-encoded На данный момент доступны такие идентификаторы (точки доступа): pay_ua - платёж по Украине pay_visa - платёж на карту visa любого банка pay_pb - платёж на карту Приватбанка prp_skype - покупка ваучера Skype prp_ks - покупка ваучера Киевстар prp_mts - покупка ваучера МТС prp_pnet - покупка ваучера PeopleNet prp_ukash - покупка ваучера Ukash rest_yur - выписки по счёту мерчанта - юрлица rest_fiz - выписки по счёту мерчанта - физлица prp_skypeopt - оптовая покупка ваучеров Skype balance - текущий баланс по счёту мерчанта wu_send - отправка перевода Western Union pm_send - отправка перевода PrivatMoney mg_send - отправка перевода MoneyGram directfill - пополнение мобильной связи на свободную сумму sendsms - отправка sms (стоимость 1 sms - 20 коп.) depozilka - открытие депозита-копилки ishop_pstatus - проверка статуса платежа отправленного мерчанту через интернет-эквайринг cardlist - Список карт в аккаунте мерчанта В теле запроса передается xml следующей структуры: 1. Запрос списка реквизитов: <?xml version="1.0" encoding="UTF-8"?> <request version="1.0"> <merchant> <id>XXXX</id> <signature>YYYY</signature> </merchant> <data> <oper>prp</oper> </data> </request> где: XXXX - id партнера платежей, YYYY - сигнатура запроса Сигнатура запроса рассчитывется следующим образом (PHP): $sign = sha1(md5($data.$password)); - где $data - содержимое тега <data> данного запроса а $password - личный пароль мерчанта, полученный им при регистрации. Ответ: <?xml version="1.0" encoding="UTF-8"?> <response version="1.0"> <merchant> <id>XXXX</id> <signature>YYYY</signature> </merchant> <data> <oper>prp</oper> <props> <prop desc="eee" name="aaa" type="bbb" size="ccc" value="ddd" /> <prop desc="eee" name="aaa" type="bbb" size="ccc" value="ddd" /> <prop desc="eee" name="aaa" type="list" size="ccc"> <value desc="eee">sss</value> <value desc="eee">ddd</value> </prop> </props> </data> </response> где: aaa - имя реквизита платежа, bbb - тип реквизита (текст - txt, многострочный текст - txtar, целое число - int, список - list, cумма - amt, дата/время - date), ccc - максимальная длина значения реквизита (в символах), ddd - значение реквизита по умолчанию (для типа list задаются несколько значений во вложенных тегах), eee - название реквизита или варианта значения (для отображения в интерфейсе клиента). Число реквизитов может быть любым. 2. Команда на выполнение операции: <?xml version="1.0" encoding="UTF-8"?> <request version="1.0"> <merchant> <id>XXXX</id> <signature>YYYY</signature> </merchant> <data> <oper>cmt</oper> <wait>wwww</wait> <test>ttt</test> <payment id="qqqq"> <prop name="aaa1" value="ddd1" /> <prop name="aaa2" value="ddd2" /> </payment> </data> </request> где qqqq - уникальный идентификатор платежа, присвоенный партнером платежей. Повторяется в ответе на запрос, сохраняется в базе Приват24, служит для однозначного сопоставления операций на стороне партнера платежей с операциями в приват24. aaa1, aaa2 - имена реквизитов (должны совпадать с именами, полученными в ответе на запрос 1.), ddd1, ddd2 - значения реквизитов. ttt - признак тестового платежа (0 - нет: платёж будет проведён немедленно, 1 - платёж будет проверен на корректность, но не будет проведён) . wwww - интервал ожидания перед отправкой платежа на проводку (в секундах). Внимание: ВСЕ поля, полученные в ответе на первый запрос должны быть обязательно заполнены и переданы во втором запросе. Пример построения запроса на выполнение операции исходя из ответа на запрос списка реквизитов Ответ: <?xml version="1.0" encoding="UTF-8"?> <response version="1.0"> <merchant> <id>XXXX</id> <signature>YYYY</signature> </merchant> <data> <oper>cmt</oper> <payment id="qqqq" state="rrrr" message="mmmm" ref="ffff" amt="aaaa" ccy="ccccc" comis="sssss" code="dddd"/> </data> </response> где: rrrr - состояние платежа (1 - проведён, 0 - забракован), mmmm - расширенное сообщение о состоянии платежа, может содержать описание причины, из-за которой платёж был забракован, ffff - внутренний рефреренс платежа в приват24 (если платёж забракован - пустое поле), aaaa - сумма платежа (без комиссии), ccccc - валюта операции, sssss - сумма комиссии банка по данному типу платежа, dddd - код ваучера (для prepaid-операций). Пакетный режим передачи платежей API позволяет передавать на проводку платежи в пакетном режиме. При этом второй запрос может включать любое число тегов <payment> c различными id. Ответ также будет содержать соответствующее число тегов с id равными id платежей в запросе. id платежей должны быть уникальными в пределах запроса. В случае нарушения этого правила второй платёж с этим же id будет забракован. В пакетном режиме могут передаваться платежи только одного типа с одинаковым набором реквизитов. И т.д .. Появился вопрос, а можно теперь автоматизировать провод платежей автоматом? Название: Re: Модуль работы с Приват Банком Отправлено: versus от 05 Июля 2010, 13:17:38 А комменты под этим объявлением на приват 24 читал ?
Любое нововведение привата должно пройти период бэтатестирования. Оно обычно длится от года до .... Если вы желаете быть бесплатным бетатестером привата, у вас стальные нервы для общения с ТП и поиском своих платежей, если вам некуда деть время и деньги, то все можно сделать, было бы желание и возможности. Название: Re: Модуль работы с Приват Банком Отправлено: Maks от 05 Июля 2010, 13:38:22 Чего все так грубо.
Я думал те что платежи не пройдут через АПИ то их будет видно как и ранее как и все платежи, и можно будет провести руками. Название: Re: Модуль работы с Приват Банком Отправлено: versus от 06 Июля 2010, 16:41:46 Видно будет где ?? Видно будет как ??
Кейс 1: Пришло 300 платежей, апи банка выдала 299. Скрипт отработал и сказал олрайт все проведено ваш путь поиска почему не прошел 1 платеж в студию.... Кейс 2: Программисты привата нашли багу и срочно залепили заплаткой кусок апи, при этом заглючило другое апи. Вы обнаружили это когда прошло 400 платежей с ошибкой Вааши действия ?? Кейс 3: Программисты привата выдают через апи мусор, из-за этого ваша программа не работает. На ваше замечание в приват, вас шлют лесом. Ваши действия ?? Кейс 4: Программисты поменяли апи, вы исправили программу, программисты поменяли апи, вы исправили программу, программисты поменяли апи...... Ваши действия по поддержке модуля ? |