Agent
Manage invoices using the local Simple Invoice app (FastAPI + SQLite). Use this skill whenever the user asks to create invoices, check status, find unpaid invoices, mark invoices as paid, or reconcile payment references against open invoices. Always use API endpoints and avoid direct database edits.From its SKILL.md
npx -y skills add ChialiT/Simple-Invoice --skill AgentAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.3 KB, 803 tokens by cl100k_base, as published. Nobody here has run it
Simple Invoice Skill Template
This file is intentionally sanitized for open-source use.
Before using in production, update all REQUIRED_UPDATE values.
Required Setup
REQUIRED_UPDATE::APP_BASE_URL(example:http://127.0.0.1:8080)REQUIRED_UPDATE::PROJECT_ROOT(example:/path/to/Simple-Invoice)REQUIRED_UPDATE::PRIMARY_OPERATOR_NAME(example:Finance Admin)REQUIRED_UPDATE::NOTIFICATION_CHANNEL(example:Slack #financeorTelegram)
If these are unknown at runtime, agents should ask the user once and cache locally.
App Context
- Entry point:
app.py - Business logic:
invoice_service.py - Templates:
templates/ - Database:
invoices.db(SQLite) - PDFs:
pdfs/INV-XXXX.pdf - Assets:
Asset/full-logo.png,Asset/wise-quick-pay-qr-code.png(or env-configured paths)
API Reference
Base URL: REQUIRED_UPDATE::APP_BASE_URL
List invoices
GET /api/invoices
GET /api/invoices?status=Sent
Get a single invoice (with totals/tax breakdown)
GET /api/invoices/{id}
Mark invoice as paid
PATCH /api/invoices/{id}/paid
Content-Type: application/json
{"wise_ref": "TRANSFER-XXXX"} # optional
List contacts
GET /api/contacts
Status summary
GET /api/summary
Tax Types
| Key | Label |
|---|---|
zero_rated | Zero-rated (0%) |
gst | GST (5%) |
exempt | Exempt (0%) |
out_of_scope | Out of Scope (0%) |
gst_qst_qc | GST/QST QC - 9.975 (14.975%) |
qst_qc | QST QC - 9.975 (9.975%) |
Standard Agent Tasks
Check unpaid invoices
- Call
GET /api/invoices?status=Sent - Call
GET /api/invoices?status=Overdue - Report: invoice id, client, due date, total, currency
Reconcile payment reference
- Fetch open invoices (
Sent) - Compare incoming payment amount/reference with invoice
total - If matched, call
PATCH /api/invoices/{id}/paidwithwise_ref - Send summary to
REQUIRED_UPDATE::NOTIFICATION_CHANNEL
Verify app health
curl REQUIRED_UPDATE::APP_BASE_URL/api/summary
If unavailable, notify REQUIRED_UPDATE::PRIMARY_OPERATOR_NAME and suggest:
cd REQUIRED_UPDATE::PROJECT_ROOT
source venv/bin/activate
python app.py
Compute outstanding total
- Fetch
GET /api/invoices?status=Sent - Sum
totalby currency (do not mix currencies) - Return grouped totals (e.g., USD, CAD, EUR)
Rules
- Never write directly to
invoices.dbfor normal operations. - Use API endpoints for all invoice state changes.
- Treat cross-currency or partial-payment matches as manual review.
- Keep secrets/payment/account details in
.env, not in this file. - Do not hardcode private client names, bank numbers, or personal paths.
Optional Local Extensions
You can add organization-specific sections below, but keep them private:
- Known clients mapping
- Auto-match tolerance policy
- Notification templates
- Bookkeeping/export hooks
If you publish this repo, remove private sections before commit.
What ships with it: 1 file
3.6 KB alongside SKILL.md
- context.md3.6 KB