Confirmar pagamentos, levantamentos e transferências com um código por SMS: um código por operação

WhatsApp e APIs·· 15 visualizações· 3 min de leitura

A resposta curta: antes de aprovar um pagamento, um levantamento ou uma transferência, envie um código ao telemóvel do cliente e só execute a operação quando o código bater. A regra de ouro é um código por operação, com validade curta, e o texto a dizer para que serve o código. Assim, um código pedido para uma coisa não aprova outra.

Ligar o código à operação

1 Prepare a operação no seu sistema (valor, destino, conta) e grave-a como «à espera de confirmação». Ainda não mexe em dinheiro.
2 Envie o código com POST /v1/sms/otp, com expires_in curto e um texto que diga a operação. Use como Idempotency-Key algo único dessa operação, para um duplo clique não enviar dois códigos.
3 Grave o id do código junto da operação. Na conferência, confirme que o id é o desta operação e não de outra do mesmo cliente.
4 Confira com /verify e só com valid: true execute a operação. Grave verified_at como prova de quando foi confirmada.
5 Se o cliente desistir, cancele o código com POST /v1/sms/otp/{id}/cancel e a operação no seu sistema. O SMS já enviado não é devolvido.

Exemplos de texto

Todos cabem num só SMS. Troque [EMPRESA] e [VALOR] pelos seus dados; {code} e {minutes} são preenchidos por nós.

Operação Texto
Pagamento [EMPRESA]: código {code} para confirmar o pagamento de [VALOR]. Não o partilhe.
Levantamento [EMPRESA]: código {code} para confirmar o levantamento. Válido {minutes} min.
Transferência [EMPRESA]: código {code} para confirmar a transferência. Ninguém da nossa equipa o pede.
Novo beneficiário [EMPRESA]: código {code} para adicionar um beneficiário. Se não foi você, ignore.

Atenção aos acentos: «código», «não» e «transferência» passam a mensagem a Unicode, onde uma parte leva 70 caracteres. Com textos curtos como estes continua a ser uma parte; a conta completa está em quantos créditos gasta um SMS.

Regras que recomendamos para dinheiro

Campo Sugestão
expires_in 5 minutos, a omissão. A página recomenda 5 a 10 minutos.
max_attempts 3. Depois, o cliente pede um código novo.
length 6 algarismos, ou mais se a operação for de valor alto (até 8).
O texto tem de dizer para que serve o código. É a melhor defesa contra quem convence o cliente a ditar um código «para receber um prémio» quando, na verdade, está a aprovar uma transferência. Veja os golpes do código partilhado.
Com um Sender ID, o código chega com o nome da sua empresa. Em pagamentos, isso pesa: o cliente reconhece quem envia e desconfia de mensagens que fujam ao habitual.

Quer confirmar pagamentos e transferências com um código por SMS? Veja o SMS de Verificação.

Ver o SMS de Verificação

VEJA TAMBÉM

API de verificação por SMS: geramos, enviamos e conferimos o código, e o seu sistema guarda só o id

Golpes do código partilhado: proteger os seus clientes de quem lhes pede o código do SMS

Escrever o SMS de verificação: o lugar do código, o seu Sender ID e caber numa só parte

Tamanho, validade e tentativas do código: como escolher length, expires_in e max_attempts

Reenviar, cancelar e substituir um código de verificação: o que acontece ao anterior

O que é o Sender ID: SMS que chegam com o nome da sua empresa em vez de um número

PRODUTO RECOMENDADO

Hospedagem de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 396,00 MT/mês (plano de 3 anos, com cupão)

Ver planos
Esta resposta foi útil? A sua resposta ajuda-nos a melhorar este artigo.