Skip to main content
GET
/
api
/
lookup
Lookup Peppol ID
curl --request GET \
  --url https://api.e-invoice.be/api/lookup
import requests

url = "https://api.e-invoice.be/api/lookup"

response = requests.get(url)

print(response.text)
const options = {method: 'GET'};

fetch('https://api.e-invoice.be/api/lookup', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://api.e-invoice.be/api/lookup",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"net/http"
"io"
)

func main() {

url := "https://api.e-invoice.be/api/lookup"

req, _ := http.NewRequest("GET", url, nil)

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://api.e-invoice.be/api/lookup")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.e-invoice.be/api/lookup")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
{
  "queryMetadata": {
    "identifierScheme": "<string>",
    "identifierValue": "<string>",
    "smlDomain": "<string>",
    "timestamp": "<string>",
    "version": "<string>"
  },
  "status": "<string>",
  "errors": [
    "<string>"
  ],
  "dnsInfo": {
    "status": "<string>",
    "smlHostname": "<string>",
    "dnsRecords": [
      {
        "ip": "<string>"
      }
    ],
    "smpHostname": "smp.e-invoice.be",
    "error": "DNS lookup failed: no such domain",
    "lookupMethod": "naptr"
  },
  "serviceMetadata": {
    "status": "<string>",
    "queryTimeMs": 123,
    "endpoints": [
      {
        "status": "<string>",
        "url": "<string>",
        "documentTypes": [
          {
            "scheme": "<string>",
            "value": "<string>"
          }
        ],
        "processes": [
          {
            "processId": {
              "scheme": "<string>",
              "value": "<string>"
            },
            "endpoints": [
              {
                "transportProfile": "<string>",
                "address": "<string>",
                "serviceActivationDate": "2022-01-01T00:00:00Z",
                "serviceExpirationDate": "2025-01-01T00:00:00Z",
                "serviceDescription": "Company XYZ's AP service",
                "technicalContactUrl": "https://support.e-invoice.be",
                "technicalInformationUrl": "https://api.e-invoice.be",
                "certificate": {
                  "status": "<string>",
                  "details": {},
                  "error": "Certificate expired"
                }
              }
            ]
          }
        ],
        "error": "Connection timeout"
      }
    ],
    "error": "Service unavailable"
  },
  "businessCard": {
    "status": "<string>",
    "entities": [
      {
        "name": "Example Corporation Ltd",
        "countryCode": "NO",
        "registrationDate": "2021-06-15T00:00:00Z",
        "additionalInformation": [
          "VAT: BE1018265814",
          "Organization number: 1018.265.814"
        ]
      }
    ],
    "queryTimeMs": 123,
    "error": "Business card not found"
  },
  "certificates": [
    {
      "status": "<string>",
      "details": {},
      "error": "Certificate expired"
    }
  ],
  "executionTimeMs": 123
}
{
"detail": "<string>"
}
{
"detail": "<string>"
}

Query Parameters

peppol_id
string
required

Peppol ID in the format <scheme>:<id>. Example: 0208:1018265814 for a Belgian company.

Response

Successful Response

Response from a Peppol ID lookup operation.

This model represents the complete result of validating and looking up a Peppol ID in the Peppol network, including DNS information, service metadata, business card details, and certificate information.

Example: A successful lookup for a Peppol ID "0192:991825827" would return DNS information, service metadata with supported document types and processes, business card information with organization details, and certificate data.

queryMetadata
QueryMetadata · object
required

Metadata about the query that was performed

status
string
required

Overall status of the lookup: 'success' or 'error'

Example:

"success"

errors
string[]
required

List of error messages if any errors occurred during the lookup

Example:
[
"DNS lookup failed",
"Business card not available"
]
dnsInfo
DnsInfo · object
required

Information about the DNS lookup performed

serviceMetadata
ServiceMetadata · object
required

Service metadata information for the Peppol participant

businessCard
BusinessCard · object
required

Business card information for the Peppol participant

certificates
Certificate · object[]
required

List of certificates found for the Peppol participant

executionTimeMs
number
required

Total execution time of the lookup operation in milliseconds

Example:

895.32