Přeskočit na hlavní obsah

Ověření stavu platby v systému platební brány prostřednictvím REST API

Pomocí dotazu na stav platby je možné se kdykoliv dotázat na stav libovolné platby náležející obchodnímu účtu obchodníka.

💡 Tip GoPay:
Dotaz na stav platby je nutné autorizovat pomocí tokenu. Token pro dotaz na stav platby je nutné založit ve scope=payment-all. Více informací o procesu získání tokenu naleznete v článku popisujícím postup integrace platební brány.

Dotaz na stav platby je možné provádět pomocí požadavku na API. Odpovědí na požadavek je objekt popisující parametry a stav dané platby. Platba může nabývat různých stavů, viz dokumentace REST API.


​

Kdy provádět dotaz na stav platby

Dotaz na stav platby doporučujeme standardně provádět ve dvou situacích.

První situací je návrat na prodejní místo (return_url) po provedení platby. Jako součást přesměrování na return_url prodejnímu místu v URL adrese předáváme GET parametr ?id=, který obsahuje id platby, ze které probíhá návrat. Pomocí id si dohledáte objednávku v databázi, provedete dotaz na stav platby a podle získaného stavu zobrazíte příslušnou informaci zákazníkovi, případně upravíte stav v databázi.

Druhou situací, kdy je nutné provádět dotaz na stav platby, je po přijetí http notifikace. Kdykoli se na některé platbě daného obchodního účtu změní stav platby (kromě stavu CREATED a PAYMENT_METHOD_CHOSEN), zasíláme asynchronní http notifikaci na notifikační URL předanou v rámci založení platby. Notifikace má stejný formát jako přesměrování na return_url, tedy parametr ?id=<id platby>. Podle id platby je vhodné dohledat si objednávku, ke které platba náleží, provést dotaz na stav platby, porovnat ho se stavem v databázi a případně provést update stavu v databázi.

Poznámka GoPay:

Očekávaná hodnota přijetí HTTP notifikace prodejním místem je stav http200. Pokud je ze strany prodejního místa vrácen jakýkoliv jiný stav, považuje systém platební brány HTTP notifikaci za nedoručenou a snaží se ji cyklicky odeslat znovu (v konečném počtu maximálně 20 pokusů o doručení).

Dotaz na stav platby může být samozřejmě prováděn v libovolnou dobu dle potřeb prodejního místa, ale pro korektní informace o všech stavech plateb je dostatečné zjišťovat dotaz po návratu na return_url a po vyvolání notification_url.


​

Související články

Dostali jste odpověď na svou otázku?