Wholesale and resellers
Buy in volume. Sell under your brand.
Approved resellers get a fixed discount on every number and sell our numbers to their own customers under their own brand, through our API.
- 2,250+services
- 200+countries
- 100%refund when no message arrives
How the reseller program works
Three steps from your application to selling under your own brand.
-
Apply
Tell us about your business, how you sell and the spend you expect each month.
-
Get approved
A person reviews every application and sets your discount and limits. You follow the status in your account.
-
Sell under your brand
Buy through the API with your customer reference. Your discount applies to every number, and numbers without a code are refunded.
Everyone pays list prices for now
Volume tiers are switched off at the moment. When they return, your tier follows what you spent in the last 30 days on every channel.
Approved resellers get a fixed discount on every number in the meantime.
Volume tiers by spend in the last 30 days
- Standard Below $50 List prices
- Level 1 $50 and more 3% off
- Level 2 $250 and more 5% off
- Level 3 $1,000 and more 8% off
- Level 4 $5,000 and more 12% off
Sell numbers under your own brand
Run your own shop, bot or app and buy every number through our API. Your customers see your brand, your prices and your support.
-
Your brand only
Numbers and codes reach your customers through your own product. We never contact them.
-
Reseller discount
Approved resellers get a fixed discount on every number, whatever their monthly volume.
-
Per-customer tracking
Tag each purchase with your own customer reference, then filter and report by it.
-
Monthly statement
Charges, refunds and savings per day, customer and service, with a CSV export for your bookkeeping.
-
Limits that fit
We set the number of active numbers and the daily spend limit to match your volume.
-
Automatic refunds
No code, no charge. Unused numbers go back to your balance, so you can refund your customer the same way.
Built on the API you already know
REST with signed webhooks, or the sms-activate protocol for existing panels and bots. Add your customer reference to each purchase and you are done.
-
customer_refon every purchase, in the REST API and the compatible endpoint - Statements in JSON and CSV, per day, customer and service
- Your personal prices in every price list the API returns
curl
curl -s -X POST \
https://smsgrab.com/api/dev/v1/activations \
-H "Authorization: Bearer $SMSGRAB_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"service": "whatsapp",
"country": "indonesia",
"customer_ref": "shop-4821"
}'
Python
activation = requests.post(
"https://smsgrab.com/api/dev/v1/activations",
headers={
"Authorization": f"Bearer {key}",
"Idempotency-Key": str(uuid.uuid4()),
},
json={
"service": "whatsapp",
"country": "indonesia",
"customer_ref": customer.ref,
},
timeout=30,
).json()
Node.js
const url = 'https://smsgrab.com/api/dev/v1/activations';
const activation = await fetch(url, {
method: 'POST',
headers: {
Authorization: `Bearer ${key}`,
'Content-Type': 'application/json',
'Idempotency-Key': crypto.randomUUID(),
},
body: JSON.stringify({
service: 'whatsapp',
country: 'indonesia',
customer_ref: customer.ref,
}),
}).then((response) => response.json());
PHP
$activation = json_decode((string) $client->post('activations', [
'json' => [
'service' => 'whatsapp',
'country' => 'indonesia',
'customer_ref' => $customer->ref,
],
'headers' => ['Idempotency-Key' => bin2hex(random_bytes(16))],
])->getBody(), true);
Go
order := map[string]any{
"service": "whatsapp",
"country": "indonesia",
"customer_ref": customer.Ref,
}
err := call("POST", "/activations", order, idempotencyKey(), &activation)
{
"id": "5c1d0c2e-9f3a-4b7e-8a61-2f0c9d4e7b10",
"status": "WAITING_SMS",
"phone_number": "+6281234567890",
"price_minor": 17,
"currency": "USD",
"expires_at": "2026-09-27T10:25:00.000Z",
"customer_ref": "shop-4821"
}
Apply to become a reseller
Tell us about your business. A person reviews every application, and you can follow its status in your account.
- A verified email address on your SmsGrab account
- Your company or project and how you sell
- The spend you expect each month
Wholesale questions
More answers are in the help center
Does every number get the full discount?
Almost always. A few very cheap numbers have a minimum price, so their discount can be smaller. The price you see before you buy is always the price you pay.
What is the difference between a tier and a reseller discount?
Tiers follow your volume and change with it. Approved resellers get a fixed discount agreed with us. You always get the larger of the two.
How do I track purchases per customer?
Send your own customer reference with each API purchase. Your statement then groups charges and refunds per customer, and the CSV export includes it.
Do my customers see SmsGrab?
No. They use your product, and the numbers and codes reach them through it. We never contact your customers.
Can I still use promo codes and referral credits?
Yes. Credits go to your balance as usual, and your discount applies to every number you pay for with it.