Invoicing for your product,
as an API
Not an XML converter. A billing back end: sequential numbering, an immutable archive with a checksum, corrections and credit notes, and German and Austrian e-invoicing that comes with it. Billing for your own customers works too, one workspace each.
What you get that a converter has no place for
- Numbering — named number ranges per document type, with reset periods. The number is assigned when the document is finalized, never before.
- An archive that holds — the finalized PDF is stored and hashed with SHA-512. Later renders never replace it; the archived file is the document.
- The rest of the paperwork — quote, order, purchase order, delivery note, invoice, partial invoice, correction and credit note, each linked to what it came from.
- A dry run — every document type has a preview endpoint that runs the finalizing code in memory and writes nothing.
- EN 16931 output — ZUGFeRD 2.x, Factur-X, XRechnung in CII and UBL.
One key, or one workspace per client
Building one product? Create an account, generate a key, start. Everything above works from the first request.
Billing on behalf of your own customers? Then each of them needs a separate workspace with its own company details, templates and number ranges, and you need one key that reaches all of them. Write to us and we will set it up: a test workspace to build against, provisioning for your clients, and an invoice instead of a card payment. support@timelane.app
The dry run, in one request
The preview endpoint shares its code path with finalizing, so what you see is what you would get. It assigns no number, stores nothing, and marks the result as a preview.
POST /api/v1/invoices/preview
Authorization: Bearer qsp_…
{
"customerId": 42,
"items": [
{ "description": "Consulting, June", "quantity": 12, "unitPrice": 140.00 }
]
}
The full list of endpoints, fields and error shapes is in the API reference.
Try the output before you write any code
The public validator checks any ZUGFeRD, Factur-X or XRechnung file against the official EN 16931 rules. No sign-up, and the file is held in memory only.
Pricing
API access comes with the Pro plan. Create your account, upgrade, and generate a key in the settings; see the plans for current prices.
Start with a preview request
Create an account, generate a key, and call the preview endpoint. Nothing is written until you finalize a document.