Jump to content

Приватбанк + биллинг


Recommended Posts

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

 

Необходимо написать скрипт на нашей стороне, сотрудники ПБ отказывают в этом, кто уже сталкивался с этим можете помочь?

Link to post
Share on other sites

какой биллинг?

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

скорей всего этот скрипт и будет частью биллинга, т.е. будет проверять оплату если всё ок он же и будет включать

Link to post
Share on other sites

Насколько правильно понял ихним сотрудников, после ввода номера договра будет слаться запрос вот в таком виде

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<Transfer xmlns="http://debt.privatbank.ua/Transfer" interface="Debt" action=" Search">

<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Payer" presearchId="12102348"/>

</Transfer>

 

 

И вот такой должен быть ответ
 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<Transfer xmlns="http://debt.privatbank.ua/Transfer" interface="Debt" action=" Search">

<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="DebtPack">

<PayerInfo billIdentifier="12102348">

<Fio>Иванов Иван Иванович</Fio>

<Phone>+321234214</Phone>

<Address>пр.Ленина 10 кв 5</Address>

</PayerInfo>

<ServiceGroup>

<DebtService metersGlobalTarif="14,65" serviceCode="101" >

<DopData>

<Dop name="fine" value="2.51" />

</DopData>

<CompanyInfo mfo="1242143" okpo="23412341234" account="2600123234" >

<CompanyCode>1</CompanyCode>

<CompanyName>КП Воддоканал</CompanyName>

</CompanyInfo>

<DebtInfo amountToPay="0.01" debt="0.01">

<Year>2012</Year>

<Month>6</Month>

<Charge>0.01</Charge>

<Balance>0.01</Balance>

<Recalc>0.01</Recalc>

<Subsidies>0.01</Subsidies>

<Remission>0.01</Remission>

<LastPaying>0.01</LastPaying>

</DebtInfo>

<MeterData >

<Meter previosValue="213" tarif="0.01" delta="2341234" name="Холодная вода   кухня"/>

</MeterData>
<ServiceName>
Холодныя вода</ServiceName>

<Destination>Оплата за услугу "Холодная вода"</Destination>

<PayerInfo billIdentifier="12102348" ls="12102348">

<Fio>Иванов Иван Иванович</Fio>

<Phone>+321234214</Phone>

<Address>пр.Ленина 10 кв 5</Address>

</PayerInfo>

</DebtService>

...

</ServiceGroup>

</Data>

</Transfer>

 


 

Edited by SuperSonic
Link to post
Share on other sites

Киньте в личку, что за биллинг. Могу написать скрипт.

Если биллинг самописный - нужна структура БД.

 

P.S. скрипт на чем нужен PHP, Perl, или без разницы?

Edited by masters
Link to post
Share on other sites

 

Биллинг самописный

Открываю тайну: https://docs.google.com/document/d/1GHjRFyLQM_h59IyaNZVVxYE1cxMPAwb336KKpueQa1U/edit?hl=ru

 

Отличный документ, а не подскажете, есть ли у них тестовые сервера как в НБК? С которых можно было бы проводить тестирование платежей? 

Link to post
Share on other sites

 

Отличный документ, а не подскажете, есть ли у них тестовые сервера как в НБК? С которых можно было бы проводить тестирование платежей?

Нет, мне тестовой песочницы не давали,  да и по сути не к чему. Ничего ультранеобычного там не происходит - ловим нечто гетом/постом, парсим, отвечаем.

Скрипт поддержки приватовских терминалов/привата24, пишется с дебуженьем на глаз по ихним же докам - за пару часов, с перерывами на пожрат.

 

Энивей при подключенни провайдера, они проводят внешнее тестирование и свистят, что мол "бро, ты нам корявую XML-ку возвращаешь".

Link to post
Share on other sites

 

Биллинг самописный

Открываю тайну: https://docs.google.com/document/d/1GHjRFyLQM_h59IyaNZVVxYE1cxMPAwb336KKpueQa1U/edit?hl=ru

 

 

Спасибо, но вопрос был поставил конкретно как принять и как отправить, эти все доки у меня  есть

 

Сейчас я на стадии при обработки запроса

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<Transfer xmlns="http://debt.privatbank.ua/Transfer" interface="Debt" action="Search">

<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Payer">

<Unit name="bill_identifier" value="55666311147" />

</Data>

</Transfer>

 

 

т.е. ихняя ПС шлёт на мой http://vedushiy-provayder-ukraini/pb/pb.php вот этот запрос

чё писать в pb.php?)

Edited by SuperSonic
Link to post
Share on other sites

 

Спасибо, но вопрос был поставил конкретно как принять и как отправить, эти все доки у меня  есть

Конкретно? Взять и принять. Ответить чем просят - документировано же. (подскажу - страницей ниже).

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

 

 

чё писать в pb.php?)

Код. На языке PHP. Да.

Link to post
Share on other sites

Ну если бы это:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Transfer xmlns="http://debt.privatbank.ua/Transfer" interface="Debt" action="Search">
<Data xmlns:xsi="http://www.w3.org/20...Schema-instance" xsi:type="Payer">
<Unit name="bill_identifier" value="55666311147" />
</Data>
</Transfer>

было в виде htttp://bla.bla.bla/pb/pb.php&bill_identifier=55666311147 - не было бы вопросов, $_GET и погнал, а как принять это в виде xml я хз...

Edited by SuperSonic
Link to post
Share on other sites

Киньте в личку, что за биллинг. Могу написать скрипт.

Если биллинг самописный - нужна структура БД.

 

P.S. скрипт на чем нужен PHP, Perl, или без разницы?

интересует для utm4 (структура базы)

Edited by Mechanik
Link to post
Share on other sites

 

Киньте в личку, что за биллинг. Могу написать скрипт.

Если биллинг самописный - нужна структура БД.

 

P.S. скрипт на чем нужен PHP, Perl, или без разницы?

интересует для utm4 (структура базы)

 

киньте скайп в личку

Link to post
Share on other sites

 

было в виде htttp://bla.bla.bla/pb/pb.php&bill_identifier=55666311147 - не было бы вопросов, $_GET и погнал, а как принять это в виде xml я хз...

Тоесть вы не понимаете, как банально разобрать XML-ку?

 

Ну тогда единственное, что могу порекомендовать найти программиста, который хоть немного профпригоден.

Link to post
Share on other sites

Да как парсить файлы или посылать запрос и его обработать - это не надо.

 

Мне надо как принять запрос и обработать (не посылая его изначально)

Edited by SuperSonic
Link to post
Share on other sites

Мне надо как принять запрос и обработать (не посылая его изначально)

 

Дать работникам привата ссылку к Вашему скрипту.  :facepalm:

Edited by masters
Link to post
Share on other sites

Топікстартер мабуть шукає щось типу цього

//Sample XML

//<message type="dr">
//<adn>123</adn>
//<msisdn>9820202020</msisdn>
//<tid>1234567890</tid>]
//<ccode>123SMSPULL2000</ccode>
//<status>1</status>
//<tdate>2012-02-21 12:31:20</tdate>
//</message>

$body = file_get_contents('php://input');
$xml = simplexml_load_string($body);

//CP shortcode
$adn = $xml->adn;
//Handset number
$msisdn = $xml->msisdn;
//Transaction Id
$tid = $xml->tid;
//Charging code
$ccode = $xml->ccode;
//DR status
$status = $xml->status;
//Transaction date
$tdate = $xml->tdate;

вкрадено звідси http://blog.djakapm.com/2012/07/13/how-read-xml-from-post-request-with-php/

Link to post
Share on other sites

Да, только у меня запрос
 

 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<Transfer xmlns="http://debt.privatbank.ua/Transfer" interface="Debt" action=" Search">

<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Payer">

<Unit name="bill_identifier" value="55666311147" />

</Data>

</Transfer>

 

 

 

как отсюда вытащить "bill_identifier" ?

Link to post
Share on other sites

В найпростішому випадку, якщо Unit тільки один і перевіряти name="bill_identifier" непотрібно, то щось таке

$attr = $xml->Transfer->Data->Unit->attributes();
$id = $attr['value'];
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...