⚡ WhatsApp Messaging API for Pakistan

Send WhatsApp Messages & Documents Directly from Your Apps

Link your WhatsApp numbers with a QR scan, get API keys, receive replies through webhooks, and send fee vouchers, results and alerts automatically.

📱

Multiple Numbers

Accounts, Admissions, Support: link several numbers to one account.

⚡

Simple REST API

One cURL call from PHP, Node or Python sends text, images or PDFs.

🛡️

Anti-Ban Queue

Messages are spaced per number automatically to protect your account.

🔔

Signed Webhooks

Incoming replies are pushed to your server with an HMAC signature.

📨

Bulk Sending

Send up to 500 messages per request, delivered safely in the background.

✅

Number Check

Verify a number is on WhatsApp before sending. Failed sends are refunded.

Simple Monthly Plans

Pay via JazzCash, EasyPaisa or bank transfer. Your plan activates after verification.

API Reference

Base URL: · Auth header: x-api-key: YOUR_KEY · Optional device_id chooses which number sends.

MethodEndpointBody / Query
POST/api/v1/send-text{ to, message }
POST/api/v1/send-media{ to, media_url, caption?, filename? } or multipart "file"
POST/api/v1/send-bulk{ messages: [{ to, message }] } (max 500, returns 202)
GET/api/v1/check-number?number=923001234567
GET/api/v1/statusPlan, quota and devices

PHP example

function sultify_wa($endpoint, array $data) {
    $ch = curl_init('/api/v1/' . $endpoint);
    curl_setopt_array($ch, [
        CURLOPT_POST => true,
        CURLOPT_HTTPHEADER => ['Content-Type: application/json', 'x-api-key: YOUR_API_KEY'],
        CURLOPT_POSTFIELDS => json_encode($data),
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_TIMEOUT => 30,
    ]);
    $res = json_decode(curl_exec($ch), true);
    curl_close($ch);
    return $res;
}

sultify_wa('send-text', ['to' => '03001234567', 'message' => 'Your fee voucher has been issued.']);
sultify_wa('send-media', ['to' => '03001234567', 'media_url' => 'https://sultify.com/voucher_1042.pdf',
                          'filename' => 'Fee_Voucher.pdf', 'caption' => 'October fee voucher']);

Verify webhook signature (PHP)

$body = file_get_contents('php://input');
$expected = hash_hmac('sha256', $body, 'YOUR_WEBHOOK_SECRET');
if (!hash_equals($expected, $_SERVER['HTTP_X_SULTIFY_SIGNATURE'] ?? '')) { http_response_code(401); exit; }
$event = json_decode($body, true); // event: message.received | session.connected | session.disconnected

Error codes: 401/403 auth · 402 plan expired · 422 number not on WhatsApp · 429 quota/rate limit · 503 no connected device.

Plan
-
Messages this cycle
-
Devices
-

WhatsApp Devices

API Keys

Webhook

Saved after first webhook setup

Upgrade / Renew Plan

Send payment to the Sultify JazzCash/EasyPaisa account, then enter the transaction ID here. Your plan activates after admin verification.

DatePlanAmountMethodTRXStatus

Recent Messages

TimeRecipientTypeMessageStatus
Tenants
0
Connected Devices
0
Messages Sent
0
Approved Revenue
PKR 0

Pending Payments

DateTenantPlanAmountMethodTRX IDAction

Tenants

NameEmailStatusPlanExpiresUsageDevicesActions