Step 2: Integrations

Integration Overview: Sending Invoices via Peppol Network

For a seamless integration to send invoices over the Peppol network, a basic integration is all that's needed. However, additional steps are required if you aim to receive Peppol messages or use other E-invoice networks.

Sending Invoices (Peppol Network)

  • Basic Integration: Sending over the Peppol network is ready "out of the box" with a basic integration.

Additional Steps for Receiving Peppol Messages or Other Networks

  • Extra Configuration: If you wish to receive Peppol messages or utilize different E-invoice networks, further configuration is necessary.

  • Credentials and Connection Fees: Some networks may require credentials or have a connection fee, necessitating an additional step in the integration process.

  • Signed Signatures: Certain networks demand a signed signature from the registering entity, which can be obtained through the response or account status.

How to use this endpoint

Activate

POST Endpoint

The moment you do the post call the integration may be active. You will see this in the response you get. You can also find a matrix below to see what integrations need more setup or extra steps.

Without credentials

  • Endpoint: Host + "/v1/einvoices/registrations/{registrationID}/integrations"
{
    "ExternalProvider" : "Peppol",
}

POST Endpoint reponse

{
    "IntegrationID" : 00000,
    "Integration" : "Peppol",
    "IntegrationStatus" : "Ready",
}

With credentials

{
    "ExternalProvider" : "Chorus",
    "Credentials" : {
     "TechnicalUserKey" : "c3332316-1558-40df-a52f-733d55edf9d7"
    }
}

Some networks like SDI might give a response like the one below. This is for extra legal archiving that must be signed.

POST Endpoint reponse

{
    "IntegrationID" : 00000,
    "Integration" : "SDI",
    "IntegrationStatus" : "Pending",
    "IntegrationStatusDescription" : "Awaiting signature",
    "IntegrationDocumentToSign" : "{https://URLTOSIGN.Billit.eu}",
}

GET Status

To get a status for an integration you can retrieve it from the registrations root endpoint. Meaning a GET request with the registration ID should suffice.

  • Endpoint: Host + "/v1/einvoices/registrations/{registrationID}"
{
  "RegistrationID": 437856,
  "CompanyDetails": {
    "TaxIdentifier": "BE23456789",
    "CompanyName": "Tech Corp",
    "Addresses": [],
    "TaxDeductable": true,
    "TaxLiable": true,
    "Identifiers": []
  },
  "Integrations": [
    {
      "IntegrationID": 00000,
      "Integration": "Peppol",
      "IntegrationStatus": "Active",
      "IntegrationStatusDescription": "",
      "IntegrationDocumentToSign": ""
    }
  ]
}

Deactivate (DELETE) an integration

When you want to deactivate a network or integration you can call the following DEL request. It will remove the integration from the selected account.

  • Endpoint: Host + "/v1/einvoices/registrations/{registrationID}/integrations/{integrationID}"