Sandbox + Ciclo OTP v2
KambaSMS / Sandbox

Testa o ciclo completo antes de enviar um SMS real.

Valida tanto cenários determinísticos rápidos como o motor Sandbox OTP v2 com estado (otp_id, validade de 5 minutos, 5 tentativas e uso único) a custo zero.

POST /sandbox/v2/otp/send0 CRÉDITOS · STATEFUL V2
X-API-Key: kamba_test_...
Idempotency-Key: test-otp-001

{
  "phone": "+244923000000"
}

→ 200 OK
{
  "otp_id": "d4e8...91c2",
  "test_code": "482916",
  "expires_in": 300,
  "max_attempts": 5
}
01 · CHAVES TEST

Credenciais kamba_test_ isoladas

Chaves separadas que nunca tocam no teu saldo real de créditos nem nas operadoras móveis.

02 · CUSTO ZERO

0 Kz por simulação

Valida payloads, tratamento de erros, idempotência e webhooks antes de carregar saldo.

03 · SANDBOX OTP V2

Ciclo OTP completo com estado

Expiração real de 5 minutos, máx. 5 tentativas, consumo único e isolamento HMAC em domínio de teste.

04 · LEGADO VS V2

Modo determinístico e modo v2

A simulação antiga aceita 123456 repetidamente sem expiração real; a Sandbox OTP v2 valida expiração e uso único.

01Dois modos de teste

Simulação rápida ou máquina de estados completa com OTP v2.

MODE 01 · STATELESS

Simulador Determinístico (/sandbox/otp)

Ideal para validar conectividade e UI rapidamente. Aceita o código fixo 123456 de forma repetível e simula expiração com 999999.

POST /otp/send (kamba_test_) → code: 123456
MODE 02 · STATEFUL V2

Ciclo Completo Sandbox OTP v2 (/sandbox/v2/otp/*)

Espelha o contrato real de produção: exige otp_id na verificação, aplica expiração real de 5 minutos, bloqueia ao 5.º erro, garante uso único e testa quotas SQL (3/h por número).

POST /sandbox/v2/otp/send → POST /sandbox/v2/otp/verify