Invoices and statements
Composite a payment or verification code straight into the PDF your application already generates.
Generate styled, logo-bearing QR codes through one API call. Every code is decoded and checked against your payload before it leaves Ironfang Render, so a code that would not scan comes back as an error instead of reaching your customer.
Start generating freeView the QR API docs
{
"data": "https://ironfang.com/render",
"dots": "circle", "ecc": "H",
"dark": "#05050a", "light": "#ffffff",
"logo": "data:image/png;base64,..."
}
Scan verified
The problem
Most QR libraries hand back an image and wish you luck. Add a logo, tint the modules to match a brand, or style the finder patterns, and the symbol quietly stops decoding. You find out when the codes are already printed, or when a customer cannot check in.
Ironfang Render decodes every finished code and compares it to the data you sent. If it does not read back, you get a 422 and no charge, which is a problem you can handle in code rather than in a reprint.
POST /render/v1/qr
Authorization: Bearer if_live_...
{
"data": "https://ironfang.com/render",
"dots": "circle",
"eyes": "rounded",
"dark": "#4f46e5",
"light": "transparent",
"logo_url": "https://example.com/mark.png",
"size": 512
}Capabilities
Style, brand and size the code however the design asks, with the structural guarantees that keep it readable.
Every code is decoded and compared to the payload you sent. A code that would not scan comes back as an error, not as an image you find out about from a customer.
Drop a logo in the centre and error correction is raised to compensate automatically. Finder patterns always render solid, because styled finders are how QR generators produce codes that do not scan.
Square or circular modules, square or rounded eyes, any foreground and background colour, and a transparent ground when you need the code to sit on your own surface.
Send a qr object with a stored template render and the code becomes a variable in the layout, so invoices, tickets and certificates carry their code natively.
QR generation is a free utility and is never charged. Each code still shows in your usage so you can see the volume, within the published rate limits.
The same key and account that render your screenshots, PDFs and images. No second vendor, no second invoice, no second integration to maintain.
Use cases
Anywhere the code is printed, posted or handed to somebody who only gets one attempt at scanning it.
Composite a payment or verification code straight into the PDF your application already generates.
Generate a unique code per booking at request time, verified to scan before it reaches the customer.
Print runs are expensive to repeat. A code checked before delivery is a code you can send to the printer.
Branded codes at any size, with the quiet zone and error correction that survive a label on a scuffed machine.
Match the code to the design rather than dropping a black square into it, without giving up scannability.
Any payload up to a kilobyte, so network credentials and deep links work the same way a URL does.
Pricing
QR codes are a free utility: never charged, rate limited, and shown in your usage so you can see the volume. A code placed inside a template image adds nothing to that image, which counts as one templated image. The screenshots, PDFs and images alongside them have 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.
Free, rate limited, never charged
Each image rendered from a template.
250 templated images free each month
| Paid units after the free allowance | Rate per 1,000 |
|---|---|
| First 10,000 | £1.00 |
| 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 send one request. QR codes are free on every account.
Free QR codes, 500 free screenshots each month, and no card required.