Panoramica
Il flusso Reindirizzamento completo inizia dopo che è stato completato il flusso Inizia reindirizzamento e che l'utente effettua un pagamento nell'interfaccia web dell'emittente. Lo scopo del flusso di reindirizzamento completo è:
- Comunicare a Google e all'integratore dei pagamenti che il pagamento è andato a buon fine.
- Reindirizza l'utente a Google tramite l'integratore.
Come funziona il flusso
L'integratore ha a disposizione tre diversi modi per trasmettere a Google le informazioni di pagamento completate.
- L'integratore reindirizza l'utente a Google, aggiungendo i dati di pagamento alla risposta di reindirizzamento.
- L'integratore invia una richiesta HTTPS all'endpoint RedirectPaymentCompleteNotification di Google una volta completato il pagamento.
- Google invia una richiesta HTTPS all'endpoint GetRedirectPaymentStatus dell'integratore e l'integratore risponde con i dettagli di pagamento.
Flusso di reindirizzamento completo
Il seguente diagramma di sequenza mostra l'interazione tra il browser dell'utente, Google, l'integratore e l'emittente:
Ecco l'elenco degli oggetti nel diagramma riportato sopra:
- Utente: la persona che ha completato un pagamento.
- UI di Google: interfaccia web o app di Google in cui è stato effettuato il pagamento dal cliente.
- Server di Google: il server di backend di Google che riceve i dettagli di pagamento completati e fornisce i beni o i servizi acquistati all'utente.
- Integratore dei pagamenti: l'integratore dei pagamenti che agisce da intermediario tra Google e l'emittente.
- Emittente: l'emittente presso cui l'utente ha effettuato il pagamento.
Supponiamo che l'utente abbia appena terminato un pagamento sul sito web dell'emittente, attivando così il flusso di reindirizzamento completo.
- L'utente completa il pagamento sul portale dell'emittente.
- L'emittente crea un URL di reindirizzamento che rimanda all'integratore con informazioni sul pagamento completato.
- L'emittente reindirizza l'utente al server di backend dell'integratore dei pagamenti.
- L'integratore dei pagamenti crea una risposta di reindirizzamento utilizzando le informazioni del reindirizzamento dell'emittente.
- L'integratore dei pagamenti reindirizza l'utente a Google.
- L'integratore dei pagamenti invia una RedirectPaymentCompleteNotification a Google. Utilizzato nel caso in cui il reindirizzamento non vada a buon fine dopo che l'utente ha completato il pagamento.
- Se Google non riceve una risposta di reindirizzamento o una notifica RedirectPaymentCompleteNotification, Google invia una chiamata GetRedirectPaymentStatus, che dovrebbe rispondere con le informazioni sullo stato dei pagamenti.
- Google elabora i dati di pagamento per fornire all'utente i beni o i servizi acquistati.
Reindirizzamento della notifica di completamento del pagamento
Come mostrato nel diagramma sopra, Google richiede agli integratori di inviare un RedirectPaymentCompleteNotification
a Google quando l'integratore stabilisce che un pagamento di reindirizzamento è stato accettato o rifiutato. Questa notifica può essere inviata a Google prima o dopo che l'utente è stato reindirizzato a Google.
Se un integratore scopre il completamento (accettato o rifiutato) di un pagamento di reindirizzamento anche diversi giorni dopo l'inizio del reindirizzamento, l'integratore deve comunque inviare un RedirectPaymentCompleteNotification
a Google. Queste notifiche consentono di aggiornare lo stato finale di un pagamento e sono necessarie per gestire correttamente la riconciliazione.
Best practice e altre considerazioni
Misure di sicurezza
L'URL della risposta di reindirizzamento includerà un campo redirectRequestId
non criptato e un oggetto RedirectResponse criptato con lo stesso valore. Google verificherà che entrambi questi valori corrispondano al campo requestId
inviato nella richiesta di reindirizzamento.