API Documentation
Homepage Airtime API Data API Cable TV API Electricity API Bulk SMS API Data Pin API Exam Pin API Recharge Card API Internet Bundle API Transaction Query API Webhook API
× Homepage Airtime API Documentation Data API Documentation Cable TV API Documentation Electricity API Documentation Bulk SMS API Documentation Data Pin API Documentation Exam Pin API Documentation Recharge Card API Documentation Internet Bundle API Documentation Transaction Query API Documentation Webhook API Documentation

Airtime API Integration

(Live Environment)

Welcome to the Airtime API Integration page. This guide will help you integrate our Airtime API into your system.

cURL Init Sample

curl -X POST https://vtunaija.com.ng/api/topup/ \
-H "Authorization: Token YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"network": "1",
"mobile_number": "08012345678",
"Ported_number": "true",
"request-id": "78977865523",
"amount": "500",
"airtime_type": "VTU"
}'

Successful API Response

{
"Status": "successful",
"status": "success",
"api_response": "You have successfully sent Airtime of ₦500 to 08011111111",
"id": "78977865523",
"ident": "78977865523",
"plan_amount": "500.00",
"transaction_internal_id": "204781"
}

Failed API Response

{
"Status": "failed",
"status": "fail",
"api_response": "Failed Failed Failed. Something went wrong",
"id": "78977865523",
"ident": "78977865523",
"plan_amount": "0.00",
"transaction_internal_id": "204781"
}

Processing API Response

{
"Status": "processing",
"status": "processing",
"api_response": "Pending Airtime Topup of ₦500",
"id": "78977865523",
"ident": "78977865523",
"plan_amount": "0.00"
"transaction_internal_id": "204781"
}

Failed API Response

This is an example of a failed API response caused by factors such as an insufficient wallet balance, an incorrect API key, missing POST fields and so on.

{
"Status": "failed",
"status": "fail",
"message": "Insufficient wallet balance",
}

Post Terms Defined and Interpreted

network: This identifies the specific network for which the user is purchasing airtime. The network post field is represented by the numbers 1, 2, 3, or 4: 1 indicates MTN, 2 indicates GLO, 3 indicates 9Mobile, and 4 indicates Airtel. For the complete list of Vtunaija Network IDs and Plan IDs, check the API Documentation Page 1.

mobile_number: This is the phone number for which the user wants to purchase airtime.

Ported_number: This field is used to bypass the mobile number validator. Setting this field to 'true' means the validator is bypassed, while 'false' means it is not bypassed. This field is optional and defaults to 'true' if not provided during API airtime integration.

request-id: This is the unique ID you send as the Request ID.

amount: The amount of airtime the user wishes to purchase for the specified phone number.

airtime_type: This specifies the type of airtime the user wants to purchase. The airtime_type must be either "VTU" or "SNS".