Skip to main content

expense.approval.status_changed

Fired as an expense moves through its lifecycle: created, submitted for approval, approved or declined, and finally synced to your accounting system. It covers everything except the money movement, which is expense.transaction.status_changed. status is where the expense now sits. reason is what moved it there.

Statuses

Reasons

Always read status together with reason. The same status can have two causes:
  • DRAFTED arrives on creation (CREATED), or when an out-of-policy flag is removed from an expense that can’t be resubmitted (MARKED_IN_POLICY).
  • PENDING arrives on a normal submission (SUBMITTED), or when clearing an out-of-policy flag resubmits the expense automatically (MARKED_IN_POLICY).

Fields

Example: out-of-policy flag removed

This event carries no merchant or card details. Subscribe to expense.transaction.status_changed for those, or fetch the expense by id.