# Introduction

### e-Invoicing Document Interchange API Specification

The Public REST API provides programmatic access to an e-invoicing platform operated by a certified service provider, enabling companies to securely send, receive, and manage electronic invoices and related business documents via automated document interchange.

This OpenAPI-based specification describes all available endpoints for integrating your ERP or other business applications with the service provider’s platform, including onboarding, invoice submission, status tracking, document retrieval, and reporting.

To use the API, you must obtain access credentials from your chosen service provider.

### Generating client libraries

You can generate strongly typed client libraries for various programming languages using the provided `openapi.yaml` file and the [OpenAPI Generator](https://openapi-generator.tech/).

1. Download the `openapi.yaml` (or `openapi.json`) file from this site.
2. Install the OpenAPI Generator following the instructions on the project website.
3. Run the generator for your preferred language. For example, to generate a Java client:



```bash
   openapi-generator-cli generate \
     -i openapi.yaml \
     -g java \
     -o ./einvoice-java-client
```

Replace java with the desired generator (for example: typescript-axios, csharp, python) and adjust the output directory as needed.

### Note for integration partners

If you are an integration partner, you need to obtain a `softwareID` that has to be included in request header on some API requests.

Here is an example


```
curl -i -X POST \
  https://omnizon-public-api--docs.preview.redocly.app/_mock/openapi/rest/v1/documents/send \
  -H 'Content-Type: application/octet-stream' \
  -H 'companyVatNumber: HR12345678910' \
  -H 'fiscalization: true' \
  -H 'x-fileName: string' \
  -H 'x-software-id: string' \  ##### Here goes your softwareID
  -d '<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">...</Invoice>'
```

`softwareID` is necessary in the following API requests:

- `documents/send`
- `documents/get`


For non-integration partners `softwareID` is NOT required.

#### Change log

Current version 2026.05.02 as of 1.4.2026

- fixed paging when documents do not have time component in timestamps in `/inbox`, `/inbox/status`, `outbox/status`
- optimized `/inbox` performance
- added AS4 delivery information in `outbox/status` i `getStatus`


Version 2026.03.01 as of 9.2.2026

- added `/getPdf` - return PDF version of a document
- added filtering and sorting options in `inbox/status` and `outbox/status`


Version 2025.09.05 as of 16.01.2026

- Methods `getStatus` and `getInternalStatus` return a new field `internalStatusDetails` containing error messages with timestamp.


Version 2025.09.04 as of 31.12.2025

- No breaking changes
- Major change - introduction of (optional) paging on endpoints returning lists of documents
- Additional document fields in `/inbox`, `/inbox/status`, `outbox/status` and `getStatus`