TwinsData

API Documentation

Integrate our services into your own platform

The TwinsData API lets developers and businesses programmatically buy airtime, data, cable TV, electricity, exam pins, recharge cards, verification, CAC, and JAMB services. You need an API User account. Create an account, upgrade from your dashboard, then open Profile → Account to copy your API key and set your webhook URL. The Live Reference section below lists every current plan ID and service ID you can send.

Authentication Endpoints Reference Buy Airtime Buy Data Cable TV Electricity Exam Pins Recharge Cards Bulk SMS Betting Verification JAMB Services Wallet Error Codes
Base URL
https://twinsdata.com.ng/api/v1

Authentication

Your current API access page is Profile → Account → API Access. If you just upgraded to API User, open that section once to confirm your key is available and save any webhook URL you want to use.

All API requests must include your API key in the request header. You can find your API key in your dashboard under Settings → API Key.

Request Header
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Quick Start
  1. Create or log into your BetaData account.
  2. Upgrade the account to API User.
  3. Open Profile → Account and copy your API key.
  4. Optional: save a webhook URL to receive transaction updates automatically.
  5. Send the key as a Bearer token in every API request.

Available Endpoints

Method Endpoint Description
POST /airtime/buy Purchase airtime for any network
POST /data/buy Purchase data bundle
POST /cable/buy Pay cable TV subscription
POST /electricity/buy Pay electricity bill
POST /exam/buy Buy exam result checker pin
GET recharge-card/plans List recharge card denominations
POST /recharge-card/buy Generate recharge card PINs
GET verification/products List verification, print, and JAMB services
POST /verification/submit Submit NIN, BVN, JAMB, print NIN/BVN, or other verification request
GET verification/status Check verification request status
POST /sms/send Send bulk SMS
GET betting/platforms List betting wallet platforms
POST /betting/fund Fund a betting wallet
GET cac/products List CAC products
POST /cac/submit Submit CAC registration/document request
GET cac/status Check CAC request status
GET wallet/balance Check your wallet balance
GET transactions List recent transactions
GET data/plans Get available data plans

Live Service & Plan Reference

These are the exact IDs currently available on this platform. Send the id shown here as the plan_id (or pin_id) in your requests. Prices shown are the standard user price and may differ for reseller/API tiers. This list updates automatically as plans change.

Service Identifiers (send these exact values)
Networks (airtime, data, recharge)
mtn, glo, airtel, 9mobile
Cable providers
dstv, gotv, startimes
Exam types
waec, neco, nabteb, jamb
Meter types
prepaid, postpaid

Data Plan IDs

MTN Data 24 item(s)
Plan IDTypeNameSizeValidityPrice
593SMEData share500MB7DAYS VALIDITY262145260.00
623SME500 mb7days Mtn500MB7DAYS VALIDITY (500MB)262145290.00
612SMEMTN SME 1Gb1GB7DAYS VALIDITY (1GB)262145399.90
624SMEMTN SME2 1000.0MB - =(1GB) 30DAYS VALIDITY1GB30days262145480.00
572SMEMTN data share1GB30 Days262145500.00
573SMEMTN data share2GB2 Weekly262145820.00
570SMEMTN data share2GB30 to 21days VALIDITY262145860.00
622SMEMTN 1.5gb 7days1.5Gb7DAYS VALIDITY (1.5GB)262145999.00
571SMEMTN data share3Gb30 Days2621451,180.00
595SMEGifting plan3.57DAYS VALIDITY2621451,500.00
601SMEMTN SME plan5.0GB7DAYS VALIDITY (5GB)2621451,650.00
598SMEMTN sme plan5.0GB30 Days2621451,750.00
590SMESpecial data2.7GB30 Days2621452,000.00
617SMEMTN SME2 , 2.5Gb- =(2.5GB) 30DAYS VALIDITY2.5Gb30 Days2621452,050.00
591SMEXtral special6.75GB30 Days2621452,955.00
788SME10Gb data share 410Gb30 Days2621453,200.00
594SMEGifting plan7GB30 Days2621453,500.00
618SMEMTN 10Gb monthly10Gb30 Days2621454,500.00
789SMEMtn data share 415Gb30 Days2621454,600.00
592SMEXtral special14.5GB30 Days2621454,925.00
599SMEMTN SME plan12.5GB30 Days2621455,500.00
790SMEMTN data share 420Gb30 Days2621456,000.00
791SMEMTN data share 420Gb30 Days2621456,000.00
285DIRECTMTN DATA COUPONS 1.0GB - 1DAY VALIDITY1.0GB1DAY VALIDITY262145241.50
GLO Data 11 item(s)
Plan IDTypeNameSizeValidityPrice
619SME200mb200mb14days262145100.00
614SMEGlo 75Mb75mb1day262145195.00
574SMECorporate500MB30 Days262145210.00
615SMEGlo 1Gb1GB3DAYS262145350.00
621SMEGlo 1Gb1GB3days262145360.00
620SME1Gb Glo 7days1GB7DAYS VALIDITY (1GB)262145400.00
575SMEGlo corporate1GB30 Days262145420.00
576SMEGlo corporate2GB30 Days262145820.00
577SMEGlo corporate3Gb30 Days2621451,240.00
578SMEGLO CORPORATE5.0GB30 Days2621452,100.00
579SMEGLO CORPORATE GIFTING 10GB - 30 days (C.G)10Gb30 Days2621454,100.00
AIRTEL Data 13 item(s)
Plan IDTypeNameSizeValidityPrice
586SMEAirtel sme150mb1day26214565.00
583SMEAirtel corporate100mb1day26214599.00
587SMEAirtel sme300MB2 Days262145150.00
588SMEAirtel sme600mb2 Days262145250.00
580SMEAirtel corporate500MB7DAYS VALIDITY (500mb)262145495.00
792SMEAirtel 1Gb 7days1GB7DAYS VALIDITY (1GB)262145795.00
582SMEAirtel corporate2GB30 Days2621451,485.00
793SMEAirtel sme 3Gb3Gb30 Days2621452,000.00
584SMEAirtel corporate6GB30 Days2621452,970.00
589SMEAirtel sme10Gb30 Days2621453,180.00
585SMEAirtel corporate10Gb30 Days2621453,960.00
794AWOOFAirtel Awoof 500Mb500MB7DAYS VALIDITY (500MB)262145510.00
581AWOOFAirtel corporate1GB7DAYS VALIDITY (1GB)262145795.00
9MOBILE Data 5 item(s)
Plan IDTypeNameSizeValidityPrice
607SME9MOBILE data83 Mb1day26214599.00
608SME9MOBILE data100.0MB1day262145150.00
609SME9MOBILE data650 mb30Days262145500.00
610SME9MOBILE2GB30 Days2621451,100.00
611SME9MOBILE data5.2GB30 Days2621452,600.00

Cable Plan IDs

Cable Plans 78 item(s)
Plan IDProviderNamePrice
57DSTVDStv Padi N4,4002621454,400.00
17DSTVDStv-Padi2621454,620.00
58DSTVDStv Yanga N6,0002621456,000.00
18DSTVExtraView Access2621456,300.00
19DSTVDStv Yanga2621456,300.00
94DSTVDStv Padi + ExtraView N10,40026214510,400.00
20DSTVDStv Padi + ExtraView26214510,920.00
59DSTVDstv Confam N11,00026214511,000.00
21DSTVDStv-Confam26214511,550.00
93DSTVDStv Yanga + ExtraView N12,00026214512,000.00
22DSTVDStv Yanga + ExtraView26214512,600.00
23DSTVDStv -indian26214515,645.00
92DSTVDStv Confam + ExtraView N17,00026214517,000.00
24DSTVDStv Confam + ExtraView26214517,850.00
60DSTVDStv Compact N19,00026214519,000.00
25DSTVDStv Compact26214519,950.00
26DSTVDStv Compact + Extra View26214526,250.00
61DSTVDStv Compact Plus N30,00026214530,000.00
27DSTVDStv Compact Plus26214531,500.00
28DSTVDStv Compact Plus - Extra View26214537,800.00
62DSTVDStv Premium N44,50026214544,500.00
29DSTVDStv Premium26214546,725.00
63DSTVDStv Premium-Asia N50,50026214550,500.00
30DSTVDStv Premium Asia26214553,025.00
31DSTVDStv Premium + Extra View26214553,025.00
32DSTVDStv Premium French26214572,450.00
52GOTVGOtv Smallie - monthly N19002621451,900.00
33GOTVGOtv Smallie - Monthly2621451,995.00
53GOTVGOtv Jinja N3,9002621453,900.00
34GOTVGOtv Jinja2621454,095.00
35GOTVGOtv Smallie - Quarterly2621455,355.00
54GOTVGOtv Jolli N5,8002621455,800.00
36GOTVGOtv Jolli2621456,090.00
55GOTVGOtv Max N8,5002621458,500.00
37GOTVGOtv Max2621458,925.00
56GOTVGOtv Supa - monthly N11,40026214511,400.00
38GOTVGOTv SUPA26214511,970.00
39GOTVGOtv Smallie - Yearly26214515,750.00
40GOTVGOTv SUPA PLUS26214517,640.00
69STARTIMESNova (Antenna) - 700 Naira - 1 Week Startimes 7 Days ₦700.00 ₦7.00 ₦700.00 ₦11.20 STARTIMES 22 Basic262145700.00
78STARTIMESNova (Dish) - 700 Naira - 1 Week262145700.00
41STARTIMESNova - 700 Naira - 1 Week262145735.00
70STARTIMESBasic (Antenna) - 1400 Naira - 1 Week2621451,400.00
42STARTIMESBasic - 1400 Naira - 1 Week2621451,470.00
71STARTIMESBasic (Dish) - 1,700 Naira - 1 Week2621451,700.00
43STARTIMESSmart - 1700 Naira - 1 Week2621451,785.00
72STARTIMESClassic (Antenna) - 2000 Naira - 1 Week2621452,000.00
44STARTIMESClassic - 2000 Naira - 1 Week2621452,100.00
64STARTIMESNova (Dish) - 2100 Naira - 1 Month2621452,100.00
75STARTIMESNova (Antenna) - 2,100 Naira - 1 Month2621452,100.00
45STARTIMESNova - 2100 Naira - 1 Month2621452,205.00
76STARTIMESClassic (Dish) - 2300 Naira - 1 Week2621452,300.00
81STARTIMESClassic (Dish) - 2500 Naira - 1 Week2621452,500.00
84STARTIMESStartimes SHS - 2,800 Naira - Weekly2621452,800.00
79STARTIMESSuper (Antenna) - 3,200 Naira - 1 Week2621453,200.00
73STARTIMESClassic (Antenna) -Super (Dish) - 3,300 Naira - 1 Week 2000 Naira - 1 Week2621453,300.00
46STARTIMESSuper - 3300 Naira - 1 Week2621453,465.00
65STARTIMESBasic (Antenna) - 4,000 Naira - 1 Month2621454,000.00
47STARTIMESBasic - 4000 Naira - 1 Month2621454,200.00
85STARTIMESStartimes SHS - 4,620 Naira - Weekly2621454,620.00
86STARTIMESStartimes SHS - 4,900 Naira - Weekly2621454,900.00
66STARTIMESBasic (Dish) - 5,100 Naira - 1 Month2621455,100.00
48STARTIMESSmart - 5100 Naira - 1 Month2621455,355.00
67STARTIMESClassic (Antenna) - 6000 Naira - 1 Month2621456,000.00
49STARTIMESClassic - 7400 Naira - 1 Mont2621456,300.00
83STARTIMESGlobal (Dish) - 7000 Naira - 1Week Startimes 7 Days ₦7000.00 ₦70.00 ₦7000.00 ₦112.00 STARTIMES 36 Startimes2621457,000.00
77STARTIMESClassic (Dish) - 7400 Naira - 1 Month2621457,400.00
50STARTIMESSuper - 9000 Naira - 1 Month2621459,450.00
80STARTIMESSuper (Antenna) - 9,500 Naira - 1 Month2621459,500.00
68STARTIMESSuper (Dish) - 9,800 Naira - 1 Month2621459,800.00
51STARTIMESSuper - 9800 Naira - 1 Month26214510,290.00
87STARTIMESStartimes SHS - 12,000 Naira - Monthly26214512,000.00
88STARTIMESStartimes SHS - 19,800 Naira - Monthly26214519,800.00
74STARTIMESChinese (Dish) - 21,000 Naira - 1 month26214521,000.00
82STARTIMESGlobal (Dish) - 21000 Naira - 1 Month26214521,000.00
89STARTIMESStartimes SHS - 21,000 Naira - Monthly26214521,000.00
90STARTIMESStartimes SHS - 39,000 Naira - Monthly26214539,000.00
91STARTIMESDStv Premium-French N69,00026214569,000.00

Exam PIN IDs

Exam Pins (send id as pin_id) 6 item(s)
pin_idExamNamePrice
12WAECWAEC Result Check2621455,150.00
10WAECWAEC Result Checker PIN2621455,407.50
11NECONECO Result Checker PIN2621452,257.50
13NECONECO Result Check2621452,300.00
14NABTEBNABTEB262145900.00
15JAMBJAMB Registration26214515,000.00

Recharge Card IDs

Recharge Card Plans 14 item(s)
Plan IDNetworkNamePrice
99MOBILE9MOBILE Recharge Card N100262145100.94
109MOBILE9MOBILE Recharge Card N200262145202.91
11AIRTELAIRTEL Recharge Card N10026214599.91
12AIRTELAIRTEL Recharge Card N200262145199.82
13AIRTELAIRTEL Recharge Card N500262145499.55
14AIRTELAIRTEL Recharge Card N1,000262145999.10
5GLOGLO Recharge Card N10026214599.91
6GLOGLO Recharge Card N200262145200.85
7GLOGLO Recharge Card N500262145499.55
8GLOGLO Recharge Card N1,000262145999.10
1MTNMTN Recharge Card N100262145100.94
2MTNMTN Recharge Card N200262145201.88
3MTNMTN Recharge Card N500262145504.70
4MTNMTN Recharge Card N1,0002621451,009.40

Electricity Disco IDs

Discos (send disco_id or short_name) 12 item(s)
disco_idShort NameFull Name
12AEDCAba Electricity Distribution Company
8AEDCAbuja Electricity Distribution Company (AEDC
10BEDCBenin Electricity Distribution Company (BEDC)
2EEDCEko Electricity Distribution Company
9EEDCEnugu Electricity Distribution Company (EEDC)
6Ibadan Electricity
1IEDCIkeja Electricity Distribution Company
5JEDJos Electricity Distribution Company
7KEDCOKaduna Electricity Distribution Company (KEDCO)
3KEDCOKano Electricity Distribution Company (KEDCO)
4PHEDCPort Harcourt Electricity Distribution Company (PHED)
11YEDCYola Electricity Distribution Company

Betting Platform IDs

Betting (send platform_code or platform_id) 5 item(s)
platform_codeNameplatform_idMinMax
BET9JABet9ja1262145100262145100,000
SPORTYBETSportyBet2262145100262145100,000
BETKINGBetKing3262145100262145100,000
1XBET1xBet4262145100262145100,000
NAIRABETNairaBet5262145100262145100,000

Verification / CAC / JAMB Product Slugs

Products (send slug as product_slug) 40 item(s)
product_slugNameCategoryPrice
nin-verifyNIN VerificationVerification262145200.00
phone-verifyNIN Phone VerificationVerification262145200.00
demo-verifyNIN Demographic SearchVerification262145200.00
nin-trackingNIN Tracking SearchVerification262145300.00
bvn-verifyBVN VerificationVerification262145200.00
bvn-phone-searchBVN Phone VerificationVerification2621451,000.00
nin-validationNIN ValidationVerification262145500.00
ipe-clearance-in-processingIPE Clearance (In-processing)Verification2621452,000.00
ipe-clearanceIPE Clearance V1Verification262145250.00
nin-modificationNIN ModificationVerification2621452,000.00
ipe-clearance-modificationIPE Clearance (Modification)Verification2621453,000.00
bvn-retrievalBVN RetrievalVerification262145200.00
ipe-clearance-old-tracking-idIPE Clearance (Old Tracking ID)Verification262145700.00
ipe-clearance-tracking-processingIPE Clearance (Tracking Proc.)Verification2621452,000.00
personalize-tracking-idPersonalize Tracking IDVerification2621451,000.00
validation-bankValidation: BankVerification2621451,500.00
modification-ipeModification IPEVerification2621451,000.00
validation-bypass-ninValidation: Bypass NINVerification2621458,000.00
validation-jambValidation: JAMBVerification2621451,500.00
validation-modificationValidation: ModificationVerification2621452,000.00
validation-no-recordValidation: No Record FoundVerification2621451,500.00
validation-photography-errorValidation: Photography ErrorVerification2621452,500.00
validation-vninValidation: vNINVerification2621452,000.00
vnin-slip-verificationvNIN Slip VerificationVerification262145400.00
jamb-admission-letterJAMB Admission LetterVerification2621452,000.00
jamb-caps-reprintingJAMB CAPS ReprintingVerification262145800.00
jamb-direct-entry-regJAMB Direct Entry RegVerification2621455,700.00
jamb-olevel-uploadJAMB O'Level UploadVerification2621451,000.00
jamb-original-resultJAMB Original ResultVerification2621452,500.00
jamb-utme-mock-regJAMB UTME + Mock RegVerification2621458,700.00
jamb-utme-regJAMB UTME RegVerification2621457,200.00
business-name-registrationBusiness Name RegistrationCac26214515,000.00
limited-company-registrationLimited Liability Company RegistrationCac26214565,000.00
incorporated-trustee-registrationIncorporated Trustee RegistrationCac262145120,000.00
cac-name-reservationCAC Name ReservationCac2621453,000.00
cac-status-reportCAC Status ReportCac2621455,000.00
cac-document-retrievalCAC Document RetrievalCac2621457,000.00
cac-annual-returnsCAC Annual ReturnsCac26214510,000.00
cac-business-updateCAC Business Update / ModificationCac26214512,000.00
tin-registrationTIN Registration / RetrievalCac2621458,000.00

Buy Airtime

Purchase airtime for any Nigerian network.

POST /airtime/buy
{
  "phone":   "08012345678",
  "network": "mtn",           // mtn | glo | airtel | 9mobile
  "amount":  500,             // Amount in Naira (min ₦50)
  "ref":     "MY_REF_001"     // Your unique transaction reference
}
Response (Success)
{
  "success": true,
  "message": "Airtime sent successfully",
  "data": {
    "transaction_id": "TXN_ABC12345",
    "phone":          "08012345678",
    "network":        "MTN",
    "amount":         500,
    "status":         "success",
    "timestamp":      "2025-01-15T14:30:00Z"
  }
}

Buy Data

Purchase a data bundle. First fetch available plans, then use the plan ID to purchase. You can filter plans with plan_type=sme, gifting, corporate, direct, or awoof.

GET /data/plans?network=mtn
// Returns list of available plans:
{
  "success": true,
  "plans": [
    { "id": 12, "network": "MTN", "type": "SME", "plan_type": "SME", "name": "MTN 1GB SME", "size": "1GB", "validity": "30 days", "price": 250 },
    { "id": 18, "network": "MTN", "type": "GIFTING", "plan_type": "GIFTING", "name": "MTN 2GB Gifting", "size": "2GB", "validity": "30 days", "price": 480 },
    { "id": 25, "network": "MTN", "type": "AWOOF", "plan_type": "AWOOF", "name": "MTN AWOOF 1.5GB", "size": "1.5GB", "validity": "7 days", "price": 350 },
    { "id": 31, "network": "MTN", "type": "DIRECT", "plan_type": "DIRECT", "name": "MTN 5GB Direct", "size": "5GB", "validity": "30 days", "price": 1200 }
  ]
}
POST /data/buy
{
  "phone":   "08012345678",
  "plan_id": 12,
  "ref":     "MY_REF_002"
}

Cable TV

GET /cable/plans?provider=dstv
// provider can be dstv, gotv, or startimes.
// Use the returned id as plan_id when buying.
POST /cable/buy
{
  "provider":     "dstv",          // dstv | gotv | startimes
  "smartcard_no": "1234567890",
  "plan_id":      45,
  "ref":          "MY_REF_003"
}

Electricity

GET /electricity/discos
// Returns disco_id, short_name, min_amount, max_amount, and service_charge.
// Use disco_id or short_name when buying electricity.
POST /electricity/buy
{
  "disco":      "ikedc",          // ikedc | ekedc | aedc | phed | etc
  "meter_no":   "12345678901",
  "meter_type": "prepaid",        // prepaid | postpaid
  "amount":     5000,
  "ref":        "MY_REF_004"
}

// Response includes token:
{
  "success": true,
  "token":   "1234-5678-9012-3456-7890",
  "units":   "45.6 kWh"
}

Exam Pins

GET /exam/plans?exam_type=waec
// exam_type can be waec, neco, nabteb, or jamb.
// Use the returned id as pin_id when buying.
POST /exam/buy
{
  "exam_type": "waec",            // waec | neco | nabteb | jamb
  "quantity":  1,
  "ref":       "MY_REF_005"
}

Recharge Cards

GET /recharge-card/plans?network=mtn
// network is optional: mtn, glo, airtel, or 9mobile.
// Use the returned id as plan_id when buying.
POST /recharge-card/buy
{
  "plan_id":  1,
  "quantity": 2,
  "ref":      "MY_RECHARGE_REF_001"
}

Bulk SMS

POST /sms/send
{
  "sender_name": "BetaData",
  "message": "Your OTP is 123456",
  "recipients": ["08012345678", "08123456789"],
  "ref": "MY_SMS_REF_001"
}

Betting

GET /betting/platforms
// Returns active betting platforms with id, code, min_amount, max_amount, and fee.
// Use platform_id or platform_code when funding.
POST /betting/fund
{
  "platform_code": "SPORTYBET",
  "customer_id": "1234567890",
  "amount": 1000,
  "ref": "MY_BET_REF_001"
}

Verification and Print Services

Use the same API token to list and submit NIN/BVN verification, Print NIN, and Print BVN requests.

GET /verification/products
// Includes price and slip/card variants where available.
{
  "success": true,
  "data": {
    "products": [
      {
        "slug": "print-nin",
        "name": "Print NIN Slip",
        "price": 700,
        "variants": [
          { "key": "regular", "name": "Regular NIN Slip", "price": 700 },
          { "key": "premium", "name": "Premium NIN Slip", "price": 1500 }
        ]
      }
    ]
  }
}
POST /verification/submit
{
  "product_slug": "print-nin",
  "lookup_type": "nin",
  "slip_type": "regular",
  "nin": "12345678901",
  "ref": "MY_REF_006"
}

// Status check:
GET /verification/status?request_id=MY_REF_006

JAMB Services

JAMB services are submitted through the verification API. First list JAMB products with group=jamb, then submit the selected product slug.

GET /verification/products?group=jamb
// Example product slugs:
jamb-olevel-upload
jamb-admission-letter
jamb-original-result
jamb-caps-reprinting
jamb-direct-entry-reg
jamb-utme-reg
jamb-utme-mock-reg
POST /verification/submit
{
  "product_slug": "jamb-admission-letter",
  "fullname": "John Doe",
  "profile_code": "1234567890",
  "jamb_reg_no": "202612345678AB",
  "additional_info": "Optional note",
  "ref": "MY_JAMB_REF_001"
}
POST /verification/submit - Vend PIN
{
  "product_slug": "jamb-utme-reg",
  "fullname": "John Doe",
  "profile_code": "1234567890",
  "phone": "08012345678",
  "ref": "MY_JAMB_REF_002"
}

CAC Services

POST /cac/submit
{
  "product_slug": "business-name-registration",
  "business_name": "Example Ventures",
  "business_type": "Enterprise",
  "owners": "John Doe",
  "phone": "08012345678",
  "address": "Lagos, Nigeria",
  "ref": "MY_REF_007"
}

// Status check:
GET /cac/status?request_id=MY_REF_007

Wallet Balance

GET /wallet/balance
{
  "success": true,
  "balance": 15750.00,
  "currency": "NGN"
}

Error Codes

Code Meaning Action
401 Unauthorized — invalid or missing API key Check your API key in dashboard
402 Insufficient wallet balance Top up your wallet and retry
404 Plan or service not found Fetch available plans first
422 Validation error — missing or invalid field Check request body fields
429 Rate limit exceeded Wait 60 seconds before retrying
503 Provider temporarily unavailable Retry after a few minutes

Ready to Integrate?

Create an account, upgrade to API User, and start building in minutes.

Create Account Contact Support