# Invovate — sample outputs

Public demo assets generated by the live Invovate invoice API
(`POST https://invovate.com/api/generate-invoice`). Free to use for evaluation,
documentation, and listings.

## Sample invoices (PDF)

| File | Language | Tax | Template |
|------|----------|-----|----------|
| `invoice-en-vat.pdf` | English | VAT 20% (GBP) | classic |
| `invoice-nl-btw.pdf` | Dutch | BTW 21% (EUR) | modern |
| `invoice-de-vat.pdf` | German | USt 19% (EUR) | navy |
| `invoice-ar-rtl.pdf` | Arabic (right-to-left) | VAT 15% (SAR) | bold |
| `invoice-ja-jct.pdf` | Japanese (消費税) | JCT 10% (JPY) | minimal |
| `invoice-hi-gst.pdf` | Hindi | GST 18% (INR) | classic |

All non-Latin invoices embed proper Noto Sans fonts (Arabic, Japanese,
Devanagari) and render mixed Latin text (emails, tax IDs) cleanly.

## Other formats

- `invoice-sample.ubl.xml` — UBL 2.1 XML export (`"output": "ubl"`).
  *Interoperability/archival only — not a regulated e-invoice transmission.*
- `sample-request.json` — a representative request body for `POST /api/generate-invoice`.
- `webhook-payload-sample.json` — the exact JSON body delivered for an
  `invoice.generated` webhook event.

## Webhook delivery

Webhook POSTs carry these headers:

```
Content-Type: application/json
User-Agent: Invovate-Webhooks/1.0 (+https://invovate.com/api)
X-Invovate-Event: invoice.generated
X-Invovate-Signature: sha256=<hex HMAC-SHA256 of the raw body, keyed with your webhook secret>
```

Verify by recomputing `HMAC-SHA256(secret, rawBody)` and comparing to the
`X-Invovate-Signature` hex (constant-time). Events: `invoice.generated`,
`batch.generated`.

## Regenerate

```bash
curl -X POST https://invovate.com/api/generate-invoice \
  -H "Authorization: Bearer inv_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d @sample-request.json --output invoice.pdf
```

Docs: https://invovate.com/api · For AI agents: https://invovate.com/invoice-api-for-ai-agents
