From personal-finance
Use when the user wants to generate QR codes for unpaid invoices, create payment QR codes to scan with a banking app, or produce EPC QR codes for outstanding invoices.
npx claudepluginhub karimstekelenburg/k3m-marketplace --plugin personal-financeThis skill is limited to using the following tools:
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Analyzes BMad project state from catalog CSV, configs, artifacts, and query to recommend next skills or answer questions. Useful for help requests, 'what next', or starting BMad.
Parse arguments from $ARGUMENTS. Determine the data directory: use --data-dir if provided, otherwise default to ~/Documents/finance-data/.
Determine the generation scope:
If --invoice-id ID is given:
uv run ${CLAUDE_PLUGIN_ROOT}/scripts/generate_qr.py --invoice-id ID [--data-dir PATH]
If --all-unpaid is given (or no scope flag is provided):
uv run ${CLAUDE_PLUGIN_ROOT}/scripts/generate_qr.py --all-unpaid [--data-dir PATH]
After the script completes, report how many QR codes were generated and where they were saved.
Display a summary table for all processed invoices:
| Invoice ID | Vendor | Amount | Due Date | IBAN | QR File Path |
|---|
Compatibility note: Inform the user that the generated EPC QR codes are compatible with ING, ABN AMRO, Bunq, and any other SEPA-compliant banking app that supports the EPC QR standard. Scanning the code in the banking app pre-fills the beneficiary IBAN, amount, and payment reference.
Missing IBAN warning: If any invoice has no IBAN recorded in the database, warn the user explicitly for each affected invoice:
Warning: Invoice
<ID>(Vendor:<vendor>, Amount:<amount>) has no IBAN — QR code cannot be generated. This invoice must be paid manually.
List all no-IBAN invoices together at the end of the output so the user can act on them.
If the script exits with a non-zero code, show the raw error and stop.