Skip to content
cccskills
FreePublished on GitHub

invoice-organizer

Categorize invoices and receipts by vendor, expense, and tax bucket, detect duplicates, and produce a tax-ready monthly summary. Use during bookkeeping, tax prep, or expense reimbursement.

The English summary is being prepared. Showing the original description.

See how to install

Files included (5)

  • SKILL.md7.7 KB
  • assets/category_rules.json3.0 KB
  • assets/monthly_summary_template.md2.3 KB
  • references/expense_categorization_guide.md4.9 KB
  • scripts/invoice_categorizer.py7.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Invoice Organizer

Bulk-categorize a CSV of invoices or receipts, detect duplicates, and produce a tax-ready monthly summary.


Table of Contents


Keywords

invoice, invoices, receipt, receipts, expense, expenses, bookkeeping, accounting, tax, tax prep, categorization, vendor, reimbursement, monthly summary


Clarify First

Before categorizing, settle the inputs below. When one is missing or vague and would change the result, ask about it; when it wouldn't, use a sensible default and say which one you used.

  • Receipt CSV fields: date, vendor, description, amount drive categorization and duplicate detection.
  • Tax bucket scheme: US Schedule C vs UK self-employment vs generic sets which categories the summary maps to.
  • Recurring-vendor rules: known vendor→category mappings to seed category_rules.json and cut the uncategorized bucket.

Ask about the two or three inputs that matter most for this request, not the whole list. If the user wants a result straight away, produce it and state your assumptions at the top.


Quick Start

Categorize 200 Receipts in 1 Minute

  1. Export receipts from your bank or expense tool as a CSV with columns: date,vendor,description,amount, all in one currency (convert any foreign-currency rows first)
  2. Run:
    python scripts/invoice_categorizer.py receipts.csv
    
  3. Review the categorized output and override anything wrong via the rules file
  4. Export the monthly summary for handoff to your accountant

Core Workflows

Workflow 1: Monthly Bookkeeping

Goal: Convert a month of unstructured receipts into a categorized, tax-ready summary in under 10 minutes.

Steps:

  1. Export receipts as CSV from your bank, card, or expense tool
  2. Run: python scripts/invoice_categorizer.py receipts.csv
  3. Review the uncategorized bucket — these need rules added or manual override
  4. Add rules to assets/category_rules.json for any recurring vendors
  5. Re-run; uncategorized count should drop each month as the rules file grows
  6. Drop the monthly summary into assets/monthly_summary_template.md

Expected Output: Categorized expense list + monthly totals by category + duplicate-suspect list.

Time Estimate: 10 minutes/month after initial rules are seeded.

Workflow 2: Duplicate Detection

Goal: Catch double-entered receipts before they reach the books.

Steps:

  1. Run: python scripts/invoice_categorizer.py receipts.csv --json
  2. Inspect the duplicates_suspected list
  3. Confirm whether each is a true duplicate (same charge entered twice) or a coincidence (same amount on different days at different vendors)
  4. Remove confirmed duplicates from the source CSV; re-run

Expected Output: Cleaned CSV with no duplicate rows.

Time Estimate: 2-3 minutes per month.

Workflow 3: Vendor Spend Review

Goal: Find spend creep — vendors whose monthly total grew significantly without you noticing.

Steps:

  1. Run categorizer for the last 3-6 months separately
  2. Compare per-vendor totals month-over-month
  3. Flag any vendor where total grew > 25% with no obvious business reason
  4. Either renegotiate, switch, or accept; revisit quarterly

Expected Output: Vendor-spend trend list with flagged growth.

Time Estimate: 15 minutes per quarter.


Tools

invoice_categorizer.py

Reads a CSV of receipts/invoices and:

  • Categorizes each row by vendor + description against rules in assets/category_rules.json (extensible)
  • Aggregates totals per category and per vendor
  • Detects likely duplicates (same vendor + amount within 3 days)
  • Flags uncategorized items for manual review
# Human-readable summary
python scripts/invoice_categorizer.py receipts.csv

# JSON for programmatic use
python scripts/invoice_categorizer.py receipts.csv --json

# Use a custom rules file
python scripts/invoice_categorizer.py receipts.csv --rules my-rules.json

Expected CSV columns: date, vendor, description, amount. Amounts are treated as one currency. A currency column is allowed but ignored: it is not read, shown in the output, or used to convert. Date formats accepted: YYYY-MM-DD, MM/DD/YYYY, DD/MM/YYYY


Reference Guides

  • references/expense_categorization_guide.md — Standard expense categories, common tax buckets (US Schedule C, UK self-employment, generic), how to map vendors to categories

Templates

  • assets/category_rules.json — Default rules; extend with your recurring vendors
  • assets/monthly_summary_template.md — Format for handing the monthly summary to an accountant

Best Practices

  • Categorize monthly, not annually. Annual catch-up bookkeeping always misses receipts and produces guess-categorization.
  • Grow the rules file over time. First month: 30% uncategorized. Sixth month: < 5%. The compounding return on rule-writing is high.
  • Keep evidence. Categorization is bookkeeping; receipts (PDFs, photos) are tax evidence. Store separately from this script's output.
  • Don't trust auto-categorization for tax filing. Use it for prep; have a human (you or your accountant) sign off before filing.
  • Currency consistency. The script sums every amount as if it were one currency. If you have multi-currency receipts, convert them at the month-end FX rate before the run; it does not handle FX.

Scope & Limitations

In Scope:

  • Categorization of a receipts CSV by vendor and description against rules in assets/category_rules.json or a custom --rules file (invoice_categorizer.py).
  • Totals per category and per vendor, and an uncategorized list for manual review.
  • Duplicate suspects, defined as the same vendor and amount within 3 days.
  • Expense categories mapped to tax buckets (US Schedule C by default, UK self-employment and generic) in references/expense_categorization_guide.md, plus a monthly summary template.

Out of Scope:

  • Reading bank feeds, accounting software, or receipt PDFs and photos. Input is an exported CSV.
  • Currency conversion. Multi-currency receipts are converted before the run.
  • Tax filing, deductibility decisions, and VAT or sales-tax returns.
  • Budgeting, forecasting and variance analysis (see finance/financial-analyst/), and SaaS seat and renewal savings (see business-operations/procurement-optimizer/).

Important Caveats:

  • The output is not tax, accounting or legal advice. Bucket assignments need sign-off from the user or a licensed accountant before filing.
  • Categorization is rule-based matching. New vendors land in the uncategorized bucket until rules are added.
  • Duplicate detection is a heuristic. Flagged pairs can be legitimate repeat charges, and duplicates more than 3 days apart are not flagged.
  • Tax line numbers and rules change by year and jurisdiction, so the reference mapping can go stale.

Integration Points

  • Pairs with finance/ skills for budgeting and forecasting
  • Feeds into c-level-advisor/cfo-advisor cash-flow workflows
  • Used by solo-founder persona for monthly close

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

This skill should be used when the user asks to "check accessibility", "audit WCAG compliance", "scan HTML for a11y issues", "check color contrast", or "find accessibility violations in web pages".

The English summary is being prepared. Showing the original description.

borghei/Claude-Skills969Updated Oct 23, 2026

Design and run statistically rigorous A/B tests and experiments. Use when planning experiments, calculating sample sizes, designing test variants, selecting metrics, analyzing results, or when someone says "let's test that."

The English summary is being prepared. Showing the original description.

borghei/Claude-Skills969Updated Oct 23, 2026

Design and analyze A/B tests: sample size, test duration, and statistical significance for conversion experiments. Use when setting up an A/B test, calculating sample size, designing an experiment, or analyzing results.

The English summary is being prepared. Showing the original description.

borghei/Claude-Skills969Updated Oct 23, 2026

Sales execution across pipeline, discovery, demos, negotiation, and closing. Use when qualifying opportunities, running MEDDIC discovery, building account plans, handling objections, structuring proposals, or forecasting pipeline.

The English summary is being prepared. Showing the original description.

borghei/Claude-Skills969Updated Oct 23, 2026

Design ad creative across Google, Meta, LinkedIn, Twitter/X, and TikTok with platform format specs, headline formulas, and A/B testing. Use when writing ad copy, generating headline variations, creating ad sets, or validating creative.

The English summary is being prepared. Showing the original description.

borghei/Claude-Skills969Updated Oct 23, 2026

aeo

Free

Answer Engine Optimization (AEO): optimize content to be cited by LLMs (ChatGPT, Claude, Perplexity, Gemini) in their answers. Use when designing content for LLM citation, auditing citability, or structuring Q&A schema.

The English summary is being prepared. Showing the original description.

borghei/Claude-Skills969Updated Oct 23, 2026

See all skills by borghei

Report a problem with this skill