Invoices and credit notes
Render the document from the same template and data your billing screen uses, at the moment you issue it.
Send the invoice HTML your application renders and get back the PDF you send the customer. Correct page numbers, the paper size their country expects, a whole billing run in one submission, and the archived copy in storage you own.
Create a free accountRead the API docs
Hosting, August720.00
Additional sites45.00
Support retainer180.00
VAT at 20%189.00
Total due1,134.00
The billing run
Rendering a single invoice is a solved problem in any language. What breaks is the rest of it: four thousand documents on the first of the month, a layout that paginates differently once a customer has thirty line items, an archive somebody will ask you to produce in five years, and a download link that does not stream every byte through your application.
Ironfang Render takes the HTML you already render and handles the run around it. Submit the cycle as a batch, take a webhook per document, deliver each one into your own bucket, and let the customer download it from there.
POST /render/v1/pdf
Authorization: Bearer if_live_...
Content-Type: application/json
{
"html": "<html>...invoice INV-1042...</html>",
"paper_format": "a4",
"print_background": true,
"margin": { "top": 0.6, "bottom": 0.8 },
"header_html": "<span></span>",
"footer_html": "<p style='font-size:9px'>Page <span class='pageNumber'></span></p>"
}
200 OK
Content-Type: application/pdfCapabilities
Pagination, paper size, volume, custody and delivery: the five things that turn one document into a billing process.
The markup your billing screen renders is the markup that prints. No second layout in a drawing API, and no way for the on-screen invoice and the attached one to disagree. Or store it once as a document template and send only the data, checked against its schema and printed from a published, numbered revision.
Footer templates carry Chrome's pageNumber and totalPages, so a five-page invoice numbers itself rather than being counted by your code before it knows how it paginates.
Six paper sizes with per-side margins and a scale factor, so the same template serves a UK customer on A4 and a US one on Letter without a branch in your code.
Submit the month as batches and asynchronous jobs instead of holding a connection open for each document, with a webhook when each one is ready.
Deliver straight to your own S3-compatible storage, so the copy you must keep for seven years sits in a bucket under your retention and access rules.
Deliver to your own bucket and hand out links under your own rules, or pass on a finished job's signed result link, valid for 15 minutes, without streaming the bytes or exposing a key.
Use cases
Anything your application already renders on screen and somebody expects to arrive as a file.
Render the document from the same template and data your billing screen uses, at the moment you issue it.
Submit the whole cycle as a batch overnight and take a webhook as each document lands in your bucket.
Period statements and remittance advice from the same pipeline, with the paper size the recipient expects.
Attach a printable copy to the email your application already sends, produced from one request.
Outbound documents that need to look like the rest of your brand, without a word processor template nobody owns.
Keep each issued PDF in your own bucket, so a customer downloads any past invoice from their account without a support request.
Invoices are one shape of a wider capability. The same endpoint prints statements, contracts, reports and certificates from the same markup you already maintain. The guide has a complete invoice template to download, a multipage version, the request that renders them and the PDFs they produce.
Pricing
Each invoice PDF counts once, every page up to 100 included; a longer document is refused and counts nothing. A failed render counts nothing, and a batch that cannot be admitted in full is refused before any invoice renders. Every account has a free allowance each month, with no card required. Past it, Pay as you go charges the rates below, within the monthly usage limit you set. Prices exclude VAT.
Each PDF returned or stored, every page within the page limit included.
100 PDFs free each month
| Paid units after the free allowance | Rate per 1,000 |
|---|---|
| First 10,000 | £1.50 |
| Next 90,000 | £0.70 |
| Next 900,000 | £0.50 |
| Above 1,000,000 | £0.40 |
Questions
The details that decide whether this fits, without reading the whole reference first.
Less to operate. More to ship.
Create an account, take a key and post the HTML your billing screen already produces. Every account has free PDFs each month.
100 free PDFs each month, no card required, and no charge for failed renders.