> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chift.eu/llms.txt
> Use this file to discover all available pages before exploring further.

# Number restrictions across accounting connectors

> Understand and handle number field limitations for accounting entries across connectors when using the Unified API.

## Number restrictions across accounting connectors

When working with the Unified API, it’s important to understand that **each accounting software enforces its own rules and restrictions** regarding the `number` or `invoice_number` fields used in journal entries, financial entries, and accounting entries.

These fields appear in the following endpoints:

* [`invoice_number`](https://docs.chift.eu/api-reference/endpoints/accounting/create-salepurchase-entry-multiple-plans#body-invoice-number) — Sale or purchase entries
* [`number`](https://docs.chift.eu/api-reference/endpoints/accounting/create-a-financial-entry#body-number) — Financial entries
* [`number`](https://docs.chift.eu/api-reference/endpoints/accounting/create-journal-entry#body-number) — Journal entries

***

### Why this matters

When building an integration with the Unified API, you should **always validate or normalize your numbering logic** to ensure it’s compatible across all connectors you plan to support.\
If you send an invalid `number`, the target accounting software may reject the entry.

***

### General recommendations

* **Always provide a number.**\
  Some connectors can generate it automatically if not provided, but for cross-connector compatibility, we recommend **always generating it yourself**.
* **Numbers must be unique.**\
  The `number` is **not the same** as the technical `id` or the `reference` field:
  * `id`: a technical unique identifier (often a UUID)
  * `reference`: refers to another document or object (e.g. an invoice or payment reference)
  * `number`: the actual accounting number visible in the accounting software

***

### Connector-specific restrictions

| Connector                   | Restriction                                                                           |
| --------------------------- | ------------------------------------------------------------------------------------- |
| **ACD**                     | Max 16 characters - REQUIRED                                                          |
| **Sage BOB50**              | Max 10 characters, digits only                                                        |
| **DATEV**                   | Max 36 characters. Must contain at least one of: 0–9, A–Z, a–z, \$, &, %, \*, +, -, / |
| **Dynamics 365 BC**         | Max 35 characters                                                                     |
| **Exact Online**            | Digits only - int32                                                                   |
| **Horus**                   | Digits only - int32                                                                   |
| **MyUnisoft**               | Max 15 characters - REQUIRED                                                          |
| **Octopus**                 | Digits only                                                                           |
| **Sage 100**                | Max 17 characters                                                                     |
| **Sage Génération Experts** | Defined at the journal level, usually max 8 characters                                |
| **Winbooks**                | Digits only - Max 8 characters,                                                       |
| **Yuki**                    | REQUIRED on supplier invoices                                                         |

***

### Best practice pattern

To ensure compatibility across all connectors:

* Use **only digits**
* Keep it **under 8–10 characters**
* Ensure **uniqueness per accounting period or journal**

Example pattern:

```text theme={null}
20250001
20250002
20250003
```
