Transaction Webhook
Payload shape for transaction webhooks.
Content
| Key | Type | Description |
|---|---|---|
| id | int | Internal transaction ID |
| uuid | string |
|
| amount | int | The processed amount |
| referenceId | string | Custom reference |
| time | string | Date and time of the transaction creation in the ISO 8601 format (2025-10-01T09:36:07+00:00) |
| status | string | Status Values |
| lang | string | ISO 639-1 of shopper language |
| psp | string | Payment provider Identifier - column PSP |
| pspId | int | Payment provider Identifier - column ID |
| mode | string | TEST or LIVE |
| type | string |
|
| posSerialNumber | string|null | Dependent on the value of
|
| posTerminalName | string|null | Dependent on the value of
|
| refundable | bool | States if a refund can be performed |
| partiallyRefundable | bool | States if a partial refund can be performed |
| instance | Instance | /pages/5ZWPQzoT7JwbFoyIy19N |
| metadata | Metadata | /pages/bkti22TPUx08AP7VsNEM |
| invoice | Invoice | /pages/kiQvogNYjBqOH9n5kdI6 |
| payment | Payment | /pages/NeKNefZ9GgrlkvRhR7lA |
| contact | Contact|null | /pages/GsM9BSCi3Dw4KGhI4WBw |
| subscription | Subscription|null | See Subscription for further information |
| pageUuid | string|null |
|
| fee | int | Total fee amount |
| preAuthorizationId | int |
|
| originalTransactionId | int |
|
| originalTransactionUuid | int |
|
| associatedSourceTransactionUuids | array |
|
| associatedSourceTransactionIds | array |
|
| sourceTransactionUuid | string|null |
|
| sourceTransactionId | string|null |
|
| payoutUuid | string|null | Returns the UUID of the payout if the transaction is part of a payout. Otherwise, null is returned. |
Changelog
2025-04-29
The field time is now formatted in the ISO 8601 format. Example: 2025-10-01T09:36:07+00:00 - previously 2025-10-01 09:36:07.
An update to the payment object.
2025-04-08
An update to the payment object.
2025-03-03
There are new fields regarding POS devices.
type of type string
- Shows which way the transaction was processed
- One of
E-Commerce,POS-Terminal,Tap to Pay
posSerialNumber of type string
nulliftypeisE-Commerce- else, the number of the used POS device
posTerminalName of type string
nulliftypeisE-Commerce- else, the name of the used POS device
2024-11-12
An update to the payment object.
2024-08-16
There is a new field instance of type object that contains information about the merchant, which contains two fields.
name of type string
- Name of the account
uuid of type string
- 8-character-long identifier
2024-06-01
An update to the payment object.
2023-10-20
There is a new field payoutUuid that returns the UUID of the payout if the transaction is part of one. If the transaction is not yet part of a payout, null is returned
2022-11-29
An update to the payment object.
2022-10-04
There are two new fields regarding refunding a transaction.
refundable of type bool
- States if a refund can be performed
partiallyRefundable of type bool
- States if a partial refund can be performed
2021-10-12
The field metadata is now returned as an object.
2020-06-10
There is a new field amount of type int.
2019-12-19
Webhooks are now sent for transactions with status refund-pending.
There is an adjustment to the field status. Transactions of status uncaptured are no longer treated as confirmed, but returned as they are.
2019-10-15
There is a new field preAuthorizationId of type int. If the transaction is a tokenization, its ID is returned. If the transaction is a charge of a tokenization, the ID of the tokenization (source) is returned. Otherwise, the field is not added to the webhook.
2019-02-13
There are adjustments to the field status. The exceptional handling of the statuses chargeback, error and partially-refunded is removed. They are returned as they are.
2018-08-07
The first version. Webhooks are not sent for transactions with status refund-pending.
Status Values
| Status | Description |
|---|---|
| waiting | Order has been placed |
| confirmed | Successful payment |
| cancelled | Payment aborted by the customer |
| declined | Failed 3D secure or declined by the issuer bank |
| authorized | Successful tokenization |
| reserved | Successful reservation |
| refunded | Full refund |
| partially-refunded | Partial refund |
| refund_pending | Refund is being processed |
| chargeback | Cardholder returns money |
| error | An issue occurred during the payment process |
| disputed | A dispute has been opened for this transaction |
| expired | Payment aborted due to inactivity |
Example
{
"transaction": {
"id": 1234,
"psp": "Native_PSP",
"lang": "de",
"mode": "TEST",
"time": "2025-10-06 02:34:21",
"type": "E-Commerce",
"uuid": "1122aabb",
"pspId": 44,
"amount": 1000,
"status": "confirmed",
"contact": {
"id": 1234,
"uuid": "aabb1122",
"title": "female",
"firstname": "Jane",
"lastname": "Doe",
"company": "zahls.ch",
"street": "Burgstrasse 20",
"zip": "3600",
"place": "Thun",
"country": "Switzerland",
"countryISO": "CH",
"phone": "0335500010",
"email": "subscription@test.com",
"date_of_birth": "01.01.1970",
"delivery_title": "",
"delivery_firstname": "",
"delivery_lastname": "",
"delivery_company": "",
"delivery_street": "",
"delivery_zip": "",
"delivery_place": "",
"delivery_country": "",
"delivery_countryISO": ""
},
"invoice": {
"test": 1,
"number": "IV_123",
"currency": "CHF",
"discount": {
"code": null,
"amount": 0,
"percentage": null
},
"products": [
{
"sku": null,
"name": "Product 1",
"price": 1000,
"vatRate": "8.1",
"quantity": 1,
"description": "sample-email@mail.com"
}
],
"paymentLink": null,
"referenceId": "Custom API Reference",
"custom_fields": [
{
"name": "E-Mail",
"type": "email",
"value": "sample-email@mail.com"
}
],
"originalAmount": 1000,
"refundedAmount": 0,
"shippingAmount": null,
"paymentRequestId": null,
"googleAnalyticProducts": [
{
"price": 10,
"item_id": 112233,
"quantity": 1,
"item_name": "Product 1"
}
]
},
"payment": {
"brand": "visa",
"wallet": null,
"purchaseOnInvoiceInformation": null
},
"instance": {
"name": "demo",
"uuid": "aabb1122"
},
"metadata": {},
"pageUuid": "aabb1122",
"payoutUuid": null,
"fee": 0,
"refundable": true,
"referenceId": "Custom API Reference",
"subscription": {
"id": 1234,
"end": null,
"uuid": "aabb1122",
"start": "2026-01-01",
"status": "active",
"valid_until": "2026-12-31",
"paymentInterval": "P1M"
},
"posSerialNumber": "",
"posTerminalName": "",
"partiallyRefundable": true
}
}