Práca s eFaktúramiVyhľadanie účastníka

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:

ParameterPovinnéPopis
dicánoSlovenské DIČ vo formáte SK + 10 číslic, napr. SK1234567890, alebo bez prefixu, napr. 1234567890.
schemeIdniePeppol schéma identifikátora. Predvolená hodnota je 0245. Pre vyhľadávanie cez DIČ sa používa 0245.
documentTypeIdnieVoliteľ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:

PoleTypPopis
foundbooleanInformácia, či bol účastník nájdený.
participantobject/nullÚdaje o nájdenom účastníkovi. Ak účastník nebol nájdený, hodnota je null.
participant.participantIdstringPeppol Participant ID použiteľné napr. ako receiverParticipantId.
participant.schemeIdstringSchéma identifikátora, napr. 0245.
participant.identifierstringIdentifikátor účastníka bez prefixu schémy.
participant.registeredAtdatetimeDátum registrácie účastníka, ak je dostupný.
participant.capabilitiesarrayZoznam podporovaných kombinácií documentTypeId, processId a transportProfile.
lookupTimestampdatetimeČ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ä:

  1. Či odpoveď obsahuje found: true.
  2. Či je vyplnený participant.participantId.
  3. Či capabilities obsahujú požadovaný documentTypeId, ak klient posiela konkrétny typ dokumentu.
  4. Až potom použiť participant.participantId ako receiverParticipantId pri odoslaní dokumentu.

Chybové stavy

HTTPPríčina a riešenie
400Neplatný formát DIČ alebo neplatná kombinácia parametrov.
401Neplatný alebo expirovaný token.
503Peppol 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.