Integrations
Avoiding duplicate SMS during retries
Implementation scenario · This is an example implementation, not a story about a named customer. Results depend on your integration, phone, network and carrier.
AI-generated scenario illustrationThe problem
The network can fail after a job is created but before the response arrives. Retrying an ordinary request can create another message.
Build the solution
Use a stable Idempotency-Key for one business event. Repeat the same device, number, text and metadata. Store the key with the backend event instead of generating a new one for every attempt.
Check before launch
Test concurrent calls and response timeouts. Changed content under an existing key is a conflict; a genuinely new business event needs a new key.
How SIM Bridge works
Your backend creates a job through the API, and the connected Android sends SMS through your SIM. Store the message ID in your system and receive status changes through a webhook. A queued job is not yet a sent message: the phone must be available and the carrier must accept it.
Start with your own test number. Check Android permissions, screen-off connectivity, retries with the same Idempotency-Key, and unknown-status handling. Keep API keys out of browser code and public repositories.