Raise BBPS Complaint API

Use this API to raise complaints against a specific BBPS transaction.

The complaints can be either of the following:

  • When a customer wants to raise a complaint against the biller. 
  • When a customer wants to raise a complaint against a particular transaction.  


Test Environmenthttps://bbps-sb.payu.in .
Production EnvironmentContact your Account Manager to get access to the production environment



Send the scope of the Get Token API as register_complaint to obtain the access_token for this request. For more information, refer to Get Token API - BBPS.

Sample request
curl --location 'https://bbps-sb.payu.in/payu-nbc-int/v1/nbc/raiseComplaint' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer 2b42b431dc4ecc4c487675b6c71ee1861adc7283194a7af292e0e1d1f8637895' \
--data '{
    "fetchParameters": {
        "complaintType": "Transaction",
        "description": "Service nhi mili",
        "disposition": "Erroneously paid in wrong account",
        "txnReferenceId": "PA024116O40NVIZZ9870"
    "xchangeId": "501"
Response parameters
Field NameDescription
codeThe global response code and can be any of the following:

- 0: If web service call failed
- 1: if web service call succeeded
statusThe status of the API command and can be any of the following:

payloadIt will contain a list of biller categories. For more information, refer to the payload table.
If the transaction had failed, it will contain:

- additional data related to transactions
- List of errors which caused failure transactions


The payload parameter contains the following fields in an array format:

refIdIn case number 2 ,this is the reference ID against which the complaint is registered.  For case-1, it will be null.
complaintStatusIt will show whether the complaint is registered with PayU or not.
complaintIdIt is a unique complaint id assigned to customers for reference.
additionalParamsFor failed transactions, it will contain additional info.If there is no any additional info available, it will be null.
Sample response

Success scenario

"code": 200,
"status": "SUCCESS",
"payload": {
"responseReason": "SUCCESS",
"openComplaint": "Y/N",
"complaintStatus": "ASSIGNED_TO_COU",
"complaintId": "<15 digit complaint id>",
"msgId": "<message id for the complaint>",
"assigned": "PayU",
"responseCode": "000"

Failure scenario

  "code": 600, 
  "status": "FAILURE", 
  "payload": { 
    "errors": [ 
        "reason": "<error Message>", 
        "errorCode": "<Error Code>" 
    "refId": "<RefId>", 
    "type": "non_bbps_complain_register", 
    "message": "invalid_complaint_request", 
    "additionalParams": { 
      "Key1": "value1", 
      "Key2": "value2", 
      "Key3": "value3" 

Request parameters

Complaint DisposItion

1Transaction Successful, account not updated
2Transaction Amount deducted, biller account credited but transaction ID not received
3Transaction Amount deducted, biller account not credited & transaction ID not received
4Transaction Amount deducted multiple times
5Transaction Double payment updated
6Transaction Erroneously paid in wrong account
7Transaction Others, provide details in description
Click Try It! to start a request and see the response here!