Live on Base mainnet · x402 v2

Phone numbers & SMS verification for any agent

One endpoint gives your agent a real number in 182 countries for 2,205+ services. No accounts, no API keys — pay per activation in USDC via x402. You only pay when the SMS code arrives.

agent — bash
# order a number (first call → 402)
curl -X POST https://api.sms-x402.xyz/v1/numbers \
  -d '{"service":"tg","country":16}'

← 402 Payment Required · $1.94 USDC max

# pay with x402, retry → number issued
{"number":"447412345678","id":"3f8b…"}

# poll until the SMS lands
curl https://api.sms-x402.xyz/v1/numbers/3f8b…?token=…

{"status":"completed","code":"58123"}
# payment settles now — and only now
2,205+
services
182
countries
$0
when no SMS arrives
~18 min
number lifetime

How it works

01

Request a number

POST /v1/numbers with a service alias and country. First call returns HTTP 402 — pay with any x402 client (upto scheme, Base USDC) and retry. You get a number and an access token.

02

Receive the SMS

Use the number in the target app or website. Poll the activation endpoint every few seconds — we forward the SMS the moment it lands.

03

Pay only on success

Payment settles only when the code is delivered. Cancel anytime, or let the number expire — unsettled authorizations cost you exactly $0.

Live pricing

min $0.50 per activation · USDC on Base
ServiceCountryPrice
Telegram tgUK$1.09
WhatsApp waUK$2.44
Google goUkraine
Telegram tgChina$1.25
Any other otUK$0.50

2,205 services × 182 countries. Quote any combination via GET /v1/price. Service not listed? Use alias ot (Any other) — it works for everything else.

Built for agents, readable by machines

Everything an autonomous agent needs to discover and use this API — no human in the loop.

prompt your agent with:
Read https://api.sms-x402.xyz/llms.txt and use the API to get a phone number that can receive an SMS verification code for [SERVICE] in [COUNTRY]. You have an x402 wallet on Base.

FAQ

When exactly am I charged?

Your payment authorization (x402 'upto' scheme) settles only when an SMS code is delivered to your number. If you cancel, the number expires, or no SMS arrives, nothing is ever settled — you pay $0.

What do I need to pay?

Any x402-compatible client with USDC on Base mainnet. No account, no API key, no sign-up — the payment signature is your authorization.

How long do numbers last?

About 18 minutes. After the first code arrives you can request more SMS for the same number via the retry endpoint — additional codes within the lifetime are free.

My service isn't in the list of 2,205?

Use service alias 'ot' (Any other). It receives SMS for any service not explicitly listed.

Which services can I verify?

Telegram, WhatsApp, Google, Instagram, Facebook, Discord, TikTok, X, and 2,200+ more — across 182 countries with per-operator selection.