Aby umożliwić użytkownikom bezproblemowe sesje (np. dostęp do korzyści z programu lojalnościowego, spersonalizowanych ofert) i uwierzytelnione płatności, musisz wdrożyć funkcję łączenia tożsamości za pomocą protokołu OAuth 2.0. Jeśli nie wdrożysz łączenia tożsamości, musisz obsługiwać płatność bez logowania.
Jeśli masz pytania dotyczące przepisów o ochronie prywatności i praktyk związanych z uzyskiwaniem zgody, skonsultuj się ze swoim zespołem prawnym.
Wymagania podstawowe
- Protokół: wdróż proces kodu autoryzacji OAuth 2.0 (RFC 6749 2.3.1).
- Uwierzytelnianie klienta: musi obsługiwać podstawowe uwierzytelnianie HTTP (
client_secret_basic) w punkcie końcowym tokena. - Zakresy: musisz obsługiwać standardowe zakresy UCP zdefiniowane w tej sekcji.
- Wykrywanie: musisz umieścić plik metadanych pod adresem
/.well-known/oauth-authorization-server(RFC 8414), aby umożliwić platformie wykrywanie Twoich punktów końcowych.
Zakresy
Musisz wdrożyć ten zakres, który przyznaje uprawnienia do wszystkich operacji związanych z cyklem życia płatności (pobieranie, tworzenie, aktualizowanie, usuwanie, anulowanie, finalizowanie).
- Nazwa zakresu:
ucp:scopes:checkout_session
Wrażenia użytkownika: poproś użytkownika o zgodę na wszystkie zakresy na jednym ekranie (np. „Zezwalaj Google na zarządzanie sesjami płatności”) zamiast szczegółowych przełączników technicznych.
Uproszczone łączenie z Google
Uproszczone łączenie kont Google to opcjonalne rozszerzenie standardowego protokołu OAuth 2.0. Wykorzystuje on asercje JWT do łączenia sprawdzania intencji i wymiany tokenów w punkcie końcowym tokena OAuth 2.0 (intencje check, create, get).
Aby zapewnić użytkownikom wygodę, zalecamy korzystanie z uproszczonego linkowania Google. Umożliwia użytkownikom łączenie kont lub tworzenie nowych kont przy użyciu profilu Google bez opuszczania interfejsu Google. Ponieważ proces ten odbywa się w całości w interfejsie Google, nie jest wymagany interfejs do łączenia. Zmniejsza to nakłady na rozwój, eliminuje przekierowania w przeglądarce i może zwiększyć współczynniki konwersji.
- Specyfikacja: implementacja musi być zgodna z wymaganiami dotyczącymi uproszczonego łączenia.
- Standardy: choć opiera się na koncepcjach z dokumentu RFC 7523, różni się od niego, aby zwiększyć bezpieczeństwo.
Metadane serwera autoryzacji (przykład JSON)
Ten obiekt JSON musisz opublikować w lokalizacji
https://[your-domain]/.well-known/oauth-authorization-server
Przykład:
{
"issuer": "https://merchant.example.com",
"authorization_endpoint": "https://merchant.example.com/oauth2/authorize",
"token_endpoint": "https://merchant.example.com/oauth2/token",
"revocation_endpoint": "https://merchant.example.com/oauth2/revoke",
"scopes_supported": [
"ucp:scopes:checkout_session"
],
"response_types_supported": [
"code"
],
"grant_types_supported": [
"authorization_code",
"refresh_token"
],
"token_endpoint_auth_methods_supported": [
"client_secret_basic"
],
"service_documentation": "https://merchant.example.com/docs/oauth2"
}