Bill Payment
Authentication
Basic Authentication
- Username: Client Id
- Password: Secret Key
Example Authorization Header:
Authorization: Basic eGV0dGxlXzgzMjg2NjU5YmRmNzBkZWEzMDUwMzcwNzE1MTYwMzA0MDo3YzE1ZDQyYTZhYjEyOTYzYWI4NzJhMzFkOTk4MDk1ZDMwNTAzNzA3MTUxNjMyMDg5
Request Body
{
"merchantCode":"SPI329053",
"operatorId":"NPCL00000NOI01",
"transactionRefrenceId":"TSBc4fcc82e2c134836a24d884240891829",
"accountNumber":"2000240168",
"transactionId":"2299988bbbb",
"customerMobileNumber":"1234567890",
"amount":"20"
}
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| merchantCode | String | Yes | Unique merchant code |
| operatorId | String | Yes | Unique identifier for the operator |
| transactionRefrenceId | String | Yes | Unique reference ID for the transaction |
| accountNumber | String | Yes | Customer's account number |
| transactionId | String | Yes | Unique transaction identifier |
| customerMobileNumber | String | Yes | Customer's mobile number |
| amount | String | Yes | Payment amount |
Request Examples
Request Examples
- Curl
- JavaScript
- C#
- Java
- Python
curl --location 'https://xyz.com/v1/service/bbps/bill-payment' --header 'Content-Type: application/json' --header 'Authorization: Basic Og==' --data '{
"merchantCode":"SPI329053",
"operatorId":"NPCL00000NOI01",
"transactionRefrenceId":"TSBc4fcc82e2c134836a24d884240891829",
"accountNumber":"2000240168",
"transactionId":"2299988bbbb",
"customerMobileNumber":"1234567890",
"amount":"20"
}'
const axios = require('axios');
let data = JSON.stringify({
"merchantCode": "SPI329053",
"operatorId": "NPCL00000NOI01",
"transactionRefrenceId": "TSBc4fcc82e2c134836a24d884240891829",
"accountNumber": "2000240168",
"transactionId": "2299988bbbb",
"customerMobileNumber": "1234567890",
"amount": "20"
});
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://xyz.com/v1/service/bbps/bill-payment',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic Og=='
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://xyz.com/v1/service/bbps/bill-payment");
request.Headers.Add("Authorization", "Basic Og==");
var content = new StringContent("{
"merchantCode":"SPI329053",
"operatorId":"NPCL00000NOI01",
"transactionRefrenceId":"TSBc4fcc82e2c134836a24d884240891829",
"accountNumber":"2000240168",
"transactionId":"2299988bbbb",
"customerMobileNumber":"1234567890",
"amount":"20"
}", null, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{
"merchantCode":"SPI329053",
"operatorId":"NPCL00000NOI01",
"transactionRefrenceId":"TSBc4fcc82e2c134836a24d884240891829",
"accountNumber":"2000240168",
"transactionId":"2299988bbbb",
"customerMobileNumber":"1234567890",
"amount":"20"
}");
Request request = new Request.Builder()
.url("https://xyz.com/v1/service/bbps/bill-payment")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "Basic Og==")
.build();
Response response = client.newCall(request).execute();
import requests
import json
url = "https://xyz.com/v1/service/bbps/bill-payment"
payload = json.dumps({
"merchantCode": "SPI329053",
"operatorId": "NPCL00000NOI01",
"transactionRefrenceId": "TSBc4fcc82e2c134836a24d884240891829",
"accountNumber": "2000240168",
"transactionId": "2299988bbbb",
"customerMobileNumber": "1234567890",
"amount": "20"
})
headers = {
'Content-Type': 'application/json',
'Authorization': 'Basic Og=='
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
Response Examples
- Success
- Failed
- MISSING_PARAMETER
{
"code": "0x0200",
"message": "Order accepted successfully",
"status": "SUCCESS",
"data": {
"clientRefId": "IN3STAN4344517788",
"orderRefId": "REF307464872548520306F08",
"status": "queued"
}
}
{
"code": "0x0201",
"message": "Unauthorized IP used.",
"status": "FAILURE",
"ip": "152.58.32.60"
}
{
"code": "0x0203",
"status": "MISSING_PARAMETER",
"message": "contactId is not valid"
}
Response Codes
The API uses the following response codes to indicate the status of requests:
| Code | Description | Meaning |
|---|---|---|
0x0200 | SUCCESS | The request was processed successfully. |
0x0201 | UNAUTHORIZED | Authentication failed or insufficient permissions. |
0x0202 | FAILED | The request processing failed for a reason other than those specifically identified. |
0x0203 | MISSING_PARAMETER | The request is missing one or more required parameters. |
0x0206 | PENDING | The request has been received and is being processed, but processing has not yet completed. |
0x0205 | SOMETHING_WENT_WRONG | A server error occurred during processing of the request. |