> For the complete documentation index, see [llms.txt](https://docs.docs-dispatcher.io/docs-dispatcher/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.docs-dispatcher.io/docs-dispatcher/readme.md).

# Welcome to Docs-Dispatcher

> **Generate documents and dispatch them through your favourite providers — invoicing, eSign, postal, SMS, email — with a single HTTP API.**

Docs-Dispatcher is a unified API for generating documents (PDF, DOCX, XLSX) from your templates and sending them through external providers such as Qonto, PennyLane, Universign, Signaturit, MySendingBox, Brevo, OVH and more — without managing each provider integration yourself.

## What you can do

| Service       | What it sends                      | Providers                                                   |
| ------------- | ---------------------------------- | ----------------------------------------------------------- |
| **Invoicing** | Invoices, quotes, credit notes     | iPaidThat, Qonto, PennyLane, SuperPDP, JeFacture, Digiforma |
| **eSign**     | Documents for electronic signature | Universign, Signaturit, Digiforma                           |
| **Postal**    | Physical letters (print & mail)    | MySendingBox                                                |
| **SMS**       | Text messages                      | Brevo, OVH, SMS Factor, SMS Magic                           |
| **Email**     | Transactional emails               | SMTP                                                        |
| **File**      | Document generation only (no send) | Built-in renderers                                          |
| **Upload**    | Storage of generated documents     | Built-in storage                                            |

## How it works

```
┌──────────────────┐  HTTPS + Basic Auth / JWT  ┌─────────────────────┐
│ Your application │ ─────────────────────────▶ │ Docs-Dispatcher API │
└──────────────────┘                            └──────────┬──────────┘
                                                         │
                                              ┌──────────┴──────────┐
                                              ▼                     ▼
                                       Generate document     Dispatch to provider
                                       from template         (Qonto, Universign, …)
```

You build a single JSON request — Docs-Dispatcher generates the document, calls the right provider, and returns the result (or queues it and notifies you via webhook).

## Quick links

<table data-view="cards"><thead><tr><th>Title</th><th>Description</th><th data-card-target data-type="content-ref">Target</th></tr></thead><tbody><tr><td>🚀 Quickstart</td><td>Send your first validation request in 5 minutes</td><td><a href="/pages/6S3JeKRXIsP4iAUTRlmw">/pages/6S3JeKRXIsP4iAUTRlmw</a></td></tr><tr><td>🔐 Authentication</td><td>Basic Auth or Bearer JWT — pick whichever fits your integration</td><td><a href="/pages/SZO0WYAh8BhzGkfqMaPG">/pages/SZO0WYAh8BhzGkfqMaPG</a></td></tr><tr><td>🧾 Generate &#x26; send an invoice</td><td>Full end-to-end recipe</td><td><a href="/pages/HB4wWuPtMFL3MBM1BWk4">/pages/HB4wWuPtMFL3MBM1BWk4</a></td></tr><tr><td>📊 Providers overview</td><td>Capability matrix per provider</td><td><a href="/pages/D4yGBkhfj54aNd31zaN8">/pages/D4yGBkhfj54aNd31zaN8</a></td></tr><tr><td>📦 SDKs</td><td>Node, PHP and Java client libraries</td><td><a href="/pages/Ap07DWRxfUEtD3oUu5xe">/pages/Ap07DWRxfUEtD3oUu5xe</a></td></tr><tr><td>📖 API reference</td><td>Full OpenAPI specification</td><td><a href="/pages/yCmm88yysVKiJaMNFSXE">/pages/yCmm88yysVKiJaMNFSXE</a></td></tr></tbody></table>

## Core ideas in 60 seconds

**One request → document + dispatch.** A single `POST /api/{service}` call generates the document from your template and sends it through the provider you select.

**Validate before sending.** Every service has a `POST /api/{service}/validate` twin that checks your payload without calling the provider or charging credits.

**Synchronous or asynchronous.** Add `?async=true` to return immediately and receive the outcome by webhook — useful for slow providers and bulk operations.

**Configuration hierarchy.** Providers can be configured at company or user level. A request may also pin a specific provider via `providerName` to override the default.

```bash
# Validate (no real call)
curl -X POST https://api.docs-dispatcher.io/api/invoicing/validate \
  -u "$EMAIL:$PASSWORD" \
  -H "Content-Type: application/json" \
  --data @invoice.json

# Dispatch for real
curl -X POST https://api.docs-dispatcher.io/api/invoicing \
  -u "$EMAIL:$PASSWORD" \
  -H "Content-Type: application/json" \
  --data @invoice.json
```

## Where to go next

* New here? → [**Quickstart**](/docs-dispatcher/start-here/quickstart.md)
* Building an integration? → [**Recipes**](/docs-dispatcher/how-to-recipes/invoice.md) then [**SDKs**](/docs-dispatcher/sdks/overview.md)
* Looking up an endpoint or schema? → [**API reference**](/docs-dispatcher/api-reference/dispatcher.md)
* Something not working? → [**Troubleshooting**](/docs-dispatcher/troubleshooting-and-errors/debug-checklist.md)

## Support

* Email: <support@docs-dispatcher.io>
* Status page: *coming soon*
* Changelog: [**Version history**](/docs-dispatcher/start-here/changelog.md)
