Databundle Recharge PIN (EPIN) API
Generate and print Databundle Recharge PINs (EPIN) using a secure HTTPS GET API.
Designed for integration with Web, Mobile Apps, USSD, ATM, and other e-channels. Responses are returned in JSON.
GET
HTTPS
JSON
Endpoints
Buy Databundle EPIN
APIDatabundleEPINV1.asp
https://www.nellobytesystems.com/APIDatabundleEPINV1.asp?UserID=your_userid&APIKey=your_apikey&MobileNetwork=mobilenetwork_code&DataPlan=dataplan_id&Quantity=quantity&RequestID=request_id&CallBackURL=callback_url
Query Transaction
https://www.nellobytesystems.com/APIQueryV1.asp?UserID=your_userid&APIKey=your_apikey&OrderID=order_id
https://www.nellobytesystems.com/APIQueryV1.asp?UserID=your_userid&APIKey=your_apikey&RequestID=request_id
Databundle Plans (JSON)
Retrieve available databundle plans (Product ID, name, price) per network:
APIDatabundlePlansV2.asp
https://www.nellobytesystems.com/APIDatabundlePlansV2.asp?UserID=
Try It (Quick Test)
Build a request URL and test quickly. (Uses browser fetch; CORS depends on server settings.)
Idle
Notes
- Use a unique RequestID to support safe retries and reconciliation.
- Use APIQueryV1 to confirm final status for queued/processing transactions.
- Cancellation is allowed only for
ORDER_RECEIVED or ORDER_ONHOLD.
Request Parameters
| Parameter |
Description |
| UserID | Your account UserID. |
| APIKey | Your API key used to authenticate requests. |
| MobileNetwork |
Mobile network code:
01 = MTN
02 = Glo
03 = Etisalat
04 = Airtel
|
| DataPlan | Databundle plan Product ID. Retrieve valid IDs via APIDatabundlePlansV2. |
| Quantity | Number of PINs to generate. Allowed: 1 to 100. |
| RequestID | Unique request ID (recommended for reconciliation and safe retries). |
| CallBackURL | Callback URL for asynchronous transaction status updates. |
| OrderID | Returned after request is received. Used for query/cancel operations. |
Examples
Sample: Print 1 quantity of MTN 1GB (30 days) EPIN (RequestID 789)
Replace credentials with yours
https://www.nellobytesystems.com/APIDatabundleEPINV1.asp?UserID=CK11&APIKey=123&MobileNetwork=01&DataPlan=1000&Quantity=1&RequestID=789&CallBackURL=http://www.your-website.com
Immediate response (sample)
{
"orderid": "789",
"statuscode": "100",
"status": "ORDER_RECEIVED"
}
Query by OrderID
https://www.nellobytesystems.com/APIQueryV1.asp?UserID=CK123&APIKey=456&OrderID=789
Query response (sample)
{
"TXN_EPIN_DATABUNDLE": [
{
"transactionid": "6329036611",
"transactiondate": "12/20/2019 9:08:00 PM",
"mobilenetwork": "MTN",
"productname": "1 GB - 30 days",
"batchno": "82057",
"sno": "00000003802132587",
"pin": "14819613681469920"
}
]
}
Cancel an Order (OrderID 789)
https://www.nellobytesystems.com/APICancelV1.asp?UserID=CK123&APIKey=456&OrderID=789
Cancel response (sample)
{
"status": "ORDER_CANCELLED",
"orderid": "789"
}
Note: You can only cancel transactions whose status is ORDER_RECEIVED or ORDER_ONHOLD.
Callback (CallBackURL)
After processing, we will call your CallBackURL with the OrderID, StatusCode, OrderStatus, and OrderRemark.
You can also use APIQueryV1 to confirm final status.
Callback example (query string)
https://your_callback_url?orderdate=22th-Jul-2023&orderid=6501321715&statuscode=200&orderstatus=ORDER_COMPLETED&orderremark=Dear%20Customer%2C%20You%20have%20successfully%20shared%2050MB%20Data%20to%2008149659347
Callback example (JSON)
{
"orderdate": "22th-Jul-2023",
"orderid": "6501321715",
"requestid": "",
"statuscode": "200",
"orderstatus": "ORDER_COMPLETED",
"orderremark": "Dear Customer, You have successfully shared 50MB Data to 08149659347"
}
Status Codes
Common responses are listed below. For the full list, use:
View full list of Status Code and Descriptions
| STATUS |
DESCRIPTION |
INVALID_CREDENTIALS | The UserID and API key combination is not correct. |
MISSING_CREDENTIALS | The URL format is not valid. |
MISSING_USERID | UserID is empty. |
MISSING_APIKEY | APIKey is empty. |
MISSING_MOBILENETWORK | MobileNetwork is empty. |
MISSING_DATAPLAN | DataPlan is empty. |
INVALID_DATAPLAN | DataPlan is not valid. |
INVALID_RECIPIENT | An invalid mobile phone number was entered. |
ORDER_RECEIVED | Your order has been received. |
Since we use a GET API, responses are returned in JSON.
Available Databundle Plans (Optional Display)
If you want to display available plan IDs and prices inside this page, you can fetch
APIDatabundlePlansV2 server-side (as you already do) and render the list.
For better performance, consider caching the JSON response for a short duration (e.g., 5–15 minutes).
https://www.nellobytesystems.com/APIDatabundlePlansV2.asp?UserID=