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

# Reseller programme

> Offer Peppol e-invoicing to your customers through one integration with e-invoice.be.

## Overview

The e-invoice.be **reseller programme** is for SaaS companies, software vendors and service providers that want to add Peppol e-invoicing to their products and services. A reseller gets an [organisation API key](/glossary#organisation-api-key) for the [Admin API](/admin-api) and manages one [tenant](/glossary#tenant) for each customer. A tenant is a company that a reseller manages.

## Who the programme is for

* **SaaS platforms** (accounting, ERP, CRM and invoicing software)
* **Software vendors** that sell business management products
* **Managed service providers** that serve many clients
* **Industry platforms** (for example construction, healthcare and logistics)
* **Accounting and bookkeeping firms** that manage the invoicing of their clients

## Benefits

<CardGroup cols={2}>
  <Card title="White-label integration" icon="tag">
    Your customers use your interface. Your platform calls the e-invoice.be API in the background.
  </Card>

  <Card title="Multi-tenant support" icon="users">
    Manage all your customers through one integration, with one tenant and one API key for each customer.
  </Card>

  <Card title="Technical support" icon="headset">
    Technical support during the integration and after it.
  </Card>

  <Card title="Volume pricing" icon="hand-holding-dollar">
    Pricing that depends on the volume, for resellers and service providers.
  </Card>
</CardGroup>

## How it works

<Steps>
  <Step title="Partnership setup">
    Send an email to [support@e-invoice.be](mailto:support@e-invoice.be) to discuss:

    * your use case and your customers
    * the integration requirements
    * the expected transaction volumes
    * pricing and commercial terms
  </Step>

  <Step title="Technical integration">
    Integrate the API into your product:

    * **API access**: all e-invoice.be API endpoints, with the API key of each tenant.
    * **Admin API**: create and manage tenants and their API keys with your organisation API key. See the [Admin API](/admin-api).
    * **Webhooks**: each tenant has its own webhooks. Create them with the API key of the tenant. See [Webhooks](/essentials/webhooks).
    * **Testing**: use test-mode tenants. Their sends go to email and they cause no Peppol traffic. See [Test mode and sandbox companies](/environments).
  </Step>

  <Step title="Go live">
    Start e-invoicing for your customers:

    * **Customer onboarding**: create the tenant, the API key and the Peppol registration through the Admin API.
    * **Billing**: consolidated billing or billing for each customer, as agreed in your contract. To read the usage of each tenant for re-invoicing, see [Usage statistics and credits](/guides/usage-statistics).
    * **Support**: e-invoice.be handles technical Peppol problems; you give support to your customers.
  </Step>
</Steps>

## Use cases

### SaaS accounting platform

A cloud accounting platform adds Peppol e-invoicing for its customers. For each new customer, the platform creates a tenant and an API key with the organisation API key (`E_INVOICE_ORG_API_KEY`):

```bash theme={null}
# 1. Create a tenant for the new customer (Admin API, organisation API key)
curl -X POST "https://api.e-invoice.be/api/admin/tenants" \
     -H "Authorization: Bearer $E_INVOICE_ORG_API_KEY" \
     -H "Content-Type: application/json" \
     -d '{
       "name": "e-invoice-bv",
       "description": "E-INVOICE BV",
       "company_tax_id": "BE1018265814",
       "peppol_ids": ["0208:1018265814"]
     }'
```

```json theme={null}
{
  "id": "ten-9k2m4p7q3w5x8r",
  "name": "e-invoice-bv",
  "description": "E-INVOICE BV",
  "company_tax_id": "BE1018265814",
  "peppol_ids": ["0208:1018265814"],
  "plan": "enterprise",
  "credit_balance": 999999999,
  "created_at": "2026-04-16T10:00:00.000000Z",
  "updated_at": "2026-04-16T10:00:00.000000Z"
}
```

The response is shortened; see [Create a tenant](/admin-api#create-a-tenant) for all fields.

```bash theme={null}
# 2. Create an API key for the tenant (use the tenant id from step 1)
curl -X POST "https://api.e-invoice.be/api/admin/tenants/ten-9k2m4p7q3w5x8r/api-keys" \
     -H "Authorization: Bearer $E_INVOICE_ORG_API_KEY" \
     -H "Content-Type: application/json" \
     -d '{"name": "production-key"}'
```

```json theme={null}
{
  "id": "api-3h8f5j2k9l4m7n6p1q5r8s2t4v6w9x3y",
  "tenant_id": "ten-9k2m4p7q3w5x8r",
  "name": "production-key",
  "description": null,
  "created_at": "2026-04-16T10:00:00.000000Z",
  "updated_at": "2026-04-16T10:00:00.000000Z",
  "is_deleted": false
}
```

The `id` of the API key is the bearer token of the tenant. The platform stores it and uses it for all invoice operations of this customer. The API finds the tenant from the key, so the request body does not contain a tenant ID. Set `E_INVOICE_API_KEY` to the `id` of the API key of the tenant. For example, to list the documents that the customer sent:

```bash theme={null}
# 3. Call the standard API with the tenant API key
curl -X GET "https://api.e-invoice.be/api/outbox/" \
     -H "Authorization: Bearer $E_INVOICE_API_KEY"
```

To create and send an invoice with this key, see [Create e-invoices](/guides/creating-invoices).

### ERP system integration

An ERP vendor builds e-invoicing into the product:

* Users send invoices from the ERP interface.
* The ERP calls the e-invoice.be API in the background.
* The ERP gets status changes through webhooks.
* Users do not need a second login.

### Managed service provider

A managed service provider handles the invoicing of 50 or more clients:

* One API integration for all clients.
* One tenant, with its own Peppol ID, for each client.
* One API key for each client, which the provider can rotate and revoke through the Admin API.

## Technical requirements

### What your system must do

* Send authenticated HTTPS requests.
* Parse and generate JSON.
* Host a webhook endpoint to receive notifications.
* Handle errors and repeat failed requests.

### Security

* Store API keys in a secure location.
* Keep a separate credential for each tenant.
* Verify the signature of each webhook.
* Keep an audit log.

## Pricing

Reseller pricing depends on:

* **Volume**: the number of invoices for each month
* **Number of customers**: the number of tenants
* **Support level**
* **Contract term**

Send an email to [support@e-invoice.be](mailto:support@e-invoice.be) for a quotation.

## How to become a reseller

<Steps>
  <Step title="Contact e-invoice.be">
    Send an email to [support@e-invoice.be](mailto:support@e-invoice.be) with:

    * your company background
    * a description of your use case
    * the expected volumes
    * your schedule
  </Step>

  <Step title="Commercial discussion">
    In a call, e-invoice.be and you discuss:

    * your requirements
    * the pricing options
    * the integration approach
  </Step>

  <Step title="Technical onboarding">
    After the agreement:

    * you receive an organisation API key for the Admin API
    * you read the [Admin API](/admin-api) page
    * you build and test the integration with test-mode tenants
  </Step>

  <Step title="Launch">
    Go live with your integration:

    * create production tenants
    * onboard your customers
    * get continued support
  </Step>
</Steps>

## Support

A reseller gets:

* **Technical support**: help with the API integration and with troubleshooting, through [support@e-invoice.be](mailto:support@e-invoice.be)
* **Admin API access**: an organisation API key to manage tenants. See the [Admin API](/admin-api).

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Can I white-label the service?">
    Yes. Your end users do not see the API integration. They use your interface, and your platform calls the e-invoice.be API in the background.
  </Accordion>

  <Accordion title="How are customers billed?">
    The billing model is part of your contract. Possible models are:

    * consolidated billing to you (you bill your customers)
    * billing for each tenant (e-invoice.be bills each customer)
    * a mix of the two
  </Accordion>

  <Accordion title="Who gives support to end customers?">
    You give first-line support to your customers. e-invoice.be gives:

    * technical support to you for API problems
    * communication about Peppol network status and incidents
    * documentation that you can share
  </Accordion>

  <Accordion title="Can customers exchange documents with users of other Peppol access points?">
    Yes. Peppol is an interoperable network. Your customers can exchange invoices with all participants on the Peppol network, whatever their access point provider.
  </Accordion>

  <Accordion title="What compliance is necessary?">
    e-invoice.be handles:

    * Peppol compliance and certification
    * validation against Peppol BIS Billing 3.0
    * the connection to the network

    You handle:

    * customer onboarding (know-your-customer checks, if applicable)
    * data privacy (GDPR compliance)
    * the security of your application
  </Accordion>

  <Accordion title="Is there a minimum commitment?">
    The agreement depends on your situation. Send an email to [support@e-invoice.be](mailto:support@e-invoice.be) to discuss the options for your business model.
  </Accordion>
</AccordionGroup>

## Contact

To become a reseller, send an email to [support@e-invoice.be](mailto:support@e-invoice.be).

## Next Steps

<CardGroup cols={2}>
  <Card title="Admin API" icon="code" href="/admin-api">
    Create tenants, issue API keys and register tenants on Peppol.
  </Card>

  <Card title="Create e-invoices" icon="file-invoice" href="/guides/creating-invoices">
    Create and send invoices with the API key of a tenant.
  </Card>

  <Card title="Webhooks" icon="webhook" href="/essentials/webhooks">
    Receive status changes for the documents of each tenant.
  </Card>

  <Card title="Test mode and sandbox companies" icon="flask" href="/environments">
    Test your integration with no Peppol traffic.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.