Fluxo de redirecionamento concluído

Informações gerais

O fluxo de redirecionamento completo começa depois que o fluxo Iniciar redirecionamento é concluído e o usuário faz um pagamento na interface da Web do emissor. O objetivo do fluxo de redirecionamento completo é:

  1. Notifique o Google e o integrador de pagamentos de que o pagamento foi realizado.
  2. Redirecione o usuário de volta para o Google pelo integrador.

Como o fluxo funciona

O integrador pode transmitir as informações de pagamento concluídas de três formas para o Google.

  1. O integrador redireciona o usuário para o Google, adicionando as informações de pagamento à resposta de redirecionamento.
  2. O integrador envia uma solicitação HTTPS para o endpoint RedirectPaymentCompleteNotification do Google quando o pagamento é concluído.
  3. O Google envia uma solicitação HTTPS para o endpoint GetRedirectPaymentStatus do integrador, e o integrador responde com os detalhes de pagamento.

Fluxo de redirecionamento completo

O diagrama de sequência a seguir mostra a interação entre o navegador do usuário, o Google, o integrador e o emissor:

Fluxo de redirecionamento completo

Veja a lista de objetos no diagrama acima:

  • Usuário: a pessoa que concluiu um pagamento.
  • IU do Google: a interface da Web ou do app do Google em que o cliente iniciou o pagamento.
  • Servidor do Google: é o servidor de back-end no Google que recebe os detalhes da forma de pagamento completa e fornece os produtos ou serviços adquiridos ao usuário.
  • Integrador de pagamentos: o integrador de pagamentos que vai atuar como intermediário entre o Google e o emissor.
  • Emissor: o emissor de onde o usuário efetuou o pagamento.

Presumimos que o usuário acabou de fazer um pagamento no site do emissor, o que aciona o fluxo de redirecionamento completo.

  1. O usuário conclui o pagamento no portal do emissor.
  2. O emissor cria um URL de redirecionamento que aponta para o integrador com informações sobre o pagamento concluído.
  3. O emissor redireciona o usuário para o servidor de back-end do integrador de pagamentos.
  4. O integrador de pagamentos cria uma resposta de redirecionamento usando informações do redirecionamento do emissor.
  5. O integrador de pagamentos redireciona o usuário para o Google.
  6. O integrador de pagamentos envia uma RedirectPaymentCompleteNotification ao Google. Usado em caso de falha no redirecionamento após o usuário concluir o pagamento.
  7. Se o Google não receber uma resposta de redirecionamento ou uma RedirectPaymentCompleteNotification, enviará uma chamada GetRedirectPaymentStatus para o integrador de pagamentos, que deverá responder com as informações de status de pagamento.
  8. O Google processa as informações de pagamento e fornece os produtos ou serviços adquiridos ao usuário.

Redirecionar notificação de pagamento concluído

Como mostrado no diagrama acima, o Google exige que os integradores enviem um RedirectPaymentCompleteNotification ao Google quando o integrador determinar que um pagamento de redirecionamento foi aceito ou recusado. Essa notificação pode ser enviada ao Google antes ou depois de o usuário ser redirecionado para o Google.

Se um integrador descobrir que um pagamento de redirecionamento foi aceito ou recusado, mesmo vários dias após o início do redirecionamento, ele ainda vai enviar um RedirectPaymentCompleteNotification ao Google. Essas notificações ajudam a atualizar o status final de um pagamento e são necessárias para lidar adequadamente com a reconciliação.

Práticas recomendadas e outras considerações

Medidas de segurança

O URL de resposta de redirecionamento vai incluir um campo redirectRequestId não criptografado e um objeto RedirectResponse criptografado com o mesmo valor. O Google vai validar se os dois valores correspondem ao campo requestId enviado na solicitação de redirecionamento.