An invoice agent that drafts but never pays is a preparation system. It reads incoming invoices, extracts their fields, matches suppliers and purchase orders against approved records, proposes accounting classifications, and saves a draft for a person to review. It holds no credentials to approve, post, or pay. Approval stays in the organization’s configured approval workflow, and payment runs through a separate, authorized payment process.
Microsoft’s Payables Agent in Business Central follows this same boundary. It creates drafts, does not post purchase invoices, and its review step is separate from Business Central’s invoice approval workflow. That makes it a useful reference model, though the design below applies to any platform, including custom-built agents.
As an Amazon Associate I earn from qualifying purchases.
What the agent may do, and what it may never touch
The agent’s job ends at a reviewable draft. Within that job it can perform the following steps:
Recommended Free Tools
- Read invoice files that arrive through a designated intake channel.
- Extract header fields, line details, tax, totals, and remittance data.
- Check deterministic relationships, such as line totals against the invoice total, and required fields.
- Propose a supplier match and purchase-order (PO) line matches.
- Suggest accounting classifications, with the evidence behind each suggestion.
- Save a draft, or stop and route the invoice to a person when the evidence is unclear.
The agent should never be able to approve an invoice, post it to the ledger, or execute a payment. Microsoft’s own documentation states the product-level version of this rule in a single sentence: “Payables Agent doesn’t post purchase invoices.” The FAQ does not attribute that sentence to a named person or role, so it should be read as an official product statement rather than a personal quotation.
#1 Best Overall
Drafting is not approval
A draft is a proposal about an invoice. An approval is a business decision that the invoice may proceed. Keeping these apart is the core control in this design. Microsoft’s documentation says the agent’s confirmation of a draft is separate from Business Central’s invoice approval workflow, and that the agent does not provide invoice approval workflows.
The table below maps each stage of the invoice lifecycle to the party that should perform it in an agent-based design that matches the boundary above.
| Stage | Who performs it | Agent permitted? | Notes |
|---|---|---|---|
| Intake and extraction | Agent | Yes | Preserve source file and field positions |
| Vendor and PO matching | Agent proposes | Yes, as proposals only | Unresolved matches stop for a person |
| Draft creation | Agent | Yes | Draft carries agent identity and evidence |
| Draft review | Accounts payable reviewer | No | The reviewer decides what moves forward |
| Finalizing to an unposted invoice | Human-initiated step | Only where the platform allows and policy permits | Microsoft’s Payables Agent can finalize a reviewed draft into an unposted invoice; for a strict “never pays” design, keep this step out of the agent’s own permissions |
| Approval | Approvers in the configured workflow | No | Routing follows organizational policy |
| Posting to the ledger | Authorized accounting process | No | Agent credentials must not include posting operations |
| Payment execution | Separate authorized payment process | No | Agent must have no tool or credential that can trigger payment |
The workflow, step by step
- Intake. Accept invoice files only from a named channel, such as a monitored mailbox or an upload folder. Treat attachment text as data to review. Invoice content can supply values, but it cannot change the agent’s rules, permissions, or routing policy.
- Extract. Capture the invoice number, supplier identity, dates, currency, totals, tax, line details, PO references, and remittance data. Store each value with a pointer to where it appeared in the source file.
- Validate. Confirm that required fields are present, that line amounts sum to the stated totals, and that tax arithmetic is consistent. These checks are deterministic and should not depend on the language model’s judgment.
- Match. Compare the supplier and any PO against approved records. Microsoft’s documentation describes vendor matching and PO-line proposals checked on vendor, unit of measure, currency, quantity, receipt, and price.
- Propose. Suggest accounting classifications and match results. Attach the evidence and a short explanation to each proposed value.
- Draft or stop. If every check passes and every value is resolved, save the draft. If any exception applies, route the invoice to a person instead (see the next section).
- Hand off. A person reviews the draft and submits it into the configured approval workflow. Approval is a recorded decision in that workflow. It is not a payment instruction, and nothing in the agent should treat it as one.
Stop when the evidence is unclear
Microsoft’s documented agent asks for human assistance when it cannot identify a vendor or cannot classify an invoice line clearly. A newly created vendor stays blocked until a relevant person reviews and unblocks it. A custom agent should follow the same pattern: an unresolved fact is a reason to stop, not a gap to fill.
Rank #2
The vendor cannot be identified
Route the invoice to the accounts payable queue with the extracted supplier name, tax ID, remittance address, and the top candidate records the agent considered. Do not create a supplier record from the invoice alone. If the agent creates a new vendor during a workflow, that vendor should remain blocked until a designated person reviews it.
Bank or remittance details have changed
A change in bank account or remittance instructions on an invoice is a payment-risk signal. The agent should flag the difference against the vendor master, show both values side by side, and stop. It should never update remittance data on its own.
The invoice may be a duplicate
Check the supplier, invoice number, amount, and date against previously received invoices. When a probable duplicate exists, hold the new invoice and link it to the earlier record for review. Do not discard it silently.
A match fails or a value is ambiguous
If quantity, price, unit of measure, currency, or receipt does not match the PO line, or if two readings of the same field are equally plausible, leave the field unresolved. Show both readings and let a reviewer choose. Conflicting or low-confidence fields should stay visibly open in the draft rather than being resolved by a best guess.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Make every suggestion inspectable
Microsoft’s documented product shows why it suggested each field value and which fields need review. Your reviewer screen should give the same visibility. For each field, a reviewer needs the source value, the proposed value, the explanation, the status, and the final decision.
The table below shows an illustrative layout for one draft. It is an example of the information a reviewer needs, not a description of any specific product’s screen.
Rank #4
| Field | Source value | Proposed value | Status | Reviewer decision |
|---|---|---|---|---|
| Supplier | “Northwind Supplies Ltd” | Vendor 10420 | Matched on tax ID and address | Accepted |
| PO line 2 | Qty 40 at 12.50 | PO line 2, qty 40 | Price differs from PO by 0.50 | Pending review |
| Expense classification | “Office consumables” | Account 6100 | Low confidence, two candidate accounts | Unresolved |
Show the reviewer which fields the agent could not resolve, and do not allow the draft to advance until each one has a recorded decision.
Identity, permissions, and the audit trail
Every action the agent takes should be attributable to the agent, not to a person. Microsoft says agent actions are attributed to its own unique Business Central user. Oracle’s approval history, in its legacy Payables guide, records the approvers, the actions taken, response dates, the amount reviewed, and comments. Combine both ideas in your design.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →- Give the agent a dedicated service identity that is separate from every approver and accountant account.
- Grant that identity read access to invoice intake, supplier and PO records, and draft creation. Do not grant approval roles.
- Confirm that the identity cannot call posting or payment operations. Verify this with a test that attempts each prohibited action and expects a denial.
- Keep payment credentials out of the agent’s runtime environment entirely, not merely unused.
- Log every tool call with the input, output, timestamp, source file reference, and the identity used.
- Record the reviewer’s accept, change, or reject decision against the agent’s proposal, so the audit trail shows what the agent suggested and what a person did with it.
Match approval rules to your policy
Approval chains are an organizational decision, not a product default. Oracle’s documented workflow supports rules that choose whether a document or its lines require approval and that determine who approves and in what order. It also states that invoices requiring approval must complete that process before payment. Oracle documents sequential approver routing, line-level approval, rejection handling, and reminders. Because that guide is product-specific and legacy, use it to understand the concepts rather than as implementation instructions for a current system.
Best Value
ServiceNow’s Accounts Payable Operations documentation, updated March 12, 2026, describes approval rules that route invoices with no exceptions. That is supplementary evidence for the same idea: routing belongs to configured rules, not to the agent.
Before you connect the agent to an approval workflow, write down the decisions your policy already makes:
- Which invoices need approval at the document level, and which need approval at the line level?
- What order do approvers follow, and which steps can run in parallel?
- Who receives a rejected invoice, and what must be corrected before resubmission?
- How long can an invoice wait before a reminder or escalation applies?
- Who can reassign an invoice, and does reassignment restart approval?
Comparing platforms and workflows
When you compare systems for this design, test each one against the same questions. The table below uses only the behaviour documented in the two sources reviewed here. Where a source is silent, it says so.
Quick Recap
| Capability | Microsoft Payables Agent (Business Central) | Oracle Payables approval workflow (legacy guide) |
|---|---|---|
| Configurable routing rules | Agent does not provide approval workflows; approval runs in Business Central’s separate invoice approval workflow | Rules determine approvers and order |
| Approval at invoice and line level | Not stated in Microsoft’s Payables Agent FAQ | Document and line approvals supported |
| PO and receipt matching | PO-line proposals checked on vendor, unit of measure, currency, quantity, receipt, and price | Not stated in the approval-workflow guide |
| Missing or unidentified supplier | Requests human assistance; new vendors stay blocked until reviewed and unblocked | Not stated in the approval-workflow guide |
| Reviewer visibility into evidence | Shows why values were suggested and which fields need review | Approval history with approvers, actions, response dates, amount reviewed, and comments |
| Rejection and reassignment | Not stated in Microsoft’s Payables Agent FAQ | Rejection handling and reminders documented; reassignment not stated |
| Audit identity | Agent actions attributed to its unique Business Central user | Approval history records each approver’s action |
| Approval, posting, and payment separated | Agent does not post purchase invoices; approval is separate | Invoices requiring approval must complete it before payment |
What the evidence does and does not establish
Read the sources with their limits in mind:
- Accuracy. Microsoft says its Payables Agent accuracy evaluation covered hundreds of invoice scenarios. The FAQ does not state the year of that evaluation, describes its test dimensions, and does not publish an accuracy rate. The phrase “hundreds of scenarios” is not an accuracy figure and should not be quoted as one.
- Scope. The Microsoft statements describe one product’s documented behaviour. They do not show that every custom agent or every ERP works the same way. Test your own agent against your own invoices, PO data, and approval rules.
- Currency. The Oracle guide is version-specific and legacy. Use it for workflow concepts such as sequential routing and approval history, and check current product documentation before implementing any detail.
- Scope of this article. The examples above come from Microsoft and Oracle documentation, plus one supplementary ServiceNow reference. This article does not describe SAP’s approval configuration.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




