How many times has this project changed shape?
A messy first call becomes one page the client reads, corrects and signs. The scope stops moving.
For your own business, or as a service you charge other businesses like yours for.
Nobody runs this lab yet. Take it, give it your hours and your prices, and it is yours.
Company name, address, VAT number, whatever you hold. A software export or a spreadsheet does it.
Missing identifiers, duplicates, delivery addresses to chase, private customers separated from businesses.
One message per customer concerned, saying what changes and what happens without the data asked for.
The rows created since the last pass, and nothing else. The list does not get re-cleaned whole.
Mandatory invoice fields are not a software problem, they are a data problem. No certified platform will go and find the company registration number of a customer you never asked, or the delivery address when it differs from the billing address. Professional sources converge on a wider set of expected fields arriving with electronic invoicing, and this page goes no further than they do: confirm the exact list with your accountant or against the text. What is true either way is that a missing field gets an invoice rejected, so a payment delayed, and a hand-kept customer list always has several. A lab goes through it row by row.
Worth more in month six than in week one.
The collections belong to the lab, not to any single magik. Every magik reads them and every run adds to them, which is why this lab is worth more in month six than in week one.
They all start empty. The first run writes the first row.
It wears your name, not ours.
The same lab, under your name, your colours and your logo. Your customers never see ours.
On the Pro plan, and not needed to take a lab. A fully bespoke theme exists as an upgrade, hand built rather than self-serve.
And whatever you already use: any tool available through an API or an MCP server, connected with your own account.
A tool built for exactly your job, and only that, will go deeper at that one job. This is for the jobs nothing covers, or the ones spread across three tools today.
It will handle transport and format. It cannot invent data you do not hold: a customer's registration number, the delivery address when it differs, the category of the transaction. That is exactly the part that stays on you, and the part nobody warned you about.
From converging professional sources, accountancy firms and software vendors, not from an official text we checked ourselves. We say so because it is true and because the distinction matters: this lab's work, cleaning your list, stays useful whatever the final version of the list turns out to be.
Yes, once. The problem is not the first pass, it is that every new customer reopens a row to complete, and a clean list in February is full of holes again by June. What justifies the tool is not the initial clean-up, it is the monthly check.
Not if you explain why in one sentence. That is why the collection email is an output of this lab and not a generic template: a message that says what is changing and what happens without the data gets an answer, a message asking for a number with no context gets ignored.
They have no company registration number, and separating them is precisely one of the things the lab does. A list mixing businesses and private customers produces rows flagged for nothing, which is the surest way to abandon a clean-up after ten lines.
A tool built for exactly very small businesses and freelancers invoicing from a hand-kept customer list, and only that, will go deeper at that one job. This lab is for the jobs no tool covers, or the ones spread across three tools today, and it runs under your name.
Every audience is still open.
Nobody has taken a square on this idea yet. You declare your audience when you take the lab (“roofers in Brittany”, “plumbers around Paris”), and two people can start from the same idea on two different audiences without getting in each other’s way.
And it wears your name, not ours.
The bundle describes a lab that does not exist yet : the jobs it would do, and an example of each output.
Open Knowledge Format : plain markdown, re-importable into any agent. No account, no lock-in.
A messy first call becomes one page the client reads, corrects and signs. The scope stops moving.
A diagnostic you can charge for: where AI would pay off in this company, what it would cost, and what to do first.
| Customer | Type | Identifier | Delivery address |
|---|---|---|---|
| Kermarec Bakery | Business | missing | same |
| Vidal & Fils Ltd | Business | VAT only | not filled |
| Vidal et Fils Ltd | Business | missing | not filled |
| Mr Ledoux | Private | not applicable | same |
Four rows, three different problems and one false alarm: the private customer has no company identifier and never will.
| Customer | Flag | Action | Blocking? |
|---|---|---|---|
| Kermarec Bakery | Identifier missing | Ask the customer | Yes |
| Vidal & Fils Ltd | Likely duplicate of the next row | Merge after checking | Yes |
| Vidal et Fils Ltd | Likely duplicate | Delete if confirmed | Yes |
| Mr Ledoux | Private customer | None, excluded from the check | No |
The duplicate is the most useful flag, and the one no platform will make: two rows for one customer means two payment records and one collection dispute.
Hello, One admin point, a minute of your time. Our invoices will have to carry your company registration number, and it is not in our records. Without it, an invoice can be rejected on submission, and it is your payment that runs late, not ours. What I need: your nine-digit number, the one on your company registration extract. A reply to this message is enough. Second point, only if it applies to you: if you take our deliveries at an address different from the billing one, send me that too. On your account the two look identical from what I have, but I would rather ask than assume. Nothing else changes on your side. Thanks in advance, Billing
Customer list check - August 2026
Eleven rows created since the July pass. The rest of the list was not re-checked: it was validated last month and nothing has changed it since.
| StateState | RowsRows |
|---|---|
| Complete on creation | 6 |
| Identifier missing | 4 |
| Likely duplicate | 1 |
The four missing identifiers
All four come from the same channel: orders taken over the phone. The website form, which has made the identifier mandatory since March, produced no incomplete rows at all.
That finding is worth more than the clean-up: the hole is not in the list, it is in how phone orders are taken. Four chase-ups this month, four next month, for as long as the question is not asked during the call.
The duplicate
One customer entered twice a fortnight apart, under two spellings. Merged, with both payments attached to the surviving row.
To do
Four collection emails, already drafted. One question to add to the phone order script.