Accounts Payable
Track vendor bills, outstanding balances, and payment management.
Overview
Accounts Payable (AP) is where you manage everything your business owes to vendors. It presents a ledger of vendor bills generated from confirmed purchase orders, tracks their status from Approved through Paid, records partial and full payments, and shows an aging breakdown so you can prioritize which bills to pay before they damage a vendor relationship.
Every bill links back to its source purchase order — click the PO reference on any row to open a side drawer with the full line-item breakdown, vendor, status, and expected arrival date.
Bill Status Lifecycle
| Status | Meaning | Next Action |
|---|---|---|
| Draft | Bill synced but not yet reviewed (rare — most synced bills start Approved) | Review and approve |
| Approved | Bill within its due date, no payment recorded yet | Wait for the due date, or pay early |
| Overdue | Due date has passed with no full payment recorded | Pay as soon as possible to protect the vendor relationship |
| Partially Paid | Some, but not all, of the balance has been paid | Record the remaining payment when ready |
| Paid | Remaining balance reached zero; bill closed and removed from the ledger | No further action needed |
You never set the status directly. Approved and Overdue are recalculated automatically every time the ledger loads, purely from the due date and remaining balance. Partially Paid and Paid are set automatically the moment you record a payment that leaves a remaining balance above or at zero, respectively.
Where Bills Come From
Accounts Payable does not have a "New Bill" form — bills are generated from your Confirmed purchase orders. Whenever a Purchase Order moves to Confirmed status, its Vendor Bill is created (or updated, if it already exists) automatically — this also happens the moment you click Sync from Purchase Orders to scan every Confirmed/Received order manually.
Bills Stay in Sync with Their Purchase Order
Syncing the same order twice never creates a duplicate bill — it's matched by the order's ID and updated in place, so if the buyer applies a vendor's submitted quote and the order total changes after the fact, re-syncing brings the bill's total up to date without disturbing any payment already recorded against it.
Recording Payments
Click the $ (Quick Pay) button on any bill row to open the inline payment form:
- Enter the Amount Paid. For full payment, this equals the remaining balance. For partial payment, enter the amount you're paying now — it cannot exceed the remaining balance.
- Select the Debit From Account — one of your bank or cash accounts in Financial Accounts.
- Click Confirm. The remaining balance updates immediately, and the selected account's balance is debited by the same amount.
When the remaining balance reaches zero, the bill's status becomes Paid and it disappears from the ledger. Partially paid bills show a "% paid" note under the balance and remain visible, sorted by their aging risk.
Multiple Partial Payments
You can record as many partial payments as needed against the same bill — each Quick Pay call only ever reduces the remaining balance further, so instalment-style vendor payments work naturally without any special setup.
Overdue Tracking
Every row overdue by any amount shows a red due date with the exact number of days past due underneath it. Unlike Accounts Receivable, there's no dunning/reminder action here — the bill belongs to you, not a customer, so the follow-up action is simply to pay it.
Aging Report
The aging tiles above the ledger table break every outstanding bill into five buckets, each showing its total outstanding value and bill count:
| Bucket | Includes | Risk Level |
|---|---|---|
| Current | Not yet due | Low — standard payment cycle |
| 1–30 days | Just past due | Medium — pay soon |
| 31–60 days | Past due for over a month | Medium-high — prioritize payment |
| 61–90 days | Significantly overdue | High — risk to vendor relationship |
| 90+ days | Severely overdue (pulses red) | Critical — may affect future vendor terms |
The ledger table itself is always sorted worst-bucket-first, so the bills needing the most attention appear at the top. The three KPI cards above the tiles — Total Outstanding, Total Overdue, and DPO Index (Days Payable Outstanding, an approximate average payment cycle) — summarize the whole ledger at a glance.
Multi-select & AI Assistant
Each row in the ledger has a selection checkbox, letting you pick a specific set of bills to focus on. The checkbox shape and fill style (circle/square, with or without a checkmark icon) follow your List Style preference in Settings → Appearance, matching the multi-select tables used across TotalApp.
- Click the header checkbox to select or clear all bills currently in the ledger
- A toolbar appears above the table showing how many bills are selected, with a Clear Selection action
A floating AI Assistant tab on the right edge of the screen opens a chat panel scoped to your selection — bill number, vendor, source PO, total, remaining balance, status, aging bucket, and due date for each bill. If no bills are selected, the assistant uses the full ledger instead. It can help you:
Payment Prioritization
Identify overdue or soon-to-be-overdue bills that should be paid first.
Cash Flow Forecasting
Summarize upcoming payment obligations by due date or aging bucket.
Vendor Concentration
Flag vendors with a large share of outstanding payables.
Aging Review
Highlight bills that have slipped into the 90+ day bucket and may risk vendor relationships.
Any assistant response can be saved as a report to My Reports for later reference, and the assistant respects your configured Writer Engine (Local CLI, Ollama, or API) from Settings → Agentic.