AP & Invoice Processing
Accounts payable is the process of receiving, matching, approving, and paying vendor invoices — and recording every payment accurately in the general ledger. Each payment runs through an authorization decision you have to defend at audit, from three-way matching to payment-release separation of duties.
Accounts payable and invoice processing is the set of steps a vendor bill goes through between arriving at a company and turning into a payment: capturing what the vendor sent, checking it against what was actually ordered and received, routing it for approval, and executing the payment on the terms agreed. Every one of those steps is a place where a real dollar amount can end up wrong, duplicated, or simply stuck — which is why AP is one of the few back-office functions where a genuine process failure shows up directly on a bank statement, not just in a report nobody reads.
What actually happens between a vendor invoice and a paid bill
A vendor invoice passes through five stages before it becomes a completed payment, and almost every question in this cluster is really a question about one specific stage failing.
- Capture — the invoice arrives, by email, a supplier portal, EDI, or mail. This is the first point where the same invoice can enter twice, if it arrives through more than one channel and gets keyed in independently by two people.
- Extract and enter — the invoice's vendor, amount, line items, and reference numbers get turned into structured data, whether by OCR, a vendor portal's own structured submission, or manual keying. Anything misread or mistyped here propagates into every step that follows.
- Match — the invoice is checked against the purchase order it references and, for goods, against the receipt confirming delivery. This is where three-way matching happens, and it's the single biggest control point against overbilling, billing for undelivered goods, and outright fraud.
- Code and approve — the invoice is assigned to the right GL account and cost center, and routed to whoever has authority to approve that amount and category of spend. This is also where non-PO invoices (a subscription renewal, a one-off service bill with no purchase order behind it) get their first and only human review.
- Pay and record — the approved invoice is scheduled and paid on the agreed terms, and the payment is posted back against the open bill so the AP subledger reflects what's actually still owed.
Matching and approval carry most of the real risk in this list, because they're the two stages designed specifically to catch a problem before money leaves the company — everything before them is data entry, and everything after them is execution. Most of the diagnostic pages in this cluster are, at bottom, about what happens when matching or approval lets something through that it should have caught, or holds something it shouldn't have.
PO-based invoices vs. everything else
Everything above assumes a purchase order exists to match against — and for a large share of what AP actually processes, one doesn't. Software subscriptions, utility bills, professional services retainers, and one-off vendor invoices routinely arrive with no PO behind them at all, because the spend was never routed through procurement in the first place. Matching, in any of its forms, has nothing to compare a non-PO invoice against, which means the invoice's coding and approval step is the only control it will ever pass through before payment.
That single-checkpoint reality is why non-PO invoices deserve a different standard of scrutiny than PO-based ones, not a lighter one. A vendor invoice with a PO behind it has already been vetted once, at the point someone approved the purchase order; a non-PO invoice is being approved and verified for the first and only time in the same step. Companies that treat non-PO invoices with the same rubber-stamp speed they'd give a matched, PO-based invoice are, in effect, running their weakest control on their least-verified spend — which is backwards, and it's where a meaningful share of AP fraud and duplicate billing actually concentrates.
Why this keeps breaking, even at companies with real controls
A handful of root causes account for most of what goes wrong in AP, and they recur across companies of very different sizes and levels of automation:
- Duplicate vendor records — the same real-world vendor exists under two vendor IDs, most often after a name change, a merger, or simply two people independently onboarding the same supplier. Most duplicate-invoice checks only compare within a single vendor ID, so a duplicate vendor record quietly defeats the control that's supposed to catch duplicate payments.
- Decentralized entry — when more than one person or department can key invoices, the same invoice arriving through two channels gets entered twice by two people who each believe they have the only copy.
- Timing gaps between the PO, the receipt, and the invoice — a vendor often bills for a full order before every unit has been delivered and logged as received, which produces a match failure that looks like a billing error but is really just sequencing.
- Approval routing gaps — an invoice with no clear owner, or one routed to someone no longer with the company, sits unresolved not because it's hard to approve but because no one is clearly on the hook for it.
- Vendor master drift — a bank account update, a remittance address change, or a name change that reaches AP through an unverified channel (an email, rather than a callback to a known number) is one of the more common fraud vectors in AP specifically because it doesn't look like an error at all — the payment goes out clean, just to the wrong destination.
What each level of invoice matching actually catches
"Matching" isn't one thing — it's a spectrum of how much of the invoice gets checked against how many other documents, and each level catches a different category of problem. Microsoft's own Dynamics 365 documentation lays out four distinct matching types, and the differences between them explain a lot about why some errors get caught automatically and others don't:
| Matching type | What it compares | What it catches | What it misses |
|---|---|---|---|
| Invoice totals matching | Total invoice amount vs. total expected amount from the PO | Large, obvious overbilling at the invoice level | Line-level errors that net out to the same total |
| Two-way matching | Invoice price vs. PO price, line by line | Price variances — a vendor billing above the agreed rate | Billing for goods that were never actually delivered |
| Three-way matching | Invoice price and quantity vs. PO and vs. the receipt | Overbilling and billing for undelivered or partially delivered goods | Duplicate payments — a second, separate invoice submission |
| Charges matching | Freight, fees, and surcharges on the invoice vs. the PO | Unplanned or padded ancillary charges | Anything on the base price or quantity lines |
The gap in that last column matters as much as what each level catches: no level of PO-based matching is designed to catch a duplicate payment, because matching compares one invoice against its own PO and receipt, not against every other invoice already paid. Duplicate detection is a separate control, run across the full paid-invoice history — which is exactly why duplicate payments survive at companies with otherwise strict three-way matching in place. It's also why moving from two-way to three-way matching, on its own, does nothing to reduce a company's duplicate-payment rate — the two controls are answering different questions, and improving one has no effect on the other.
The metrics that actually tell you whether this is working
A handful of numbers, tracked monthly, catch most AP regressions before they compound into a close-period problem:
- Touchless (straight-through) processing rate — the share of invoices that move from capture to approval with no manual intervention. A sudden drop usually means a vendor changed invoice format, a new vendor was onboarded outside the existing matching rules, or a connector broke.
- Days to approve — the gap between an invoice being captured and being approved for payment. This is what actually determines whether early-payment discounts are capturable and whether payments go out on the terms negotiated, independent of whether the vendor was paid "on time" by the due date alone.
- Exception queue age — not just how many invoices are held, but how long they sit. A large queue that clears within days is a healthy, matching-driven process; one that carries items past period close is what turns into the phantom-liability and mismatched-total problems this cluster's diagnostic pages walk through.
- Duplicate payment rate — Washington State's Auditor's Office, citing AFP and IOFM research, puts this at roughly 0.8 to 2 percent of total AP disbursements industry-wide. At any real payment volume, that's a real number worth tracking on its own, separate from the matching metrics above, because matching doesn't catch it.
Why days-to-approve is worth more than it looks
Many vendor contracts offer an early-payment discount — commonly written as terms like "2/10 net 30," meaning a 2 percent discount if the invoice is paid within 10 days, with the full amount due at 30. That discount is only capturable if the invoice clears capture, matching, and approval fast enough to leave time to actually schedule the early payment — which makes days-to-approve, not days-to-pay, the metric that actually determines whether a negotiated discount gets captured or quietly expires unused.
This is also why a slow but otherwise error-free AP process still has a real cost even when nothing is technically wrong: no duplicate payments, no phantom liabilities, every invoice eventually paid correctly — but every discount term the company negotiated and never captured, because the invoice was still sitting in an approval queue on day 11. That cost never shows up as an AP error on anyone's dashboard; it shows up as a slightly worse effective price on every vendor contract that offered terms nobody was fast enough to use.
Where this breaks between teams
AP sits at the intersection of three groups that rarely share a single system or a single manager: procurement cuts the purchase order, receiving or the requesting team logs what actually arrived, and AP processes the invoice and executes payment. When those three live in different tools — a procurement system, a warehouse or project-tracking tool, and the accounting system — the receipt that three-way matching depends on can lag behind the actual delivery simply because no one owns making sure it's logged promptly. The single highest-leverage fix available to most AP teams isn't a better matching algorithm; it's tightening how quickly a receipt gets logged after delivery, since that's the input most match failures actually trace back to.
The two costs that hide the longest
Two AP failures share a specific trait: nothing about them looks wrong from inside the tool where they happened, which is exactly why they survive until someone reconciles against a different source of truth. A phantom liability — a bill that's actually been paid but still shows open in AP because the payment record never synced back — looks entirely normal from the payment processor's side, which shows the payment as completed. A duplicate payment under a second vendor record looks entirely normal from AP's side, because the duplicate-invoice-number check that's supposed to catch it only ever compared within one vendor ID. Both only surface when someone reconciles across systems rather than trusting either one alone — which for many teams still only happens at month-end close, not continuously.
What's in this cluster
The pages below start with the diagnostic questions — a match failure between the PO, receipt, and invoice; a duplicate vendor payment; and what breaks in a specific integration when a workflow can create a bill but can't read it back — each written symptom-first, with the actual root causes ranked by how often they happen. If you're triaging a held invoice or an unexplained duplicate payment right now, start there. A broader diagnostic — a phantom AP liability from a broken sync — lives in the month-end close cluster, since it's specifically a period-close reconciliation problem rather than an invoice-processing one.
What triggers a three-way match failure, and who is responsible for resolving it?
A three-way match failure occurs when the purchase order, the goods receipt, and the vendor invoice disagree on quantity, price, or both. The most common causes are a PO price tolerance that wasn't set, a partial shipment that closed the receipt before the full invoice arrived, and a vendor who invoices above the agreed rate. Resolving it requires a person with authority over both the PO and the invoice — typically AP together with the cost-center owner — because neither can close the item alone.
How do you build an AP approval matrix that satisfies a delegation-of-authority policy?
A delegation-of-authority policy maps invoice amounts and vendor types to approval levels — who can approve a $500 invoice versus a $50,000 one, and whether that authority can be delegated further. The matrix must be codified in the AP workflow, not just in a policy document, so that an invoice above a threshold cannot be released without the required approver acting on it. A documented, enforced matrix is one of the controls auditors test first in an AP walkthrough.
What controls prevent the same vendor invoice from being paid twice?
Duplicate payment prevention requires checking every incoming invoice against a combination of vendor ID, invoice number, and amount before it enters the approval workflow. The check must run against the full invoice history — not just open items — because duplicate invoices often arrive weeks or months after the original payment clears. A vendor statement reconciliation, run monthly, catches any duplicates that slipped through the entry check.
Why must the person approving a vendor payment not be the one to release it?
Separation of duties in AP means that the person who approves an invoice and the person who releases the payment are different — ideally in different reporting lines. When one person controls both steps, the primary fraud control is removed: a payment to a fictitious vendor or an inflated invoice can be both approved and released by the same actor. Auditors treat this segregation as a key control, and its absence is a material weakness finding in SOX-scope companies.
How should invoice GL coding be automated without losing accuracy?
Automated GL coding uses the vendor ID, cost center, and invoice line descriptions to classify each line to the right account. The classification rules must be transparent — a readable mapping from input fields to GL codes — so a controller can verify the logic rather than trusting a model. Exceptions that fall outside the defined rules route to a reviewer rather than being coded to a default account, which is where silent GL misclassifications accumulate.
When does this not apply?
Standard AP automation is most effective for structured invoices backed by purchase orders in a single ERP. It becomes harder when vendors submit invoices by email or PDF without structured data, when the same vendor operates under multiple legal entities, or when there is no PO and the invoice must be approved by a cost-center owner rather than matched to a document. Intercompany AP — where both sides of the transaction are within your own entity structure — is reconciled at month-end close rather than through the standard AP cycle.
More in this topic
- Why does one vendor show two different balances in AP aging?
- What is accounts payable?
- What is the procure-to-pay process?
- Do I need a 2-way or 3-way match for this purchase?
- How do I apply a vendor credit memo in AP?
- How do I calculate days payable outstanding (DPO)?
- How do I capture an early-payment discount before the deadline passes?
- What drives how long accounts payable takes to process an invoice?
- How do I handle 1099 vendor classification and reporting?
- What happens if I miss a 2/10 net 30 discount window?
- Why does my AP aging report not match my GL AP balance?
- How do I securely onboard a new vendor (W-9, banking details, verification)?
- What's the difference between a standard PO and a blanket PO for recurring services?
- How do I maintain segregation of duties in an automated AP approval workflow?
- Why does an invoice's received date differ from its invoice date, and why does that matter for AP aging?
- What causes a vendor invoice to post to the wrong GL account?
- What is PO price tolerance, and how do I set it?
- How do I reconcile intercompany AP allocations across subsidiaries?
- What's the difference between accounts payable and accrued liabilities?
- How do I accrue for goods received but not yet invoiced at month-end?
- What is business email compromise vendor payment fraud, and how do I prevent it?
- How do I run an AP payment batch and choose ACH vs check vs virtual card?
- How do I reconcile a vendor statement against my AP ledger?
- How to reduce accounts payable errors with automation
- How government agencies automate accounts payable
- How accounts payable automation works, from invoice to payment
- How to set up QuickBooks AP automation
- What to look for in accounts payable automation software: a buyer's checklist
- How to prevent duplicate vendor payments
- How to do three-way matching for AP invoices
- What is accounts payable? Liability, debit or credit, and how AP works
- How to automate invoice processing, from PDF to posted bill
- Native sync or middleware? How to connect Bill.com to QuickBooks Online without duplicates
- How to stop receipt capture from creating new transactions instead of matching bills
- What causes Bill.com to QuickBooks vendor mapping drift, and how to stop it
- How to set up an AP approval workflow that auditors accept
- What is invoice processing? The steps, and how long each invoice should take
- Cost Per Invoice: What Happens to Your Unit Economics When Volume Triples
- Accounts payable automation for B2B: automate AP without losing control
Frequently Asked Questions
Sources
- Microsoft Learn — Accounts payable invoice matching overview (Dynamics 365 Finance) (opens in a new tab)
- Bill.com — What Is Three-Way Matching? (opens in a new tab)
- Washington State Auditor's Office — Paying vendors twice is a problem. SAO offers tips to prevent duplicate payments (opens in a new tab)
See how Loopfour runs this: AP & invoice processing automation.
Next step
Map the finance workflow with the most exposure and prove the automation path.
Bring the invoice, contract, payment reconciliation, or customer finance workflow you have to defend at audit. Loopfour can map the trigger, controls, integrations, and approval loop.
