Teach agents to blueprint invoices before layout: legally and operationally complete party and reference data, a reconciled line-item and tax math story, and visual hierarchy that surfaces what is owed, by when, and how to pay—without inventing banking, tax IDs, or amounts the user did not supply.
This skill produces invoices as
packages. Follow the
k2f skill for authoring: unpack or init a workspace, edit the semantic tree, run pack/verify, then export. K2F keeps agents on
meaning (parties, line roles, totals, payment block)—not pixel coordinates—while the engine compiles layout, typography, and theme into consistent output across PDF and other formats.
Before you build, install the core skill:
npx skills add suzheng/k2f --skill k2f
.
Single blueprint for semantic content and aesthetic intent. Use labeled blocks the k2f skill can map to regions later.
-
Invoice type & jurisdiction lock — Standard bill, pro forma, deposit/partial, or credit-style adjustment. Note currency, locale (date and number formatting), and whether tax is inclusive or exclusive. Omit sections the type does not need (e.g., skip “amount due” hero on non-collecting pro forma).
-
Party & identity block — Seller: legal name, address, contact, logo intent, tax/VAT ID only if user provided. Buyer: bill-to name and address; optional ship-to or attention line. Never fabricate registration numbers or bank details.
-
Reference metadata — Invoice number, issue date, due date (or explicit “Due on receipt / Net N”). PO, project, contract, or customer reference when supplied. One currency code for the whole document; flag missing due date before layout.
-
Line-item architecture — Table-first, not prose paragraphs. Per row: clear description, quantity, unit, unit price, line amount. Group optional sections (services vs expenses, milestones) only when the user’s data already splits that way. Discounts as explicit negative lines or percent note tied to a subtotal rule—never hidden in copy.
-
Totals story (write the math in the doc) — Subtotal → each tax/discount line with rate label →
total → optional amount paid / balance due. State rounding rule (per line vs invoice-level) and reconcile: line sums, tax base, and total must match within one cent of stated rule. If inputs conflict, mark
instead of guessing.
-
Payment & compliance footer — Payment terms in plain language; methods the user named (wire, ACH, card link, check). Bank/wallet fields verbatim from user; pay-link call-to-action when a hosted URL exists. Late-fee or remittance notes only if provided. Keep legal boilerplate minimal unless user supplied text.
-
Design intent — Document tone, hierarchy, density, palette for the engine:
- Tone: calm, trustworthy B2B; no marketing fluff on a collection document.
- Hierarchy: document title + invoice number scannable in header; amount due and due date strongest emphasis in totals/payment zone; line table secondary; footer tertiary.
- Density: generous table row rhythm; right-align money columns; tabular numerals for all amounts; avoid more than one short notes block.
- Palette: restrained neutrals with one accent on total/due; WCAG AA; logo space without decorative clutter.