Takéonline platební brána, brána pro platby kartouPokročilý
Definice
Platební brána je služba, která propojuje e-shop nebo aplikaci s kartovými schématy, bankami a dalšími platebními metodami, aby bezpečně přijala a potvrdila platbu zákazníka. Obchodníkovi zprostředkuje autorizaci, ověření, návrat výsledku do objednávky a často i podklady pro refundace, párování a účetní vyrovnání.
Co platební brána dělá mezi e-shopem a bankou
Platební brána je prostředník pro online platby. Zákazník zadá platební metodu, brána předá požadavek zpracovateli platby, bance nebo kartové síti a obchodníkovi vrátí výsledek. E-shop se díky tomu nemusí přímo napojovat na každou banku ani ukládat citlivé údaje z karty.
Platební brána obvykle nabízí hostovanou platební stránku, vložený checkout, platební odkazy nebo serverové API. Kromě plateb kartou může podporovat bankovní převody, digitální peněženky, odložené platby nebo opakované platby. Skutečný rozsah závisí na poskytovateli, zemi, měně a smlouvě obchodníka.
Co se děje při platbě kartou
Proces začíná vytvořením platební transakce v systému obchodníka. E-shop pošle částku, měnu, identifikátor objednávky a návratové adresy platební bráně. Zákazník je přesměrován do platebního rozhraní nebo zůstane ve vloženém checkoutu. Platební brána zajistí zadání karty, ověření zákazníka a autorizaci platby.
Autorizace neznamená vždy okamžité účetní připsání peněz. Kartová platba může být nejprve schválena a teprve později zaúčtována. Obchodník proto nemá spoléhat jen na stránku, kam se zákazník vrátí po zaplacení. Spolehlivé potvrzení obvykle přichází serverově přes webhook, tedy zpětné volání z platební brány do e-shopu.
Kde vzniká odpovědnost a riziko
Platební brána snižuje technické riziko, ale neodstraňuje odpovědnost obchodníka za správný stav objednávky, reklamace, vrácení peněz a ochranu osobních údajů. Citlivé kartové údaje mají zůstávat v prostředí poskytovatele, který splňuje požadavky PCI DSS. Pokud e-shop přijímá číslo karty na vlastní stránce, výrazně si komplikuje bezpečnostní i compliance povinnosti.
Evropské online platby často pracují se silným ověřením zákazníka. Prakticky se zákazník může setkat s 3-D Secure, potvrzením v bankovní aplikaci nebo jiným ověřovacím krokem. Platební brána v této části koordinuje technický tok, ale rozhodnutí o schválení platby ovlivňuje také banka držitele karty a pravidla kartového schématu.
Dva praktické scénáře integrace
- Platba objednávky v e-shopu. Zákazník odešle košík za 1 490 Kč a e-shop vytvoří transakci s unikátním číslem objednávky. Platební brána zákazníka přesměruje na bezpečnou platební stránku. Po úspěšném ověření e-shop zobrazí děkovací stránku, ale objednávku označí jako zaplacenou až po serverovém potvrzení.
- Webhook po pozdějším potvrzení. Banka může výsledek dodat až po několika sekundách, takže platební brána pošle e-shopu událost. Server ověří podpis zprávy, zkontroluje, zda už stejnou událost nezpracoval, a bezpečně změní stav objednávky. Tady se hodí idempotence, protože webhook může přijít opakovaně.
const signatureOk = verifySignature(req); if (!signatureOk) return res.sendStatus(400); const event = req.body; if (event.type === "payment.succeeded") { markOrderPaid(event.data.orderId, event.id); } res.sendStatus(200);
Co musí řešit vývojář
Vývojář musí navrhnout jasné stavy objednávky: vytvořená, čeká na platbu, zaplacená, zamítnutá, refundovaná nebo expirovaná. Důležité je logování transakcí, opakovatelné zpracování webhooků, kontrola částky a měny, práce s testovacím režimem a bezpečné uložení tajných klíčů. Dobrá integrace počítá i s výpadkem sítě, zavřeným oknem prohlížeče a zákazníkem, který zaplatí později.
Příklady z praxe
Potvrzení platby přes webhook
E-shop s dětským oblečením řešil časté případy, kdy zákazník po platbě zavřel prohlížeč dřív, než se vrátil na děkovací stránku. Vývojář napojil platební bránu přes webhook, ověřoval podpis příchozí události a objednávku označoval jako zaplacenou až po serverovém potvrzení. Po nasazení přestaly vznikat nezaplacené objednávky omylem předané do expedice.
Opakované platby u předplatného
Provozovatel online kurzů potřeboval nabízet měsíční předplatné bez ukládání čísel platebních karet ve vlastní databázi. Platební brána vytvořila token karty po první ověřené platbě a další platby strhávala podle nastaveného plánu. Účetní systém dostával podklady pro párování a zákaznická podpora mohla přes administraci brány vracet poměrnou část předplatného při reklamacích.
Časté omyly
- MýtusPlatební brána znamená, že peníze jsou hned na účtu obchodníka.
- Ve skutečnostiPlatební brána často nejprve oznámí autorizaci nebo přijetí platby. Skutečné vyrovnání peněz na účet obchodníka probíhá podle podmínek poskytovatele a bankovního zpracování.
- MýtusKdyž se zákazník dostane na děkovací stránku, objednávka je určitě zaplacená.
- Ve skutečnostiDěkovací stránka sama o sobě není bezpečný důkaz platby. E-shop má zpracovat serverové potvrzení od platební brány a zkontrolovat, že odpovídá správné objednávce, částce a měně.
- MýtusPlatební brána úplně zbaví e-shop všech bezpečnostních povinností.
- Ve skutečnostiPlatební brána může významně omezit práci s kartovými údaji, ale e-shop stále chrání API klíče, osobní údaje, objednávky a administraci. Obchodník také řeší refundace, spory a správné informování zákazníka.
Časté dotazy
- Proč platební brána používá webhooky, když se zákazník po platbě vrátí zpět?
- Platební brána používá webhooky proto, že návrat zákazníka do e-shopu není spolehlivé potvrzení platby. Zákazník může zavřít prohlížeč, ztratit připojení nebo se vrátit na stránku dříve, než banka dokončí autorizaci. Webhook je serverové oznámení od platební brány a e-shop podle něj bezpečně mění stav objednávky.
- Kdy platební brána vyžaduje 3-D Secure?
- Platební brána vyžaduje 3-D Secure tehdy, když pravidla platby, banka nebo regulace požadují silnější ověření zákazníka. Typicky jde o potvrzení v bankovní aplikaci, SMS kód nebo biometrické ověření podle nastavení banky. Některé platby mohou projít bez viditelného kroku, protože riziko vyhodnotí zpracovatelský řetězec jako nízké.
- Jak platební brána ovlivňuje stav objednávky v e-shopu?
- Platební brána ovlivňuje stav objednávky tím, že e-shopu dodává výsledek platební transakce. Objednávka by neměla být označena jako zaplacená jen podle zobrazené návratové stránky. Spolehlivější je zpracovat serverové potvrzení, ověřit částku, měnu a identifikátor objednávky a teprve poté spustit expedici nebo digitální doručení.
- Co znamená testovací režim platební brány?
- Testovací režim platební brány je oddělené prostředí pro ověření integrace bez skutečného pohybu peněz. Vývojář v něm zkouší úspěšné platby, zamítnutí, refundace, expirace, webhooky a chování při chybě. Testovací klíče, testovací karty a testovací transakce se nesmí míchat s produkčním provozem.
Zdroje
- Payment Request API(otevře se v novém okně)
- EMV® 3-D Secure(otevře se v novém okně)
- PCI Security Standards Council(otevře se v novém okně)
- Payment services(otevře se v novém okně)
- Payments(otevře se v novém okně)