BBPS Queries

What are the UAT credentials to test BBPS service?

  1. developer_key - becbbce45f79c6f5109f848acd540567
  2. Key - d2fe1d99-6298-4af2-8cc5-d97dcf46df30 (will be used to generate secret-key and secret-key-timestamp). The secret-key and secret-key-timestamp have to be generated dynamically. Refer to the link “” for the dynamic secret-key and secret-key-timestamp generation
  3. initiator_id - 9962981729

2.How can i integrate the BBPS?

For the BBPS APIs integration refer to the link :

APIs have to be integrated for BBPS. Please refer the link below :

What is the process of BBPS?

  1. Onboard your retailers/merchants on Eko platform using Onboard User API
  2. Activate service for your retailers/merchants on service_code = 53 (for BBPS API)
  3. Check the status of the service for the retailer/merchants using the User Service EnquiryAPI
  4. Integrate BBPS API for enabling BBPS transactions for onboarded retailers/merchants.

Where i can connect if having any issue with the integration?

You can drop an email to the integration team on [email protected] with your registered mobile number/ Eko code, programming language that you are working on, your developer details, product(s) which you implementing and your query

How to generate the secret-key and secret-key-timestamp dynamically?

You need to pass dynamic secret-key and secret-key-timestamp in every request in headers along with developer_key. For the dynamic generation of secret-key and secret-key-timestamp, refer to Authentication . We have sample code available in PHP, Java and C#.

Where i can check all the BBPS related API’s and their flow?

You can check all the API’s for onboarding and AePS APIs with their flow on Postman. You can download the User onboarding and service Activation postman collection here , BBPS APIs postman Collection here

How can I get my live credentials?

Once you are done with the implementation, you have to share the request and response of the onboard user API, Activate service API and user service Inquiry API and the login credentials with URL with us where the BBPS APIs implementation has been done along with the testing utility account number. Also, the requests shared should be from your server and not postman.

Technical team will do the sanity testing to check the flow and then gives you go ahead for the live credentials if everything goes right and will share the production credentials on the registered email id.

Sanity Testing is a required step in order to get the live credentials so as to avoid any issues on the production environment and to and fro.

How can i ensure the security of the request which i am hitting?

  1. You need to pass the dynamic secret-key and secret-key-timestamp for every request

  2. We only accept the requests on the production environment from the whitelisted IP only. You can provide an Indian Server IP for the whitelisting

  3. We are asking for the request_hash parameter also which must be generated in the correct sequence only

How many IPs i can whitelist and how can i whitelist the IPs?

On one account we can whitelist maximum if 3 IPS and in order to make the IP whitelisted you need to send an email on [email protected] with your regsitered mobile number / Eko Code and make sure that the IPs must have a geoloaction of India otherwise as per compliance we cannot whitelist the IP outside of India.

What are the possible scenarios relating to the "403" error (forbidden) in the Fetch Bill API?

Answer) The possible scenarios are listed below:

Incorrect Initiator ID, developer key, secret key, timestamp, or request hash authenticated incorrectly and is passed in the request body.
On the production server, please make sure the request originates from a whitelisted IP address.
Same is not required for the staging environment.
iii) If user_code you are passing is not activated on service code 53.

I am getting 402 HTTP error code. What I am doing wrong?

402 Error code comes when we are not receiving the developer-key from your end. Please check the same

I am getting 404 HTTP error code. What I am doing wrong?

404 error code comes when you are passing the wrong request URL, please make sure to check the request URL before hitting the request.

I am getting 504 Bad Gateway HTTP error code. What should i do?

Please connect with the integration team on [email protected] and menion the environment (UAT / production) you are facing the issue on

Can i test the APIs with the dummy values on the production environment?

Do not test the APIs on the production environment with the dummy values as the details are shared with the bank

I am getting "No key for response" error message?

Raise the same on [email protected] with the complete request and response along with the request URL

If you are getting this message in the Fetch Bill API then make sure to pass the correct and valid and existing utility account number value

I am getting "Failed to connect to port 25004: Connection refused / Failed to connect to port 25002: Connection refused" error message, what should i do?

This message is coming because the connection is not being made from your server with our server. Please telnet from your server and check if the connection is being made from your server or not.

The command for staging environment which you have to use: telnet 25004.
The command for production environment which you have to use: telnet 25002.

Also, in your server settings please check if port 25004 is open for you or not for the staging server and 25002 port must be opened for production environment

I am getting "This user already exists" error message, how can I resolve the same?

This is not an error message , we have given the user_code value in the response, map the same and store it with the details in your database

Share the dummy value of the utility account number parameter

Pass the value of this parameter from your end and it must be a valid utility accout number which is exisiting in real life

How to activate the service of the BBPS for the retailers?

Below is the cURL request for the activation of the BBPS service:

curl --location --request PUT ''
--header 'developer_key: becbbce45f79c6f5109f848acd540567'
--header 'secret-key: MC6dKW278tBef+AuqL/5rW2K3WgOegF0ZHLW/FriZQw='
--header 'secret-key-timestamp: 1516705204593'
--header 'Content-Type: application/x-www-form-urlencoded'
--header 'Cookie: JSESSIONID=DDFE0149A107950E9591820607D6A9F8'
--data-urlencode 'service_code=53'
--data-urlencode 'initiator_id=9962981729'
--data-urlencode 'user_code=20810200'
--data-urlencode 'latlong=77.06794760,77.06794760'

Replace with your production credentials and in the user_code pass the user code.

What could be the cause of "No key for Response" in the Pay bill API?

Ans.This error generally means there is some issue with the request parameter (missing or unformatted) like when we receive a null value for the developer key on our server.

Please check your request parameters thoroughly and then if the issue persists kindly raise issue to us at [email protected] with complete curl request response with timestamp.

In response to the fetch bill API, you may receive "No license is available for accepting payments to the benefit of this operator.".

Ans. Those alerts come from certain operator when services (operator_id) are sometimes not supported or deactivated for non-kyc users.
Enrollment in HG Pay is required for such cases.
The enrollment process process basically involves sharing each Merchant’s contact number , email address, shop address with pincode and geocode and the complete name of the merchant with your account RM, who will be able to assist you in the rest of the process.

It will take 15-20 days for the merchant to become enrolled.