Skip to main content
Checked against the product · 2026-10-05

AP Invoice Detail — Controller Guide

Every other AP surface treats a bill as one object: a vendor, a total, a status you move forward. This screen is the one place that opens the bill up and shows you the lines a machine read off the document — and lets you correct them. The mental model: the AP queue decides what happens to the bill; this screen decides what the bill says.

Where it is: /accounting/ap/:id. There is no menu entry — you get here by opening a bill from the AP queue (Accounting → Payables → AP). The Invoice queue link at the top takes you back.


Part 1 — The ideas you need first (read once)​

The lines are the extraction. There is no pristine copy behind them.​

When a bill arrives by email or through the bill-pay feed, a reader pulls the line items off the document and writes them into Arcvue. Those written values are the only ones that exist. Nothing keeps a separate, untouched image of "what the document originally said."

That has one consequence worth holding onto: the first time you correct a line, the recorded before-value becomes the only surviving record of what the reader produced. It is why the Correction history sits directly under the editor instead of behind a link — hiding it one click away would hide the single fact that makes correcting a line safe to do.

Two different locks, and they do not mean the same thing​

The bill is…What locksWhat you can still do
VoidEverythingNothing. The banner reads "Nothing on it can be changed — somebody already made that decision." Voiding is a decision, not an error state.
Settled (status paid, or a paid date recorded)The amountsWhere the cost belongs stays open — GL account, CLIN, cost type.

The settled lock is deliberate and it is the important one. The amounts are frozen because the payment was made against them — changing what you paid after you paid it is rewriting history. But where a cost belongs is still a revisable claim, and it is precisely what a DCAA reviewer asks to have fixed months after the cash moved. So Arcvue freezes one half and leaves the other open, and a locked field tells you why: "locked, the payment was made against this."

A note on the settled banner. The banner lists "GL account, contract, CLIN, cost type" as still-correctable. The screen does not render a contract field — the line editor offers Description, Amount, GL account, CLIN and Cost type, and nothing else. Contract reassignment on a settled bill is not available here today. Raised with the accounting lane 2026-08-30.


Part 2 — How to run it​

Step 1 — Confirm who the bill is payable to​

The Payee row sits under the invoice number.

  • A name shown in plain text is the name on the bill.
  • A "not in the register" badge beside it means the name was read off the document but is not linked to a vendor record. The bill still pays, but nothing else in Arcvue can group it with that party's other bills — it will not roll into that vendor's aging, its 1099 totals, or its default coding.
  • "no payee on this bill" in amber means the reader found no name at all.

Click Set payee (or Change) to fix it. Type two or more characters and Arcvue searches the vendor register:

  • Pick a "… in the register" match to link the bill to that vendor record. This is what you want almost every time.
  • Or click Use "" — not in the register to record the name without linking it.

That second option is a real answer, not a failure. The register only holds parties somebody has set up, and the bill that needs correcting is usually the one whose payee was never set up in the first place. Use it when the name is right and the vendor record does not exist yet — then create the vendor record on Vendors and come back to link it.

Why this control exists: an extraction can put any name on a bill. A rebill packet that carries its own backup invoice will hand back the contractor's name for money that is actually owed to the landlord.

Step 2 — State the due date​

The Due row is the one header field you often have to supply yourself.

  • If the bill states a due date, it shows here.
  • If it does not, you get amber text: "no due date stated — aged from the invoice date." That is AP Aging telling you what it is falling back to.

Click Set due date, pick the date, Save. Clearing the box and saving removes it again.

Do this whenever a bill's real terms differ from its invoice date, because aging from the invoice date always makes a bill look older than it is — you will chase payables that are not actually late. A settled bill still takes a due date (it is attribution, not an amount); a void one does not.

The three ways a due date gets set — the bill's own date, the vendor's payment terms, and this control — are explained in Accounts Payable, Part 1.

Step 3 — Read the entry it books​

Ledger entry shows what this bill books in the general ledger, as debits and credits: the expense or asset it was coded to on one side, accounts payable on the other, both columns totaled. It is the bookkeeper's coding of the same document — read back from the ledger where it has posted, derived from the posting rules where it has not yet.

Approving the bill does not post this entry; the coding does, on the next sweep. So this section is the booking you are approving into, and the place to look before Approve rather than after. If the debit account is wrong, correct the coding from the Escalations or Queue screen (this page does not code); if it reads that nothing is coded yet, the bookkeeper has not read the document and the entry appears once it has.

Step 4 — Open a line and read it before you touch it​

Extracted lines lists every line the reader produced. Each row shows the description, the GL account (or unmapped), the cost type, and the amount. Click a row to open it.

If the section says "No lines were extracted from this invoice", the reader produced nothing — the document may be an image with no text layer, or a format it could not parse. Enter the bill's coding by hand from the AP queue instead.

Read the Correction history at the bottom of the open row first. It tells you one of three things:

What it saysWhat it means
"Never corrected. These values are as they were extracted."Nobody has touched this line. What you see is what the machine read.
A list of changesEach entry names when, who, which field, from → to, and the reason given.
"The correction history could not be loaded, which is not the same as never corrected."The fetch failed. Reload before relying on this line. Do not read this as "never corrected" — that is exactly the mistake the wording is there to prevent.

Step 5 — Correct the line​

Edit any field that is not locked. Then fill in Reason for the correction — the box asks "What was wrong, and how do you know?", and that is the standard: name the source you checked, not just the symptom.

  • Save correction stays disabled until something actually differs from the stored value.
  • The counter beside it tells you what you are about to record: "Nothing changed yet" or "N fields will be recorded."
  • Correcting several fields on one line records them as one correction with one reason. Correcting a second line is a separate correction.

The reason is optional to the software and not optional to an auditor. A correction with no reason is a value that changed and nobody can say why.


Cancel closes the form without writing anything to the invoice — it is the edit you abandon, not the invoice you void, which the word can suggest on a payables screen.

Part 3 — When something looks wrong​

SymptomWhat it means → what to do
"This AP invoice could not be loaded."The bill id in the address does not resolve — usually a stale link to a bill that was deleted, or a bill belonging to a different tenant. Use the Back to the invoice queue link and open it from the queue.
The amount field is grayed out and I need to change itThe bill is settled — a payment was made against that amount. The correct move is not to edit it: void the payment on the AP queue and re-enter it, or book the difference as its own adjustment. Silently changing a paid amount breaks the tie between the subledger and the cash that left the bank.
Nothing at all is editableThe bill is void. That is a decision somebody made, not a lock to work around. If the void was wrong, the fix is a new bill, not an edit to this one.
The GL account says "unmapped"The reader could not place the line. Set it here — and if the same vendor keeps arriving unmapped, set that vendor's default coding account on Vendors so the next bill lands coded.
The payee is right but shows "not in the register"The vendor record does not exist yet. Create it on Vendors, then come back and re-pick the payee so the bill links to it.
I corrected a line and the invoice total no longer matches the linesArcvue does not re-derive the header total from the lines. If a line amount was genuinely misread, check the header total against the document as well and correct it from the AP queue's header edit.
I need to move a settled bill to a different contractNot available on this screen today (see the note in Part 1). Raise it with accounting rather than working around it in the GL.

One-line summary​

This is the only surface that shows the lines a machine read off a bill and lets you correct them — payee, due date, description, amount, GL account, CLIN and cost type — with every correction recorded as who changed what, from what, to what, and why; a void bill is frozen entirely, and a settled bill freezes its amounts while leaving where the cost belongs open, because that is the half a DCAA reviewer asks you to fix.

  • The bill lifecycle, approvals, paying, and voiding → Accounts Payable (/accounting/ap)
  • Vendor records, default coding account, allowability per party → Vendors (/accounting/vendors)
  • Purchase orders, receipts, three-way match → Procurement (/accounting/procurement)
  • Chart of accounts and what each GL account is for → Chart of Accounts (/accounting/admin/chart-of-accounts)