Create, manage, and track professional invoices
Create professional PDF invoices, track payments, and manage client billing.
create <client-id> - Create a new invoice with line items
--desc "Description, qty, price" - Add line item (can use multiple times)--tax <rate> - Tax rate percentage--due <days> - Due in N days--notes <text> - Invoice notes--terms <text> - Payment termsinvoices create 1 --desc "Consulting, 10, 150" --desc "Design, 5, 200" --tax 10list [status] - List invoices with optional filter
invoices list sentget <id> - Show invoice details
invoices get 1get-number <number> - Get invoice by invoice number
invoices get-number INV-0001send <id> - Mark invoice as sent
invoices send 1pay <invoice-id> <amount> - Record a payment
--method <method> - Payment method--notes <text> - Payment notes--date <YYYY-MM-DD> - Payment dateinvoices pay 1 500 --method "Bank Transfer"pdf <id> - Generate PDF for invoice
invoices pdf 1update <id> - Update invoice
--status, --notes, --termsinvoices update 1 --status sentitems-update <invoice-id> - Update line items
--desc "Description, qty, price" (replaces all items)invoices items-update 1 --desc "New Item 1, 2, 100"cancel <id> - Cancel an invoice
invoices cancel 1delete <id> - Delete an invoice
invoices delete 1export [status] - Export invoices to CSV
invoices export paidsummary - Generate invoice summary report
invoices summaryoverdue - List overdue invoices
invoices overdueclient-list - List all clients
invoices client-listclient-add <name> - Add a new client
--email, --address, --phone, --tax-idinvoices client-add "Acme Corp" --email [email protected]client-get <id> - Show client details
invoices client-get 1client-update <id> - Update client
--name, --email, --address, --phone, --tax-idinvoices client-update 1 --email [email protected]client-delete <id> - Delete client
invoices client-delete 1client-invoices <id> - List invoices for a client
invoices client-invoices 1config - Show business configuration
invoices configconfig-set <key> <value> - Update configuration
name, email, phone, address, taxId, defaultTaxRate, defaultTerms, defaultDueDays, invoicePrefixinvoices config-set name "My Company"invoices config-set defaultTaxRate 10Configure your business details:
npm run cli -- config-set name "My Company"
npm run cli -- config-set email "[email protected]"
npm run cli -- config-set defaultTaxRate 10
Add clients:
npm run cli -- client-add "Acme Corp" --email [email protected]
Create your first invoice:
npm run cli -- create 1 --desc "Consulting Services, 10, 150" --desc "Design Work, 5, 200"
SQLite database at ~/.openclaw/skills/invoices/invoices.db:
config - Business settings (name, tax rate, terms, etc.)clients - Client informationinvoices - Invoice records with totals and statusline_items - Individual line items per invoicepayments - Payment records per invoicePDF templates generated at ~/.openclaw/skills/invoices/pdfs/:
draft → sent → paid
↘ overdue (auto-detected)
↘ cancelled (manual)
Auto-detection: Invoices automatically become overdue when past their due date while in "sent" status.