Partner API
Product · Gaming & Betting

Betting Wallet Funding

Verify customer bettor IDs in real time and fund user accounts across all major Nigerian sportsbooks.

Base path/api/v1/partner/betting
Authx-api-key (+ x-signature on verify/fund)
Supported BookmakersBet9ja, SportyBet, 1xBet, BetKing, Merrybet, BangBet, etc.
Rate limit30 requests / 60s (failure circuit breaker)

1. List Betting Bookmakers

Query the list of active sportsbooks and their slug codes:

List supported betting providers

GET /partner/betting/providers
API key only
cURL
curl https://api.billpadi.com/api/v1/partner/betting/providers \
  -H "x-api-key: $API_KEY"
Example response — 200 OK
{
  "success": true,
  "message": "Betting providers retrieved",
  "data": [
    { "id": "64f1b1a1c4d5e6f7a8b9c301", "name": "Bet9ja", "code": "bet9ja" },
    { "id": "64f1b1a1c4d5e6f7a8b9c302", "name": "SportyBet", "code": "sportybet" },
    { "id": "64f1b1a1c4d5e6f7a8b9c303", "name": "1xBet", "code": "1xbet" },
    { "id": "64f1b1a1c4d5e6f7a8b9c304", "name": "BetKing", "code": "betking" },
    { "id": "64f1b1a1c4d5e6f7a8b9c305", "name": "Merrybet", "code": "merrybet" },
    { "id": "64f1b1a1c4d5e6f7a8b9c306", "name": "BangBet", "code": "bangbet" }
  ],
  "timestamp": "2026-07-10T09:20:03.000Z",
  "path": "/api/v1/partner/betting/providers"
}

2. Verify Betting Customer ID

Perform an instant account enquiry to confirm that the customer ID exists and retrieve the customer's registered name:

Verify bettor account ID

POST /partner/betting/verify
Signature required
FieldTypeRequiredDescription
customerIdstringrequiredBettor account/user ID on the bookmaker platform
providerIdstringrequiredBookmaker slug code (e.g. bet9ja, sportybet) or MongoDB ObjectId
cURL
Node.js
curl -X POST https://api.billpadi.com/api/v1/partner/betting/verify \
  -H "Content-Type: application/json" \
  -H "x-api-key: $API_KEY" \
  -H "x-timestamp: $TIMESTAMP" \
  -H "x-signature: $SIGNATURE" \
  -d '{
    "customerId": "9182734",
    "providerId": "bet9ja"
  }'
const res = await partnerClient.post("/betting/verify", {
  customerId: "9182734",
  providerId: "bet9ja"
});
Example response — 200 OK
{
  "success": true,
  "message": "Account verified",
  "data": {
    "customerId": "9182734",
    "customerName": "ADAOBI OBI",
    "provider": "bet9ja"
  },
  "timestamp": "2026-07-10T09:20:03.000Z",
  "path": "/api/v1/partner/betting/verify"
}

3. Fund Betting Wallet

Credit funds to the verified customer betting account:

Fund betting account

POST /partner/betting/fund
Signature required
FieldTypeRequiredDescription
customerIdstringrequiredCustomer bettor ID
amountnumberrequiredFunding amount in NGN (positive number, min 100)
providerIdstringrequiredBookmaker slug code (e.g. bet9ja) or MongoDB ObjectId
partnerReferencestringrequiredUnique reference string (2–100 characters) for idempotency
cURL
curl -X POST https://api.billpadi.com/api/v1/partner/betting/fund \
  -H "Content-Type: application/json" \
  -H "x-api-key: $API_KEY" \
  -H "x-timestamp: $TIMESTAMP" \
  -H "x-signature: $SIGNATURE" \
  -d '{
    "customerId": "9182734",
    "amount": 2000,
    "providerId": "bet9ja",
    "partnerReference": "PR-BET-19022"
  }'
Example response — 200 OK
{
  "success": true,
  "message": "Betting wallet funding initiated",
  "data": {
    "transactionReference": "TXN_1720603200000_4D5E",
    "partnerReference": "PR-BET-19022",
    "status": "pending",
    "customerId": "9182734",
    "amount": 2000,
    "provider": "bet9ja"
  },
  "timestamp": "2026-07-10T09:20:03.000Z",
  "path": "/api/v1/partner/betting/fund"
}

When the bookmaker acknowledges wallet credit, Billpadi fires a betting.fund.success webhook.

4. Transaction Status & Listing

Get betting transaction status

GET /partner/betting/transactions/:reference
API key only

List betting transactions

GET /partner/betting/transactions
API key only