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.

Kategorie: Online platbyAktualizováno

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

  1. 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();
    }
  2. 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

  1. EMVCo Payment Tokenisation(otevře se v novém okně)EMVCo
  2. Payment Request API(otevře se v novém okně)W3C, 2022
  3. Payment Request API(otevře se v novém okně)MDN Web Docs
  4. Google Pay API documentation(otevře se v novém okně)Google
  5. Apple Pay and Google Pay payments(otevře se v novém okně)Stripe

Související pojmy

Potřebujete to vyřešit v praxi?

Poradíme, jak na to ve vašem projektu

Vysvětlit pojem je jedna věc, navrhnout kolem něj funkční řešení druhá. Ozvěte se a probereme, co dává smysl u vás.