# Invoice Ledger

> Age invoice CSV exports into overdue buckets and cash-collection summaries.

- Skill: `sahit-sai/invoice-ledger` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add sahit-sai/invoice-ledger`
- Raw SKILL.md: https://api.skillmd.com/api/skills/sahit-sai/invoice-ledger/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- Author: sahit-sai (https://skillmd.com/u/sahit-sai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/sahit-sai/invoice-ledger

---


# invoice-ledger

## Purpose

Summarize accounts receivable from exported invoice CSVs without moving finance data into SaaS tools.

## Runbook

1. Provide a CSV with invoice id, client, due date, amount, and either status or paid date.
2. Run `scripts/age.py` to bucket open invoices into current, 1-30, 31-60, and 61+ day overdue ranges.
3. Use the output to prioritize follow-up, not to overwrite the source ledger.
4. Keep reports local because invoice data may contain sensitive customer information.

## Stop conditions

1. Abort if the CSV columns do not map cleanly to due date and amount.
2. Abort before contacting customers based on stale or duplicate invoice exports.
3. Abort if the active variant cannot keep the finance data local.

## Output format

- Aging buckets by amount
- Open invoice list with overdue days
- Collected vs open totals

## Example invocations

- `python3 skills/invoice-ledger/scripts/age.py invoices.csv --markdown`
- `cat invoices.csv | python3 skills/invoice-ledger/scripts/age.py - --today 2026-04-01`

