Verificarea soldului
Balanța contului
Funcțiuonalul descris în această paghină vă oferă posibilitatea de a monitoriza balanța conturilor dvs.
https://uapi.bpay.md/v1/balance
Solicitarea este de tip POST. Sunt necesare date precul login și parola pentru identificare. Dacă aveți nevoie de un anumit cont, trebuie să indicați numărul contului, în caz contrar veți obține informație despre toate conturile deținute de dvs. Puteți alege formatul de răspuns JSON, XML, TEXT.
Exemplu de cod PHP:
$json = [ 'login' => $this->login, 'password' => $this->password, 'format' => 'json', 'account' => '2222222', ];
function request(string $url, array $json){ $url = $url . "?format={$json['format']}"; unset($json['format']); $jsonrequest = json_encode($json); $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_USERAGENT, "User-Agent=Mozilla/5.0 Firefox/1.0.7"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_POSTFIELDS, $jsonrequest); $_PROVIDER_ANSWER = curl_exec($curl); return $_PROVIDER_ANSWER; }
Parametru | Tipul | Valoarea | Descriere |
---|---|---|---|
login | String | Obligator | Login-ul indicat la înregistrarea unui cont în sistemul BPay.md, folosit de asemenea și pentru autentificare în cabinetul personal |
password | String | Obligator | Parola indicată la înregistrarea unui cont în sistemul BPay.md, folosit de asemenea și pentru autentificare în cabinetul personal |
format | String | Opțional | Formatul răspunsului returnat la solicitare. Disponibile JSON, XML, TEXT. Implicit JSON |
account | Number | Opțional | Numărul contului a cărui informație este solicitată. În caz că lipsește răspunsul va conține informație despre toate conturile utilizatorului identificat |
{ "code": 100, "text": "success", "result": [ { "account": 11999019, "sum": "49547.00", "valute": "498", "valutename": "MDL" } ] }
» Формат: XML
<?xml version="1.0" encoding="utf-8"?> <response> <code>100</code> <text>success</text> <result> <account>11999019</account> <sum>49547.00</sum> <valute>498</valute> <valutename>MDL</valutename> </result> </response>
{ "code": 100, "text": "success", "result": [ [ { "account": "11861932", "sum": "-5302.32", "valute": "498", "valutename": "MDL" }, { "account": "11999019", "sum": "49547.00", "valute": "498", "valutename": "MDL" } ] ] }
» Format: XML
<?xml version="1.0" encoding="utf-8"?> <response> <code>100</code> <text>success</text> <result> <item key="0"> <account>11861932</account> <sum>-5302.32</sum> <valute>498</valute> <valutename>MDL</valutename> </item> <item key="1"> <account>11999019</account> <sum>49547.00</sum> <valute>498</valute> <valutename>MDL</valutename> </item> </result> </response>
<?php class UserApi{ private $login = 'Login'; private $password = 'Password'; private $apiURL = 'https://uapi.bpay.md/v1/balance'; public function balance(){ $json = [ 'login' => $this->login, 'password' => $this->password, 'format' => 'xml', ]; return $this->request($this->apiURL , $json); } private function request(string $url, array $json){ $url = $url . "?format={$json['format']}"; unset($json['format']); $jsonrequest = json_encode($json); $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_USERAGENT, "User-Agent=Mozilla/5.0 Firefox/1.0.7"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_POSTFIELDS, $jsonrequest); $_PROVIDER_ANSWER = curl_exec($curl); return $_PROVIDER_ANSWER; } } $ApiClient = new UserApi(); echo $ApiClient->balance();
Obținerea unui extras de cont
Această solicitare este utilizată pentru a primi un extras de cont pentru contul specificat. account.
Datele sunt indicate după cum urmează.
POST
https://www.bpay.md/user-api/getpaymentshistory
<request> <auth type="1"> <login>your_login</login> <password>your_password</password> </auth> <account>1</account> <date_start>1</date_start> <date_end>1</date_end> <state>1</state> <service>1</service> <date_type>1</date_type> </request>
» Format: JSON
POST
https://www.bpay.md/user-api-v2/
$json = [ 'auth' => [ 'login' => 'Login', 'password' => 'Password', ], 'account' => '11656558', 'date_end' => '2019-04-24', 'date_start' => '2019-04-24', 'aditional' => [ 'service' => 'bpay', 'date_type' => 1, 'state' => 100, ] ];
Parametru | Tipul | Valoarea | Descriere |
---|---|---|---|
auth | String | Obligator | Conține login-ul și parola contului a cărui informație se solicită. Cîmpurile login și password |
login | String | Obligator | Login-ul indicat la înregistrarea unui cont în sistemul BPay.md, folosit de asemenea și pentru autentificare în cabinetul personal |
password | String | Обязательно | Parola indicată la înregistrarea unui cont în sistemul BPay.md, folosit de asemenea și pentru autentificare în cabinetul personal |
account | Number | Obligator | Numărul contului în sistemul de plăți electronice BPay.md |
date_start | Date | Obligator | Informația este solicitată începînd cu data indicată. Trebuie să fie mai mică decît date_end |
date_end | Date | Obligator | Informația este solicitată pe intervalul de timp începînd cu date_start și pînă la data indicată în date_end. Trebuie să fie mai mare decît date_start |
state | Number | Opțional | Starea plății. Dacă lipsește lipsește, vor fi primite toate plățile disponibile. Codurile plăților și informația despre acestea este indicată mai jos. |
service | Number | Opțional | Identificatorul unic a serviciului în favoarea căruia a fost efectuată plata. În caz că lipsește, răspunsul va conține toate plățile disponibile. |
date_type | String | Opțional | În caz că lipsește, răspunsul va conține plățile conform la marca de timp în carea a fost creat (addtime). Dacă este specificat 1, vor fi primite plăți conform la marca de timp din statutul final a acestora (statetime) |
După formarea corectă a cererii, veți primi un răspuns cu date.
» Format: XML
<?xml version='1.0' encoding="utf8"?> <result> <code>100</code> <text>Success</text> <payments> <payment trid="111111" addtime="2016-11-23 13:09:10" statetime="2016-11-23 18:09:10" service=" Infocom" serviceaccount=" 1123548895" amount=" -1.00" description=" achitarea serviciilor Infocom" receipt=" 101496327083089" balance=" 497.98"> guid="3214b276-b965-11e7-b414-525400464f7d"> </payment> <payment trid="1115669" addtime="2016-11-25 20:09:10" statetime="2016-11-25 20:10:10" service=" bpay" serviceaccount=" 1113333555" amount=" -100.00" description=" achitarea serviciilor bpay" receipt=" 201496327083089" balance=" 500.98"> guid="3214b273-b965-11e7-b414-525400464f7d"> </payment> </payments> <total> <total_sum>-101</total_sum> <total_payments>2</total_payments> </total> </result>
» Format: JSON
{ "code":100, "text":"OK", "payments":[ { "TrID":"5701299", "AddTime":"2020-04-21 09:04:03", "Service":"bpay", "ServiceAccount":"123", "ToAmount":"10.00", "Description":"Описание товара", "Receipt":"104557702648042", "FromAcc":"4", "ToAcc":"11042704", "State":"100", "Context":null, "RestFrom":"9990.00", "RestTo":"12022.58", "Guid":"0c74780d-83af-11ea-bf30-0200c0a87304", "StateTime":"2020-04-21 11:09:16" }, { "TrID":"5701321", "AddTime":"2020-04-21 20:07:42", "Service":"bpay", "ServiceAccount":"11600653", "ToAmount":"10.00", "Description":"Описание товара", "Receipt":"105901732459573", "FromAcc":"4", "ToAcc":"11042704", "State":"100", "Context":"{"rettrid": 5701322}", "RestFrom":"9957.59", "RestTo":"11916.82", "Guid":"c2574c76-840b-11ea-bf30-0200c0a87304", "StateTime":"2020-04-21 20:41:43" } ], "total":[ { "TotalToAmount":"39.09", "CountPayments":"4" } ] }
Parametru | Descriere |
---|---|
code | Starea cererii. Toate stările pot fi vizualizate în tabelul de mai jos. |
text | Descrierea detaliată a parametrului code |
trid | Identificatorul unic a plății |
addtime | Data și ora plății |
statetime | Data și ora cînd a fost atribuit statutul final a plății |
service | Identificatorul serviciului achitat |
serviceaccount | Factura/numărul facturii specificat de plătitor |
amount | Suma plății |
description | Descrierea plății |
receipt | Numărul cecului |
balance | Balanța contului în sistemul BPay.md după efectuarea plății |
guid | (Globally Unique Identifier) — identificatorul unic cu lungimea de 128-bit |
total_sum | Suma totală a plăților pentru perioada selectată |
total_payments | Suma totală a plăților pentru perioada indicată |
Код | Descriere |
---|---|
100 | Cerere finisată cu succes |
-10 | Solicitarea nu este permisă pentru contul indicat |
-20 | Identificare nereusită |
-26 | Nu este posibilă solicitarea plăților efectuate mai devreme de 40 de zile |
-80 | Eroare la selectarea datelor |
-85 | JSON-ul din cerere este incorect |
<?php $xml=" <request> <auth type=\"1\"> <login>myusername</login> <password>mypassword</password> </auth> <account>11212640</account> <date_start>2016-11-23 13:12:00</date_start> <date_end>2016-11-25 23:59:59</date_end> </request>"; $resp=request($xml, 'https://www.bpay.md/user-api/getpaymentshistory'); echo $resp; function request($xmlrequest, $address) { $curl = curl_init(); curl_setopt($curl,CURLOPT_CUSTOMREQUEST,"POST"); curl_setopt($curl,CURLOPT_POST, 1); curl_setopt($curl,CURLOPT_URL, $address); curl_setopt($curl,CURLOPT_USERAGENT,"User-Agent=Mozilla/5.0 Firefox/1.0.7"); curl_setopt($curl,CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl,CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl,CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl,CURLOPT_POSTFIELDS, $xmlrequest); $_PROVIDER_ANSWER = curl_exec($curl); return $_PROVIDER_ANSWER; } ?>
/** * Class UserApi */ class UserApi{ private $login = 'your login'; private $password = 'your password'; private $apiURL = 'https://www.bpay.md/user-api-v2/'; /** * @param array $rdata * @return bool|string */ public function getPaymentsHistory(array $rdata){ $json = [ 'auth' => [ 'login' => $this->login, 'password' => $this->password, ], 'account' => $rdata['account'], 'date_start' => $rdata['date_start'], 'date_end' => $rdata['date_end'] ]; $json = array_merge($json,$rdata['aditional']); $url = $this->apiURL.'getPaymentsHistory'; return $this->request($url,$json); } /** * @param string $url * @param array $json * @return bool|string */ private function request(string $url, array $json){ $jsonrequest = json_encode($json); $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_USERAGENT, "User-Agent=Mozilla/5.0 Firefox/1.0.7"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_POSTFIELDS, $jsonrequest); $_PROVIDER_ANSWER = curl_exec($curl); return $_PROVIDER_ANSWER; } $ApiClient = new UserApi(); echo $ApiClient->getPaymentsHistory([ 'account' => '11656558', 'date_end' => '2019-04-24', 'date_start' => '2019-04-24', 'aditional' => [ 'service' => 'bpay', 'date_type' => 1, 'state' => 100, ] ]); }