epl pej a gúgl pejTakéApple Pay, Google Pay, digital wallet, wallet platby, Google WalletPokročilý
Definice
Apple Pay a Google Pay jsou digitální peněženky, které nahrazují číslo platební karty tokenem uloženým v zařízení nebo v cloudu a platbu potvrzují biometrií či kódem obrazovky. Kupující zaplatí v obchodě, aplikaci i na webu bez ručního zadávání údajů; obchodník dostává transakci přes svou platební bránu jako běžnou kartovou platbu.
Než se na to spolehnete: Detaily poplatků a chování 3-D Secure u wallet plateb se liší podle akceptanta, vydavatele a země; v textu je to formulováno obecně. Odkaz na /slovnik/chargeback je v bodyHtml použit u zmínky o 3-D Secure, protože heslo 3-D Secure zatím neexistuje: doporučuji před publikací zkontrolovat vhodnost.
Co se při platbě peněženkou vlastně přenáší
Apple Pay a Google Pay nepředávají obchodníkovi skutečné číslo karty (PAN). Při přidání karty do peněženky vydavatel nebo kartová síť vytvoří token, tedy náhradní číslo vázané na konkrétní zařízení a peněženku. Při platbě se k tokenu připojí jednorázový kryptogram, který dokazuje, že transakci autorizoval majitel zařízení. Když token unikne, útočník s ním jinde nezaplatí: chybí mu kryptogram i vazba na zařízení. Standard pro tuhle tokenizaci spravuje EMVCo, takže se chová stejně napříč Visa i Mastercard.
Jak se peněženky liší mezi sebou
Apple Pay drží token v hardwarovém Secure Elementu telefonu, hodinek nebo Macu a autorizuje ho Face ID, Touch ID nebo kódem. Na webu funguje jen v Safari a v nativních aplikacích přes Apple Pay JS a PassKit, přičemž doména obchodníka musí být u Applu ověřená souborem na /.well-known/.
Google Pay staví na cloudové tokenizaci a Host Card Emulation, běží ve všech hlavních prohlížečích na Androidu i desktopu a obchodníkovi vrací zašifrovaný payload, který dešifruje až platební brána. Google navíc rozlišuje karty tokenizované (kryptogram, chová se jako fyzický dotyk kartou) a jen uložené v účtu Google, kde se přenáší normální PAN a je potřeba dořešit ověření držitele.
Co z toho plyne pro obchodníka
Integrace se dnes skoro nikdy nedělá napřímo. Brány jako Stripe, Adyen nebo Comgate vystavují peněženky jako další platební metodu a řeší za obchodníka certifikáty, dešifrování payloadu i mapování na kartovou autorizaci. Nejjednodušší cestou na webu je Payment Request API, respektive jeho nadstavby v SDK bran: jedno rozhraní pro obě peněženky, nativní vzhled okna a předvyplněná doručovací adresa.
Platba peněženkou se pro účely PSD2 obvykle považuje za silné ověření (SCA), protože kombinuje držení zařízení a biometrii. V praxi to znamená, že karetní 3-D Secure krok odpadá a odpovědnost za podvodnou transakci se chová jako u ověřené platby. Hlavní obchodní přínos je ale v jiném čísle: odpadá přepisování šestnácti číslic na mobilu, takže dokončenost košíku roste, zvlášť u nových zákazníků bez uložené karty.
Kde integrace nejčastěji vázne
Tlačítko se nezobrazí, když web neběží na HTTPS, doména není ověřená, uživatel nemá v peněžence žádnou kartu, nebo brána nepodporuje danou kartovou síť v dané zemi. Proto se tlačítko vždy vykresluje podmíněně, až po dotazu na dostupnost, a nikdy se nesmí stát jedinou platební cestou. Druhá častá past je vracení peněz a reklamace: refund běží proti tokenu, ne proti kartě, takže zákazník ve výpisu vidí jiné poslední čtyřčíslí, než jaké má na plastu, a podpora to musí umět vysvětlit.
Příklady z praxe
Podmíněné vykreslení tlačítka na webu
Tlačítko peněženky nemá smysl zobrazovat všem. Prohlížeč se nejprve zeptá, zda je metoda dostupná a zda má uživatel aktivní kartu, a teprve podle odpovědi se tlačítko vykreslí. Bez téhle kontroly uvidí část zákazníků tlačítko, které po kliknutí skončí prázdným dialogem.
const request = new PaymentRequest( [{ supportedMethods: 'https://apple.com/apple-pay', data: { version: 3, merchantIdentifier: 'merchant.cz.example', merchantCapabilities: ['supports3DS'], supportedNetworks: ['visa', 'masterCard'], countryCode: 'CZ' } }], { total: { label: 'Objednávka', amount: { currency: 'CZK', value: '1290.00' } } } ); if (await request.canMakePayment()) { showWalletButton(); }Token doputuje na server jako běžná platba
Peněženka vrátí zašifrovaný payload, který frontend nikdy nedešifruje. Server ho pošle bráně a ta ho směrem k akceptantovi převede na standardní kartovou autorizaci. V administraci obchodu pak transakce vypadá jako karetní platba, jen s příznakem wallet a jiným posledním čtyřčíslím než na fyzické kartě.
// server: token z peněženky předáme bráně, PAN nikdy nevidíme const payment = await stripe.paymentIntents.create({ amount: 129000, currency: 'czk', payment_method_data: { type: 'card', card: { token: walletToken } // token z Apple Pay / Google Pay }, confirm: true });
Časté omyly
- MýtusApple Pay a Google Pay jsou samostatné platební metody, takže potřebuju další smlouvu o akceptaci.
- Ve skutečnostiApple Pay i Google Pay jsou nadstavbou nad kartou, kterou má zákazník v peněžence uloženou. Transakce se zúčtuje jako běžná kartová platba přes stávajícího akceptanta, obvykle stačí metodu zapnout v platební bráně.
- MýtusObchodník při platbě peněženkou vidí číslo karty zákazníka.
- Ve skutečnostiObchodník dostane jen token a jednorázový kryptogram, nikoli skutečný PAN. To výrazně zmenšuje rozsah PCI DSS povinností, protože citlivé číslo karty systémy obchodníka vůbec nezpracovávají.
- MýtusGoogle Pay je totéž co Apple Pay, jen na Androidu.
- Ve skutečnostiGoogle Pay používá cloudovou tokenizaci a umí vrátit i kartu jen uloženou v účtu Google bez kryptogramu, u které je nutné dořešit ověření držitele. Apple Pay vždy pracuje s tokenem v Secure Elementu zařízení.
Časté dotazy
- Kolik stojí Apple Pay a Google Pay obchodníka navíc?
- Apple ani Google si od obchodníka v Evropě neúčtují zvláštní poplatek za přijetí platby peněženkou. Náklad zůstává stejný jako u kartové platby: interchange, poplatek kartové sítě a marže akceptanta či platební brány. Některé brány si účtují drobný příplatek za alternativní metody, což je otázka konkrétní smlouvy, ne pravidel peněženky. Reálné náklady tedy vznikají hlavně na straně vývoje a certifikace, a i ty většinou pokryje SDK brány.
- Funguje Apple Pay i mimo Safari?
- Apple Pay na webu je vázané na Safari a na WebKit, takže v Chromu na Windows nebo Androidu se tlačítko nezobrazí. Výjimkou je scénář, kdy platbu zprostředkuje platební brána vlastním hostovaným formulářem, který uživatele přesměruje. V nativních iOS aplikacích se používá PassKit a omezení prohlížeče se neuplatní. Na desktopu s macOS lze platbu potvrdit i přes spárovaný iPhone nebo Apple Watch, opět jen v Safari.
- Nahradí platba peněženkou 3-D Secure a silné ověření podle PSD2?
- Platba přes Apple Pay nebo Google Pay s tokenizovanou kartou se obvykle považuje za silné ověření zákazníka, protože kombinuje držení zařízení s biometrií nebo kódem obrazovky. Vydavatel proto typicky nevyžaduje další 3-D Secure krok a odpovědnost za podvod se posouvá na jeho stranu. Výjimkou jsou karty jen uložené v účtu Google bez kryptogramu, kde brána 3-D Secure běžně dovolá. Konečné rozhodnutí je vždy na vydavateli karty.
- Jak se řeší vrácení peněz u platby z digitální peněženky?
- Vrácení peněz u platby z digitální peněženky probíhá standardně přes platební bránu proti původní transakci, ne proti kartě zákazníka. Peníze skončí na kartě, která je v peněžence uložená. Komplikace bývá v komunikaci: v potvrzení objednávky i v bance zákazník vidí poslední čtyřčíslí tokenu, které se liší od čísla na plastové kartě. Zákaznická podpora by proto neměla párovat reklamace podle posledních čtyř číslic, ale podle identifikátoru transakce.
Zdroje
- EMVCo Payment Tokenisation(otevře se v novém okně)
- Payment Request API(otevře se v novém okně)
- Payment Request API(otevře se v novém okně)
- Google Pay API documentation(otevře se v novém okně)
- Apple Pay and Google Pay payments(otevře se v novém okně)