When the Run automation in Zapier action is used in a Final flow, Final sends a webhook payload to Zapier that triggers any Zap using the Custom Event trigger. This allows you to send a real-time snapshot of context from the Station App directly into Zapier.
This article outlines the full structure of that payload and what data is included when the action runs.
The payload contains the following top-level keys:
eventType: Always "custom_event". Used by Zapier to identify the event type.
timestamp: When the event was triggered (in ISO 8601 format).
company: Basic information about the Company.
outlet: Information about the signed-in Outlet.
station: Information about the Station device.
user: The logged-in user who triggered the event.
order: The current order object, if an order is open when the action runs.
cart: The current contents of the cart, if an order is open.
customer: The assigned customer, if one is linked to the order.
metadata: Key-value pairs passed in from the action’s configuration in Build.
{
"eventType": "custom_event",
"timestamp": "2024-10-10T18:04:24.590Z",
"company": {
"id": "cmp_xxxxxx",
"name": "Test Company"
},
"outlet": {
"id": "out_xxxxxx",
"name": "Main Outlet"
},
"station": {
"id": "sta_xxxxxx",
"name": "iPad 1"
},
"user": {
"id": "usr_xxxxxx",
"firstName": "Test",
"lastName": "User"
},
"order": {
"id": "ord_xxxxxx",
"status": "open",
"total": 800,
"subtotal": 800,
"tax": 0
},
"cart": [
{
"productId": "prod_xxxxxx",
"name": "Coffee",
"quantity": 1,
"price": 800,
"total": 800
}
],
"customer": {
"id": "cus_xxxxxx",
"firstName": "Jamie",
"lastName": "Nguyen",
"email": "jamie@example.com"
},
"metadata": {
"source": "checkout-flow",
"step": "custom-upsell"
}
}
Contains basic information about the Company.
{
"id": "cmp_xxxxxx",
"name": "Test Company"
}
The signed-in Outlet for the current Station session.
{
"id": "out_xxxxxx",
"name": "Main Outlet"
}
Identifies the Station device that triggered the event.
{
"id": "sta_xxxxxx",
"name": "iPad 1"
}
The user who triggered the flow action.
{
"id": "usr_xxxxxx",
"firstName": "Test",
"lastName": "User"
}
If an order is active, the order object includes basic totals and status. Values are in the smallest currency unit (e.g. cents).
{
"id": "ord_xxxxxx",
"status": "open",
"total": 800,
"subtotal": 800,
"tax": 0
}
Line items in the current order.
[
{
"productId": "prod_xxxxxx",
"name": "Coffee",
"quantity": 1,
"price": 800,
"total": 800
}
]
Information about the current active customer is included here.
{
"id": "cus_xxxxxx",
"firstName": "Jamie",
"lastName": "Nguyen",
"email": "jamie@example.com"
}
Any custom key-value pairs configured in the Build flow are included here. You can pass dynamic variables or static values into your Zap using this field.
{
"source": "checkout-flow",
"step": "custom-upsell"
}
All monetary amounts (e.g. total, subtotal, price) are in the smallest currency unit (e.g. cents).
The structure of order, cart, and customer will be omitted if no order is active when the flow runs.
The metadata field is defined in Build using the configuration fields of the Run automation in Zapier action. It supports both static and dynamic variables.