Why

Month-end reconciliation is a chore every small business knows: 60 statement lines, 40 receipts spread across paper, phone photos and email attachments, and a pile of charges nobody can account for. The work takes days, and the gaps are usually found weeks later by an accountant. Consumer finance apps solve it by asking you to upload your statements to their cloud. For a business, that is the wrong trade.

What it does

bank-receipt-reconciler is a Skill for UGREEN AI NAS. Point it at one statement and one receipts folder, confirm the period, and ask. It reads both, extracts transactions and receipt fields, matches them with fixed rules, and answers with a numbered table: T1–Tn for charges, R1–Rn for receipts, each marked matched, probable, unmatched, duplicate or refund.

Then you can ask why T7 has no receipt, and it answers: the amount agrees, but the only receipt in the window is from a different merchant.

With separate approval it can tag the receipt files, export a CSV split above 300 rows, or save a one-page HTML summary.

How it is built

The Skill is orchestration, not a program. SKILL.md delegates to registered NAS experts — files, document extraction, photo text recognition, tagging, saving — and the parent model performs the matching using rules held in a reference file: amount tolerance of MYR 0.05 or 0.5 per cent, whichever is larger; a date window of three days before to five days after; a 3 per cent allowance for foreign currency; 30-day refund linking; splits of two to four lines; and a subscription flag at three or more similar charges.

Everything is read-only by default. Every write — tags, CSV, dashboard, report — needs its own approval. No scripts, executables or external services, so the financial documents never leave the NAS.

Challenges

Matching is harder than extraction. Repeated amounts, a delivery fee printed only on the receipt, and one receipt paid across three statement lines all defeat naive equality. The rules make each decision explicit and report which rule fired, so a wrong match is visible rather than silent.

The platform constrains the rest: the package allows Markdown only. The dashboard is therefore static HTML with no JavaScript, and the real exploration happens in conversation.

What is next

Validate the tolerances on the assigned NAS against a 60-line statement and 40 receipts, with five charges deliberately missing receipts, then test photographed receipts and a split payment.

Built With

  • ai
  • document-reconciliation
  • llm
  • markdown
  • nas
  • ugreen-nas
Share this project:

Updates

Submission history