Wavetop API Docs
Get API Key
API v1 · Stable · Live now

Build with messaging and payments

Reach your customers and move money through a single integration. Go live faster with one account, one set of credentials, and reliable delivery across every service.

Browse API Reference Quickstart

What you can build

Each capability is a small, predictable set of REST endpoints that share the same request and response conventions.

SMS & Flash Messaging

Send one message or a hundred thousand. You get a reference per recipient, delivery callbacks, and scheduling, plus flash (class-0) messages for OTPs.

Explore endpoints →

Airtime & Data Top-Up

Recharge any line in seconds. Wavetop detects the network for you, so you can pass just the number and the amount.

Explore endpoints →

Electricity & Cable

Pay electricity (EKEDC, IKEDC, and more) and cable TV (DSTV, GOTV, StarTimes). Validate the meter or smartcard first, so a wrong number never costs a payment.

Explore endpoints →

Mobile Money

Collect from and pay out to mobile-money wallets across networks. Each channel lists its limits and required fields up front, authorises the customer by OTP, prompt, or redirect, and reconciles with signed callbacks.

Explore endpoints →

Bearer Tokens & API Keys

Authenticate with a bearer token or an App key, your call. Everything is HTTPS-only and capped at 300 requests a minute per IP.

Explore endpoints →

Quickstart

Grab a token, send your first SMS. Five minutes, start to finish. Every endpoint is plain REST: JSON in, JSON out, ordinary HTTP status codes.

  • 1. Get credentials from the Wavetop dashboard.
  • 2. Exchange them for a 1-hour bearer token via POST /auth/token.
  • 3. Call any endpoint with Authorization: Bearer <token>.
  • 4. Test in-browser with the Try it button on every endpoint.
Start with v1 Install an SDK · Soon
POST /v1/auth/token
curl --request POST \
  --url 'https://api.wavetopglobal.com/v1/auth/token' \
  --header 'Content-Type: application/json' \
  --data '{
    "client_id": "YOUR_CLIENT_ID",
    "client_secret": "YOUR_CLIENT_SECRET",
    "grant_type": "client_credentials"
  }'

# Response
{
  "status": true,
  "result": "OK",
  "message": "Session created",
  "data": {
    "access_token": "eyJhbGciOiJI...",
    "token_type": "Bearer",
    "expires_in": 3600,
    "scope": "all.read all.write"
  }
}

Environments

Pick the right base URL for your stage.

Live

https://api.wavetopglobal.com/v1

Production traffic, real money movement, real SMS delivery.

Demo

https://api-demo.wavetopglobal.com/v1

Sandbox for integration testing. Use +2348031234567 to simulate failures.