Skip to main content
Version - 2.4
{
  "eventType": "PAYMENT.CAPTURE.FAILED",
  "date": "2026-02-19T15:36:16.367687",
  "notificationConfig": {
    "id": "cc51f9f0-7e1c-492b-9d37-f83a818f6070",
    "description": "Payment webhook"
  },
  "version": "2.4",
  "signedAt": "1689221338",
  "payment": {
    "id": "DdRZ6YY0",
    "amount": 3000,
    "currencyCode": "GBP",
    "orderId": "order-123"
  },
  "requestAmount": 1500,
  "transactionEvent": {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}
Version - 2.4
{
  "eventType": "PAYMENT.CAPTURE.FAILED",
  "date": "2026-02-19T15:36:16.367687",
  "notificationConfig": {
    "id": "cc51f9f0-7e1c-492b-9d37-f83a818f6070",
    "description": "Payment webhook"
  },
  "version": "2.4",
  "signedAt": "1689221338",
  "payment": {
    "id": "DdRZ6YY0",
    "amount": 3000,
    "currencyCode": "GBP",
    "orderId": "order-123"
  },
  "requestAmount": 1500,
  "transactionEvent": {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}
Learn more about how Primer handles webhooks.

Headers

X-Signature-Primary
string
required

An HMAC signature generated using the webhook payload and a shared signing secret. This is then converted to a base64 encoded string.

X-Signature-Secondary
string
required

A secondary signature that is added when you have rotated your secret within the past 24 hours.

Body

application/json
eventType
enum<string>
required

The type of the webhook raised.

Available options:
PAYMENT.CAPTURE.FAILED,
PAYMENT.CANCELLATION.FAILED,
PAYMENT.AUTHORIZATION_ADJUSTMENT.FAILED,
PAYMENT.REFUND.FAILED
date
string<date-time>
required

The date-time that the webhook was sent.

signedAt
string
required

The Unix timestamp at which the webhook payload was signed.

Example:

"1689221338"

notificationConfig
Notification Config · object
required

The notification configuration details.

payment
Payment Details · object
required
transactionEvent
Transaction Event · object
required
version
string

The payload version.

Example:

"2.4"

requestAmount
integer<int64>

The requested amount for the operation in minor units. Present for capture, refund, and authorization adjustment events. Not applicable for cancellation events.

Response

200

Return a 200 status to indicate that the data was received successfully