A Twilio Verify alternative for SMS codes in Georgia

Twilio is a global platform with many channels, countries and products. NOTIFY does one narrow thing: it sends verification, sign-in and password-reset codes by SMS to Georgian mobile numbers, through a small API, billed in GEL. If that is what you use Twilio for in Georgia, this page shows how the two compare and how to switch.

When NOTIFY fits

When it does not, yet

What maps to what

With TwilioWith NOTIFY
Verify: start a verification, and Twilio creates and sends the code Your application creates the code and sends it: POST /v1/messages with the verification_code template
Verify: check the code the user entered Your application compares it with the code it kept
Messaging: send an SMS with your own text Choose a template: verification_code, login_code or password_reset_code, in Georgian (ka, the default) or English (en)
A status callback URL that Twilio calls Read GET /v1/messages/{id} while the status is queued or submitted
Account SID and Auth Token, sent with HTTP Basic authentication Test and live API keys for each project, sent as Authorization: Bearer
A form-encoded request body A JSON body, plus an Idempotency-Key header: a retry with the same key within 24 hours never sends a second SMS

On status, NOTIFY keeps two things apart: submitted means the provider accepted the message, and delivered appears only after a real delivery confirmation.

Moving a sign-in code

  1. Create a 6-digit code with a secure random generator. Keep a hash of it with the user, with an expiry time, ten minutes for example.
  2. Send it with POST /v1/messages and a new Idempotency-Key.
  3. When the user types the code, compare it with the hash and check the expiry. Accept each code once, and limit the number of attempts.

Try it from a terminal

Get a test key. No account is needed, and a test key never sends a real SMS:

curl -sS -X POST https://api.n0t1fy.dev/v1/test-keys

Copy the api_key from the answer (it starts with sk_test_) into your shell:

export NOTIFY_API_KEY=sk_test_your_key_here

Send a code. uuidgen makes a new Idempotency-Key; it comes with macOS and most Linux systems, and any unique string works:

curl -sS -X POST https://api.n0t1fy.dev/v1/messages \
  -H "Authorization: Bearer $NOTIFY_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H 'Content-Type: application/json' \
  --data '{
    "to": "+995500000000",
    "template": "verification_code",
    "variables": { "code": "482913" },
    "locale": "en"
  }'

Then read it with GET /v1/messages/{id} until it settles. The examples on GitHub do all of this in Node, Python and curl, and the API reference has the full contract.

Price

Prices are in GEL, VAT included, and every template is one SMS. Twilio publishes its own prices for Georgia on its website.

Free trial

0 GEL

To build and try your integration.

  • Test keys for test sends: no real SMS, no cost, no daily limit
  • 100 free real SMS for a new account, up to 20 a day, while the free allowance lasts
  • Free SMS never expire, and any left over carry into your first paid month
Get an API key

Every template fits in one SMS, in Georgian or English. A month runs from the day your payment arrives. Billing is by bank transfer for now, and the subscription does not renew by itself: you pay for each month.

Questions, or switching a larger volume? Write to contact@n0t1fy.dev.

NOTIFY is not affiliated with Twilio. Twilio and Twilio Verify are trademarks of Twilio Inc. This comparison reflects our understanding on 7 October 2026; if anything here is out of date, tell us and we will correct it.