# 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)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.docs-dispatcher.io/docs-dispatcher/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
