Skip to content

The accountant receives a coding proposal with its supporting record.

A complete document goes to approval. A missing account, cost center, or receipt stops the invoice and tells the accountant exactly what needs attention.

Accounts payable invoice codingDemonstration systemReview one invoice workflow

Measured on 12 test invoices

This version shows an account and cost-center proposal, a purchase-order check, and the accountant's review queue. It uses test data and connects to no ERP, KSeF, or general ledger.

Recorded run
Measured on 12 test invoices
Measurement scope
Accounts payable invoice coding
Verified
synthetic data

Problem, solution, and result

  1. The problem

    Before posting an invoice, someone reads it, selects the account and cost center, and compares it with the purchase order and receipt. At volume, the accounting team repeats these checks for hours.

  2. How the system works

    The system combines invoice text with supplier history and proposes an account and cost center. It then compares lines, quantities, and values with the order and receipt. The accountant approves the proposal or sends the document for clarification.

  3. What we tested

    This version shows an account and cost-center proposal, a purchase-order check, and the accountant's review queue. It uses test data and connects to no ERP, KSeF, or general ledger.

For whom

This is a good automation candidate when accountants repeatedly code similar invoices and search supplier history by hand.

Invoice → coding proposal → control

  1. 01Account and cost center come from the invoice and supplier history
  2. 02Lines are checked against the order and receipt
  3. 03The accountant approves or requests clarification
Business type
Companies with in-house accounting or accounts payable
Input
A cost invoice with its source document and supplier history
Boundary
A missing account or cost center, or a blocking variance, prevents ready status; the accountant approves the entry or sends the document for clarification
Cost
USD 0.004514 per invoice; USD 0.054165 for the recorded 12-invoice run.
Security
An invoice missing an account, cost center, or proof of delivery cannot be marked ready.
Speed
We measure invoice handling time in a pilot using the client’s documents and accounting rules.
Trace
The history shows the basis for each suggestion, detected differences, and the accountant’s decision.
Similar system build
from €3,500 net (approx. $3,800) · 2–6 weeks

Reference exchange rates: USD 1 = PLN 3.72; EUR 1 = PLN 4.30. PLN amounts are rounded, with the measurement currency retained in parentheses.

Where automation stops

When the accountant decides

The system prepares a proposal and checks completeness. The accountant approves the account and cost center or sends the invoice for clarification. The system cannot post an invoice, change a purchase order, or approve payment.

Boundary
A missing account or cost center, or a blocking variance, prevents ready status; the accountant approves the entry or sends the document for clarification
Cost
USD 0.004514 per invoice; USD 0.054165 for the recorded 12-invoice run.
Security
An invoice missing an account, cost center, or proof of delivery cannot be marked ready.
Speed
We measure invoice handling time in a pilot using the client’s documents and accounting rules.

Estimated impact

Calculate the impact at your volume

This estimate uses the stated volume. Enter your own numbers to assess the possible impact in your company. The result is confirmed only during a pilot.

  1. Today

    218 h

  2. With the system

    94 h

  3. Time or cost saved

    Modelled scenario: 100-150 h/mo, base 125 h

Volume
Modelled scenario: 936 invoices/mo
Formula
936 x 8 min / 60
Calculation status
medium

Data in the screenshots. The names, amounts, and documents shown in the screenshots are synthetic. Client data remains private. Measurements describe the demonstrator and are kept separate from production outcomes.

Working surfaces

The accountant approves the coding and resolves exceptions. The system prepares the evidence for that decision.

The intake journal separates documents ready for review from exceptions. Each invoice shows the proposal, supplier precedent, and purchasing check. Handling time and the share accepted without changes are measured in the client's process.

Three views for accounts payable

Intake journal

Invoices ready for review and documents requiring clarification.

Invoice record

Proposed account, cost center, supplier history, and source data.

Matching check

Invoice, purchase order, and receipt compared with a clear hold reason.

System screens

See how the system works in practice

These desktop and mobile screenshots come from the running application. They show the process and the points where a person makes the decision.

Screens
10
px
1440 · 390
011440×1100
An intake journal of 976 test invoices with readiness status.
390390×844
  1. 021440×3055
    An invoice record with proposed account, cost center, and supplier precedent.
  2. 031440×1100
    Line-level matching against the purchase order and goods receipt.
Open the remaining screen archive (7)
  1. 041440×1100
    Proposed entry and operator decision
  2. 051440×1100
    Postings to hand over
  3. 061440×1100
    Supplier file
  4. 071440×1100
    A supplier card
  5. 081440×1100
    Chart of accounts
  6. 091440×1100
    Control thresholds
  7. 101440×1100
    Reading measurement and limits

Technology stack

The model proposes; rules verify

Anthropic produces a proposal in a closed schema. Pydantic and code enforce required fields and readiness conditions. PostgreSQL stores invoices, decisions, and the trace.

Anthropic SDK
a direct, bounded model call with a typed response contract
FastAPI + Pydantic
receives the document and enforces the closed schema of fields and decisions
PostgreSQL 17 with pgvector
stores invoices, suppliers, orders, and the trace of every decision
Next.js + React
renders the payables desk: queue, invoice card, line differences
Docker Compose
three containers (postgres, api, web) started with one command

The client receives the code, instructions, test data, and documentation. The system runs on the client side. ERP, KSeF, and ledger connections require separate integrations.

Technical details and measurements

The working loop

Every invoice receives the same checks

The system prepares a proposal, checks required fields, and compares the documents. The accountant receives the result with its basis and a list of missing information.

01

Invoice and supplier history

02

Account and cost-center proposal

03

Purchase order and receipt check

Missing data or mismatch → clarification

04

Accountant approves the coding

System architecture

Invoice, supplier history, document checks, and audit

The model returns a proposal in a closed format. Rules check completeness and consistency. The database records the run, and the interface presents the result to the accountant.

  1. 01

    Input

    An invoice with supplier context.

    The API receives invoice text and a short supplier-history summary: precedent count, usual account and cost center, and control flags. The model receives neither order nor receipt documents.

  2. 02

    Schema

    A closed contract of fields and decisions.

    The model can answer only inside a validated schema: supplier and invoice data, account, cost center, decision, reason, and confidence. The three-way match result is not part of this schema.

  3. 03

    Precedent

    The basis stands beside the proposal.

    An available supplier precedent stands beside the proposal and opens its source document. Separate code compares item, quantity, net unit price, and net value across invoice, order, and receipt.

  4. 04

    Review and trace

    Gaps come to the surface.

    A missing account or cost center, or a blocking variance, routes the document to the accountant. Every run records its decision, usage, and cost.

Why no agent framework

One bounded model call and a deterministic line check need no graph or tool loop. The response has a closed schema, the three-way check runs separately in code, and the accountant makes the operational decision. Fewer moving parts mean a shorter audit and fewer places where a proposal could lose its basis.

  • The model response passes schema validation before reaching the screen
  • The order and receipt line check runs separately in code
  • A missing account, cost center, or blocking variance forces review
  • The accountant approves the entry or sends the document for clarification

Want to assess a similar process in your company?

  • A 30-minute call with the engineer who would lead the work.
  • A review of the processes that cost you the most time and money.
  • A written summary of what to automate first and the likely cost range.
€030 minutes · written takeaway within 2 business days
Book a free process scan (30 min)

Times are shown in your own time zone. We work with clients across time zones.

The scan is free and creates no obligation. If automation is unlikely to pay off, the written recommendation will say so.