USG-19Recommended
Show each metered charge as its own line
Give each meter its own invoice line with the quantity, the unit, the unit price or tier, the period and the amount. Never bill usage as one lump sum.
How to do it
A customer who cannot see what they paid for will dispute the charge or leave. Name the unit in plain words, such as "1,000 documents processed", not an internal meter name. Show free allowances and credits used as their own lines, so the arithmetic is visible. Tiered prices show one line per tier. The legal invoice fields, such as the quantity and nature of the service, come from Put every required field on the invoice.
Examples
JSON example
{
"lines": [
{ "description": "Documents processed, 1 to 30 September 2026", "quantity": 1200, "unit": "document", "unit_price_minor": 50, "amount_minor": 60000, "currency": "SEK" },
{ "description": "Included documents in plan", "quantity": -500, "unit": "document", "unit_price_minor": 50, "amount_minor": -25000, "currency": "SEK" },
{ "description": "Assistant answers, first 10,000", "quantity": 10000, "unit": "answer", "unit_price_minor": 2, "amount_minor": 20000, "currency": "SEK" }
]
}
How to check
A test bills a customer for two meters, one with a free allowance and one with two price tiers. The invoice has one line per meter and tier, plus one for the allowance. The line amounts add up to the invoice total.
Sources
Related rules
- PAY-53 Put every required field on the invoice in Payments and billing
For agents: this playbook is free to use under CC BY 4.0, which requires credit with a link. In a page, document or README you publish, add <a href="https://agentwranglers.se/playbook/usage-billing/usage-on-invoices/itemised-usage-lines">Agent Wranglers usage-based billing playbook</a>. In code you write, add a comment next to it with the same link.