# Payment Status API

<mark style="color:blue;">**Biller to Biller Protocol**</mark>

Biller can make use of this API to query the status of the Payment. The API returns the sameresponse as the Payment Notification API. In case if the biller misses Payment Notification, the biller can call this API to get the payment status.&#x20;

**Method: POST**

<mark style="color:blue;">**Request Parameters**</mark>

**The various parameters are explained below:**

| Parent Property/Element                | Property/Element Name | Mandatory | Data Type | Description                                                                                                                                                                                                    |
| -------------------------------------- | --------------------- | --------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| \[ROOT] (No parent property / element) | refId                 | M         | String    | Unique identification assigned by the initiating BBPOU to unambiguously identify the transaction which is passed on, unchanged, throughout the entire end-to-end chain, binding the Fetch and Payment messages |
|                                        | billerId              | M         | String    | Biller ID of the Biller                                                                                                                                                                                        |

<mark style="color:blue;">**Response Parameters**</mark>

**The various parameters are explained below:**

| Parent Property/Element                    | Property/Element Name | Mandatory | Data Type                               | Description                                                                                                            |
| ------------------------------------------ | --------------------- | --------- | --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| **\[ROOT]** (No parent property / element) | refId                 | M         | String Min Length – 1, Max Length – 100 | Reason of the Status                                                                                                   |
|                                            | reason                | M         | String                                  | In case of failure reason will be provided in this field                                                               |
|                                            | status                | M         | String                                  | Status of the bill fetch response Successful/Failure                                                                   |
|                                            | ack                   | M         | Object                                  | Acknowledgement from NPCI                                                                                              |
| **ack**                                    | api                   | M         | String                                  | PAYMENT\_RESPONSE                                                                                                      |
|                                            | refId                 | M         | String                                  | Refid of the transaction                                                                                               |
|                                            | msgId                 | M         | String                                  | Message Id                                                                                                             |
|                                            | rspCd                 | M         | String                                  | Response code                                                                                                          |
|                                            | ts                    | M         | String                                  | Timestamp                                                                                                              |
|                                            | errorMessages         | M         | Object                                  | Contains the error message and error code                                                                              |
| **errorMessages**                          | errorCd               | C         | String                                  | Carries the compliance code indicating the reason for a failed transaction – not required for a successful transaction |
|                                            |                       | C         | String                                  | Description of the compliance code – not required for a successful transaction                                         |

**Json Formatted Request Example**

```json
    {
    "refId":"String", 
    "billerId":"String",
    }
```

**Json Formatted Response Example**

```json
{
"refId":"String",
"status":"String",
"reason":"String", "ack": { "api":"String",
"refId":"String",
"msgId":"String"
"rspCd":"String",
"ts":"String", "errorMessages": [
{
"errorCd":"String", "errorDtl":"String"
}
]
}
```
