Skip to main content

Solutions / Back office

Books that are up to date without capturing anything twice.

Sage connectionBuilt to order

Agents that read from and write to Sage: quotes become invoices, supplier bills are captured from the email they arrive in, and payments are matched for your bookkeeper to confirm.

What outside research says

Findings from the research linked under each figure. They are not Yielde results.

The loop

How it works

From a bill or a job to reconciled books

Seven steps, from the first event to the result. Choose a step to read what happens in plain words, how it is built, and what keeps it right.

From a bill or a job to reconciled books

Step 1 of 7

  1. Step 01 of 7Trigger

    It picks up a bill or a job

    In plain words

    A supplier emails an invoice, someone sends in a photo of a till slip, or a job in your CRM is finished and needs invoicing. Each one starts the same careful process.

    Safeguard The same document arriving twice is recognised by its fingerprint and handled once.

    Under the hood

    It is built around an inbox set aside for supplier bills and photos of slips. Jobs, quotes and bookings come from your CRM through its API, the official connection it offers other software, once they reach the status you choose, such as 'job done'. Each item is given a fingerprint on arrival, made from the sender, the document number and the content, so the same bill emailed twice or forwarded by two people is known to be one item from the start.

    Works with

    • Email
    • Your CRM
  2. Step 02 of 7AI agent

    It reads the bill into lines

    In plain words

    The agent reads the bill the way your bookkeeper would: who it is from, the invoice number, the date, each line, the VAT and the total.

    Safeguard If the lines do not add up to the total on the page, the bill goes no further. The sums are checked by code, not by the model.

    Under the hood

    The language model turns the document into structured lines that must fit a fixed schema, a form where every field has a set type and place. Then plain arithmetic checks the model's work: the lines must add up to the subtotal, the VAT must match its rate, and the total must match the page. Each field keeps a pointer to where it was read on the document. A blurred photo, a missing VAT number or a total that does not add up is never guessed at: it is marked for a person.

  3. Step 03 of 7Integration

    It finds the match in Sage

    In plain words

    Before anything is entered, it finds the supplier or customer you already have in Sage, with the right account and tax code, so you do not end up with three versions of one supplier.

    Safeguard A new supplier, customer or item is never created on a name match alone. A near-match waits for a person.

    Under the hood

    A mapping table agreed with your bookkeeper says which field goes where and which account each kind of cost belongs to. Contacts are matched in order: VAT number, then email address, then a close match on the name, and only the first two count as certain. A near-match is shown to a person instead of creating a new contact. It also searches Sage Accounting for the same supplier and invoice number, so a bill someone already captured by hand is not entered twice.

    Works with

    • Sage Accounting

    Already in Sage: goes straight to step 07, You get the exceptions list.

  4. Step 04 of 7ReviewWaits for you

    Your bookkeeper approves

    In plain words

    Your bookkeeper sees each prepared entry next to the bill it came from. One tap posts it, and a correction is remembered for that supplier's next bill.

    Safeguard Nothing reaches your books without an approval attached, and a change to a posted record needs a separate approval of its own.

    Under the hood

    Entries wait in a review queue outside your books until someone approves them, so Sage Accounting only ever holds what a person has seen. Corrections are saved to the mapping table with who made them. A change to a record already posted, such as a credit note against a sent invoice or undoing an allocation, is never bundled with routine entries: it is prepared as its own proposal, with the reason, and needs its own approval.

  5. Step 05 of 7Integration

    It posts once, and only once

    In plain words

    Once approved, the entry goes into Sage. If Sage is down for maintenance or the connection drops, it waits and tries again, and the bill is still entered only once.

    Safeguard Every retry looks in Sage first. An entry that already landed is never written a second time.

    Under the hood

    Writes go through the public API that Sage Accounting provides. Each one is tied to an idempotency key, a unique label taken from the item's fingerprint, which the connection records with the result. If Sage is unavailable or asks it to slow down, the write waits in a retry queue, a little longer between each try. The hard case is a write that timed out, because it may have landed. So before any retry the connection looks in Sage for that entry, and only writes if it is not there.

    Works with

    • Sage Accounting
  6. Step 06 of 7AI agent

    It matches the bank lines

    In plain words

    It works through your bank statement and pairs each payment with the invoice or bill it belongs to. Where it cannot, it says why in plain words, such as 'two invoices paid together, less a bank fee'.

    Safeguard A match is a suggestion until your bookkeeper confirms it. The connection never allocates a payment by itself.

    Under the hood

    Lines are read from the statement files your bank provides and compared with open items in Sage Accounting. Exact matches on amount and reference come first, made by rules rather than the model, and can be confirmed together. The language model then works on what is left: one payment for several invoices, a part payment, a reference typed wrong. Each suggestion carries its reasoning and a confidence level, and goes to your bookkeeper. No payment is allocated on its own.

    Works with

    • Bank statements
    • Sage Accounting

    Match to confirm: goes back to step 04, Your bookkeeper approves.

  7. Step 07 of 7Delivery

    You get the exceptions list

    In plain words

    Your bookkeeper gets a short list of what still needs a person, and a full exceptions list at month end. Everything else is already in Sage, approved by a person.

    Safeguard The log is append-only: lines are added, never edited or removed, so every posting traces back to its document and the person who approved it.

    Under the hood

    The report is built from the connection's own log, which follows every item from arrival to posting: what came in, what was read, who approved it, what was written and what Sage replied. Each exception is explained in plain words, with links to the document and the entry. At month end the list is grouped by kind, such as unmatched payments, duplicates stopped and bills still waiting, so closing the month starts from one page instead of a hunt.

    Works with

    • Email
  • What it knows

    Your accounts, tax codes, contacts and items as they stand in Sage Accounting, a mapping table agreed with your bookkeeper, the bills and records that come in, and your bank statements. It works from those and nothing else.

  • What it may do on its own

    Read bills and statements, prepare draft entries, look up and match contacts, check its own sums, suggest bank matches, and retry a write that failed. It writes to Sage only what a person approved.

  • What waits for your yes

    Every entry before it is posted, every bank match, every new contact or item, and any change to a record already in your books, which always needs its own approval.

  • How we test it

    Before go-live it runs against a separate test set of books, never your live ones, with your past bills and statements, including the awkward ones: a blurred slip, a credit note, a bill sent twice, one payment for three invoices. Writes are tested with the link to Sage cut, to check each entry still posts once.

What we measure

Once it is live, these are tracked and reviewed with you.

  1. Bills captured without retyping
  2. Entries your bookkeeper corrected, and why
  3. Bank lines left unmatched at month end

What you get

  • Sage linked to your other tools through its public API
  • Supplier invoice capture from email and photos
  • Draft entries your bookkeeper approves
  • A month-end exceptions list

Works with

  • Sage Accounting
  • Email
  • Bank statements
  • Your CRM

Who it is for

Businesses on Sage whose admin still runs on retyping.

Built to order. We scope it with you on a call, price it before any work starts, and run it in draft mode until you trust it.

Books that are up to date without capturing anything twice.