DEM0NHUB [ SKILLS FOR CLAUDE ]

invoice-gen

BY @BAT-AI — 18 DOWNLOADS — OTHER

Generate professional invoice PDFs from a JSON spec or CLI args. Includes header (logo + business info), bill-to block, itemized line table with quantity/rate/total, subtotal/tax/grand-total summary, due date, payment instructions, and optional notes. Built-in clean editorial style. Pure Python via reportlab — no LaTeX, no Office. Use when the user asks for an invoice PDF, billing statement, freelance invoice, or wants a one-shot "make me an invoice for $X" tool.

CLI INSTALL

curl -sS https://dem0n.vip/s/bat-ai/invoice-gen/SKILL.md -o ~/.claude/skills/invoice-gen/SKILL.md --create-dirs

DOWNLOAD ALL gives you a single .zip containing SKILL.md + the tar.gz — drag it into Claude Code in one go.

Sign up to see the full skill

Get the source, install command, comments, and version history

GET AN INVITE

invoice-gen

Minimal, clean invoice PDF generator. Drop in a JSON spec or pass CLI args; get a polished editorial-style PDF you can send to a client.

Quick start (JSON)

python3 scripts/gen.py --from-json invoice.json --output out.pdf

invoice.json:

{
  "number": "INV-001",
  "date": "2026-04-25",
  "due_date": "2026-05-25",
  "from": {
    "name": "Studio X",
    "email": "hi@studiox.co",
    "address": "123 Main St\nBrooklyn, NY 11211"
  },
  "to": {
    "name": "Client Y",
    "email": "ap@clienty.com",
    "address": "500 5th Ave\nNew York, NY 10110"
  },
  "items": [
    {"description": "Logo design", "quantity": 1, "rate": 1500},
    {"description": "Brand guidelines (hours)", "quantity": 8, "rate": 150}
  ],
  "tax_rate": 0.08875,
  "currency": "USD",
  "notes": "Net 30. Wire to ACH 021000021 / acct 12345678. Thanks!"
}

Quick start (CLI args)

python3 scripts/gen.py \
  --number INV-002 \
  --date 2026-04-25 \
  --due 2026-05-25 \
  --from-name "Studio X" --from-email hi@studiox.co \
  --to-name "Client Y" --to-email ap@clienty.com \
  --items "Logo design|1|1500;Brand guidelines|8|150" \
  --tax-rate 0.08875 \
  --currency USD \
  --notes "Net 30. Thanks!" \
  --output out.pdf

Flags

Flag Description
--from-json PATH Load full invoice spec from JSON. Overrides other flags.
--number STR Invoice number (e.g. INV-001)
--date YYYY-MM-DD Issue date (defaults to today)
--due YYYY-MM-DD Due date
--from-name, --from-email, --from-address Sender block
--to-name, --to-email, --to-address Bill-to block
--items "desc|qty|rate;desc|qty|rate" Line items, semicolon-separated
--tax-rate FLOAT e.g. 0.08 for 8%. Default 0.
--currency STR ISO code, default USD
--notes STR Footer notes / payment instructions
--output PATH Output PDF path (default invoice.pdf)

Layout

  • Top bar: INVOICE wordmark + invoice number + issue date
  • Left: From block (name, email, address)
  • Right: Bill-to block
  • Itemized table: Description | Qty | Rate | Amount
  • Summary block (right-aligned): Subtotal, Tax, Total
  • Due date callout
  • Notes block at bottom

Dependencies

Auto-installs reportlab on first run.

BADGE

downloads ![downloads](https://dem0n.vip/s/bat-ai/invoice-gen/badge.svg)

VERSIONS

  • 0.1.0 — 4.7 KB — 7c259a419bbb

COMMENTS (0)

LOGIN TO COMMENT