O recurso de inscrição e login no programa de fidelidade permite que os usuários pesquisem seu programa de fidelidade e participe ou faça login em sua conta pela Carteira do Google. Os usuários serão direcionados ao seu site compatível com dispositivos móveis para concluir a e depois pode adicionar o cartão à Carteira do Google.
Este guia fornece uma visão geral das etapas de implementação necessárias para ativar seu programa de fidelidade para esse recurso.
Visão geral
Para começar, verifique se você já configurou o projeto e tem acesso ao API Google Wallet.
Siga estas quatro etapas para implementar o recurso de inscrição e login. do seu programa de fidelidade:
- Configure uma classe de teste na Carteira do Google para testar fluxos de inscrição/login.
- Desenvolver páginas de inscrição/login que usem a Carteira do Google
SharedDataType
. - Implemente o envio do cartão de fidelidade para a Carteira do Google após a inscrição/login.
- Solicitar verificação e ativação.
Configurar uma classe de teste na Carteira do Google
Determine os URLs de inscrição e login, o logotipo do programa e os campos de usuário escolhidos. Depois,
use os campos aninhados discoverableProgram
na
loyaltyclass
para definir
valores adequados.
Defina os valores no discoverableProgram
para criar uma versão de rascunho do
programa de fidelidade com inscrição/login ativado. Para garantir que isso fique visível para os testadores, verifique se
os testadores tenham acesso ao seu Console do Google Pay e da Carteira. Para mais detalhes sobre como compartilhar
o acesso do Google Pay e do Console da Carteira com outras pessoas. Consulte
Saiba mais sobre a página "Usuários".
concluir a verificação da funcionalidade da sua implementação durante o desenvolvimento; use o widget de contato com o suporte no Console do Google Pay e da Carteira. Enquanto estiver em Console, selecione API Google Wallet no tópico e escolha Login/inscrição de fidelidade no subtópico.
Desenvolver páginas de inscrição e login que usam dados do usuário da Carteira do Google
Quando um usuário escolhe fazer login ou se inscrever no seu programa de fidelidade, ele é direcionado para uma página personalizada no seu site com o objetivo de concluir no processo de inscrição ou login. Se um usuário decidir se inscrever, a Carteira do Google solicitará que o usuário aprove o compartilhamento dos dados dele com você.
É necessário fornecer uma das duas páginas (ou ambas) para que os usuários possam concluir essas ações.
- Um URL em que o usuário pode fazer login em uma conta.
- Um URL de registro em que o usuário pode criar uma nova conta.
As páginas de login e inscrição precisam atender aos seguintes requisitos:
- Proporcione uma experiência do usuário otimizada para dispositivos móveis.
- Minimize o número de campos obrigatórios durante o processo de inscrição.
- Permitir que o usuário conclua o login ou a inscrição em uma única página.
- Use a criptografia
HTTPS
com um certificado válido para garantir que os dados do usuário sejam são transmitidas com segurança. - Garanta pelo menos 99,9% de tempo de atividade das páginas de login e inscrição.
Além dos requisitos acima, recomendamos que você permita que os usuários para se inscrever em seu programa de fidelidade sem preencher nenhum formulário ou manter a página apenas para a aceitação dos seus Termos de Serviço.
- Com os dados do usuário fornecidos no
SharedDataType
, você pode criar uma conta e rejeitar o cartão de fidelidade imediatamente. - Depois, envie ao usuário por e-mail uma senha única ou um link para configurar a senha e os detalhes opcionais da conta.
- Isso reduz a chance de usuários abandonarem o processo de inscrição, porque cada etapa adicional pode levar a mais desistências.
Ao apresentar a página de login ou inscrição, a Carteira do Google cria
um WebView do Android e uma solicitação POST
for feita ao
URL. Os dados do usuário são fornecidos no parâmetro SharedDataType
que está incluído na solicitação POST
usando
application/x-www-form-urlencoded e
codificação UTF-8
. O valor de SharedDataType
é um objeto JSON codificado em Base64.
Dependendo da ação escolhida pelo usuário e dos campos especificados para solicitar ao usuário, o objeto JSON pode conter os campos a seguir.
Campo | Registro |
---|---|
✓ | |
firstName | ✓ |
lastName | ✓ |
addressLine [1-3] | ✓ |
cidade | ✓ |
estado | ✓ |
CEP | ✓ |
país | ✓ |
telefone | ✓ |
Consulte abaixo um exemplo de objeto JSON decodificado
contido em SharedDataType
.
Recurso
{ "firstName": "Jane", "lastName": "Doe", "addressLine1": "1600 Amphitheatre Pkwy", "addressLine2": "Apt 123", "addressLine3": "Attn:Jane", "city": "Mountain View", "state": "CA", "zipcode": "94043", "country": "US", "email": "jane.doe@example.com", "phone": "555-555-5555" }
Implementar envio imediato do cartão de fidelidade para a Carteira do Google
Depois da autenticação (login) ou após a criação da conta (inscrição), sua página deve enviar imediatamente o cartão de fidelidade do usuário para a Carteira do Google.
Você pode enviar o cartão de fidelidade para a Carteira do Google redirecionando para um que segue a estrutura abaixo.
https://pay.google.com/gp/v/save/{jwt_generated}
O tamanho seguro de um URL é 2.000 caracteres. Seus links devem permaneçam abaixo desse limite. Objetos codificados em JWTs devem ser pequenos, contendo apenas dados específicos do usuário. Tente manter a maioria dos dados na classe do objeto, criando-o antes do JWT. Para objetos maiores, que não caibam no limite, considere criando primeiro o objeto API Google Wallet e envio apenas do ID do objeto no JWT.
Fluxo de comunicação típico
O fluxo de comunicação para um usuário que conclui o registro ou o login é ilustrado no imagem a seguir. Todas as ações entre "Seu servidor" são sua responsabilidade de implementar.
Solicitar verificação e ativação
Depois de concluir o trabalho de desenvolvimento e testar os fluxos de inscrição/login, envie uma solicitação através do Entre em contato com o suporte do Console do Google Pay e da Carteira widget.
Após uma revisão completa da implementação que confirme a funcionalidade correta no Com o app Carteira do Google, o recurso de inscrição/login no programa de fidelidade será foi lançado publicamente para seu programa de fidelidade. Isso permitirá que qualquer usuário veja programa e usar essa funcionalidade.
Para garantir uma experiência do usuário ideal, verificações recorrentes da sua inscrição/login implementação será realizada para garantir a conformidade contínua com os requisitos do recurso. Você vai receber uma notificação no caso de discrepâncias e a funcionalidade de login/inscrição pode ser desativado até que o problema seja resolvido.
Perguntas frequentes
- Há algum requisito para as imagens usadas no meu programa de fidelidade?
- Sim, as imagens precisam ser hospedadas em
HTTPS
local porque, de outra forma, eles não serão visíveis na Carteira do Google.
- Sim, as imagens precisam ser hospedadas em
- Há alguma ferramenta que simplifique a implementação e a depuração de JWTs?
- Sim, plataformas como www.jwt.io permitem decodificar e depurar seus tokens durante o processo de desenvolvimento, permitindo verificar a conteúdo que você está enviando. O Google não tem afiliação nem recomendar especificamente qualquer um desses terceiros.
- Como processamos corretamente os dados SharedDataType codificados em Base64?
- Use a codificação UTF-8 em todo o processo. String JSON é codificado primeiro em UTF-8 e, depois, em UTF-8 usando android.util.Base64 com as opções NO_WRAP e URL_SAFE. Isso corresponde a Seção 4 do RFC 3548.