Vyhľadanie účastníka
Lookup v Peppol podľa DIČ a overenie podporovaných typov dokumentov.
Táto sekcia popisuje SAPI+ endpoint na overenie, či je organizácia dostupná v Peppol sieti, a na zistenie jej participantId podľa slovenského DIČ. Lookup slúži najmä pred odoslaním dokumentu, aby klient vedel použiť správny receiverParticipantId a overiť, či príjemca podporuje požadovaný typ dokumentu.
Vyhľadávanie prebieha v reálnom čase oproti Peppol SML/SMP registru.
SML a SMP
SML je centrálny DNS-based register Peppol účastníkov. SMP obsahuje detailné informácie o účastníkovi, najmä podporované typy dokumentov, procesy a transportný profil.
Doklado SAPI+ lookup orchestruje vyhľadanie cez SML/SMP a klientovi vracia zjednodušenú odpoveď použiteľnú pri odoslaní dokumentu.
Endpoint - Vyhľadanie účastníka podľa DIČ
GET /v1/sapi-plus/participant/lookup
Authorization: Bearer <access_token>
Query parametre:
| Parameter | Povinné | Popis |
|---|---|---|
dic | áno | Slovenské DIČ vo formáte SK + 10 číslic, napr. SK1234567890, alebo bez prefixu, napr. 1234567890. |
schemeId | nie | Peppol schéma identifikátora. Predvolená hodnota je 0245. Pre vyhľadávanie cez DIČ sa používa 0245. |
documentTypeId | nie | Voliteľný filter podľa typu dokumentu. Ak je vyplnený, odpoveď má vrátiť iba účastníka, ktorý prijíma daný typ dokumentu. |
Príklad requestu:
Použite premenné z prvého volania a nahraďte vzorové DIČ údajom príjemcu.
curl --fail-with-body --silent --show-error --get \
"$SAPI_BASE_URL/sapi-plus/participant/lookup" \
--header "Authorization: Bearer $SAPI_ACCESS_TOKEN" \
--header 'Accept: application/json' \
--data-urlencode 'dic=1234567890' \
--data-urlencode 'schemeId=0245'
Pre obmedzenie na konkrétny typ dokumentu doplňte voliteľný parameter documentTypeId s úplnou hodnotou cez --data-urlencode.
Odpoveď - účastník nájdený
Úspešná odpoveď: HTTP 200
{
"found": true,
"participant": {
"participantId": "0245:2120000000",
"schemeId": "0245",
"identifier": "2120000000",
"registeredAt": "2024-03-15T00:00:00Z",
"capabilities": [
{
"documentTypeId": "urn:oasis:names:specification:ubl:schema:xsd:Invoice-2::Invoice##...",
"processId": "urn:fdc:peppol.eu:2017:poacc:billing:01:1.0",
"transportProfile": "peppol-transport-as4-v2_0"
}
]
},
"lookupTimestamp": "2026-05-07T10:30:00Z"
}
Response body:
| Pole | Typ | Popis |
|---|---|---|
found | boolean | Informácia, či bol účastník nájdený. |
participant | object/null | Údaje o nájdenom účastníkovi. Ak účastník nebol nájdený, hodnota je null. |
participant.participantId | string | Peppol Participant ID použiteľné napr. ako receiverParticipantId. |
participant.schemeId | string | Schéma identifikátora, napr. 0245. |
participant.identifier | string | Identifikátor účastníka bez prefixu schémy. |
participant.registeredAt | datetime | Dátum registrácie účastníka, ak je dostupný. |
participant.capabilities | array | Zoznam podporovaných kombinácií documentTypeId, processId a transportProfile. |
lookupTimestamp | datetime | Čas vykonania lookupu. |
Odpoveď - účastník nenájdený
Nenájdený účastník nie je chyba requestu. Endpoint vráti HTTP 200 a stav je potrebné vyhodnotiť podľa poľa found.
{
"found": false,
"participant": null,
"lookupTimestamp": "2026-05-07T10:30:00Z"
}
HTTP 404 sa nepoužíva na vyjadrenie, že účastník neexistuje v Peppol sieti. Hodnota 404 je vyhradená pre situácie, keď samotný endpoint alebo iný API objekt neexistuje.
Odporúčaný workflow pred odoslaním
Klient má pred odoslaním skontrolovať najmä:
- Či odpoveď obsahuje
found: true. - Či je vyplnený
participant.participantId. - Či
capabilitiesobsahujú požadovanýdocumentTypeId, ak klient posiela konkrétny typ dokumentu. - Až potom použiť
participant.participantIdakoreceiverParticipantIdpri odoslaní dokumentu.
Chybové stavy
| HTTP | Príčina a riešenie |
|---|---|
400 | Neplatný formát DIČ alebo neplatná kombinácia parametrov. |
401 | Neplatný alebo expirovaný token. |
503 | Peppol SML/SMP je dočasne nedostupný. Chyba je retryable. |
Pri tvorbe URL kódujte query hodnoty, najmä dlhý documentTypeId obsahujúci #. V cURL použite --get --data-urlencode. Hodnoty s ... v ukážkach sú skrátené pre čitateľnosť; pri reálnom volaní použite úplný identifikátor.