Skip to main content

Event Overview

Event Type: PAYMENT_REFUNDED
Category: Payment
Description: Payment has been refunded
This webhook is triggered when a payment is refunded to the customer through EximPe.

Delivery Details

AttributeValue
HTTP methodPOST
URLThe webhook URL configured on your merchant account’s API credentials
Content-Typeapplication/json
Timeout10 seconds
RetriesUp to 5 delivery attempts (backoff: 1 min, 5 min, 15 min, 60 min)

Headers

HeaderDescription
Content-Typeapplication/json
User-AgentEximpe-Webhook/1.0
X-Webhook-EventPAYMENT_REFUNDED
X-Webhook-TimestampUnix timestamp (string) at the time of the request
X-Webhook-SignatureHMAC-SHA256 signature of the request body (JSON string with keys sorted, no extra whitespace), using your API key as the secret. Hex-encoded.
Signature verification (recommended):
Compute HMAC-SHA256(encryption_key, raw_body) where raw_body is the exact UTF-8 request body as received. Compare the hex result with the X-Webhook-Signature header to ensure the webhook is from the platform and unchanged.

Payload Schema

{
    "event_type": "PAYMENT_REFUNDED",
    "event_time": "2024-02-15 16:53:15",
    "version": "2.0.0",
    "sequence_number": "e40552bf-ed12-4f35-9a97-162d97e6fa34",
    "data": {
        "refunds": [
            {
                "payment_request_id": "PR7485664995",
                "order_id": "OD6085456489",
                "refund_id": "RF2684785771",
                "amount": 1000,
                "bank_arn": "arn"
            }
        ]
    }
}

Field Specifications

event_type
string
required
Always "PAYMENT_REFUNDED" for this webhook event
event_time
string
required
Timestamp when the event occurred in YYYY-MM-DD HH:MM:SS formatExample: "2024-02-15 16:53:15"
version
string
required
Webhook payload version (currently “1.0”)
sequence_number
string
required
Unique identifier for the event instanceExample: "e40552bf-ed12-4f35-9a97-162d97e6fa34"
data
object
required
Event-specific data payload containing refund details