Redeem Order Status
Environment
| Environment | HTTP Method | API |
| Sandbox | POST | https://api-preprod.phonepe.com/apis/pg-sandbox/subscriptions/v2/order/{{merchantOrderId}}/status |
| Production | POST | https://api.phonepe.com/apis/pg/subscriptions/v2/order/{{merchantOrderId}}/status |
Request
| Header Name | Header Value | Description |
| Content-Type | application/json | |
| Authorization | O-Bearer <access_token> | Pass access_token received in Authorization call |
Response
Sample Response
{
"merchantId": "TXMT8788",
"merchantOrderId": "MO1722319560997",
"orderId": "OMO2601282154473535900531",
"state": "COMPLETED",
"currency": "INR",
"amount": 200,
"expireAt": 1769618686824,
"paymentFlow": {
"type": "SUBSCRIPTION_REDEMPTION",
"merchantSubscriptionId": "MS1769569283073",
"redemptionRetryStrategy": null,
"autoDebit": false,
"validAfter": null,
"validUpto": null,
"notifiedAt": null
},
"paymentDetails": [
{
"transactionId": "OM2601282154486455900694",
"paymentMode": "ENACH_ACCOUNT",
"timestamp": 1769617488702,
"currency": "INR",
"amount": 200,
"payableCurrency": "INR",
"payableAmount": 200,
"feeCurrency": "INR",
"feeAmount": 0,
"state": "COMPLETED",
"instrument": {
"type": "ACCOUNT",
"accountType": "SAVINGS",
"bankId": "HDFC"
},
"rail": {
"type": "NACH",
"utr": "ddf5d315-93cd-4019-9137-7bb2ad2ec702"
},
"splitInstruments": [
{
"instrument": {
"type": "ACCOUNT",
"accountType": "SAVINGS",
"bankId": "HDFC"
},
"rail": {
"type": "NACH",
"utr": "ddf5d315-93cd-4019-9137-7bb2ad2ec702"
},
"currency": "INR",
"amount": 200
}
]
}
]
}
Response Parameters
| Parameter Name | Data Type | Description |
| merchantId | String | Merchant identifier |
| merchantOrderId | String | Merchant’s unique reference for the debit attempt |
| orderId | String | PG internal order ID for the redemption |
| state | String | Final status of debit (e.g., COMPLETED, FAILED) |
| currency | String | Currency code (e.g., INR) |
| amount | Long | Amount in paisa |
| expireAt | Long | Order expiry timestamp in epoch |
| paymentFlow.type | String | Flow type (e.g., SUBSCRIPTION_REDEMPTION) |
| paymentFlow.merchantSubscriptionId | String | The ID of the mandate |
| paymentFlow.redemptionRetryStrategy | String/Null | Strategy for retrying failed debits |
| paymentFlow.autoDebit | Boolean | Indicates if the debit was system-triggered |
| paymentFlow.validAfter | Long/Null | Validity start timestamp |
| paymentFlow.validUpto | Long/Null | Validity end timestamp |
| paymentFlow.notifiedAt | Long/Null | Timestamp when user was notified of debit |
| paymentDetails[].transactionId | String | Internal transaction ID |
| paymentDetails[].paymentMode | String | Mode used (e.g., ENACH_ACCOUNT) |
| paymentDetails[].timestamp | Long | Transaction attempt timestamp |
| paymentDetails[].currency | String | Transaction currency |
| paymentDetails[].amount | Long | Transaction amount |
| paymentDetails[].payableCurrency | String | Currency payable to merchant |
| paymentDetails[].payableAmount | Long | Amount payable to merchant |
| paymentDetails[].feeCurrency | String | Fee currency |
| paymentDetails[].feeAmount | Long | Fee amount charged |
| paymentDetails[].state | String | Transaction state (e.g., COMPLETED) |
| paymentDetails[].instrument.type | String | Instrument type (e.g., ACCOUNT) |
| paymentDetails[].instrument.accountType | String | Account type (e.g., SAVINGS) |
| paymentDetails[].instrument.bankId | String | Bank identifier (e.g., HDFC) |
| paymentDetails[].rail.type | String | Rail type (e.g., NACH) |
| paymentDetails[].rail.utr | String | Bank Reference Number (UTR) for the transaction |
| paymentDetails[].splitInstruments[].instrument.type | String | Split instrument type |
| paymentDetails[].splitInstruments[].instrument.accountType | String | Split account type |
| paymentDetails[].splitInstruments[].instrument.bankId | String | Split bank identifier |
| paymentDetails[].splitInstruments[].rail.type | String | Split rail type |
| paymentDetails[].splitInstruments[].rail.utr | String | Split UTR |
| paymentDetails[].splitInstruments[].currency | String | Split currency |
| paymentDetails[].splitInstruments[].amount | Long | Split amount |