Dokumentacja DirectCarrierBiling
Schemat przebiegu płatności w systemie paybylink
1. Wygenerowanie płatności w paybylink
2. Transfer klienta do strony płatności
3. Potwierdzenie płatności i powrót klienta do sklepu
1. Wygenerowanie płatności w paybylink
Link wewnętrzny do połączenia z systemem paybylink metodą POST
https://paybylink.pl/direct-biling/Rozpoczęcie nowej płatności powinno być wykonane tylko za pośrednictwem żądania serwera na serwerze przez HTTPS.
Połaczenie z API wymaga autoryzacji na przykład: PHP_AUTH_USER oraz PHP_AUTH_PW
Parametry do przesłania metodą POST (Content-Type: application/json)
| zmienna | typ | wymagany | opis | 
|---|---|---|---|
| price | float | Tak | Kwota do zapłaty przez klienta w groszach (netto). | 
| description | string | Tak | Pole umożliwiające zapisanie inforamcji o produkcie przez sklep. | 
| control | string | Tak | Pole do wykorzystania przez sklep | 
| signature | string | Tak | Suma sha256uniemożliwiająca rozpoczęcie transakcji nieautoryzowanym użytkownikom. Więcej informacji o sposobie hashowania znajdziesz poniżej. | 
2. Transfer klienta do strony płatności
- W celu rozpoczęcia płatności należy wygenerować płatność poprzez POST przesłać zestaw pakietów pod link wewnętrzny systemu paybylink.
Parametr HASH uniemożliwia rozpoczęcie płatności osobom nieautoryzowanym. Przykład kodowania hash-a hash('sha256', price.description.control.hash)Wymagany dodatkowo separator |
3. Potwierdzenie płatności i powrót klienta do sklepu
Przy odbieraniu informacji o płatności należy zachować szczególne środki ostrożności!
Pamiętaj o następujących krokach!
https://paybylink.pl/psc/ips/. W celu uniknięcia w przyszłości problemów z odbiorem płatności polecamy weryfikować je na żywo przy każdej transakcji.Pakiety przesyłane przez paybylink pod adres url
| zmienna | opis | 
|---|---|
| status | Status transakcji AUTHORIZED lub REJECT | 
| userid | id przyjmującego płatność | 
| shopid | id zatwierdzonego przez paysafecard sklepu | 
| pid | Unikalny numer transakcji | 
| price | Wartość netto transakcji w groszach | 
| control | Pole dla sklepu, umożliwiające m.in zapisanie sesji | 
| description | Opis płatności zdefiniowany w fomrmularzu | 
| date_pay | Data aktualizacji - płatności | 
| commission | Przyznana prowizja do transakcji | 
| carrierID | Operator (play, tmobile, orange, plus) | 
| signature | Pole pozwalające zweryfikować pochodzenie notyfikacji. OBOWIĄŻKOWO NALEŻY SPRAWDZAĆ! | 
Dane są przesyłane w formacie urlencode
Array
	(
	    [status] => AUTHORIZED
	    [userid] => 1
	    [shopid] => 16
	    [pid] => db-1514901015_2458904
	    [price] => 1
	    [control] => 17777
	    [description] => zakup
	    [date_pay] => 2018-09-22 12:22:44
	    [commission] => 75
	    [carrierID] => play
	    [signature] => 6b4c64165a51d4cbb700534215c79dfc786700a15a2782c9e13deaabe02a3322
	)
hash('sha256', HASH . '|' . $_POST['status'] . '|' . $_POST['userid'] . '|' . $_POST['shopid'] . '|' . $_POST['pid'] . '|' . $_POST['price'] . '|' . $_POST['control'] . '|' . $_POST['description'] . '|' . $_POST['date_pay'] . '|' . $_POST['commission'] . '|' . $_POST['carrierID'] )
HASH - indywidualny do każdego sklepu
Kody błędów
| kod | opis | 
|---|---|
| 100 | Problem z autoryzacją logowania do API | 
| 101 | Brak wymaganych parametrów bądź są nieprawidłowe | 
| 102 | Sklep nie posiada skonfigurowanych linków zwrotnych | 
| 103 | Nieprawidłowa kwota | 
| 104 | Błędny format description | 
Ręczne sprawdzenie statusu transakcji
Link wewnętrzny do połączenia z systemem paybylink metodą POST
https://paybylink.pl/direct-biling/transactionStatus.phpRozpoczęcie nowej płatności powinno być wykonane tylko za pośrednictwem żądania serwera na serwerze przez HTTPS.
Połaczenie z API wymaga autoryzacji na przykład: PHP_AUTH_USER oraz PHP_AUTH_PW
Parametry do przesłania metodą POST (Content-Type: application/json)
| zmienna | typ | wymagany | opis | 
|---|---|---|---|
| pid | string | Tak | Numer identyfikacyjny transakcji | 
| signature | string | Tak | Zaszyfrowany ciąg hash('sha256', PID.'|'.HASH') | 
