The moment we don't enjoy

Once a month, your bank statement arrives. 80, 120 transactions. And the mental effort starts: which client's wire? Which month? Mission A or Mission B? Social charges, was that Q2 or Q3? That OVH subscription, did I already log it last month or not?

An hour and a half later, you stop. You'll come back next week. Except next week, you forget.

What Freelance Budget does in the background

When you upload your CSV/OFX/QIF, it's not just a parser that organizes data. It's a 7-layer reconciliation engine that processes each line:

  1. Layer 1 — Learned rules. You've already classified "OVH SAS" as "Hosting" last time? The engine applies the same rule. Confidence increases each time.

  2. Layer 2 — Institutional patterns. "URSSAF", "HMRC", "CIPAV", "STRIPE" are recognized natively, regardless of the exact bank label.

  3. Layer 3 — Invoice reverse-match. A €5,400 transaction arriving 47 days after your invoice #2026-014 (NET_45 with 15d tolerance)? Match.

  4. Layer 4 — Salary detection. Recurring transfer to a personal IBAN + similar amount each month? Probably your director salary.

  5. Layer 5 — Recurring expense. Fixed-date direct debit + known label → match with an existing expense.

  6. Layer 6 — Other income. Stripe, PayPal, freelance platform payout = non-mission revenue.

  7. Layer 7 — Unknown. Nothing matches → submitted for manual classification (but in bulk, by groups of similar transactions).

The real power: the cascade

When a transaction matches, 5 modules are updated automatically:

Module 1: Invoices

Invoice #2026-014 moves from PENDING to PAID. Its gainMonth is updated. The actual payment date is recorded.

Module 2: Treasury projection

The cash on hand at that date is adjusted. The 12-month projection recalculates the gap with the projection. If you were waiting on the payment, your real cash bumps up.

Module 3: Health score

The Collection score recalculates. If you collected on time, it goes up. If late, it goes down.

Module 4: VAT

For cash-basis VAT (French default), the VAT collected on this invoice is now due on the next declaration. The treasury provision absorbs this amount.

Module 5: Statistics

The cash-in revenue for the month increases. If you track profitability per project via Financial Groups, the associated project sees its cash inflow updated.

All that, for one matched transaction.

The "split" case — one transaction, multiple sources

Frequent case: a client wire of €8,200 covers two invoices (€5,400 + €2,800). Or a Stripe payout contains 3 grouped payments.

The engine lets you split a transaction into multiple lines, each matched independently. The total must equal the gross amount. Each line triggers its own cascade.

Without splitting, you'd lie about attribution. With splitting, each invoice is collected individually and everything stays consistent.

The magic moment: "merging" two duplicate invoices

Even more powerful variant. You created two invoices for the same service (oops, duplicate). Instead of deleting one (which would destroy its ID), you merge: invoice B is unified into invoice A, the bank transactions repoint to A, everything is clean.

No ghosts in the data. No accountant asking "what's this line #25 with no invoice attached?".

The transparent compromise: not everything is automatic

The cascade is powerful, but the engine doesn't replace you. There will always be:

  • 5-15% of ambiguous transactions requiring your validation
  • Rules to confirm or reject (the engine learns from your choices)
  • Manual splits for edge cases

The goal isn't 100% auto-magic — it's 95% in 10 minutes instead of the usual hour and a half.

Why few tools do this

Most accounting or pro-banking SaaS stop at layer 2: "we parsed your statement, you tag it".

Moving to layer 3+ requires understanding your activity's semantics: payment terms, active missions, recurring vendors, charges calendar. That's what Freelance Budget does natively — because all that data already lives in the same app.

It's typically the kind of feature you can't see in a 5-minute demo — but that saves an active freelancer a day a month.