pdf.xhub

Account statements at month-end scale

Render monthly batches of branded, multi-language account statements. HTML templates, customer data merge, async batches up to 75,000+ documents.

Async batch jobsMulti-languagePDF/A archive

Why automate statements with pdf.xhub?

Built for monthly batches

Async-job API handles thousands of statements per run. Webhook fires when the batch is done, signed download URLs land in your storage.

Customer data merge with HTML templates

Bring your existing branded HTML template. Merge customer transaction data via Handlebars or template strings. No DSL to learn.

Multi-language out of the box

Render the same template in DE, FR, EN, IT, ES. Pass locale as a parameter — fonts and number formats adapt automatically.

How statement generation works

1. POST your customer batch

Send an async-job request with template ID + array of customer payloads. We queue the batch and return a job ID immediately.

2. We render in parallel

Render workers process customers concurrently. Each statement gets the customer's locale, logo, brand colors merged into your HTML template.

3. Webhook on completion

When the batch finishes, we fire a signed webhook with manifest of all PDFs. Download or pipe directly to your S3-compatible storage.

For finance, billing, and customer-comms teams

Whether you're a neobank generating 500,000 monthly statements or a SaaS sending 5,000 invoices, the async-batch endpoint scales linearly. Built on HTML-to-PDF for fully branded layouts, with Markdown-to-PDF as the lightweight alternative. EU-only render fleet means GDPR by default.

Try it in your stack

Same endpoint. Copy as cURL, call from any language.

POST a batch of customers, receive a webhook when done with a manifest of all PDFs.

curl -X POST https://api.pdf.xhub.io/v1/render/batch \
  -H "Authorization: Bearer $PDFXHUB_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "source": "html",
    "template": "tpl_statement_v3",
    "customers": [{"id": "cus_1", "locale": "de", "data": {...}}],
    "webhookUrl": "https://api.example.com/pdfx-webhook"
  }'

Features at a glance

Templating & Rendering

  • HTML5 + CSS3 with full Handlebars binding
  • Custom web fonts auto-cached
  • Multi-language locale parameter (DE, FR, EN, IT, ES)
  • Custom headers, footers, page numbers
  • PDF/A-1b, PDF/A-2b, PDF/A-3 modes

Batch & Workflow

  • Async-job API with progress webhooks
  • Manifest of all rendered PDFs in batch
  • Direct-pipe to S3 / GCS / Azure Blob
  • Per-customer error isolation (one bad row doesn't kill the batch)
  • PAdES digital signatures (optional)

Platform

  • EU hosting (Frankfurt + Paris) for SEPA-zone customers
  • Locale-aware number and date formatting
  • Per-customer error isolation (one bad row keeps the batch alive)
  • Direct-pipe to S3 / GCS / Azure Blob
  • Async-batch with progress webhooks
  • Throughput: 75,000+ docs/run on Business

Powered by these APIs

The product endpoints behind this solution.

Related solutions

Same API, different workflows.

Run your first statement batch

25 docs/month free forever. Scale to 75,000 with async batch jobs.