Bill statuses and lifecycle
A bill is a record of a payment that a paypoint owes a vendor. It’s the record Payabli pays when it processes a Pay Out transaction, much like an invoice is the record that’s paid when Payabli processes a Pay In transaction. A bill’s status tells you what state it’s in on its journey to being paid.
To understand how bills differ from invoices, see Bills and invoices. For how bills fit into your wider accounts payable, see Understanding payables.
A payout settles the bill
When a bill is paid, Payabli creates a Pay Out transaction — a payout — that settles it. The payout carries the bill through the rest of its lifecycle: the bill goes In Transit while the payout processes, then Paid once the payout settles.
How a bill reaches a payout depends on where you work. In the Payabli Portal, you work bill-first: you create a bill, then pay it (even using a direct flow in the Virtual Terminal). Through the API, a payout request can pay existing bills, create a bill for you, or skip bills entirely with doNotCreateBills — so a bill isn’t required to send a payout.
To create a bill, see Create a bill (Portal). To find, edit, or pay an existing bill, see Manage bills (Portal). For the API, see Manage bills with the API.
Bill statuses
These statuses appear in the Payabli Portal and the API. They describe where a bill is in its lifecycle.
If you are working with money out endpoints in the API, the Key is returned as Status. For example, a response body that includes bill data will look like this:
The value of Status indicates the status. In the example, the Status is 2, which means the bill has been sent to approval.
How a bill moves through statuses
Diagram: Bill status lifecycle
The diagram shows how a bill moves between its statuses:
- An Active (status 1) bill can be paid directly, or sent for approval.
- A bill Sent to Approval (status 2) becomes Approved (status 20), Partially Approved (status 5) when some but not all approvers have approved, or Rejected (status 11).
- A Partially Approved bill becomes Approved once all approvers approve.
- Only an Active or Approved bill can be paid. Paying a bill sends it In Transit (status 50), and it becomes Paid (status 100) when the payout settles.
- An Active, Sent to Approval, or Approved bill can be Cancelled (status -99), usually to correct the payment type.
Most bills follow the same path:
- Active — You add the bill for a vendor. It’s ready to pay, or to send for approval if your workflow requires one.
- Approved — If the bill goes through approval, it becomes Approved once the approvers sign off. Approval is optional: an Active bill can be paid without it.
- In Transit — You pay the bill, and the payout is on its way to the vendor.
- Paid — The payout settles and the bill is complete.
Timing and triggers for In Transit and Paid vary by payables model and payment method. For Managed Payables, In Transit includes vendor enablement. Paid triggers only once the payment settles at the vendor’s bank, which can take days for ACH or weeks for an uncashed check. See Managed Payables for details.
A bill can also leave this path. You can cancel an Active, Sent to Approval, or Approved bill, which moves it to Cancelled. A bill sent for approval can also end in Rejected. See Bill approval for how the approval states work.
Bill approval
Approval is optional. An Active bill is already eligible for payout, so a bill only needs approval when your workflow requires a sign-off before you pay a vendor. Approval runs through the API, and each step moves the bill to a new status.
When you send a bill to approval, it moves from Active to Sent to Approval, and it can’t be paid until it’s approved. From there it reaches one of:
- Approved — the approvers signed off. The bill is payout-eligible again, and you can pay it.
- Partially Approved — some, but not all, approvers have approved.
- Rejected — the bill won’t be paid.
You assign approvers by email when you send the bill to approval. If an approver’s email doesn’t yet belong to a Payabli user, include autocreateUser=true so the request creates the user. Without it, the call returns a 400 error. For the endpoints and full workflow, see Manage bills with the API.
Related resources
See these related resources to help you get the most out of Payabli.
References
- Pay Out statuses - Learn about Pay Out statuses