Money
Bills, and the ones that file themselves
Recording what suppliers invoiced you, and pointing the product at the address they send it to so the document is on file before anybody looks for it.
A bill is a purchase invoice: a document somebody sent you, with their number on it. It is the same record as a sales invoice with the direction reversed, so it ages, it takes payments and it appears in the month-end pack the same way.
The document is the point of the row, not an adornment on it
In Georgia, a purchase you cannot evidence is taxed at 20% of its value rather than deducted. In the UAE it is what the auditors are handed. A bill with no supplier invoice attached is therefore shown as a gap, in the panel, at the moment somebody is looking at it — not discovered at the filing deadline.
Bills by email
Point the product at a mailbox suppliers send invoices to, and each one files itself as a draft bill with the supplier's own PDF attached. This is the half of reconciliation that actually removes the monthly exercise: a payment on the bank screen with no document is what is being prevented, and the fix is the document arriving rather than a better matcher.
- 1
Somebody connects the mailbox
From their own settings page, exactly as they would their own — see connecting a mailbox. No screen in this product connects a mailbox on anybody else's behalf.
- 2
You designate it
On the invoicing settings page, choosing which legal entity the drafts are raised against. Designating is a separate act from connecting.
- 3
It sweeps every twenty minutes
The first sweep looks back a week, so invoices already sitting there are picked up without importing a year of history.
A send-only connection is refused rather than accepted and ignored
An SMTP connection and a personal Google connection can both send and neither can read. Designated here, either would report itself configured and capture nothing — which is the worst way to find out, months later, at a filing deadline.
A mailbox already serving as the support address is refused too. One mailbox doing both would raise a ticket for every supplier invoice.
What gets captured, and what does not
A no-reply address is not ignored here, and that is the opposite of the desk
The service desk ignores mail from no-reply@ and anything carrying an auto-generated header, because the desk replies and a reply to an automated address starts a loop. Nothing on this path ever replies — and an invoice from [email protected], sent by a platform that also marks it auto-generated, is not an edge case. It is the ordinary case.
What is ignored is a bounce and an out-of-office, recognised by the sender conventions and the usual subject prefixes. The rest is decided by the attachments: a delivery failure carries the original message back rather than a document, and an out-of-office carries nothing at all.
An attachment is kept if it is a document format — PDF, a scan, Word, Excel, or a structured e-invoice XML. Word and Excel are accepted despite being awkward, because refusing them means the bill is not held at all, and the balance tips the other way when the alternative is being taxed on it.
Images are the hard case, because a photographed invoice is a perfectly ordinary JPEG and so is the logo in a signature block. Two signals separate them: the naming a mail client gives to images pasted into a signature, and a size floor a scanned page always clears. Inline images referenced from the message body are excluded outright.
A message that is ignored says why, rather than vanishing. The commonest reason is a supplier who put the invoice in the body of the email rather than attaching it — worth knowing, because it is the one somebody goes looking for.
A captured bill is always a draft
Nothing is read out of the document
The amount, the tax and the supplier's own number are still typed by a person. None of them can be read out of a PDF without guessing, and a bill guessed wrong is worse than one that takes thirty seconds to complete — because it would be paid.
What is filled in is what can be known without guessing: the supplier, matched on the sending domain against companies already on record; the date it arrived; the subject as a description; and the entity you designated. A supplier that is not on record is named from the address rather than invented as a company row — a company created from an email domain is a row nobody curated, and no migration can safely remove it later.
The same message is never captured twice, including when two sweeps overlap. That is enforced by a database constraint on the message identifier rather than by a check, so it holds under a race and it cannot be broken by somebody editing the draft's notes.
Attaching a document by hand
Any draft takes attachments — a scan, a forwarded PDF, a receipt photographed on a phone. Uploads go straight from the browser to storage, so a twenty-megabyte scan never queues behind anything, and what actually arrived is re-read and checked rather than believed from the browser.
Nothing is served publicly. Every download is authorised on the request and answered with a link that expires in five minutes, always as a download and never opened in the page.
Once a document is issued its attachments are fixed. What was filed is a record, and adding to it afterwards would make *which document did we hold when this was filed* unanswerable.