Payment Refunded Webhook event
Trigger: A refunded payment has been successfully credited to the PSU. The associated refund object has a status of REFUND_COMPLETE.
Tip: Webhooks may be updated from time to time and it is important to consider the Versioning and Backward Compatibility guidelines when developing your solution. We recommend that your handler ignores new fields it is not expecting; any new fields that may be added will provide new information, which may be safely ignored.
Webhook Message Details
This Webhook has a single event type: PaymentRefundComplete
Tip: For Developer Dashboard users: select the Open Banking Refund Complete event.
Webhook Event Message Details
The following table describes the details of the Webhook notification:
Parent | Parameter | Type | Mandatory/Optional | Description |
---|---|---|---|---|
root | eventTimestamp | number | Mandatory | The Unix epoch timestamp |
root | eventType | string | Mandatory | PaymentRefundComplete |
root | resourceReference | string | optional | This can be the business reference of the resource, useful when filtering events via the Webhooks area of the Developer Dashboard. |
root | resourceReferenceType | string | optional | This can be a business reference of the resource, useful when filtering events via the Webhooks area of the Developer Dashboard. |
root | resourceUri | string | Mandatory | This is URI of the refund resource. Use the URI in the Retrieve Payment call. |
root | resourceType | string | Mandatory | This is the type of the resource to which the URI is related. In this case it is a refund resource. |
root | reasonCode | string | optional | Null |
root | resourceOwner | string | Mandatory | This is the identifier of the merchant resource to which this notification is linked. |
root | resourceRemittanceInformation | string | optional | Remittance information related to the transaction. |
JSON Sample
The following is an example of a Received Payment event JSON:
Headers:
POST | http://example.com/webhooks |
Content-Type: | application/json;charset=UTF-8 |
x-signature: | 123ab01d030dee864fb44cc65a3be52ae591f46cde8d14d3e72fbc3790e4a304 |
Content-Length: | 261 |
X-Request-Id: | dc645679-71a5-498d-bb29-ec027948c7c1 |
JSON Request Body
{
"eventTimestamp": 1501169079000,
"eventType": "PaymentRefundComplete",
"resourceReference": "null",
"resourceReferenceType": "reference",
"resourceUri": "/payments/n7rklmvtjc/refunds/mfc672erts",
"resourceType": "null",
"reasonCode": null,
"resourceOwner": "tc47ygrg72",
"resourceRemittanceInformation": null
}
Differences in EUR and GBP Remittance Information
- Remittance information is handled differently for GBP and EUR transactions.
- See the Remittance Information section under the Refund Payment for more on this.
- Depending on the currency of the original transaction, the Webhook notification varies:
GBP Message Sample:
Where the following remittance information is returned in the response from the initial refund request:
"remittanceInformation": {
"reference": "reference",
"unstructured": null
},
The Webhook message returns the remittance as follows:
{
"eventTimestamp": 1716323062000,
"eventType": "PaymentRefundComplete",
"resourceReference": "reference",
"resourceReferenceType": "EndToEndId",
"resourceUri": "/payments/w6be49w52y/refunds/w6bejzqp2y",
"resourceType": "refund",
"reasonCode": null,
"resourceOwner": "8b5jaky82r",
"resourceRemittanceInformation": "reference"
}
Note that:
- The
resourceReferenceType
is flagged asEndToEndId
- For GBP transactions, this is the transaction reference and not an End-to-End identifier.
EUR Message Sample:
Where the following remittance information is returned in the response from the initial refund request:
"remittanceInformation": {
"reference": null,
"unstructured": "remittanceInformation.unstructured"
}
The Webhook message returns the remittance as follows:
{
"eventTimestamp": 1716322382000,
"eventType": "PaymentRefundComplete",
"resourceReference": "v0hlvm56k000000000",
"resourceReferenceType": "EndToEndId",
"resourceUri": "/payments/zrmp73dlm6/refunds/zrmp86qy26",
"resourceType": "refund",
"reasonCode": null,
"resourceOwner": "p2lj6g5abv",
"resourceRemittanceInformation": "remittanceInformation.unstructured"
}