refunded_ticket
A ticket was refunded: negative revenue against the ticket's event.
Refunds are new activities, never edits of the sale, so sums correct themselves. The revenue amount is negative. Not derived by the Weeztix mapper yet: refund orders are stored and wait for the mapper version that maps them.
| Sent with | platform keys (see write keys) |
| Mode | strict: exactly the declared fields; an undeclared key, a wrong type or a missing required key quarantines the event |
| Version | 2 (_schema_version on the stored row) |
| State | active |
| Required fields | order_id, event_id |
| Revenue | yes, negative; the revenue block is required to mean something and never accepted from a browser key |
| Identity evidence | none |
| Before consent | no |
Fields
The activity's own fields, sent as features. Identifier and attribute fields are moved out of features by the processor; see identifiers and attributes.
| Field | Type | Required | What happens to it | Meaning |
|---|---|---|---|---|
event_id | string | yes | stays in features | The Eventix event the activity is about. Copied to the stream's _event_id column, so filters on an event are fast; it must be a plain string. |
order_id | string | yes | stays in features | The order in the ticketing system, as its own id. The same value on every activity derived from one order, so they can be joined. |
order_ticket_id | string | no, may be null | stays in features | The ticket within the order: the id of the ticket line, not the barcode. |
reason | string | no, may be null | stays in features | Why the refund was made, in the ticketing system's terms. |
ticket_type_id | string | no, may be null | stays in features | The ticket type (product) the ticket was bought as. |
touch | object | no, may be null | stays in features | The campaign the activity came through; see the touch block. The same block on every revenue-bearing activity. |
Example
One activity in a batch to POST /v1/activities, with debug so the answer says what the processor made of it. The envelope page explains every top-level field.
{
"batch": [
{
"activity_id": "0192f1a4-93dd-7c23-8000-93ddc2340000",
"activity": "refunded_ticket",
"ts": "2026-10-17T20:00:00+02:00",
"owner_ref": "own:own_01M4XX0033FV7QXDRB5BQBRPGR",
"identifiers": [
{
"type": "barcode",
"value": "TK-4471",
"role": "holder",
"namespace": "weeztix"
}
],
"revenue": {
"amount": "-45.00",
"currency": "EUR"
},
"features": {
"event_id": "3a114ef5-6105-48fd-aafc-0ae609d0536c",
"order_id": "1f2d3c4b-0000-4000-8000-000000000001",
"order_ticket_id": "5e6f7a8b-0000-4000-8000-000000000004",
"reason": "event_cancelled",
"ticket_type_id": "tt_01M4XVBYC3FGXCPFRZEPGV20RZ",
"touch": {
"captured_by": "touch.captured by",
"click_ids": {},
"landing_url": "touch.landing url",
"referrer": "touch.referrer",
"utm": {
"campaign": "touch.utm.campaign",
"content": "touch.utm.content",
"medium": "touch.utm.medium",
"source": "touch.utm.source",
"term": "touch.utm.term"
}
}
}
}
],
"debug": true
}
Try it
Sends this request from your browser. The key and the endpoint are kept in this browser only.
Versions
| Version | Mode | Key classes | Change |
|---|---|---|---|
| 1 | strict | platform | first version |
| 2 (current) | strict | platform | adds touch |
A published version never changes; a change is a new version, and every stored row says which version it was checked against.