This API allows you to integrate all financial services into your platform. Use the Sandbox environment for testing, and switch to Production once ready. All endpoints require an API Key passed in the request header.
Pass your API key in every request header. Never expose your key publicly.
| Header | Value | Required | Description |
|---|---|---|---|
X-API-Key |
Your API Key | Required | Sandbox key for sandbox URL, Production key for live URL |
Accept |
application/json |
Required | Always send this for JSON responses |
Content-Type |
application/json |
POST only | Required for POST payloads |
Use https://mobicell.in/api/v1/sandbox with your Sandbox
Key to test without any real transactions. Sandbox always returns mock success
responses and never deducts your balance.
All responses are JSON with a status (boolean) field.
{ "status": true,
"message": "OK",
"data": { ... } }
{ "status": false,
"message": "Error",
"errors": { ... } }
| HTTP Code | Meaning |
|---|---|
200 |
Success โ check status field |
401 |
Invalid or missing API Key |
403 |
Live mode not activated |
422 |
Validation error โ see errors field |
500 |
Server error โ contact support |
Get the current main and commission balance of the API account.
Response
{ "status": true,
"data": {
"main_balance": "24560.50",
"commission_balance": "1250.00",
"currency": "INR"
}
}
Get paginated transaction history.
| Parameter | Type | Required | Description |
|---|---|---|---|
page |
Integer | Optional | Page number (default: 1) |
per_page |
Integer | Optional | Items per page (default: 15, max: 100) |
Process a mobile prepaid, postpaid, or DTH recharge.
| Parameter | Type | Required | Description |
|---|---|---|---|
operator_id |
Integer | Yes | Numeric Operator ID (e.g. 1, 5, 2). Use /operator-codes to list. |
number |
String | Yes | 10-digit mobile or VC/Subscriber number |
amount |
Numeric | Yes | Recharge amount in INR |
client_ref_id |
String | Yes | Your unique transaction reference (max 50 chars) |
Check the real-time status of a previously processed recharge or bill payment.
| Parameter | Type | Required | Description |
|---|---|---|---|
client_ref_id |
String | Yes | Your unique transaction reference from the original request |
Fetch a list of active recharge and DTH operators.
| Parameter | Type | Required | Description |
|---|---|---|---|
| No query parameters required. | |||
File a dispute for a transaction that failed but where funds were deducted, or if the operator processed incorrectly.
| Parameter | Type | Required | Description |
|---|---|---|---|
client_ref_id |
String | Yes | Your unique transaction reference from the original request |
remark |
String | Yes | A brief explanation of why this transaction is being disputed |
Fetch a list of all active service categories supported by the BBPS ecosystem (e.g., Electricity, Water, Gas).
| Parameter | Type | Required | Description |
|---|---|---|---|
| No query parameters required. | |||
Fetch the list of telecom/utility regional circles and their corresponding location IDs.
| Parameter | Type | Required | Description |
|---|---|---|---|
| No query parameters required. | |||
Fetch a list of active BBPS operators within a specified category. These operators support mandatory bill fetching.
| Parameter | Type | Required | Description |
|---|---|---|---|
category_id |
Integer | Yes | The ID of the Category. Obtained from the /bbps/categories endpoint. |
circle |
Integer | Optional | The Location ID (circle) of the region. Filters operators to a specific state. |
Fetch the dynamic input requirements (parameters) mandated by a specific operator (e.g. "Meter Number", "Consumer ID"). You must construct your bill fetching payload using these exact keys.
| Parameter | Type | Required | Description |
|---|---|---|---|
operator_id |
Integer | Yes | The ID of the Operator. Obtained from the /bbps/operators endpoint. |
Fetch outstanding bill details for dynamic BBPS operators (Electricity, Gas, Water, etc.) before processing payment.
| Parameter | Type | Required | Description |
|---|---|---|---|
operator_id |
Integer | Yes | The unique ID of the operator. Obtained from the /bbps/operators endpoint. |
category_id |
Integer | Yes | The ID of the Category. Obtained from the /bbps/categories endpoint. |
account_number |
String | Yes | The consumer identifier (e.g. Consumer ID, Account Number, or CA Number). |
acno |
String | Optional | Additional account identifier (e.g. Meter Number) required by certain operators. |
Submit a bill payment request for a BBPS operator. Ensure you have the exact amount from a successful fetch-bill request.
| Parameter | Type | Required | Description |
|---|---|---|---|
operator_id |
Integer | Yes | The unique ID of the operator. |
category_id |
Integer | Yes | The ID of the Category. Obtained from the /bbps/categories endpoint. |
account_number |
String | Yes | The consumer identifier. |
amount |
Numeric | Yes | The bill amount to pay (obtained from /bbps/fetch). |
client_ref_id |
String | Yes | Your unique transaction reference for tracking. |
acno |
String | Optional | Additional account identifier (e.g. Meter Number) required by certain operators. |
Transfer money to any Indian bank account via IMPS/NEFT.
| Parameter | Type | Required | Description |
|---|---|---|---|
sender_mobile |
String | Yes | Sender 10-digit mobile number |
account_number |
String | Yes | Beneficiary bank account number |
ifsc |
String | Yes | Bank IFSC code (11 chars) |
amount |
Numeric | Yes | Transfer amount (โน1 โ โน25,000) |
beneficiary_name |
String | Yes | Beneficiary full name |
client_ref_id |
String | Yes | Your unique transaction reference |
Send a payout to a bank account with higher limits via IMPS/NEFT/RTGS.
| Parameter | Type | Required | Description |
|---|---|---|---|
account_number |
String | Yes | Beneficiary bank account |
ifsc |
String | Yes | Bank IFSC code |
amount |
Numeric | Yes | Payout amount in INR |
mode |
String | Yes | Transfer mode: IMPS / NEFT / RTGS |
beneficiary_name |
String | Yes | Beneficiary full name |
client_ref_id |
String | Yes | Unique reference |
Initiate Aadhaar verification by sending an OTP to the registered mobile. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
aadhaar_number |
String (12) | Yes | Valid 12-digit Aadhaar number |
Verify the OTP received after the Send OTP step.
| Parameter | Type | Required | Description |
|---|---|---|---|
aadhaar_number |
String (12) | Yes | Same Aadhaar used in Send OTP |
otp |
String (6) | Yes | 6-digit OTP received on Aadhaar registered mobile |
reference_id |
String | Yes | ref_id received from the Send OTP response |
Verify a PAN number and get the registered name. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
pan_number |
String (10) | Yes | PAN in AAAAA9999A format |
Verify a bank account details by performing a penny drop. Live API charges apply (โน3.00)
| Parameter | Type | Required | Description |
|---|---|---|---|
account_number |
String | Yes | Beneficiary bank account number |
ifsc |
String | Yes | Bank IFSC code |
name |
String | Yes | Beneficiary name for verification |
Success Response Example
{
"ErrorCode": 100,
"status": "Success",
"msg": "done",
"response": {
"beneficiary_name": "JOHN DOE",
"beneficiary_account": "1234567890",
"beneficiary_ifsc": "SBIN0001234",
"account_status": "ACTIVE",
"bank_name": "STATE BANK OF INDIA",
"branch_name": "MUMBAI MAIN BRANCH"
}
}
Verify Voter ID details. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
voterid_number |
String (10) | Yes | Voter ID number |
Verify Driving License details. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
dl_number |
String | Yes | Driving License number |
dob |
String (YYYY-MM-DD) | Yes | Date of Birth |
Verify Passport details. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
file_number |
String | Yes | Passport File number |
dob |
String (YYYY-MM-DD) | Yes | Date of Birth |
Verify Vehicle Registration details. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
vehicle_number |
String | Yes | Vehicle registration number |
Verify UPI ID details. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
upi_id |
String | Yes | UPI ID (e.g., example@upibank) |
Verify GST registration details. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
gst_number |
String (15) | Yes | GST number |
Get available recharge plans for a mobile operator. Live API charges apply
| Parameter | Type | Required | Description |
|---|---|---|---|
type |
String | Yes | mobile_plans / dth_info / bill_fetch |
operator_id |
Integer | Yes | Our primary Database Operator ID (Get from list below) |
number |
String | Yes | Mobile number |
circle |
String | Optional | Circle/Location code (Default: 0 - All India) |
Start a DigiLocker E-KYC session. Returns a URL for user authentication.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | String | Yes | User's full name |
mobile | String(10) | Yes | User's mobile number |
redirect_url | URL | Yes | URL to return after auth |
logo_url | URL | Optional | Custom logo for auth page (Default: System Logo) |
Verify if the user has completed the DigiLocker authentication.
| Parameter | Type | Required | Description |
|---|---|---|---|
client_id | String | Yes | Client ID from initialize step |
Fetch official MCA registry details by Company Name or CIN.
| Parameter | Type | Required | Description |
|---|---|---|---|
type | String | Yes | name or cin |
value | String | Yes | The Company Name or CIN code |
Verify Tax Deduction and Collection Account Number (TAN).
| Parameter | Type | Required | Description |
|---|---|---|---|
tan_number | String(10) | Yes | 10-digit TAN number |
Verify MSME Udyog Aadhaar registration details.
| Parameter | Type | Required | Description |
|---|---|---|---|
udyog_number | String | Yes | Udyog Aadhaar Number |
Verify bank account by depositing โน1 and retrieving the beneficiary name.
| Parameter | Type | Required | Description |
|---|---|---|---|
account_number | String | Yes | Bank account number |
ifsc | String(11) | Yes | Bank IFSC code |
Get the registered name associated with a UPI VPA.
| Parameter | Type | Required | Description |
|---|---|---|---|
upi_id | String | Yes | UPI ID (e.g. user@bank) |
Fetch all pending and paid traffic challans for a vehicle.
| Parameter | Type | Required | Description |
|---|---|---|---|
vehicle_number | String | Yes | Vehicle registration number |
Extract text data from Aadhaar card images.
| Parameter | Type | Required | Description |
|---|---|---|---|
front_image | Base64 | Yes | Aadhaar Front (Base64 string) |
back_image | Base64 | Yes | Aadhaar Back (Base64 string) |
Download and verify the user's XML Aadhaar data from DigiLocker.
| Parameter | Type | Required | Description |
|---|---|---|---|
client_id | String | Yes | Client ID from initialize step |
Verify Tax Identification Number (TIN).
| Parameter | Type | Required | Description |
|---|---|---|---|
tin_number | String(11) | Yes | 11-digit TIN number |
Verify Director Identification Number (DIN).
| Parameter | Type | Required | Description |
|---|---|---|---|
din_number | String(8) | Yes | 8-digit DIN number |
Extract the PAN number from a registered GST number.
| Parameter | Type | Required | Description |
|---|---|---|---|
gst_number | String(15) | Yes | 15-digit GSTIN |
Verify if a PAN is officially linked to a specific bank account.
| Parameter | Type | Required | Description |
|---|---|---|---|
pan_number | String(10) | Yes | PAN Card number |
account_number | String | Yes | Bank account number |
ifsc | String(11) | Yes | IFSC code |
Find the primary UPI ID linked to a mobile number.
| Parameter | Type | Required | Description |
|---|---|---|---|
mobile | String(10) | Yes | 10-digit mobile number |
Extract text and details from a PAN card image.
| Parameter | Type | Required | Description |
|---|---|---|---|
image | Base64 | Yes | PAN Front (Base64 string) |
Mask the first 8 digits of the Aadhaar number in an image for compliance.
| Parameter | Type | Required | Description |
|---|---|---|---|
image | Base64 | Yes | Aadhaar image (Base64 string) |
Process an Aadhaar-based Payment System (AePS) transaction using biometric data.
| Parameter | Type | Required | Description |
|---|---|---|---|
transaction_type |
String | Yes | CASH_WITHDRAWAL / BALANCE_ENQUIRY / MINI_STATEMENT |
aadhaar_number |
String (12) | Yes | Customer Aadhaar number |
bank_iin |
String | Yes | Bank IIN code |
amount |
Numeric | Withdrawal | Amount to withdraw (in INR) |
biometric_data |
String | Yes | Base64 encoded PID XML from biometric device |
device_imei |
String | Yes | Biometric device serial number |
client_ref_id |
String | Yes | Your unique transaction reference |
Get paginated transaction history with filtering options.
| Parameter | Type | Required | Description |
|---|---|---|---|
page |
Integer | Optional | Page number (default: 1) |
per_page |
Integer | Optional | Items per page (default 15, max 100) |
{ "status": true,
"data": {
"transactions": [...],
"pagination": {
"current_page": 1,
"total": 120,
"per_page": 15,
"last_page": 8
}
}
}
Use these operator_id codes when making Recharge, Bill Fetch, Bill
Pay, and Plan API requests.
| # | Operator Name | Operator ID | Category |
|---|
Use these circle or location codes when making
Plan API and other location-based requests.
| # | Circle Name | Circle Code | Abbreviation |
|---|---|---|---|
| 1 | Andaman and Nicobar | 35 |
AN |
| 2 | Andhra Pradesh (New) | 37 |
AD |
| 3 | Arunachal Pradesh | 12 |
AR |
| 4 | Assam | 18 |
AS |
| 5 | Bihar | 10 |
BR |
| 6 | Chandigarh | 04 |
CH |
| 7 | Chhattisgarh | 22 |
CG |
| 8 | Dadra and Nagar Haveli | 26 |
DN |
| 9 | Daman and Diu | 25 |
DD |
| 10 | Delhi | 07 |
DL |
| 11 | Goa | 30 |
GA |
| 12 | Gujarat | 24 |
GJ |
| 13 | Haryana | 06 |
HR |
| 14 | Himachal Pradesh | 02 |
HP |
| 15 | Jammu and Kashmir | 01 |
JK |
| 16 | Jharkhand | 20 |
JH |
| 17 | Karnataka | 29 |
KA |
| 18 | Kerala | 32 |
KL |
| 19 | Lakshadweep | 31 |
LD |
| 20 | Madhya Pradesh | 23 |
MP |
| 21 | Maharashtra | 27 |
MH |
| 22 | Manipur | 14 |
MN |
| 23 | Meghalaya | 17 |
ML |
| 24 | Mizoram | 15 |
MZ |
| 25 | Nagaland | 13 |
NL |
| 26 | Odisha | 21 |
OR |
| 27 | Puducherry | 34 |
PY |
| 28 | Punjab | 03 |
PB |
| 29 | Rajasthan | 08 |
RJ |
| 30 | Sikkim | 11 |
SK |
| 31 | Tamil Nadu | 33 |
TN |
| 32 | Telangana | 36 |
TS |
| 33 | Tripura | 16 |
TR |
| 34 | Uttar Pradesh | 09 |
UP |
| 35 | Uttarakhand | 05 |
UA |
| 36 | West Bengal | 19 |
WB |