Settlement Webhooks
You will receive a webhook notification whenever a settlement is initiated, processed, or attempt failed. The webhook payload contains key settlement details such as settlement ID, status, UTR, amount, merchant ID, and timestamps. In case of failures, the error code and description will also be included. Use this to stay updated on the settlement lifecycle in real time.
⚠️ For Partner Integrations!
Currently, Settlement Webhooks are not supported for Partner based integrations. Instead, Partners can use the Settlement Status API for integration.
Response
Sample Response
{
"event" : "settlement.initiated",
"payload": {
"settlementId" : "abca-defa-kadi-dald",
"state" : INITIATED,
"utr" : "UTR100291",
"amount" : 100,
"merchantId" : "merchantId",
"lastAttemptErrorCode": "",
"lastAttemptErrorDescription" : "",
"lastUpdatedAt" : 121211331
}
}Response Parameters
| Parameter Name | Type | Description |
|---|---|---|
event | String | The Webhook event type. Possible Values: • settlement.initiated • settlement.processed • settlement.attempt.failed |
payload | Object | The settlement related details |
payload.settlementId | String | Settlement Id generated by PhonePe |
| String | Current State of the settlement • INITIATED • PROCESSED • ATTEMPT_FAILED |
| String | UTR reference of the settlement |
| Long | Settlement Amount |
| String | MID of the merchant for which the settlement is initiated. |
| String | Will be present only if the state is ATTEMPT_FAILED. – The Error Code for the failure |
| String | Will be present only if the state is ATTEMPT_FAILED. – The Error message for the failure |
| DateTime | Epoch Timestamp of the last status updated (in milliseconds) |