Send OTP and 2FA codes over SMS from your own number
Deliver verification codes with one API call. SimGate sends through your own SIM, so codes arrive from a real mobile number — at a flat monthly price.
OTP delivery without per-message billing
One-time passwords are the highest-value, most cost-sensitive SMS most teams send. With per-message providers, verification traffic is a recurring tax that grows with sign-ups.
SimGate sends OTPs through your own Android phone and SIM for a flat monthly price. Codes arrive from your real number, and you generate them in your own app — SimGate just delivers the text.
How it works
Generate the code
Create the OTP in your backend and store it with a short expiry, as you do today.
Send it
POST the message to /v1/sms/send with your API key and device ID.
Verify
Compare the user's input against the stored code and expire it on success.
Send a verification code
1const res = await fetch("https://api.simgate.app/v1/sms/send", {2method: "POST",3headers: {4"x-api-key": process.env.SIMGATE_API_KEY,5"Content-Type": "application/json",6},7body: JSON.stringify({8deviceId: "android-5q15b182f2704gbz",9phoneNumber: "+1234567890",10message: `Your code is ${code}`,11}),12});1314const { messageId } = await res.json();
A single fetch call delivers the code through your connected phone.
Why teams use SimGate for OTP
- Codes come from a real mobile number, not a shared shortcode
- Predictable monthly cost regardless of sign-up spikes
- Per-message delivery state via the messages endpoint and logs
- Keep code generation and expiry fully in your own system
Stay within messaging rules
OTP and transactional messages are widely accepted, but you remain responsible for consent and local regulations. Keep codes short-lived and never send marketing content on a verification channel.
Frequently asked questions
Does SimGate generate the OTP for me?
No — you generate and verify codes in your own backend, which keeps you in control of expiry and security. SimGate handles delivery from your number.
How do I know if a code was delivered?
Each send returns a messageId you can poll for status, and every attempt appears in your SimGate logs.
Is one phone enough for OTP volume?
For most apps, yes. If you need more throughput or redundancy, higher plans support multiple connected devices.
Keep exploring
Turn your phone into an SMS API
Send and receive SMS from your own SIM at a flat monthly price. Install the app, connect a device, and call the API in minutes.
Start free