← Templates

Invoice template

Free PDF invoice template (JSON)

A ready-made invoice document model. Copy the JSON, or hand it to your AI to fill with your data and wire kove into your app.

How to use it

Ask your AI

Tell your coding agent "add invoice PDFs to my app" and paste this model. It wires the kove API in for you.

From your app

Send the model to the hosted API with your key.

curl -X POST https://api.kove.dev/v1/documents \
  -H "Authorization: Bearer $KOVE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"document": { ... }}' > invoice.pdf
Or locally, free

Save the model as invoice.json and render it on your machine.

npx kove render invoice.json -o invoice.pdf

The model

This is the whole document. Copy it, or hand it to your AI to adapt.

{
  "page": {
    "size": "A4",
    "margin": "18mm"
  },
  "header": {
    "repeat": true,
    "text": "Acme Studio Inc · EIN 12-3456789"
  },
  "footer": {
    "repeat": true,
    "pageNumbers": "Page {page} of {pages}"
  },
  "body": [
    {
      "type": "heading",
      "text": "Invoice F-2026-001"
    },
    {
      "type": "fields",
      "items": [
        {
          "label": "Customer",
          "value": "Globex Corp"
        },
        {
          "label": "Date",
          "value": "2026-06-28"
        },
        {
          "label": "Customer ID",
          "value": "GBX-2291"
        },
        {
          "label": "Due",
          "value": "2026-07-28"
        }
      ]
    },
    {
      "type": "divider"
    },
    {
      "type": "table",
      "repeatHeader": true,
      "keepRowTogether": true,
      "columns": [
        {
          "key": "ref",
          "label": "Ref"
        },
        {
          "key": "desc",
          "label": "Description"
        },
        {
          "key": "qty",
          "label": "Qty",
          "align": "right"
        },
        {
          "key": "price",
          "label": "Price",
          "align": "right"
        },
        {
          "key": "total",
          "label": "Total",
          "align": "right"
        }
      ],
      "rows": [
        {
          "ref": "SRV-01",
          "desc": "Brand identity design",
          "qty": "1",
          "price": "$1,200.00",
          "total": "$1,200.00"
        },
        {
          "ref": "SRV-02",
          "desc": "Website design and build",
          "qty": "1",
          "price": "$2,400.00",
          "total": "$2,400.00"
        },
        {
          "ref": "SRV-03",
          "desc": "Product photography session",
          "qty": "2",
          "price": "$350.00",
          "total": "$700.00"
        },
        {
          "ref": "SRV-04",
          "desc": "Social media management (monthly)",
          "qty": "3",
          "price": "$450.00",
          "total": "$1,350.00"
        }
      ]
    },
    {
      "type": "totals",
      "keepWithPrevious": true,
      "lines": [
        {
          "label": "Subtotal",
          "value": "$5,650.00"
        },
        {
          "label": "Tax 8%",
          "value": "$452.00"
        },
        {
          "label": "Total",
          "value": "$6,102.00",
          "emphasis": true
        }
      ]
    },
    {
      "type": "spacer",
      "size": "10mm"
    },
    {
      "type": "section",
      "keepTogether": true,
      "title": "Terms",
      "body": [
        {
          "type": "text",
          "text": "Payment is due within 30 days of the invoice date, by transfer to the account shown above."
        },
        {
          "type": "text",
          "text": "Late payments accrue 1% interest per month on the outstanding balance past the due date."
        }
      ]
    },
    {
      "type": "signature",
      "name": "Acme Studio Inc",
      "label": "Approved · signature and stamp"
    }
  ]
}
Get startedMore templates →