
Compartilhar:
Lorna é engenheira de software e tem um vício incurável por escrever em blogs. Ela tenta domar as palavras e o código na mesma medida.
Adicione autenticação robusta conforme a PSD2 ao seu aplicativo
Tempo de leitura: 3 minutos
À medida que o número de compras online aumenta, os riscos de fraude e de pagamentos não autorizados também aumentam.
Em resposta a essa situação, foi introduzida na Europa uma nova norma para a autenticação de pagamentos on-line denominada “Autenticação Segura do Cliente”, também conhecida como PSD2 (Diretiva de Serviços de Pagamento, versão 2).
A PSD2 introduz um elemento de segurança adicional aos pagamentos on-line. Se você estiver realizando transações em euros, poderá usar nossa Verify API para ajudar a implementar esse elemento extra em suas Applications.
Sobre a autenticação segura do cliente
A autenticação segura do cliente significa garantir que mais de um tipo de autenticação seja utilizado para transações de valores mais elevados (os detalhes técnicos e as letras miúdas também estão disponíveis). Em resumo, as transações devem incluir dois desta lista de três elementos:
Uma senha ou PIN (algo que o usuário sabe)
Uma impressão digital ou um reconhecimento facial/ocular (algo que o usuário é)
Informações provenientes de um celular ou token físico (algo que o cliente possui)
Usar o recurso PSD2 na Verify API é uma maneira simples de implementar a terceira opção da lista acima.
Como funciona a Verify API PSD2
Para autorizar um pagamento, a API envia um código para o número de telefone cadastrado na conta do usuário.
A autorização pode ser feita por mensagem de texto, ligação telefônica ou, geralmente, uma combinação de ambas, a fim de atingir o maior número possível de usuários. O usuário recebe o código PIN juntamente com informações sobre a transação: a quem está pagando e o valor do pagamento.

Em seguida, o usuário insere o PIN que recebeu; esse código é enviado de volta à Verify API para verificar se está correto. Se estiver, a solicitação é confirmada e você pode prosseguir com o pagamento.
Implementar a Verify API da PSD2
Temos exemplos em algumas pilhas de tecnologia diferentes , mas, para manter a abordagem bem inclusiva, esses exemplos usam cURL.
Enviar um código PIN para confirmar um pagamento
O primeiro passo é enviar um código para o celular do cliente para confirmar o valor do pagamento e o nome do destinatário. Para garantir que a mensagem tenha chegado ao cliente, ela inclui um código PIN.
A referência da API para enviar um código PSD2 está aqui , com uma lista completa de detalhes e todos os parâmetros disponíveis. No caso mais simples, a solicitação cURL fica assim:
curl -X POST "https://api.nexmo.com/verify/psd2/json" \
-d api_key=API_KEY -d api_secret=API_SECRET \
-d number=447700777000 -d payee="Acme, Inc" \
-d amount=12.34Substituir API_KEY e API_SECRET no exemplo acima por suas credenciais e insira também o número de telefone para o qual o PIN será enviado; esse número provavelmente deve ser o seu durante o teste e deve estar no formato internacional, sem o símbolo + .
Nesse contexto, o PIN será enviado primeiro por SMS. Se o usuário não fornecer o PIN correto em poucos minutos, será feita uma ligação automática para informar o PIN por voz.
Contar com ambas as abordagens ajuda a alcançar mais usuários com sucesso, mas você também pode escolher o fluxo de trabalho que melhor se adapte ao seu caso de uso.
A solicitação retorna um request_id. Salve isso, pois você precisará dele na próxima etapa!
Verifique o código PIN
Quando o usuário enviar o código PIN que recebeu, você poderá confirmar se ele está correto chamando o /check ponto de extremidade na Verify API do Vonage.
Confira a documentação de referência da API para o endpoint de verificação para obter os detalhes precisos. Mais uma vez, , exemplos de código estão disponíveis, e a solicitação cURL fica assim:
curl -X POST "https://api.nexmo.com/verify/check/json" \
-d api_key=API_KEY -d api_secret=API_SECRET \
-d request_id=abcdef0123456789abcdef0123456789 -d code=1234Mais uma vez, substitua API_KEY e API_SECRET pelas suas credenciais e use o request_id retornado na etapa anterior. O code parâmetro deve ser o código PIN enviado ao usuário.
Se for bem-sucedida, a resposta exibirá um status valor zero, e você pode ter certeza de que o usuário autorizou o pagamento.
Próximos passos
Nesta postagem, abordamos o que envolve a Autenticação Segura do Cliente e apresentamos um exemplo de como implementá-la em suas Applications. Aqui estão alguns recursos que podem ser úteis para o seu próximo passo:
A Verify API do nosso Portal do Desenvolvedor
Documentação da API para a Verify API
Nossa coleção de postagens do blog sobre a Verify API pode trazer alguma inspiração para o seu próximo projeto
Entre em contato conosco no Twitter ou no nosso Slack da Comunidade com quaisquer comentários, sugestões ou dúvidas.