*Workflows › Reference › Events › Purchasing*

# Purchase order updated

> Starts a run when «Purchase order updated» happens in Filmo. The run receives the purchase order in `trigger_purchaseOrder` and the details of the event in `trigger_event`.

## About this event

| Property | Value |
| --- | --- |
| Source | Filmo |
| Section of the editor | Purchasing › Purchase orders |
| Record | Purchase order |
| Variable | `trigger_purchaseOrder` |

## Changes

An update event can start a run only when one of these fields changed: set it in «changedField».

| Field | Description |
| --- | --- |
| `currency` | Currency changed |
| `discount` | Discount changed |
| `lineItems` | Lines changed |
| `order` | Order changed |
| `poDate` | Order date changed |
| `project` | Project changed |
| `status` | Status changed |
| `subTotal` | Subtotal changed |
| `supplier` | Supplier changed |

More in [Triggers](https://docs.filmo.io/workflows/triggers).

EVENT `filmo.purchaseOrder.updated`

## Configuration

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `event` | string | Yes | The event this trigger waits for: `filmo.purchaseOrder.updated`. |
| `filter` | condition | No | The trigger's gate: «only when…». A condition evaluated against the event and the record before the run is created; if it is not met, no run is created. If absent, there is no filter and the event passes. If present, it must be complete, with the variable chosen: saving a half-configured filter is rejected. |
| `changedField` | string | No | Only for update events («Only when … changes»): one of the fields the event declares as changeable. It passes only when that field changed. If absent, any update passes. For those events the editor offers this instead of the filter. |

## What the run receives

| Name | Type | Description |
| --- | --- | --- |
| `trigger_purchaseOrder` | object | Purchase order |
| `trigger_purchaseOrder.id` | string | Id |
| `trigger_purchaseOrder.poNumber` | string | Purchase order number |
| `trigger_purchaseOrder.status` | enum<string> | Status `draft`, `pending`, `completed`, `canceled` |
| `trigger_purchaseOrder.poDate` | string | Purchase order date |
| `trigger_purchaseOrder.supplierId` | string | Supplier id |
| `trigger_purchaseOrder.currency` | string | Currency |
| `trigger_purchaseOrder.subTotal` | number | Subtotal |
| `trigger_event` | object | The event. The same envelope arrives with every event. |
| `trigger_event.name` | string | Name |
| `trigger_event.entityType` | string | Entity type |
| `trigger_event.entityId` | string | Entity id |
| `trigger_event.entityName` | string | Entity name |
| `trigger_event.actionCode` | string | Action code |
| `trigger_event.origin` | enum<string> | Source `neo`, `workflow`, `api`, `mcp`, `integration` |
| `trigger_event.actor` | object | Author |
| `trigger_event.actor.kind` | string | Type |
| `trigger_event.actor.id` | string | Id |
| `trigger_event.actor.name` | string | Name |
| `trigger_event.changes` | object | Changes |
| `trigger_event.changes.supplier` | boolean | Supplier changed |
| `trigger_event.changes.status` | boolean | Status changed |
| `trigger_event.changes.poDate` | boolean | Order date changed |
| `trigger_event.changes.project` | boolean | Project changed |
| `trigger_event.changes.order` | boolean | Order changed |
| `trigger_event.changes.currency` | boolean | Currency changed |
| `trigger_event.changes.discount` | boolean | Discount changed |
| `trigger_event.changes.subTotal` | boolean | Subtotal changed |
| `trigger_event.changes.lineItems` | boolean | Lines changed |

---

Canonical URL: https://docs.filmo.io/workflows/reference/events/filmo-purchaseorder-updated  
Last updated: 2026-10-25