Skip to content

Vendor workflows & approvals

Every vendor’s bills follow a workflow you can see as a chart. Workflows are rows that are never edited in place: they move proposed → active → superseded (or declined), and a bill keeps the workflow version it arrived under, so changing a workflow never changes a bill already on its way.

Step What it does
approve Named people (or anyone) sign off; one of them or all of them. Can apply only above an amount.
hold Wait a number of days after the previous step.
wait_for Wait for something outside Payvy, e.g. customer_funded once your customer has paid for the job.
pay Pay automatically, or wait for a person to release it.

Agents can propose workflows; only a person can accept or decline one. That boundary is enforced by the server — person-only commands refuse agent keys, and agents don’t even see those tools in tools/list. See Agents & authority.

A bill’s status is derived, never stored: evaluating its workflow over its approvals, signals and release gives its standing every time, and commands check that evaluated status before acting. Timed holds and external signals survive an agent disconnecting or a shift change — the work resumes from the record, not from anyone’s memory.

  • Standard approval — invoice received → approved by a named person → released by you.
  • Wait for customer funding — approved → held until a connected system verifies the customer paid → ready for release.
  • Approval + timed hold — approved → 7-day hold completes → ready for release.

Try these in the sample workflow on payvy.com (design preview, sample data).