Dokumentacja PaySafeCard
Pobierz przykładowy gotowy skrypt
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/api/psc/index.php

Parametry potrzebne do połączenia z API

zmienna typ wymagany opis
userid numer Tak Unikalny numer identyfikacyjny użytkownika w systemie paybylink. Dostępny po zalogowaniu w panelu nawigacyjnym.
shopid numer Tak Numer identyfikacyjny sklepu (zgłoszonej strony internetowej do przyjmowania płatności). Dostępny w zakładce Sklepy PaySafeCard
amount float Tak Kwota płatności, która ma zostać pobrana z konta / bonu klienta sklepu.
return_ok string Tak Adres przekierowujący klienta do strony po pozytywnie przeprowadzonej transakcji.
return_fail string Tak Adres przekierowujący klienta do strony po negatywnie przeprowadzonej transakcji.
url string Tak Adres pod, który system paybylink prześle informację o statusie transakcji.
control string Tak Pole do przechowywania informacji przez sklep np. numer identyfikacyjny zamówienia umożliwiający późniejszą zmianę statusu transakcji we własnej platformie.
hash string Tak Suma sha256 uniemożliwiająca rozpoczęcie transakcji nieautoryzowanym użytkownikom. Więcej informacji o sposobie hashowania znajdziesz poniżej.
description string Nie Pole umożliwiające zapisanie inforamcji o produkcie przez sklep.
get_pid string Nie Pole umożliwia pobranie numeru transakcji (pid-xxxxxxxxx_xxxxxx) oraz przekierowanie klienta bezpośrednio na strone płatności. https://paybylink/pay/$PID

Głównym założeniem opcji jest generowanie transakcji w tle
2. Transfer klienta do strony płatności
  1. W celu rozpoczęcia płatności należy formularzem POST przesłać zestaw pakietów pod link wewnętrzny systemu paybylink.
    Przykładowy formularz p rezentujemy poniżej.



<form method="post" name="paysafecard" action="https://paybylink/api/psc/">
	<input type="hidden" name="userid" value="1">
	<input type="hidden" name="shopid" value="1">
	<input type="hidden" name="return_ok" value="http://twojastrona.pl/platnosci_ok">
	<input type="hidden" name="return_fail" value="http://twojastrona.pl/platnosc_blad">
	<input type="hidden" name="url" value="http://twojastrona.pl/odbior_platnosci.php">
	<input type="hidden" name="description" value="Testowy produkt">
	<input type="hidden" name="amount" value="10">
	<input type="hidden" name="control" value="123456">
	<input type="hidden" name="hash" value="e6b467c907930846f931970365f3fdd3e6b467c907930846f931970365f3fdd3">
	<input type="submit" value="Zapłać"></form>
</form>  

Parametr HASH uniemożliwia rozpoczęcie płatności osobom nieautoryzowanym. Przykład kodowania hash-a

hash('sha256', $config['psc']['userid'] . $config['psc']['hash'] . $config['psc']['amount'])

Ogromną zaletą integracji płatności paybylink w swoim serwisie jest oparcie integracji o white-label. Klient sklepu nie widzi, że płaci przez pośrednika.

Po wygenerowaniu formularza automatycznie przenoszony jest do strony PaySafeCard.

W celu uruchomienia płatności w tle bez widocznych danych formularza należy wysłać dodatkowo parametr get_pid (true). Zostaną zwrócone dane w formacie json (status, pid). Użytkownika należy przekierować pod adres https://paybylink/pay/$pid

Alternatywą dla powyższego formularza jest wysłanie pakietu POST (get_pid true), który zwróci id płatności do przeniesienia klienta. Dane są zwracane w formacie json.
header('Location: ' . URL . '/pay/' . $pid . '/');
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!

  • Sprawdzaj adresy IP systemu paybylink - są one udostępniane dynamicznie pod adresem https://paybylink/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.
  • Sprawdzaj parametry shopid oraz userid z własnym configiem
  • Weryfikuj kwotę jaka wpłyneła na Twoje konto paybylink
  • Pakiety przesyłane przez paybylink pod adres url


    Przesyłane dane są zakodowane w urlencode
    zmienna opis
    status Status transakcji TRUE lub FALSE
    test transakcja testowa = true, produkcja = false
    userid id przyjmującego płatność
    shopid id zatwierdzonego przez paysafecard sklepu
    pid Unikalny numer transakcji
    mtid Unikalny numer transakcji w PSC
    amount Wartość zamówienia (kuponu PSC)
    control Pole dla sklepu, umożliwiające m.in zapisanie sesji
    description Opis płatności zdefiniowany w fomrmularzu
    hash Indywidualna suma kontrolna w md5() ---> NIEZALECANE
    hashsha256 Indywidualna suma kontrolna w sha256() ----> ZALECANE