Generate professional invoices for clients using standardized templates with automatic invoice numbering and client management. This skill should be used when creating invoices for American Laboratory Trading, Empirico, Versa Computing, or other clients with tracked invoice histories.
Generate professional HTML invoices using pre-configured templates for hourly and subscription billing. Track client information, automatically increment invoice numbers, and maintain invoice history across all clients.
Use this skill when:
When the user requests an invoice for a client by name:
Load client data from clients.json to retrieve:
For hourly invoices:
Date - Project - Hours - DescriptionDate - Project - Hours - Description with separate Project and Description columnsFor subscription invoices:
Increment invoice number:
{invoice_prefix}-2025-{new_number:03d}Calculate dates:
Load appropriate template:
assets/hourly-invoice-template.htmlassets/subscription-invoice-template.htmlReplace placeholders with client data:
{{INVOICE_NUMBER}}, {{INVOICE_DATE}}, {{DUE_DATE}}{{CLIENT_NAME}}, {{CLIENT_ATTENTION}}, {{CLIENT_ADDRESS_LINE1}}, {{CLIENT_CITY_STATE_ZIP}}{{PAYMENT_TERMS}} (e.g., "30" for Net 30){{PROJECT_REFERENCE}} or {{PO_NUMBER}} as applicable{{TOTAL_HOURS}}, {{HOURLY_RATE}}, {{SUBTOTAL}}, {{TOTAL_AMOUNT}}{{SUBSCRIPTION_NAME}}, {{BILLING_MONTH}}, {{AMOUNT}}Special handling for Versa Computing:
Save invoice:
Invoice-{invoice_number}-{short_name}-{month}-2025.html/Users/arlenagreer/Desktop/)Update clients.json:
To add a new client to the system:
Request necessary information:
Add new client object to clients.json following the existing structure
Confirm client has been added successfully
To view or list clients:
clients.json and display client detailsClient information is stored in clients.json in the skill folder. Each client entry includes:
Required fields (all clients):
name: Full client nameshort_name: Abbreviated name for filenamesinvoice_prefix: 3-letter invoice number prefixinvoice_type: "hourly" or "subscription"company_name: Company name for invoiceattention: Contact attention lineaddress_line1: Street addresscity_state_zip: City, state, and ZIPlast_invoice_number: Last invoice number sent (integer)last_invoice_date: Date of last invoice (YYYY-MM-DD)payment_terms_days: Payment terms in days (e.g., 30 for Net 30)Hourly invoice fields:
hourly_rate: Billing rate per hourproject_reference: Default project namerequires_project_column: (optional) true if work log needs separate project columnSubscription invoice fields:
subscription_name: Name of subscription servicesubscription_amount: Monthly subscription amountLocated at: assets/hourly-invoice-template.html
Features:
Placeholders to replace:
{{INVOICE_NUMBER}}, {{INVOICE_DATE}}, {{DUE_DATE}}{{CLIENT_NAME}}, {{CLIENT_ATTENTION}}, {{CLIENT_ADDRESS_LINE1}}, {{CLIENT_CITY_STATE_ZIP}}{{PAYMENT_TERMS}}, {{PROJECT_REFERENCE}}, {{PO_NUMBER}}{{TOTAL_HOURS}}, {{HOURLY_RATE}}, {{SUBTOTAL}}, {{TOTAL_AMOUNT}}Located at: assets/subscription-invoice-template.html
Features:
Placeholders to replace:
{{INVOICE_NUMBER}}, {{INVOICE_DATE}}, {{DUE_DATE}}{{CLIENT_NAME}}, {{CLIENT_ATTENTION}}, {{CLIENT_ADDRESS_LINE1}}, {{CLIENT_CITY_STATE_ZIP}}{{PAYMENT_TERMS}}, {{SUBSCRIPTION_NAME}}, {{PO_NUMBER}}{{BILLING_MONTH}}, {{AMOUNT}}User: "Generate an invoice for Versa Computing"
Process:
clients.json and locate Versa Computing client dataassets/hourly-invoice-template.html/Users/arlenagreer/Desktop/Invoice-VER-2025-012-VersaComputing-Nov-2025.htmlclients.json: set last_invoice_number to 12, last_invoice_date to today<env> context (Today's date)/Users/arlenagreer/Desktop/clients.json after successful invoice generation