๐Ÿงพ New: Factur-X / ZUGFeRD e-invoicing on every plan โ†’

Fire-and-forget PDF generation

POST a URL or HTML โ€” or your invoice XML for a Factur-X / ZUGFeRD e-invoice โ€” and move on: a signed webhook tells you the moment the PDF is ready, with retries and a dead-letter queue. No synchronous ceiling to race.

Free plan: 100 PDFs a month, no card needed.

SSRF ProtectedPlaywright-Powered

One Request, One Webhook

This is the exact request, response, and webhook payload the API produces โ€” copy the cURL and run it with your own key.

curl -X POST https://api.pdfik.net/url-to-pdf \
  -H "X-API-Key: sk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "webhook_url": "https://your-app.com/hooks/pdf"}'
{
  "job_id": "9b2f5e2c-8d1a-4c53-b7e0-3f6a9d2c4e81",
  "status": "queued",
  "detail": "Job successfully sent to processing queue."
}
{
  "job_id": "9b2f5e2c-8d1a-4c53-b7e0-3f6a9d2c4e81",
  "status": "done",
  "test": false,
  "file_url": "https://api.pdfik.net/jobs/9b2f5e2c-8d1a-4c53-b7e0-3f6a9d2c4e81/download",
  "pages_count": 3,
  "finished_at": "2026-08-04T09:12:44.310Z",
  "expires_at": "2026-08-05T09:12:44.310Z"
}

Signed with X-PDFik-Signature (HMAC-SHA256), retried 2/5/15/30/60ย s with a dead-letter queue.

E-invoices that people and software can both read

POST /einvoice-to-pdf takes your UN/CEFACT Cross-Industry Invoice XML and returns one Factur-X / ZUGFeRD PDF: a human-readable invoice normalized to PDF/A-3 with the machine-readable XML embedded as factur-x.xml. Same async queue, same signed webhooks, same Idempotency-Key โ€” on every plan, Free included. PDFik never generates or alters invoice data; you supply the XML.

  • Validated before you pay: the XML is checked against the official XSD of the declared profile (minimum, basicwl, basic, en16931, extended) before any quota is spent โ€” invalid XML is a 422 with a documented error anchor, not a bill.
  • Two ways in: the dedicated POST /einvoice-to-pdf endpoint builds the invoice from your XML with a block template, or add the einvoice option to your own URL or HTML render and keep your design.
  • Design it in the dashboard: logo, colours, 8 free fonts, A4 to Legal page formats, editable labels, live preview, and 10 language presets across 14 locales. Mark one as default and the API uses it.
  • Output is checked in the release gate with veraPDF (PDF/A-3b) and Mustangproject (Factur-X structure). Schema-valid is not tax-compliant โ€” the invoice content stays your responsibility.
  • Try it without an account: paste invoice XML into the sandbox on this page and get a real, watermarked Factur-X PDF through the same pipeline customers use.

Stop babysitting Chrome in production

Headless browsers are great. Operating a fleet of them is a second job โ€” this is the part of it you stop doing.

Running Chrome yourselfWith PDFik
Chromium updates & CVEsTrack releases, patch CVEs, rebuild images on someone elseโ€™s schedule.We patch and roll the render fleet; you keep calling the same API.
Memory leaks & zombie processesLeaking tabs and orphaned processes need a 3 a.m. babysitter.A fresh isolated browser context per job, torn down after every render.
Queue, retries, dead lettersBuild queueing, retry ladders and dead-letter handling yourself.Queue-backed rendering and signed webhook delivery with retries and DLQs, built in.
Sandbox & SSRF hardeningHarden a headless browser against hostile HTML and SSRF on your own.Sandboxed Chromium plus SSRF blocking of private IPs and cloud metadata, on every render.

Built for Developer Teams

The contract is the point: signed delivery, two honest meters, one file ceiling that never changes with the price, and a retention window you can plan around.

Factur-X / ZUGFeRD e-invoices

POST your CII invoice XML to /einvoice-to-pdf and get a hybrid PDF/A-3 with factur-x.xml embedded โ€” validated against the official XSD before any quota is spent, on every plan. PDFik never alters invoice data; the content stays yours.

Delivered to your webhook

Every finished job is POSTed to you, HMAC-signed, with 5 retries on a 2/5/15/30/60 s ladder and a dead-letter queue behind them โ€” on every plan, including Free.

A document is a document

A 2-page receipt and a 200-page report each count as one document against your monthly quota โ€” no page math. Data volume is a second, separate line you can actually see.

150 MB per file โ€” on every plan

The per-file ceiling is the same 150 MB whether you are on Free or Business. Test your real documents before you pay a cent.

Guaranteed deletion in 24 hours

PDFik is a delivery pipeline, not an archive: download links expire 24 hours after rendering and files are physically purged from storage within 48.

Test mode costs nothing

Send "test": true and the job runs the full pipeline โ€” statuses, signed webhook, download โ€” without a render and without touching your quotas. Wire up CI against it for free.

Idempotent by design

Pass an Idempotency-Key and a retried submit can never double-render or double-bill โ€” the same key returns the same job. Network blips stop being a billing question.

Flexible, Predictable Plans

Whether you are converting 100 layouts or 100,000 documents a month, we have a plan for you.

Start testing with 100 free requests per month

Unlock access to the API console, set up webhook callback integration, and test with your live datasets completely free.

Frequently Asked Questions

Got questions about our architecture, rendering pipelines, security layers, or billing? We have answers.

When you send a request, we validate and queue it. You immediately get a Job ID. Once the PDF is rendered in our sandbox, we upload it to secure storage and notify you via a Webhook.

Yes. POST /einvoice-to-pdf takes your UN/CEFACT Cross-Industry Invoice XML and returns a hybrid PDF/A-3 with the XML embedded as factur-x.xml, laid out by a block template you design in the dashboard. Or add the einvoice option to /url-to-pdf or /html-to-pdf to wrap your own rendered invoice. Available on every plan, Free included โ€” the output is the same clean PDF/A-3. You can try it in the sandbox on this page without an account.

No. You supply the XML from your accounting system; PDFik validates it against the official XSD of the declared profile before any quota is spent and never alters it. The release gate checks the output with veraPDF (PDF/A-3b) and Mustangproject (Factur-X structure), but schema-valid is not the same as tax-compliant โ€” the invoice content is your responsibility.

To prevent Server-Side Request Forgery, our engine resolves and validates all URLs before opening them. We block connections to private, local, and cloud-provider metadata IP addresses.

When a PDF render finishes, we send a HTTP POST request to your configured webhook URL with the job details and download link. Each webhook payload is HMAC-signed for security verification.

You can configure margins, orientation, header/footer templates, page ranges, custom CSS overrides, password protection, and PDF watermarking.

All API requests require your API key in the X-API-Key HTTP header. You can generate and manage live/test API keys inside the developer Console.

Rate limits scale from 10 requests/min on the Free tier up to 2,000 requests/min on the Business tier. Custom plans are available for higher volume requirements.

Yes! Our Free tier includes 100 PDF generations per month, webhooks, and full API access to try out the platform.

No. Each generated PDF is available for download for 24 hours after rendering, after which the download link expires. Files are physically deleted from storage within 48 hours.

Yes, you can specify user/owner passwords and encryption permissions in the request payload to secure your PDFs.

Yes, we provide official, fully typed SDKs for Node.js/TypeScript, Python, and Java to easily integrate PDFik.net into your codebase.

Start generating PDFs on the Free plan

Create an account, grab your API token, and dispatch your first async PDF conversion. No card needed on Free.

Create Free Account โ†’