# Automating PDF-to-E-Invoice Conversion at Scale via API

- Updated May 2026

Automate PDF-to-e-invoice conversion via the API, configure async status polling, and process multiple invoices programmatically, one conversion request per invoice.

## Key integration steps

- Acquire a production API key from the developer dashboard.
- Authenticate all requests using the Authorization header with a Bearer token.
- Send a POST request to /api/v1/invoices:convert with the PDF file and compliance profile parameters.
- Handle the asynchronous task response and poll GET /api/v1/tasks/{task_id} until the conversion completes or fails.
- Retrieve the validated XRechnung, ZUGFeRD, or UBL XML output.

## Asynchronous status polling

Integrating e-invoicing compliance at scale means automating submission and retrieval through the API. Each request converts exactly one invoice, and converted results should still flow through your normal review and exception process for edge cases and low-quality source documents.

The API is asynchronous: when you upload a PDF, it immediately returns a 202 Accepted status with a unique task ID.

Your system polls the task status endpoint at GET /api/v1/tasks/{task_id} every 10 to 15 seconds until the task reports completed or failed. The API does not provide webhooks, so polling is how your system learns that a conversion is ready.

## Best practices for scale

- Always specify an explicit compliance profile, such as XRechnung or ZUGFeRD, to skip auto-detection delays.
- Implement exponential backoff when polling the task status to avoid unnecessary rate limits.
- Store the returned task UUIDs in your local database for easy tracing and audit logging.
- Send a stable Idempotency-Key header per invoice so retries never create duplicate conversions.
