Iniciar fluxo de redirecionamento

Informações gerais

O objetivo do fluxo "Iniciar redirecionamento" é redirecionar o usuário ao integrador de pagamentos com informações suficientes para concluir um pagamento. O integrador, por sua vez, redireciona o usuário para a interface da Web de um emissor, encaminhando as informações fornecidas pelo Google. O usuário pode seguir as instruções fornecidas pelo emissor para concluir um pagamento. Isso aciona o fluxo Redirecionamento completo.

Como o fluxo funciona

O usuário pode selecionar o emissor de duas maneiras como forma de pagamento (FOP, na sigla em inglês).

  1. O usuário seleciona o emissor na interface do usuário (IU) do Google.
  2. O usuário seleciona o integrador na interface do Google e o emissor na interface do integrador.

O usuário seleciona o emissor na interface do Google

Nesse caso, o usuário seleciona um emissor durante a seleção de FOPs na IU do Google de modo que o campo issuerId do objeto formOfPayment em RedirectRequest contenha um identificador exclusivo gerado pelo Google que representa um emissor. Se o integrador de pagamentos e o emissor forem a mesma entidade, o Google vai gerar um issuerId para o integrador de pagamentos. A solicitação de redirecionamento usa um método HTTPS GET, com parâmetros codificados no URL.

Iniciar fluxo de redirecionamento (emissor selecionado)

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

Iniciar fluxo de redirecionamento com o emissor selecionado

Veja a lista de objetos no diagrama acima:

  • Usuário: a pessoa que quer fazer um pagamento.
  • IU do Google: a interface da Web ou do app do Google em que o cliente inicia um pagamento.
  • Servidor do Google: o servidor de back-end no Google que cria uma solicitação de redirecionamento.
  • Integrador de pagamentos: o integrador que encaminha o usuário e a solicitação de redirecionamento ao emissor.
  • Emissor: o emissor em que o usuário tem uma conta.

Para o fluxo "Iniciar redirecionamento", já presumimos que o usuário está na propriedade do Google (interface do Google) e está escolhendo uma forma de pagamento. É aqui que tudo começa.

  1. O usuário seleciona o emissor específico que quer usar para fazer um pagamento. É isso que aciona o fluxo "Começar redirecionamento".
  2. A IU do Google chama o servidor do Google (back-end) para criar uma nova solicitação de redirecionamento.
  3. O servidor do Google cria uma solicitação de redirecionamento.
  4. A solicitação de redirecionamento é enviada para a interface do Google.
  5. A IU do Google redireciona o usuário para o servidor do integrador.
  6. O integrador processa a solicitação de redirecionamento do Google e gera uma solicitação de redirecionamento específica do emissor.
  7. O integrador redireciona o usuário para a interface da Web do emissor.
  8. O usuário faz a autenticação na interface da Web do emissor.
  9. O usuário segue as instruções na tela para concluir o pagamento.

O usuário seleciona o integrador na interface do Google

Nesse caso, o usuário seleciona o integrador na interface do Google. Portanto, o campo formOfPayment da RedirectRequest será definido como noneChosen, porque apenas os emissores são considerados FOPs válidas. O integrador precisa fornecer uma IU que permita que o usuário selecione um dos emissores aprovados pelo Google. A solicitação de redirecionamento usa um método HTTPS GET, com parâmetros codificados no URL.

Iniciar fluxo de redirecionamento (integrador selecionado)

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

Iniciar fluxo de redirecionamento com o integrador selecionado

Veja a lista de objetos no diagrama acima:

  • Usuário: a pessoa que quer fazer um pagamento.
  • IU do Google: a interface da Web ou do app do Google em que o cliente inicia um pagamento.
  • Servidor do Google: o servidor de back-end no Google que cria uma solicitação de redirecionamento.
  • Integrador de pagamentos: o integrador em que o usuário seleciona um emissor.
  • Emissor: o emissor em que o usuário tem uma conta.

Para o fluxo "Iniciar redirecionamento", já presumimos que o usuário está na propriedade do Google (interface do Google) e está escolhendo uma forma de pagamento. É aqui que tudo começa.

  1. O usuário seleciona um integrador (não um emissor específico) para fazer um pagamento. É isso que aciona o fluxo "Começar redirecionamento".
  2. A IU do Google chama o servidor do Google (back-end) para criar uma nova solicitação de redirecionamento.
  3. O servidor do Google cria uma solicitação de redirecionamento.
  4. A solicitação de redirecionamento é enviada para a interface do Google.
  5. A IU do Google redireciona o usuário para a interface da Web do integrador.
  6. O integrador processa a solicitação de redirecionamento do Google.
  7. O integrador mostra os emissores disponíveis para o usuário.
  8. O usuário seleciona o emissor específico que quer usar para fazer um pagamento.
  9. O integrador gera uma solicitação de redirecionamento específica do emissor.
  10. O integrador redireciona o usuário para a interface da Web do emissor.
  11. O usuário faz a autenticação na interface da Web do emissor.
  12. O usuário segue as instruções na tela para concluir o pagamento.

Práticas recomendadas e outras considerações

Medidas de segurança

O URL da solicitação de redirecionamento vai incluir um campo callbackUrl não criptografado e um campo redirectRequest criptografado. Esses dois campos conterão o requestId da transação atual. O fornecedor precisa validar se o requestId é idêntico no callbackUrl e no payload criptografado para verificar se eles estão relacionados.