4 pontos por choigeon0501 9 시간 전 | 5 comentários | Compartilhar no WhatsApp

Sempre que eu adicionava verificação de identidade no cadastro de um serviço, o custo de envio de SMS pesava, então criei uma API de autenticação por celular invertendo a direção do processo.

No modelo tradicional de verificação por SMS, o serviço envia a mensagem de autenticação ao usuário (MT, Mobile Terminated). Isso custa de 9 a 50 won por envio, além de mensalidade básica, então quanto mais usuários, maior o custo; em alguns casos, por causa de contrato e análise, a integração também pode levar de 1 a 2 semanas.

O OCTOMO inverteu essa lógica (MO, Mobile Originated). O usuário envia por SMS, do próprio celular, o código de verificação para um número designado, e o serviço apenas consulta via API a mensagem recebida. Como quem envia a mensagem é o próprio usuário, não há custo de disparo para o serviço, e o fato de o SMS ter sido enviado realmente daquele aparelho também funciona como verificação de posse.

O fluxo recomendado é: ao tocar no botão de verificação, o app de mensagens já abre com o número de destino e o código preenchidos, e o usuário só precisa tocar em enviar. (Como isso é tratado com deep link sms:, há uma parte que precisa ser implementada no front-end, mas em dispositivos móveis esse é o padrão.) Como não há risco de digitar o número errado ou errar o código, a taxa de falha também diminui.

Publicidade

Na prática, a API tem só um endpoint.
POST /octomo/v1/public/message/exists

  • Entrada: número de celular + código enviado pelo usuário
  • Saída: se uma mensagem com esse código foi recebida nos últimos 5 minutos (verified: true/false)

O fluxo de integração é simples: "toque no botão → app de mensagens abre automaticamente (número e código preenchidos automaticamente) → usuário envia → chama esta API e, se retornar true, passa". Não é necessário instalar app nem SDK; basta fazer chamadas REST, e coloquei exemplos em Node/Java/Python na documentação.

Publicidade

Também deixo registradas, de forma franca, as limitações.

  • O deep link elimina o trabalho de digitação, mas ainda resta a etapa de o usuário tocar no botão de envio mais uma vez (um trade-off em troca de custo de envio zero e reforço na verificação de posse).
  • Como é baseado em números de celular da Coreia, usuários do exterior não são o público-alvo.
  • Para o usuário, aplica-se a tarifa de SMS do próprio plano (em planos ilimitados, na prática é grátis).

Gostaria especialmente de ouvir opiniões sobre possíveis preocupações de UX, como "esse fluxo não causaria muita desistência do usuário?", ou observações sob a ótica de segurança. Feedbacks são bem-vindos.

5 comentários

 
winterjung 7 시간 전

Como os requisitos legais de verificação de identidade e de verificação de posse são diferentes e se complementam, entendo que há casos em que é obrigatório usar verificação de identidade. Seria bom explicar melhor em quais casos dá para usar apenas essa verificação de posse.

 
choigeon0501 1 시간 전

Obrigado pelo feedback!
Como você mencionou, os requisitos atendidos pela verificação de identidade e pela verificação de posse são diferentes,
então vamos organizar e acrescentar na documentação, de forma mais clara, os critérios para quando apenas a verificação de posse é suficiente.
Obrigado por apontar isso com tanta precisão!

 
hmmhmmhm 8 시간 전

Ah, isso é algo que eu queria que existisse há pelo menos uma vez, e a API parece realmente muito fácil de usar...!
"o usuário envia por SMS o código de verificação para o número especificado usando o próprio celular"
Essa parte ficou um pouco confusa para mim, mas a orientação é para que ele envie a mensagem para o número fornecido pela OCTOMO, certo?

 
choigeon0501 8 시간 전

Sim, isso mesmo! Basta orientar o cliente a enviar por SMS o código de verificação para o número fornecido pela OCTOMO.

No ambiente de app, recomendamos implementar usando deep link sms: para que, quando o usuário tocar no botão de verificação, o aplicativo de mensagens seja aberto automaticamente!

No ambiente web, atualmente oferecemos o método de envio do SMS com o código de verificação e, adicionalmente, estamos desenvolvendo uma opção com QR code.
Estamos implementando para que, quando o usuário escanear o QR code, ele seja direcionado automaticamente para o aplicativo de mensagens!

Obrigado!

 
hmmhmmhm 6 시간 전

Uau, isso é muito bom mesmo.. vou usar bastante nos meus projetos paralelos haha