Um OTP (one-time password) é o código de uso único que confirma a identidade do usuário. Você gera o código no seu backend, envia por SMS e valida na volta. A SMSGo cuida da entrega para todas as operadoras do Brasil — o passo a passo abaixo leva cerca de 5 minutos.
- 1Crie a conta e pegue a SMSGo-keyCrie sua conta em smsgo.com.br (ganha R$10 de crédito grátis, sem cartão) e copie a SMSGo-key no painel, em Minha conta → API.
- 2Instale o SDKNode: npm i @orynlabs/smsgo. Python: pip install smsgo. Ou use a API REST direto via cURL — o SDK só cuida da autenticação pra você.
- 3Gere um código aleatórioNo seu backend, gere um número aleatório de 6 dígitos. É o código que o usuário vai digitar para confirmar a identidade.
- 4Envie o SMS com o códigoChame o método send (ou POST /v1/sms/send/single) com o telefone em formato internacional (+55…) e uma mensagem curta contendo o código e a validade.
- 5Guarde o código e verifiqueSalve o código com expiração (ex.: 5 minutos, em Redis) associado ao usuário. Na verificação, compare o que ele digitou e invalide o código após o uso.
Código de exemplo
import { SMSGo } from '@orynlabs/smsgo'
const smsgo = new SMSGo({ apiKey: process.env.SMSGO_KEY })
// 1. gere o código (6 dígitos)
const code = String(Math.floor(100000 + Math.random() * 900000))
// 2. envie
await smsgo.send({
phone: '+5511999990000',
message: `Seu código SMSGo é ${code}. Válido por 5 minutos.`,
})
// 3. guarde `code` com TTL (ex.: Redis) e compare na verificaçãoBoas práticas: mantenha a mensagem curta, sem links, com o nome da sua marca e a validade. Teste o texto no validador de SMS de OTP antes de subir para produção.
Perguntas frequentes
- Como gerar o código OTP?
- Gere um número aleatório de 6 dígitos no seu backend — você controla geração, validade e verificação. Evite sequências previsíveis.
- Qual a validade ideal?
- 5 a 10 minutos. Curto o bastante para ser seguro, e sempre informado na mensagem.
- Como verificar depois?
- Salve o código com expiração (ex.: Redis com TTL), compare na verificação, invalide após o uso e limite tentativas.
- Quanto custa?
- A partir de R$ 0,07/SMS, pré-pago, sem mensalidade. Calcule no cálculo de custo de SMS.