← All posts

Case Study: Accounts Receivable and Payable Intelligence for an Event Management Firm

How we built a read-only invoice intelligence layer for a European event management company, automatically matching hundreds of invoices against bank transactions each month and surfacing only the exceptions that need human attention.

An event management company operating across multiple European markets was running its accounts receivable and payable process largely by hand. The finance team managed invoices across several email accounts (client invoices, venue contracts, vendor payments, production costs) and reconciling these against bank statements was a monthly effort that consumed multiple working days and still produced errors.

The problem was not effort. The team was diligent. The problem was volume and fragmentation. Invoices arrived across four separate email accounts, in different formats, from counterparties with inconsistent reference conventions. Matching an incoming payment to the correct invoice required searching through email threads, comparing amounts, checking dates, and making judgment calls when figures did not align exactly.

We were asked to reduce the manual burden substantially and surface only the exceptions that genuinely required human attention.

Zone Design

AI Zone: invoice ingestion and data extraction

We built a read-only email adapter that connects to each of the firm's email accounts. The adapter has no send permissions, no delete permissions. It can only read. This was a deliberate architectural constraint, not a capability gap: a system that touches financial records should not have write access to the channel through which those records arrive.

The adapter fetches every inbound and outbound message that carries invoice-like attachments (PDFs, structured email invoices, forwarded documents) and extracts the relevant fields: counterparty, invoice number, amount, currency, due date, and reference codes. These are normalised into a unified schema regardless of the format in which they arrived.

A separate manual step, performed by the finance team, integrates bank transaction data. This is deliberate: bank data carries higher sensitivity and the firm's banking systems did not support automated API access at the time of implementation. The manual import is a defined, lightweight process that takes under five minutes per reconciliation cycle.

Once both data streams are available, the matching workflow runs. Invoices are matched to bank transactions on a weighted basis: exact amount and reference matches, approximate matches with flag, and unmatched records on either side. Payment status is assigned: paid, partially paid, due, overdue, or unresolved. Bookkeeping preparation records are generated for the matched set.

Interface: AI Zone output to Human Zone triage

The matching workflow surfaces two categories of items to a human operator: mismatches (where amounts, dates, or references do not align cleanly) and unpaid dues past a configurable threshold. These are presented in a structured review interface with the underlying invoice and the best-candidate transaction alongside each other.

The operator's task is focused: they are not reviewing the entire invoice ledger, only the items the system could not resolve automatically. They can mark a mismatch as resolved, flag it for follow-up with the counterparty, or escalate it internally.

This is the interface between zones in practice. AI does the coverage work; humans do the judgment work. The operator is not faster at reading invoices than the AI. They are better at deciding what a partial payment against a disputed event contract actually means.

Human Zone: financial decisions and counterparty contact

Any decision about how to handle an unresolved item (whether to pursue payment, issue a credit note, or escalate a dispute) remains entirely in the Human Zone. The system produces no recommendations on resolution. It surfaces the facts and flags the exception; the finance team decides what to do next.

What Changed

Before this workflow, the monthly reconciliation consumed approximately two working days for two people. Invoice collection was manual, matching was manual, and identifying outstanding dues required working through the full ledger.

After deployment, the AI layer processes all invoices automatically and produces a matched set within minutes of the bank data import. The operator triage step covers only the unresolved exceptions, typically 5 to 10% of monthly invoice volume, and takes around 90 minutes. The remaining 94% of invoices are reconciled automatically and the bookkeeping records are ready the same day.

Error rates on matched invoices dropped to near zero. The manual process had produced occasional duplicate payments and missed dues, typically discovered during quarterly reviews. The automated matching catches these in real time.

Zone Split

  • AI Zone: Read-only email ingestion across multiple accounts, invoice extraction and normalisation, bank data ingestion (post manual import), invoice-to-transaction matching, payment status assignment, bookkeeping record preparation
  • Human Zone: Operator reviews mismatches and overdue flags, resolves or escalates each exception; all decisions on unresolved items including payment pursuit, dispute handling, counterparty communication, and credit notes

Design Notes

The read-only constraint on the email adapter was a design principle stated from the start. A system that has write access to the same accounts through which invoices arrive creates a risk surface that is difficult to audit and hard to contain if something goes wrong. We enforce this at the adapter level: the credentials it holds have no send or modify permissions in the email providers.

The manual bank data import was an acceptable constraint given the sensitivity of bank feed access and the firm's existing systems. It created a defined human touchpoint in what would otherwise be a fully automated flow, which suited the firm's governance preferences.

Matching confidence thresholds are configurable by the finance team. We deliberately did not set these at implementation and walk away. The right threshold depends on the firm's counterparty mix, invoice conventions, and risk tolerance, not on our defaults. The team has adjusted these twice since go-live as they built confidence in the system's behaviour.

Interested in how ZebraZones can help your organization adopt agentic AI safely?

Get in touch