Um OTP (one-time password) é o código de uso único que confirma a identidade do usuário. Você gera o código no backend, envia por SMS e valida na volta. A SMSGo cuida da entrega para as operadoras do Brasil; o processo leva cerca de 5 minutos.
- 1Crie a conta e pegue a SMSGo-keyCrie sua conta, receba 3 SMS grátis sem cartão e copie a SMSGo-key em Minha conta → API.
- 2Instale o SDKUse npm i @orynlabs/smsgo, pip install smsgo ou a API REST via cURL.
- 3Gere um código aleatórioNo backend, gere um número aleatório de 6 dígitos.
- 4Envie o SMS com o códigoChame send ou POST /v1/sms/send/single com telefone internacional, código e validade.
- 5Guarde o código e verifiqueSalve com expiração associado ao usuário, compare o valor digitado, limite tentativas e invalide 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 sua marca e a validade. Teste no validador de SMS de OTP.
Perguntas frequentes
- Como gerar o código OTP?
- Gere um número aleatório de 6 dígitos no backend; você controla geração, validade e verificação. Evite sequências previsíveis.
- Qual a validade ideal?
- De 5 a 10 minutos. Informe a validade na mensagem.
- Como verificar depois?
- Salve com expiração, compare na verificação, invalide após o uso e limite tentativas.
- Quanto custa?
- A partir de R$0,07/SMS, pré-pago e sem mensalidade.