# Accounts Payable
The AP module is PAI's centralized hub for all vendor payment workflows across your organization. Every invoice — whether submitted by a vendor through the portal, submitted manually on a vendor's behalf, or generated through the PO system — lands here for review, approval, and payment.
PAI's AP does a few things particularly well. First, it consolidates everything destined for payment into one place. Rather than chasing invoices across email threads, portals, and spreadsheets, every transaction that needs to be paid flows into the AP grid automatically — organized, searchable, and actionable from a single interface.
Second, because PAI generates all invoice PDFs itself — synthesizing the data from vendor submissions, timecards, and manual entries into a consistent format — every invoice that leaves PAI looks exactly the same. This consistency makes AP automation highly reliable. Bill pay providers and OCR-based processing tools can read PAI-generated invoices accurately without custom configuration, which is what makes the [Approved Invoice Email](./AP-Automations.md) workflow so effective at automating the handoff to payment.
Access the org-wide AP module via **AP** in the main navigation. You can also access a project-scoped view from within any project via **AP** in the project's left navigation — this shows only the invoices related to that project, using the same interface.
---
## How Invoices Arrive in AP
There are three paths an invoice can take to reach the AP grid:
**Vendor portal submission** — when you post expense lines to a connected vendor, they're notified and can review and submit their invoice through the Vendor Portal. Submitted invoices appear in AP automatically.
**Manual submission** — when a vendor invoices outside PAI (by email, for example), you can select the relevant expense lines in the budget and submit the invoice on their behalf. See [Working with the Budget](../04-Executing-the-Job/Working-with-the-Budget.md#submitting-an-external-invoice).
**PO-generated** — purchase orders and deal memos create a structured commitment workflow before expenses are posted. See [Purchase Orders](./Purchase-Orders.md).
---
## The AP Grid
The AP grid is a PAI table showing all invoices across the organization. Key columns:
- **Invoice Status** — current state of the invoice (see below)
- **Vendor** — who submitted the invoice
- **Invoice #** — the vendor's invoice number
- **Project** — associated project
- **Client** — associated client
- **Total** — invoice total amount
- **Invoice Date** — date the invoice was submitted
- **Payment Date** — scheduled payment date, once set
- **Vendor Type** — tax classification (1099, W2, Foreign Individual, Merchant)
- **Vendor Status** — whether the vendor is active in the portal
- **Approved By / Approved On** — who approved and when
- **AR Stage** — manually set accounts receivable tracking field
Quick filters at the top of the grid let you filter by status (All, Submitted, Approved, Paid). Use the full PAI table controls to filter by any column, sort, reorder, and save custom views.
---
## Invoice Statuses
- **Submitted** — invoice received, pending review
- **Changes Requested** — invoice rejected; returned to vendor for revision and resubmission
- **Approved** — all expense lines reviewed and accepted; ready for payment scheduling
- **Payment Scheduled** — payment date assigned; vendor notified
- **Paid** — payment complete; vendor notified
---
## AP and the Budget
The AP module and the project budget are the same data viewed from different angles. An expense line in the budget and the corresponding line in AP are linked — actions on either side update the other automatically.
**AP takes control once a vendor submits against a posted line.** Posting an expense line locks it from direct editing, but you can still move it back to Confirmed or Draft if you need to make changes before the vendor has done anything. Once the vendor submits an invoice against it, that option goes away — the line is now under AP control and its status and values are driven entirely by what happens in the AP workflow from that point forward. The budget reflects AP's state; it doesn't control it.
This is what keeps the financial views honest. Live Margins and the Finance page reflect expense statuses that AP is actively driving — projected costs becoming committed as lines are posted, committed becoming incurred as invoices are approved and paid — without any manual reconciliation.
### Status Permutations
Every vendor and AP action maps to a specific expense line status in the budget. The full set:
**Vendor submits — amount matches posted amount**
The line auto-approves. Budget status → **Approved**.
**Vendor submits — amount differs from posted amount**
The line goes to review. Budget status → **Requested**. A red diff appears on the subtotal in the budget showing the variance: if the vendor invoiced less than posted, the diff shows +$x (money remaining); if they invoiced more, it shows -$x (overage). The diff is visible immediately on submission.
**Vendor adds a new line**
A new expense line appears in the budget under the invoice. Budget status → **Requested**. The full invoiced amount appears as a negative diff (e.g., vendor adds a $100 kit fee → -$100 diff), since it's an unplanned cost against the budget.
**Vendor deletes a posted line from their invoice**
The expense line is no longer being invoiced. Budget status → **Refunded**. The subtotal is set to $0 and a negative diff reflects the amount returning to the budget. This status is permanent — even if the invoice is subsequently approved, refunded lines remain Refunded. If the deletion was an error, an admin can reopen the invoice and the vendor can restore the line themselves.
**Producer reviews all lines — all approved**
Every line must be actioned (approved or rejected) before an invoice-level action is available. Once all lines are approved, the producer can mark the invoice as **Approved**. Budget status for all lines → **Approved**.
**Producer reviews all lines — at least one rejected**
Once all lines are actioned, if at least one is rejected the producer can click **Request Changes**. The invoice moves to Changes Requested and returns to the vendor. Rejected lines → **Rejected** in the budget. Lines that were approved in the same review retain their **Approved** status — approval and rejection are per line, not per invoice. Diffs on rejected lines disappear when the invoice is returned and reappear if the vendor resubmits with changes.
**Vendor resubmits after Changes Requested**
Previously rejected lines re-enter review as **Requested** and always require manual action — they never auto-approve on resubmission regardless of the amount. Any amount changes from the vendor will show updated diffs.
**All lines approved — producer schedules payment**
Budget status for all lines → **Payment Scheduled**. Vendor is notified of the payment date.
**Payment date passes**
Budget status for all lines → **Paid**. Vendor receives payment confirmation.
**Invoice reopened by admin**
The invoice returns to pre-submitted state. The vendor can modify lines — including restoring any deleted lines — before resubmitting. Diffs disappear until resubmission.
---
## Detailed Workflows
- [Invoices](./Invoices.md) — reviewing expense lines, approving and rejecting, scheduling payment
- [Timecards](./Timecards.md) — vendor hour submission and OT review
- [Purchase Orders](./Purchase-Orders.md) — PO and deal memo workflow
- [AP Automations](./AP-Automations.md) — sending approved invoices to your bill pay provider automatically