V tomto článku naleznete seznam požadavků pro integraci platební brány GoPay do dodavatelských obchodních platforem (např. e-shopová řešení typu Shoptet nebo Eshop-rychle.cz).
Jednotlivé požadavky vychází z dlouhodobých zkušeností GoPay s integracemi platební brány GoPay do těchto řešení. Jejich cílem je zajistit optimální zobrazení a fungování platební brány GoPay pro koncové uživatele a dosáhnout maximálního konverzního výkonu celého objednávkového procesu.
💡 Tip GoPay: Chcete se stát Certifikovaným dodavatelem GoPay? Integrujte GoPay podle uvedených požadavků, nechte si integraci posoudit a získejte označení Certifikovaný dodavatel GoPay. Více informací naleznete v článku "Jak získám označení Certifikovaný dodavatel GoPay?".
Technické požadavky
V rámci implementace s platební bránou vaše řešení musí splnit povinná kritéria a mělo by se řídit našimi doporučeními.
Povinná kritéria
Poskytněte prosím technické podpoře GoPay ukázkovou testovací stránku s prodejním formulářem a přístup do jeho administrace (prostředí) z pohledu obchodníka.
Přístup nesmí být podmíněný instalací řešení / aplikace třetí strany, zajistěte prosím webový přístup na ukázkovou stránku a do administrace.Integrace s platební bránou musí probíhat v REST API (V3).
Vycházejte z nejnovější verze SDKknihoven a jazyků PHP, .NET, Java a pod.
E-shop poběží na zabezpečené stránce s HTTPS, TLS podpora musí být alespoň ve verzi 1.2.
Platby na provozním prostředí musí vždy probíhat ze shodné URL adresy e-shopu, která byla k obchodnímu účtu registrovaná a schválená, viz dle článku "Z jaké URL mohu zakládat platby?".
Zajistěte, aby se dotaz na stav platby provedl vždy po redirectu (
return_url) a HTTP notifikaci (notification_url) a docházelo ke korektním aktualizacím příslušných objednávek. Dotaz na stav platby prosím neprovádějte cyklicky.U objednávek prosím zobrazte správně a pro klienty srozumitelně názvy stavů objednávek.
Když zákazník přejde v e-shopu do košíku objednávky (checkout), proveďte prosím získání seznamu povolených platebních metod (vrácený seznam je vždy v češtině). Funkcionalitu volejte prosím pouze jednou, neposílejte k ní requesty cyklicky.
V košíku objednávky zajistěte správné zobrazení platebních metod - na výběr máte z přímé / agregované prezentace, viz ukázky níže. Pro zobrazení předvybrané platební metody na bráně prosím použijte parametr default_payment_instrument v objektu payer. Platební metody ovšem nesmí být spojeny do jedné možnosti, tedy aby zákazník musel volit metodu až na bráně. Seznam platebních metod je možné uchovávat v cache, ale je nutno zajistit případnou aktualizaci, aby se promítly změny, pokud obchodník zakáže / povolí některé metody ve svém GoPay obchodním účtu. Alternativně je obchodníkovi v konfiguraci pluginu možno nabídnout vlastní nastavení platebních metod. V takovém případě provádějte API volání pro získání platebních metod v konfiguraci pluginu, a to v okamžiku, kdy obchodník nastavuje platební metody v rámci pluginu.
Podporuje-li vaše prostředí různé jazykové mutace a ne pouze českou, názvy platebních metod převeďte a zobrazte v odpovídajícím jazyce (například u stránky v angličtině zobrazit anglické názvy platebních metod Payment card, Online bank transfer atd.).
Zajistěte prosím, aby se platební metoda Apple Pay zákazníkům v košíku objednávky zobrazila pouze v případě použití podporovaných zařízeních Apple s prohlížečem Safari. Informace k implementaci naleznete v našem článku v části "Jak integrovat Apple Pay?", anebo přímo na stránce Apple pro vývojáře.
K prezentaci platebních metod prosím používejte výhradně správná loga platebních metod.
Zabraňte zpoplatnění platebních metod.
Po založení platební brány prosím zajistěte vyvolání platební brány, viz náš článek část "Vyvolání platební brány". Nabídněte obchodníkovi možnost volby mezi Inline a Redirect (přesměrováním).
Prezentujte prosím ve vaší administraci správné názvy údajů Client Secret, ClientID a GoID, obdobně nabídněte obchodníkovi možnost nastavení testovacího a provozního prostředí.
Zajistěte ve vaší administraci validaci údajů (Client Secret, ClientID a GoID pro příslušnou variantu prostředí - testovací / produkční) vždy, když v ní obchodník provede úpravu nastavení údajů, a to následovně. Client Secret a ClientID ověříte získáním přístupového tokenu a v případě GoID zkontrolujete získáním seznamu povolených platebních metod. Ověření prosím neprovádějte cyklicky.
Předávejte prosím vždy v rámci objektu contact všechny parametry. Telefon zákazníka předávejte vždy včetně předčíslí (př. +420).
Odchytejte prosím všechny možné a vámi podporované scénáře pro úspěšné / neúspěšné dokončení plateb, stejně tak situaci spojenou s návratem do e-shopu (objednávky) bez potvrzení platební metody na platební bráně a situaci v případě na bráně potvrzené banky pro offline (standardní) bankovní převod. Jedná se konkrétně o následující situace.
Platba zaplacena (PAID) - zákazník se vráti do e-shopu a musí se mu zobrazit rekapitulace s potvrzením úspěšné úhrady.
Platba zamítnuta (CANCELED) - zákazník platbu nedokončil úspěšně, vrátí se do e-shopu, kde by se měla zobrazit rekapitulace s informací o neuhrazené objednávce a měla by se mu nabídnout možnost provést novou platbu, případně nabídnout možnost zaslání e-mailu s linkem na provedení nové platby.
Vypršelá platba (TIMEOUTED) - zákazník mohl zůstat příliš dlouho na bráně a nevrátil se na e-shop, poté si aktualizuje objednávku a měla by se zobrazit informace, že objednávka nebyla úspěšně uhrazena, tedy opět nabídnout provedení nové platby, či zaslání e-mailu s odkazem na provedení nové platby.
Platební metoda vybrána (PAYMENT METHOD CHOSEN) - v rámci uvedené situace se čeká na výsledek platby, platba zatím není uhrazena, ale k uhrazení může dojít později. Situace bude nejčastěji nastávat u offline bankovního převodu (má-li obchodník v GoPay obchodním účtupovoleno u Bankovních převodů Offline), avšak může k ní výjímečně dojít také u dalších platebních metod. V tomto případě by nemělo být zákazníkovi nabízeno opětovné zaplacení, aby nedošlo k dvojí úhradě. Pokud je platba následně ukončena stavem TIMEOUTED, ze strany GoPay bude odeslána HTTP notifikace a na jejím základě lze odeslat zákazníkovi email s odkazem na opětovné uhrazení.
Vytvořena (CREATED) - Zákazník na platební bráně nepotvrdil žádnou platební metodu, vrátil se do e-shopu, životnost platby ještě nevypršela (možnost ověření dotazem po přesměrování / redirectu) a měl by mít možnost pokračovat ve stejné platbě k dané objednávce.
Možný scénář v případě nestandardní situace - Pokud by zákazník zavřel okno ve chvíli, kdy na bráně nepotvrdil žádnou metodu a z brány neprovedl přesměrování zpět do e-shopu a následně by si například v novém okně prohlížeče vyvolal košík / objednávku (coby příhlášením uživatele k účtu na e-shopu), v tomto případě to lze při vstupu do zákazníkova účtu (u příslušné objednávky) ošetřit provedením dotazu na stav platby mimo doporučené situace (redirect, HTTP notifikace), postačí však provést jednou / při vstupu (ověřování stavu neprovádějte cyklicky). K id platby, kterou jste si předtím uložili do databáze, získáte k příslušné objednávce informaci o aktuálním stavu nedokončení/zaplacení. Zůstává-li platba stále ve stavu CREATED, můžete zákazníkovi u objednávky nabídnout k této platbě nové vyvolání brány (předvybraná metoda zůstává stejná). Pokud by nastala jakákoli jiná situace popsaná výše, pak můžete postupovat dle odpovídajícího doporučení.
Nepovinné - doporučené možnosti
Nabízíte-li e-shop ve více jazyčných mutacích, předávejte prosím při založení platby také parametr lang s odpovídajícím jazykem.
V případě neúspěšné platby nabídněte a zašlete zákazníkovi email s odkazem na opětovné uhrazení. Link na platbu lze vygenerovat standardně coby parametr gw_url a umístit do těla e-mailu. U platby můžete nabídnout předvybranou platební metodu, jako u původní platby, kterou zákazník k objednávce prováděl. Můžete se inspirovat naším článkem, konkrétně částí "Umístění push platby do e-mailu s potvrzením objednávky".
V rámci vyššího komfortu pro klienty můžete umožnit přímo GoPay předávat provozní údaje obchodníků (Client Secret, ClientID a GoID) do administrace vaší platformy. Tzn. zajistit přístup přes přihlášení na doméně obchodníka pod www.nejakyeshop.xy/gopay-login. Po přihlášení bude moci technik technické podpory GoPay zadat do formuláře potřebné údaje.
Další možné funkcionality, které můžete nabídnout
Refundace plateb - nabídněte zákazníkům možnost vrácení prostředků.
Opakované platby - umožněte zákazníkům pravidelné stržení plateb, a to v některé ze dvou podporovaných variant.
Předaturizované platby - funkcionalita je vhodná pro použití v kombinaci s opakovanými platbami, u předobjednávek a za platbu služeb, u kterých se může částka změnit, anebo k platbě nakonec nedojde. Garantujeme blokaci až po dobu 4 dnů.
Stahování výpisů pohybů přes API - v rámci funkcionality lze stahovat výpisy pohybů v podporovaných formátech.
Unikátní otisk karty a Platba karetním tokenem - Funkcionalita umožňuje jednak v rámci tzv. otisku karty ověřit, že při platbě byla použita konkrétní platební karta, a zároveň lze zajistit, aby tato konkrétní karta byla použita u následných plateb (lze použít u standardní platby, inicializačních/zakládající opakované platby a předautorizované platby).
PSD2 platba tokenem účtu - díky této funkcionalitě lze zajistit u PSD2 (expresních) bankovních převodů, že platby budou v rámci zapamatovaného režimu probíhat ke konkrétnímu bankovnímu účtu zákazníka.
Požadavky na prezentaci GoPay
Pro prezentaci informací o GoPay na vašich stránkách nebo v administraci vašeho řešení vycházejte výhradně z článku "Jaké informace o GoPay můžete prezentovat zákazníkům"? Pokud chcete prezentovat informace nad rámec toho, co je v článku uvedeno, vždy o tom GoPay informujte a výsledný záměr s námi konzultujte.
Zajistěte, aby se obchodníci vašeho řešení mohli registrovat u GoPay prostřednictvím přiděleného registračního formuláře se specifickou URL adresou. Díky registraci přes tento formulář rozpoznáme, že daný obchodník používá vaše řešení.
Odkaz na registrační formulář prezentujte na viditelném místě v administraci vašeho řešení i na vašich webových stránkách, v případě, že na nich uvádíte informace o GoPay.



