Today's Agent Skill: Expense Receipt Reconciliation
What It Does
Month-end expense reports are where good employees lose two hours to a shoebox of receipts. Someone has to match every charge on the corporate card statement against a photo, a PDF, or an email confirmation — and then explain the three that don't line up. It's mechanical work that punishes inattention, which makes it exactly the wrong job for a human and exactly the right job for an agent.
How It Works
The skill ingests two sources — a card statement export (CSV) and a folder or inbox of receipts — then normalizes amounts, dates, and merchant names on both sides before matching them. It scores each pairing by amount exactness, date proximity, and merchant string similarity, so a $47.82 Uber charge on the 3rd matches a receipt dated the 4th without a human squinting at it. Anything below the confidence threshold gets kicked into an exceptions list with the reason attached, rather than silently guessed at.
How to Deploy It
Drop the SKILL.md below into your agent's skills directory — `~/.claude/skills/expense-receipt-reconciliation/SKILL.md` for Claude Code, or the equivalent skills path for any SKILL.md-compatible runtime — and it activates on phrases like "reconcile my expenses" or "match these receipts." Point it at a statement CSV and a receipts folder; it needs file read access and nothing else.
SKILL.md — Ready to Deploy
# Expense Receipt Reconciliation
## Description
Matches corporate card transactions against receipt files and produces a reconciled report plus a scored exceptions list. Handles fuzzy merchant names, off-by-one-day settlement dates, split charges, and tips added after authorization. Never fabricates a match — unmatched items surface with a stated reason.
## Trigger
Activates on: reconcile my expenses, match these receipts, expense report, close out my card statement, which receipts am I missing, expense reconciliation.
## Input
- **Statement**: CSV or XLSX export with at minimum date, merchant/description, amount. Extra columns are preserved.
- **Receipts**: A directory of images/PDFs, or an email folder. Filenames are hints, not authority — read the content.
- **Optional**: Policy limits (per-diem caps, disallowed categories), reporting period, expected currency.
## Steps
1. Parse the statement. Normalize dates to ISO, amounts to signed decimals, and strip processor noise from merchant strings (`SQ *`, `TST*`, trailing store numbers, city/state suffixes).
2. Extract from each receipt: total, date, merchant, tax, tip, currency, last four of the card if present. Record the sourc
Copy the full SKILL.md and drop it into your agent's skills directory to activate this skill.