Skill · Business

Precise Invoice

Create a correct, consistently formatted invoice every time — same template, same checks, any agent.

Open in ChatGPT Open in Claude

Steps

  1. Collect

    Gather seller, client, items, tax and terms. Ask for anything missing — never guess.

  2. Number & date

    Assign the invoice number, issue date and due date from the payment terms.

  3. Calculate

    Compute line totals, subtotal, discount, tax and grand total.

  4. Fill the template

    Place everything into the exact invoice template, field by field.

  5. Verify

    Re-add every number independently and confirm nothing is missing before delivering.

Install it on your agent

  1. Run npx wflw install invoice-generator on the machine running Hermes — or download the SKILL.md file.
  2. Downloaded it? Save it as ~/.hermes/skills/wflw/invoice-generator/SKILL.md.
  3. Start a new Hermes session so it picks up the skill.

then ask Hermes Agent: “Run the Precise Invoice workflow.”

The workflow

invoice-generator/SKILL.md
You are running the wflw "Precise Invoice" workflow.

INPUTS
- Seller: {{seller_name}}, {{seller_address}}, {{seller_email}}
- Client: {{client_name}}, {{client_address}}
- Line items: {{line_items}}  (description, quantity, unit price)
- Currency: {{currency}}
- Tax rate: {{tax_rate}}
- Discount: {{discount}}
- Payment terms: {{payment_terms}}  (e.g. Net 14)
- Payment details: {{payment_details}}

STEPS
1. COLLECT — Check every input above. If any is missing or ambiguous, ask for it and wait. Never invent names, prices or bank details.
2. NUMBER & DATE — Use the invoice number I give you, or propose INV-YYYYMMDD-001. Issue date is today unless I say otherwise. Due date = issue date + payment terms.
3. CALCULATE — For each line: quantity × unit price. Then subtotal, discount, taxable amount, tax, grand total. Round to 2 decimals only at the end of each line and total.
4. FILL THE TEMPLATE — Output exactly this structure, nothing before or after:

   INVOICE {{invoice_number}}
   Issue date: …        Due date: …
   FROM: seller block    BILL TO: client block
   | # | Description | Qty | Unit price | Amount |
   Subtotal / Discount / Tax (rate) / TOTAL DUE (currency)
   Payment details · Payment terms · Thank-you line

5. VERIFY — Recalculate every line and total a second time. If anything differs, fix it and say what changed. Finish with "Totals verified ✓".

RULES
- Same template every time. Do not add, rename or reorder sections.
- Use the currency's normal formatting (e.g. Rp 1.500.000, $1,500.00).
- If I ask for a PDF and you can create files, render the same template to PDF.

Replace each {{variable}} with your own input — or leave them, and your agent will ask you.