Tokenizowana forma płatności
Omówienie
Tokenizowana forma płatności (forma płatności) to jeden ze sposobów integracji płatności z platformą płatności. Aby użytkownik mógł dokonać płatności za pomocą tej formy płatności, Google i integrator płatności muszą jednorazowo wymienić dane logowania do konta. Proces ten polega na ustanowieniu tokena, który będzie reprezentował daną formę płatności dla danego użytkownika. Token może być używany do wielokrotnego dokonywania płatności. Obecnie są 2 wersje tych interfejsów API. Wersja 2 obsługuje operatorów komórkowych i dostawców numerów referencyjnych. Wszyscy pozostali dostawcy tokenizowanych form płatności powinni wdrożyć wersję 1. Pozostała część tego dokumentu dotyczy wersji 1.
Google stosuje 2 procesy, aby określić tożsamość i utworzyć ten token:
- Proces uwierzytelniania: identyfikuje i weryfikuje (uwierzytelnia) użytkownika.
- Proces powiązania: ustanawia token dla użytkownika (nowego lub wcześniej zidentyfikowanego i uwierzytelnionego). Token reprezentuje określoną formę płatności dokonywaną przez określonego użytkownika. Token można następnie użyć podczas przyszłych zakupów.
Gdy token zostanie utworzony, Google użyje go podczas procesu zakupu, aby umożliwić użytkownikowi szybkie i bezproblemowe dokonywanie płatności. Google używa tego tokena do reprezentowania wystąpienia formy płatności przez klienta. Jest to tzw. instrument. Klient Google może mieć więcej niż jeden instrument płatności za towary i usługi.
I wreszcie, cały przepływ pieniędzy między bankiem integratora a bankiem Google odbywa się w ramach procesu płatności.
![]() |
![]() |
![]() |
![]() |
![]() |
Ten diagram przedstawia ogólne omówienie przepływów:
Omówienie tokenizowanej formy płatności
Ogólnie rzecz biorąc, dodanie usługi jako formy płatności do usług Google obejmuje te procesy:
- Proces uwierzytelniania
- Proces tworzenia powiązania
- Proces zakupu
- Proces zwrotu środków
- Proces przelewu
Instrukcje, jak to zrobić, znajdziesz w poniższych sekcjach, a także w przewodnikach.
Pojęcia i terminologia
Symbole i Konwencje
Słowa kluczowe „MUSI”, „NIE MOŻE”, „WYMAGANE”, „SHALL”, „NIE”, „POWINNO”, „NIE POWINNO”, „ZALECANE”, „MAJ”, i „OPCJONALNY” w tych dokumentach należy interpretować w sposób opisany w RFC 2119.
Sygnatury czasowe
Wszystkie sygnatury czasowe są podawane w milisekundach od początku epoki uniksowej (1 stycznia 1970 r.) w czasie UTC.
Na przykład:
- 23 kwietnia 2019 r. o 20:23:25 GMT = 1556051005000 milisekund
- 16 sierpnia 2018 roku, 12:28:35 GMT = 1534422515000 milisekund
Kwoty
Wartości pieniężne w tym interfejsie API mają format „micros”, standardem w Google. Mikro to format oparty na liczbach całkowitych o stałej dokładności. Aby podać wartość pieniężną w mikro, pomnóż standardową wartość waluty przez 1 000 000.
Na przykład:
- 1,23 USD = 1230 000 mikroUSD
- 0,01 USD = 10 000 mikroUSD
Idempotentność
Wszystkie wywołania metod w tym interfejsie API muszą mieć działanie idempotentne. Google będzie sporadycznie ponawiać prośby, aby mieć pewność, że transakcje są w tym samym stanie po obu stronach. Integrator nie powinien próbować ponownie przetworzyć żadnego z żądań, które zostały już przetworzone. Zamiast tego należy zgłosić odpowiedź dotyczącą udanego przetwarzania. Wszystkie metody mają wspólny element RequestHeader
, który zawiera requestId. Ten identyfikator żądania jest kluczem idempotentności we wszystkich wywołaniach.
Odpowiedź, która nie jest terminalem (błąd HTTP 200), nie może być przetwarzana idempotentnie. Zatem żądanie, które wcześniej uzyskało kod 400 (złe żądanie lub nieuzasadniony warunek wstępny), po ponownym wywołaniu nie może idempotentnie zwracać 400, dlatego musi zostać ponownie ocenione. Podczas ponownej oceny może on zwrócić błąd 400 lub zostać prawidłowo przetworzony.
Więcej informacji na temat idempotentności znajdziesz w tym szczegółowym przewodniku.
Integrator
Firma, która w swojej działalności korzysta z platformy płatniczej Google. Może to być firma wewnętrzna, np. YouTube lub AdWords. Może to być też zewnętrzna firma, która chce zintegrować swoją usługę z ekosystemem Google.
forma płatności
Forma płatności. To bardziej ogólne niż brzmienie instrumentu. Karty Visa, Mastercard i PayPal to tylko formy płatności.
Instrument
Konkretne wystąpienie formy płatności przez konkretnego klienta. Może to być na przykład karta kredytowa użytkownika lub jego konto PayPal. Tokenizowana forma płatności dla konkretnego klienta również jest instrumentem, ponieważ jest formą płatności bezpiecznie przechowywaną w naszym systemie dla tego klienta.
Token
Reprezentacja w systemie Google formy płatności użytkownika. Zawiera on wszystkie informacje potrzebne do dokonania zakupu, więc token jest też instrumentem. Może to obejmować numer konta użytkownika u integratora.
Przepływy kluczy
Proces uwierzytelniania
Uwierzytelnianie to pierwszy proces, który musi zostać przeprowadzony. Celem procesu uwierzytelniania jest identyfikowanie i uwierzytelnianie użytkownika w integratorze. Uwierzytelnianie może odbywać się na kilka sposobów. Tokenizowane formy płatności obsługują 2 sposoby identyfikowania i uwierzytelniania użytkownika:
- Uwierzytelnianie za pomocą hasła jednorazowego SMS-MT (zakończone połączenie SMS-em, hasło jednorazowe)
- Uwierzytelnianie przekierowania
Na etapie procesu wprowadzania integratorzy współpracują z Google, aby wybrać mechanizmy uwierzytelniania, które najlepiej pasują do ich usług.
Procesy uwierzytelniania mogą być używane w 2 kontekstach: po pierwsze do identyfikowania nowego klienta w celu utworzenia powiązania i po drugie do uwierzytelniania użytkownika za pomocą danych logowania do istniejącego instrumentu. Wyników procesu uwierzytelniania można używać jako danych wejściowych w wielu przepływach, np. przepływie powiązania, przepływie tokena odświeżania, testowanym przepływie zakupu itp. Ponadto procesu uwierzytelniania można używać w trybie samodzielnym, niepowiązanym z żadnym kolejnym procesem.
Uwierzytelnianie SMS-MT dla hasła jednorazowego
W ramach tego mechanizmu uwierzytelniania użytkownik wpisuje numer telefonu w interfejsie Google. Google wysyła ten numer telefonu do integratora (za pomocą metody sendOtp
). Integrator wysyła do użytkownika hasło jednorazowe. Użytkownik wpisuje hasło w interfejsie Google, a następnie wysyła je do integratora. Integrator płatności wysyła to, co wywołuje odpowiedź.
Gdy uwierzytelnianie jednorazowe SMS-MT jest używane w trybie samodzielnym, wartość hasła jednorazowego jest wysyłana do integratora za pomocą metody verifyOtp
. Ta metoda pozwala zweryfikować wysłane hasło jednorazowe.
Uwierzytelnianie przekierowania
Uwierzytelnianie przekierowania odbywa się przez przekierowanie użytkownika do aplikacji należącej do integratora. Może to być aplikacja internetowa lub aplikacja na Androida.
Aplikacje na Androida i przekierowania internetowe działają podobnie. Google przekierowuje użytkownika do aplikacji integratora. Integrator identyfikuje i uwierzytelnia użytkownika w dowolnej formie, która jest dla niego najbardziej naturalna. Po uwierzytelnieniu integrator przekierowuje użytkownika z powrotem do interfejsu Google, aby dokończyć tworzenie powiązania. Po przekierowaniu Google udostępnia requestId
, aby zidentyfikować tę sesję uwierzytelniania. Ten identyfikator jest używany jako dowód tożsamości podczas tworzenia powiązania.
Integrator, który wybiorą ten proces, musi podać adres URL uwierzytelniania internetowego, ponieważ jest to najpowszechniejszy mianownik na wszystkich platformach (komputerach i urządzeniach mobilnych). Zdecydowanie zalecamy jednak uwierzytelnianie na urządzeniach z Androidem, ponieważ umożliwia to najlepsze wrażenia użytkowników korzystających z urządzeń mobilnych.
W zależności od kontekstu urządzenia i zainstalowanych aplikacji interfejsy Google wybierzą stronę internetową lub przekierowanie z aplikacji na Androida.
Taki mechanizm uwierzytelniania zapewnia integratorowi największą swobodę. Istnieje wiele sposobów uwierzytelniania i identyfikacji użytkownika. Nazwa użytkownika i hasło, informacje biometryczne i pytania zabezpieczające to rozwiązania. Google nie zamierza dyktować sposobu weryfikacji użytkownika przez integratora. O uwierzytelnianie użytkownika zajmuje się integrator. W ten sposób Google zamierza wykorzystać różne interfejsy integratora do uwierzytelniania użytkowników i po prostu dostarczać Google dowód uwierzytelniania.
Więcej informacji na temat uwierzytelniania znajdziesz w tym szczegółowym przewodniku.
Proces powiązania
Po zakończeniu procesu uwierzytelniania za pomocą jednego z wspomnianych wyżej mechanizmów użytkownik przechodzi przez proces powiązań. Celem procesu tworzenia powiązania jest ustanowienie tokena płatności Google (GPT
) w celu utworzenia instrumentu. Proces ten:
- Negocjuje tożsamość nazywana tokenem, która będzie reprezentować tego użytkownika.
- Udostępnia informacje o koncie, aby poinformować program wykrywający zagrożenia Google.
- Zbiera informacje potrzebne podczas pierwszej konfiguracji, aby utworzyć i ustanowić
GPT
.
W efekcie ustalona zasada GPT
została uzgodniona przez Google i integratora.
Integrator może mieć dwóch użytkowników Google z tym samym kontem. W takim przypadku każdy użytkownik ma inny instrument. Dla każdego instrumentu istnieje niezależny przepływ powiązań, a przez to unikalna wartość GPT
.
Ta ilustracja przedstawia fałszywą tokenizowaną formę płatności o nazwie InvisiCash. Przedstawia czynności, które użytkownik będzie musiał wykonać w ramach procesu uwierzytelniania i procesu powiązania.
Omówienie procesu tworzenia powiązań
- Użytkownik Google z adresem e-mail sf@gmail.com chce dodać konto InvisiCash do Sklepu Google Play, aby używać go do zakupów.
- Sklep Google Play otworzy aplikację InvisiCash, by się uwierzytelnić.
Użytkownik loguje się na swoje konto InvisiCash za pomocą adresu e-mail sally@otheremail.com. Możliwe, że w obu przypadkach używa adresu Gmail, jeśli jest to jej login do konta InvisiCash.
Aplikacja InvisiCash wysyła identyfikator uwierzytelniania z powrotem do Sklepu Google Play.
Sklep Google Play wysyła identyfikator uwierzytelniania do serwerów Google.
Serwer Google wysyła wiadomość do serwera InvisiCash, aby powiązać konto. To powiązanie obejmuje identyfikator uwierzytelniania,
GPT
(token płatności Google) oraz identyfikator powiązania.Serwery InvisiCash przechowują token płatności Google (
GPT
) oraz identyfikator powiązania. Oba te elementy są teraz powiązane z kontem Sally InvisiCash.InvisiCash zatwierdza to powiązanie. Następnie serwery Google tworzą instrument, którego można używać do przyszłych zakupów.