Dokumentáció

Fejlesztőknek: API-referencia

A portál REST API-ja és a nemzeti SAPI-SK 1.0 interfész: hitelesítés, cégek, bizonylatok, webhookok, hibák és korlátok.

Bevezetés

A Verteco API REST alapú, HTTPS felett. A kérés és a válasz egyaránt JSON (UTF-8). Kezdje egy fiók, majd egy API-token létrehozásával, és egy percen belül elküldheti az első hívást. Minden útvonal az alábbi alap-URL-hez (base URL) képest értendő.

A teljes tesztkörnyezet (sandbox) a következő címen érhető el: test.peppol.verteco.digital. Ugyanúgy viselkedik, mint az éles környezet, és ezen felül teszteszközöket (a Szlovák Köztársaság Pénzügyi Igazgatóságának (Finančná správa, FS) webhookja, ellenőrző token (Verifikačný údaj), cég eltávolítása) és egy szimulált szolgáltatóválasztást kínál az FS portál (VPDS) helyett.

Alap-URL (base URL)
https://peppol.verteco.digital/api/v1
Verzió
v1 (az útvonalban). A visszafelé nem kompatibilis változások új verzió alatt jelennek meg.
Protokoll
csak HTTPS · TLS 1.2+ · TLS A+
Formátum
application/json (UTF-8)
Hitelesítés
cookie alapú munkamenet (portál) vagy Bearer token (szerver-szerver)
Időbélyegek
ISO-8601 (UTC), pl. 2026-06-03T09:40:27Z

Tanúsított Access Point

Valódi Peppol hozzáférési pont (Access Point, Seat ID PSK001128), nem viszonteladó. Sikeresen teljesítettük az OpenPeppol megfelelőségi tesztjét (19/19), és éles üzemben vagyunk.

Érvényes bizonylatok

Szerveroldali EN 16931 + Peppol BIS 3.0 Schematron-validáció minden fogadott ÉS küldött bizonylaton. A bizonylatot előzetesen is ellenőrizheti: a nyilvános validátor a /validator címen fut (API-ként: POST /api/v1/public/peppol-validate); a hibákat a konkrét szabállyal együtt adjuk vissza (pl. BR-CO-15).

Több cég egy fiókban (multi-tenant)

Egy fiók és egy token N céghez, ideális SaaS-, ERP-rendszerek és könyvelők számára.

SK TDD automatikusan

Az adóhatósági jelentést (corner-5 / TDD) az Ön nevében állítjuk elő és küldjük el a Pénzügyi Igazgatóságnak (FS).

Géppel olvasható interfész (OpenAPI 3.1): /api/v1/openapi.json. Importálja Postmanbe, nyissa meg a Swagger Editorban, vagy generáljon típusos klienst tetszőleges nyelven (TS, Java, PHP, Python…) az openapi-generator eszközzel. A portál API-t és a SAPI-SK-t is lefedi.

Gyors kezdés

A fiókot és az API-tokent is a portálon (böngészőben) hozza létre. Az integráció ezután kizárólag az API-tokenen keresztül működik. Az alkalmazásának nem kell regisztrációt, bejelentkezést vagy jelszavakat kezelnie.

  1. 1

    Hozzon létre fiókot a portálon

    Regisztráljon az e-mail-címével, és erősítse meg az e-mailben kapott hivatkozással.
  2. 2

    Generáljon API-tokent

    A portálon nyissa meg az API tokeny → Vytvoriť (API-tokenek → Létrehozás) menüpontot. A vpt_… token csak egyszer jelenik meg. Tárolja biztonságosan.
  3. 3

    Küldje el az első hívást

    Használja a tokent az Authorization fejlécben:
    javascript
    const res = await fetch('https://peppol.verteco.digital/api/v1/companies', {
    headers: { Authorization: 'Bearer vpt_8f2a…' },
    });
    const companies = await res.json();

Tesztkörnyezet (sandbox)

A tesztbizonylatok 60 nap után automatikusan törlődnek: a környezet kipróbálásra szolgál, nem archiválásra. Ez a megőrzési szabály az éles portálra nem vonatkozik.

A SAPI mock sandbox (lásd lent) mellett egy teljes értékű tesztkörnyezetet is üzemeltetünk, e portál teljes másolatát külön adatokkal, ahol a teljes folyamatot (regisztráció → cég → küldés → fogadás → értesítések) végigpróbálhatja az éles környezetre gyakorolt bármilyen hatás nélkül.

Regisztráció
nincs megerősítő e-mail; a fiók azonnal használható
Cég jóváhagyása
automatikus, közvetlenül a felületen vagy az API-n keresztül; nincs szolgáltatóválasztás a Szlovák Köztársaság Pénzügyi Igazgatóságának (Finančná správa, FS) portálján és nincs eID; közvetlenül egy áfaazonosítóval (IČ DPH) rendelkező cég létrehozása után küldhet és fogadhat is
Hálózati regisztráció
automatikus, a Peppol teszthálózatba. Figyeljen az azonosító két rétegére: az API és a portál ugyanazt a formátumot használja, mint az éles környezet (peppolParticipantId = 0245:<DIČ számjegyei>, ahol a DIČ a szlovák adóazonosító szám; az integrációs kódja nem változik); a teszt SMP/SML-ben a cég technikailag 9950:SK<DIČ> formában van regisztrálva, mert a 0245 séma a Pénzügyi Igazgatóság ellenőrző kódját igényli, amely a tesztkörnyezetben nem létezik. Az éles környezetben a 0245:<DIČ számjegyei> azonosító csak az eID-vel végzett szolgáltatóválasztás után kerül regisztrálásra az éles Peppol hálózatban
Validáció
valódi: EN 16931 + Peppol BIS 3.0 szabályok, ugyanúgy, mint az éles környezetben
Kézbesítés
szimulált: a bizonylat soha nem hagyja el a tesztszervert; ha a címzett (áfaazonosító) létezik a tesztkörnyezetben, a számla fogadott számlaként kézbesítésre kerül hozzá (e-maillel, PDF-fel és webhookkal együtt)
Kézbesítési igazolás (MLS)
szimulált, kifejezetten SANDBOX jelöléssel
E-mailek
valóban elküldésre kerülnek (a megadott címekre), [TEST] előtaggal
Ár
ingyenes, tesztelési korlátok nélkül

Minden, ami itt működik, ott is működik: a portál, a REST API, a SAPI-SK 1.0, a webshop-bővítmények és a webhookok. Csak váltsa át az integrációjában a domaint a test.peppol.verteco.digital címre, és használja a tesztkörnyezetben létrehozott tokeneket. Ideális integrációfejlesztéshez, CI-tesztekhez és a könyvelők betanításához az éles bevezetés előtt.

Megjegyzés: a tesztdomain peremvédelme (edge) a generikus User-Agent: Python-urllib és User-Agent: Java/1.8.x fejléceket (a Java 8HttpsURLConnection alapértelmezett User-Agentje) HTTP 403 "error code: 1010" válasszal blokkolja, még mielőtt a kérés elérné az API-nkat; az éles peppol.verteco.digital domain átengedi őket. Állítson be saját User-Agentet: Java alatt vagy a -Dhttp.agent=my-app/1.0 JVM-kapcsolóval (kódmódosítás nélkül; a Java hozzáfűzi a "Java/1.8" részt, és az így kapott "my-app/1.0 Java/1.8.0_xxx" átjut, csak a "Java/1.8" kezdetű fejléc van blokkolva), vagy a kapcsolaton a conn.setRequestProperty("User-Agent", "my-app/1.0") hívással. A gyakori kliensek (requests, httpx, Java 11+, Apache HttpClient, okhttp, axios, Go, PHP, curl) változtatás nélkül működnek.

Miért kerülnek a cégek automatikusan jóváhagyásra

A Pénzügyi Igazgatóságnak nincs tesztkörnyezete a VPDS portálhoz: a szolgáltatóválasztás a vpds.financnasprava.sk portálon csak élesben fut, és a slovensko.sk (eID) rendszeren keresztül ellenőrzik, így élesben nem lehet tetszőleges, nem saját céget „kiválasztani”. Hogy az integrációját mégis tesztelhesse, ezt a lépést a tesztkörnyezetben szimuláljuk: minden létrehozott cég automatikusan jóváhagyásra kerül (FS-nél történő választás nélkül), így beállíthat küldőt és címzettet is, és végigmehet a teljes folyamaton.

Az FS webhookok (szolgáltatóválasztás) teszteléséhez saját megfelelőnk van a Pénzügyi Igazgatóság eszközéhez: test.peppol.verteco.digital/sandbox-nastroje. Itt érvényes, FS-stílusú ellenőrző tokent (Verifikačný údaj) generálhat, és teljes webhookot küldhet a saját végpontjára, pontosan úgy, ahogy az FS portál teszi egy valódi választásnál. A teszteléshez létrehozott cégek pedig kiregisztrálhatók (a portálról és a teszt SMP-ből), éppen a Pénzügyi Igazgatóság oldalán hiányzó tesztmód miatt.

A tesztkörnyezet nem része az éles Peppol hálózatnak: a cégek egy külön teszthálózatban (teszt SMP/SML) vannak regisztrálva, semmi nem kerül elküldésre valódi végpontokra, és az adatai bármikor törölhetők. Ne használja valódi számlákra; azokhoz az éles környezet a peppol.verteco.digital címen érhető el, ahol az éles hálózati regisztrációt a Pénzügyi Igazgatóság portálján végzett, eID-vel megerősített szolgáltatóválasztás oldja fel.

Hitelesítés

Az integrációja API-tokennel hitelesít az Authorization: Bearer vpt_… fejlécben. A tokent a portálon hozza létre (API-tokenek); formátuma vpt_ + 40 hexadecimális karakter, mi csak a SHA-256 hash-ét tároljuk, és ugyanolyan hozzáférése van, mint az Ön fiókjának. Tesztelje az /auth/me hívással:

curl
curl https://peppol.verteco.digital/api/v1/auth/me -H 'Authorization: Bearer vpt_8f2a…'
# 200 → { "id": "…", "email": "vy(at)firma.sk" }   (token works)

Hiányzó vagy érvénytelen token esetén az API a következőt adja vissza:

json
// 401 Unauthorized
{ "error": "unauthorized", "message": "Authentication required" }
A portál (böngésző) belső munkamenet-cookie-t használ (portal_session, JWT, 7 nap); szerver-szerver integrációhoz erre nincs szüksége. Hitelesítés nélkül nyilvános a /ping, az /openapi.json és a /public/* alatti végpontok (a peppol-check lekérdezés, a peppol-validate validátor, részletek a Nyilvános eszközök szakaszban, valamint a szolgáltatás állapota a status végponton); minden más munkamenetet vagy Bearer tokent igényel.

Konvenciók és formátumok

TípusFormátumPélda
idUUID (string)08dd6c1e-…
időbélyegekISO-8601 Instant (UTC)2026-06-03T09:40:27Z
issueDatedátum (YYYY-MM-DD)2026-06-03
totalAmountdecimális szám120.00
hiányzó értékeknull (nem kihagyott mező)"dic": null

Lapozás és idempotencia

A /companies és a /companies/{id}/documents támogatja az opcionális ?page&limit paramétereket (a válasz JSON tömb marad; a teljes darabszám az X-Total-Count / X-Total-Pages fejlécekben van). Paraméterek nélkül a teljes tömböt adják vissza, a bizonylatokat createdAt szerint csökkenő sorrendben; a /tokens mindig a teljes tömböt adja vissza. Az Idempotency-Key fejlécet a nemzeti interfész, a SAPI-SK támogatja a POST /sapi/document/send végponton; programozott küldéshez pontosan ezt használja.

Hibák

A hibák egységes alakúak, géppel olvasható error kóddal. A validációs hibák egy fields térképet is tartalmaznak (mezőnként az első hiba).

json
// business error
{ "error": "invalid_credentials", "message": "Invalid email or password" }

// validation error (400); field messages are returned in Slovak ("IČO musí byť 8 číslic" = "IČO must be 8 digits")
{ "error": "validation_failed", "message": "Some fields are invalid",
"fields": { "ico": "IČO musí byť 8 číslic" } }

HTTP-státuszok

200 / 201 / 204
siker (OK / Created / No Content)
400
érvénytelen bemenet (lásd error / fields)
401
hiányzó vagy érvénytelen hitelesítés
403
nincs elegendő jogosultság (szerepkör)
404
az erőforrás nem létezik, vagy nincs hozzá hozzáférése
405
a HTTP-metódus nem támogatott ezen az útvonalon
409
ütközés (az IČO / e-mail már létezik)
415
nem támogatott Content-Type (az XML végpontok application/xml-t várnak)
429
kérésszám-korlát (rate limit) túllépve (RateLimit-* és Retry-After fejlécek, JSON törzs: rate_limited)
Az API-nk mindig JSON-nal válaszol, error mezővel. A JSON törzs nélküli válasz (HTML vagy szöveg, például error code: 1010 403-as státusszal, vagy 502/504 telepítés közben) nem az API-tól, hanem az előtte álló infrastruktúrától érkezett (peremvédelem, gateway). A 403/1010 tipikus oka egy generikus könyvtári User-Agent (Python-urllib, Java/1.8.x a tesztdomainen); a megoldást a Tesztkörnyezet szakasz írja le.

Teljes hibakatalógus

KódHTTPMikor
validation_failed400a törzs nem ment át a validáción (lásd fields)
unauthorized401hiányzó vagy érvénytelen API-token
forbidden403a művelet owner/admin szerepkört igényel
company_not_found404a cég nem létezik, vagy Ön nem tagja
ico_taken409ezzel az IČO-val (cégjegyzékszám) már létezik cég
ico_immutable400az IČO nem módosítható
company_dic_missing400küldési ellenőrzés a cég DIČ-je (szlovák adóazonosító szám) nélkül
token_invalid400az ellenőrző token (Verifikačný údaj, aláírás) nem egyezik
document_not_found404a bizonylat nem létezik
token_not_found404az API-token nem létezik / nem az Öné
rate_limited429túl sok kérés

Kérésszám-korlátok (rate limit)

Az API-t kérésszám-korlátozás védi 60 másodperces ablakban (példányonként). A korlátot és a fennmaradó keretet minden válasz fejlécekben adja vissza; túllépés esetén az API 429 Too Many Requests választ ad Retry-After fejléccel.

Rendes hívások
dinamikus korlát nagy ráhagyással, API-tokenenként (vagy munkamenetenként, egyébként IP-címenként); az aktuális értéket a RateLimit-Limit fejléc adja vissza
Hitelesítés (/auth/*)
szigorúbb korlát IP-címenként (brute force ellen; kivéve /auth/me és /auth/logout)
RateLimit-Limit
korlát az ablakban
RateLimit-Remaining
hány kérés maradt
RateLimit-Reset
másodpercek az ablak újraindulásáig
Retry-After
másodpercek a következő próbálkozásig (429 esetén)
http
HTTP/2 429 Too Many Requests
RateLimit-Limit: <limit in the window>
RateLimit-Remaining: 0
RateLimit-Reset: 37
Retry-After: 37

{ "error": "rate_limited", "message": "Too many requests. Slow down." }

API-tokenek

Átlátszatlan (opaque) vpt_… tokenek szerver-szerver hozzáféréshez. A nyílt szöveg csak egyszer jelenik meg, a létrehozáskor. Mentse el. Mi csak a SHA-256 hash-t és egy 12 karakteres előtagot tárolunk a megjelenítéshez.

GET/tokensmunkamenet / token

Az Ön aktív tokenjeinek listája (a titok nélkül), createdAt szerint csökkenő sorrendben.

POST/tokensmunkamenet / token

Tokent hoz létre; a nyílt szöveget adja vissza (csak egyszer).

MezőTípusKötelezőLeírás
namestringigena token neve, max. 128
curl
curl -X POST https://peppol.verteco.digital/api/v1/tokens -b cookies.txt \
-H 'Content-Type: application/json' -d '{"name":"moja-appka"}'
# 201 Created
{ "id":"…","name":"moja-appka","token":"vpt_8f2a…","prefix":"vpt_8f2a3b…","createdAt":"…" }
DELETE/tokens/{id}munkamenet / token

Visszavonja a tokent. 204-et ad vissza.

Hibák: token_not_found (404)

Cégek

Az Ön által kezelt, cégjegyzékszámmal (IČO) / áfaazonosítóval (IČ DPH) azonosított cégek. A hozzáférés a tagsághoz kötött: csak azokat a cégeket látja, amelyeknek tagja. A cég létrehozója lesz annak owner-e.

GET/companiesmunkamenet / token

Azoknak a cégeknek a listája, amelyeknek tagja (az Ön szerepkörével).

POST/companiesmunkamenet / token

Céget ad hozzá; Ön lesz a tulajdonosa, status = pending_verification.

MezőTípusKötelezőLeírás
icostringigenpontosan 8 számjegy
dicstringigenformátum: SK + 10 számjegy (pl. SK2121358349)
legalNamestringigenhivatalos (cég)név, max. 500
registeredAddressstringnema székhely címe, max. 1000
curl
curl -X POST https://peppol.verteco.digital/api/v1/companies \
-H 'Authorization: Bearer vpt_8f2a…' -H 'Content-Type: application/json' \
-d '{"ico":"53412834","dic":"SK2121358349","legalName":"Verteco digital services, s. r. o."}'

# 201 Created
{ "id":"08dd…","ico":"53412834","dic":"SK2121358349","legalName":"…",
"registeredAddress":null,"peppolParticipantId":null,
"status":"pending_verification","role":"owner","createdAt":"2026-06-03T09:40:27Z" }

Hibák: ico_taken (409) · validation_failed (400)

GET/companies/{id}munkamenet / token

A cég részletei (tagnak kell lennie).

PUT/companies/{id}owner / admin

Frissíti a céget. Az IČO nem módosítható (meg kell egyeznie a meglévő értékkel).

Hibák: forbidden (403) · ico_immutable (400) · company_not_found (404)

A status mező

pending_verification
létrehozás után; a küldés még nincs feloldva
active
ellenőrzött, a küldés feloldva

Tagi szerepkör

owner
a cég létrehozója (teljes hozzáférés)
admin
adminisztrátor (szerkesztés, webhookok, ellenőrzés)
member
tag (olvasás)
viewer
csak olvasás
Az „owner / admin” jelölésű műveletek az owner és az admin szerepkör számára is elérhetők (cégkezelő).

Küldési ellenőrzés (ellenőrző token, Verifikačný údaj)

Küldés előtt a céget ellenőrizni kell az ellenőrző tokennel (Verifikačný údaj, VÚ), amely a Szlovák Köztársaság Pénzügyi Igazgatósága (Finančná správa, FS) által kiállított aláírt token. Sikeres ellenőrzés után a cég status mezője active értékre vált, és a küldés feloldódik.

POST/companies/{id}/verificationowner / admin

Az ellenőrző token (Verifikačný údaj) önálló ellenőrzése. Siker esetén a status értékét active-ra állítja.

MezőTípusKötelezőLeírás
tokenstringigenVÚ = hexadecimális aláírás (prod/pPFS 1024 hex, test/tPFS 768 hex)
curl
curl -X POST https://peppol.verteco.digital/api/v1/companies/{id}/verification \
-H 'Authorization: Bearer vpt_8f2a…' -H 'Content-Type: application/json' \
-d '{"token":"<1024-hex VÚ>"}'

# 200 OK
{ "companyId":"08dd…","status":"active","sendingVerified":true,
"verificationMethod":"self","verifiedAt":"2026-06-15T…Z" }

Hibák: company_dic_missing (400) · token_invalid (400) · forbidden (403)

Bizonylatok

A cég Peppol bizonylatainak (fogadott és küldött) naplója. Ahogy a számlák áthaladnak a hozzáférési ponton (Access Point), úgy telik meg. A cégtagsághoz kötött, createdAt szerint csökkenő sorrendben.

GET/companies/{id}/documentsmunkamenet / token

A cég bizonylatainak listája. Opcionális szűrő: ?direction=sent|received.

curl
curl 'https://peppol.verteco.digital/api/v1/companies/{id}/documents?direction=received' \
-H 'Authorization: Bearer vpt_8f2a…'
# 200 OK
[ { "id":"…","direction":"received","peppolMessageId":"…","docTypeId":"…",
  "senderId":"0088:7300010000001","receiverId":"0245:2121358349",
  "invoiceNumber":"2026001","issueDate":"2026-06-03",
  "currency":"EUR","totalAmount":120.00,"status":"received","createdAt":"…" } ]
GET/companies/{id}/documents/{docId}munkamenet / token

Egy bizonylat részletei.

Hibák: document_not_found (404)

GET/companies/{id}/documents/{docId}/downloadmunkamenet / token

A számla önálló, nyomtatható HTML változata. ?inline=1 → a böngészőben jeleníti meg, egyébként letölti.

text/html típust ad vissza, a Content-Disposition fejlécben a fájlnév faktura-<číslo>.html (číslo = a számla száma).

SAPI-SK 1.0 (nemzeti interfész)

A SAPI-SK a szabványosított nemzeti REST interfész az ügyfél/ERP-rendszer és a hozzáférési pont (Access Point) között (sapi-sk.sk). Teljes körűen implementáljuk. Ez azt jelenti, hogy Ön nincs a saját API-formátumunkhoz kötve, és az integrációt egyszer írja meg, bármely SAPI-SK hozzáférési ponthoz.

Alap-URL (base URL)
https://peppol.verteco.digital/sapi
Hitelesítés
OAuth2 client_credentials → rövid élettartamú access token (JWT)
client_id
az Ön API-tokenjének UUID-ja (az API-tokenek szakaszban / a vezérlőpulton látható)
client_secret
maga a portálról származó vpt_… token
Verzió
1.3 (10 művelet: 4× hitelesítés, 6× bizonylatok)
A SAPI access token külön kulccsal van aláírva (nem a portál vpt_ tokenje és nem is munkamenet). Az API-token visszavonása a portálon azonnal érvényteleníti az /auth/token és az /auth/renew végpontot is.

Sandbox (próbakörnyezet)

Kipróbálná a SAPI-SK-t regisztráció nélkül és kockázat nélkül? Használja a nyilvános sandbox hitelesítő adatokat. A sandbox pontosan úgy validálja a kéréseket, mint az éles környezet, de soha semmit nem küld a Peppol hálózatba, és nem dolgozik valódi adatokkal; valósághű mock válaszokat ad vissza. Ideális fejlesztéshez, CI-hoz és az integráció bevezetéséhez.

client_id
sandbox
client_secret
sandbox
send
teljes szerződésvalidáció + mock 202 (semmi nem kerül kézbesítésre)
receive
1 mintabizonylat sandbox-doc-0001 a feldolgozás és az acknowledge teszteléséhez
curl
# 1) sandbox token (no registration required)
curl -X POST https://peppol.verteco.digital/sapi/auth/token \
-H 'Content-Type: application/json' \
-d '{ "client_id": "sandbox", "client_secret": "sandbox",
      "grant_type": "client_credentials" }'

# 2) mock send: it is validated, but NOTHING is actually delivered
curl -X POST https://peppol.verteco.digital/sapi/document/send \
-H 'Authorization: Bearer <sandbox access_token>' \
-H 'X-Peppol-Participant-Id: 0245:0000000000' \
-H 'Content-Type: application/json' \
-d '{ "metadata": { "documentId": "TEST-1",
        "documentTypeId": "urn:…::Invoice##…::2.1",
        "senderParticipantId": "0088:sandbox-sender",
        "receiverParticipantId": "0088:sandbox-receiver" },
      "payload": "<Invoice>…</Invoice>", "payloadFormat": "XML" }'
# 202 { "providerDocumentId": "sandbox-…", "status": "ACCEPTED", … }

# 3) sample inbox + detail of the sample document
curl https://peppol.verteco.digital/sapi/document/receive \
-H 'Authorization: Bearer <sandbox access_token>'
curl https://peppol.verteco.digital/sapi/document/receive/sandbox-doc-0001 \
-H 'Authorization: Bearer <sandbox access_token>'
A sandbox tokenek elszigeteltek: soha nem kézbesítenek a Peppol hálózatba, és soha nem látnak valódi bizonylatokat. Éles küldéshez használja a portálról származó client_id/client_secret adatokat (lent).

Hitelesítés

POST/sapi/auth/tokenclient_credentials

A client_id + client_secret párost access tokenre (15 perc) és refresh tokenre (30 nap) cseréli. Tárolja a tokent, és használja a teljes 15 percig: minden hívásnál új tokent kérni szükségtelen többletterhelés (a kérésszám-korlát az /auth/token hívásokat is számolja).

curl
curl -X POST https://peppol.verteco.digital/sapi/auth/token \
-H 'Content-Type: application/json' \
-d '{ "client_id": "<token UUID>", "client_secret": "vpt_8f2a…",
      "grant_type": "client_credentials" }'
# 200 OK
{ "access_token": "eyJhbGciOi…", "token_type": "Bearer",
"expires_in": 900, "refresh_token": "eyJhbGciOi…" }

Hibák: SAPI-AUTH-001 (401) · SAPI-AUTH-003 (401: a kulcs engedélyezőlistáján kívüli IP-cím) · SAPI-VAL-001 (400)

GET/sapi/auth/token/statusBearer (access)

Az access token érvényessége és lejárata; should_refresh = true, ha kevesebb mint 3 perc van hátra.

POST/sapi/auth/renewrefresh token

Új access + refresh tokent ad ki. Sikertelen, ha a mögöttes API-tokent visszavonták.

json
// body
{ "refresh_token": "eyJhbGciOi…" }
POST/sapi/auth/revoke

Mindig sikert ad vissza (RFC 7009). A végleges leállító kapcsoló az API-token visszavonása a portálon.

Bizonylat küldése

POST/sapi/document/sendBearer (access)

Peppol üzleti bizonylatot (UBL / BIS 3.0) küld a címzettnek a hozzáférési pontunkon keresztül. A küldés fail-closed: a cégnek ellenőrzött ellenőrző tokennel (Verifikačný údaj) kell rendelkeznie.

Kötelező fejlécek:

FejlécLeírás
AuthorizationBearer <access_token>
X-Peppol-Participant-Ida résztvevő, akinek a nevében küld (pl. 0245:2121358349, a DIČ (szlovák adóazonosító szám) számjegyei az "SK" előtag nélkül)
Idempotency-Keyegyedi kulcs; az ismételt hívás az eredeti eredményt adja vissza
curl
curl -X POST https://peppol.verteco.digital/sapi/document/send \
-H 'Authorization: Bearer eyJ…' \
-H 'X-Peppol-Participant-Id: 0245:2121358349' \
-H 'Idempotency-Key: 7b1f0e2a-…' \
-H 'Content-Type: application/json' \
-d '{ "metadata": {
        "documentId": "INV-2026-001",
        "documentTypeId": "urn:…::Invoice##…::2.1",
        "processId": "urn:…:bis:billing:3.0",
        "senderParticipantId": "0245:2121358349",
        "receiverParticipantId": "0088:7300010000001",
        "creationDateTime": "2026-06-17T10:00:00Z" },
      "payload": "<Invoice …>…</Invoice>",
      "payloadFormat": "XML" }'
# 202 Accepted
{ "providerDocumentId": "…", "status": "ACCEPTED",
"receivedAt": "2026-06-17T10:00:01Z", "timestamp": "…" }
# when status is "REJECTED", the response also carries a "detail" field
# with the rejection reason (validation rules, e.g. BR-CO-15)
metadata vs. UBL: a metadata mezői útválasztási és technikai mezők: a documentId az Ön belső azonosítója, nem a számla száma. Az üzleti adatok (számlaszám cbc:ID, kiállítás dátuma, fizetési határidő, teljesítés dátuma, pénznem, összeg) közvetlenül az UBL payloadból származnak; ezekből semmit nem küld a metadata mezőben, és a portálon való megjelenítéshez és a webhookokhoz mindig az UBL az igazság forrása.

Hibák: SAPI-AUTH-002 (401) · SAPI-AUTH-003 (403) · SAPI-VAL-001 (400) · SAPI-PROC-001 (502) · SAPI-PROC-002 (503) · SAPI-PROC-500 (500: ne próbálja újra, jelentse a correlation_id-t)

Bizonylatok fogadása

GET/sapi/document/receiveBearer (access)

A fogadott bizonylatok listája (a legrégebbi elöl); a metadata az invoiceNumber mezőt is tartalmazza, így a bizonylat a payload letöltése nélkül is azonosítható. Query: ?pageToken, ?limit (max. 200), ?status (received / acknowledged; kis- és nagybetűre érzéketlen, bármely más érték SAPI-VAL-001 hibát ad), ?invoiceNumber (pontos egyezés a cbc:ID-vel), ?since és ?until (ISO-8601 instant; időablak a fogadás időpontja szerint, pl. az utolsó 5 nap bizonylatai, tömeges letöltés külső archiváláshoz vagy a könyvelés rekonstrukciójához), ?deliveryDateFrom és ?deliveryDateTo (ISO-8601 dátum; szűrés a bizonylatban megadott teljesítési dátum szerint). Az X-Peppol-Participant-Id fejléc kötelező.

json
// 200 OK
{ "documents": [ { "documentId":"…","documentTypeId":"…",
  "senderParticipantId":"0088:…","receiverParticipantId":"0245:…",
  "creationDateTime":"2026-06-17T…Z" } ],
"nextPageToken": "50" }
GET/sapi/document/receive/{documentId}Bearer (access)

Részletek a payloaddal együtt (nyers XML, pontosan úgy, ahogy a Peppolon keresztül érkezett).

Hibák: SAPI-RES-001 (404) · SAPI-RES-002 (404: a payload nincs archiválva)

POST/sapi/document/receive/{documentId}/acknowledgeBearer (access)

Megerősíti, hogy az Ön rendszere átvette a bizonylatot. Idempotens.

Küldött bizonylatok állapota

GET/sapi/discovery?receiverId=0245:2121358349

Előzetes ellenőrzés küldés előtt: regisztrálva van-e a címzett a Peppol hálózatban, és milyen bizonylattípusokat tud fogadni? Ugyanaz az SML/SMP lekérdezés, amelyet a hozzáférési pont végez; a receiverId Peppol ID-t, áfaazonosítót (IČ DPH) vagy puszta DIČ-et fogad. Válasz: {registered, participantId, smp, documentTypes, checkedAt}. Az X-Peppol-Participant-Id fejléc itt nem szükséges.

GET/sapi/document/sentBearer (access)

A küldött bizonylatok kézbesítési állapota: pending (átadás a hálózatnak folyamatban) → submitted → delivered / rejected (a címzett AP-jától érkező kézbesítési igazolás (MLS) alapján); failed = átviteli hiba (az ugyanazzal az Idempotency-Key-jel végzett újrapróbálkozás újra küld). Query: ?pageToken, ?limit, ?status (pending / submitted / sent / delivered / rejected / failed; kis- és nagybetűre érzéketlen, bármely más érték SAPI-VAL-001 hibát ad), ?invoiceNumber (pontos egyezés a cbc:ID-vel: egy konkrét számla állapota egyetlen hívással), ?since és ?until (ISO-8601 instant; időablak), ?deliveryDateFrom és ?deliveryDateTo (ISO-8601 dátum; szűrés teljesítési dátum szerint).

json
// 200 OK
{ "documents": [ {
  "documentId": "…",
  "receiverParticipantId": "0245:1084695645",
  "peppolMessageId": "befc9112-…",
  "status": "delivered",
  "statusDateTime": "2026-07-09T14:52:31Z",
  "creationDateTime": "2026-07-09T14:52:12Z" } ],
"nextPageToken": null }

Hibák: SAPI-AUTH-002 (401) · SAPI-AUTH-003 (403) · SAPI-VAL-001 (400: érvénytelen since)

Tömeges küldés

POST/sapi/document/batchBearer (access)

Legfeljebb 100 bizonylat egyetlen hívásban. Minden elem a teljes egyedi küldési logikán megy át (idempotencia az itemId + idempotencyKey alapján, foglalás, beküldés, ítélet), és saját eredményt ad vissza; egy elem hibája nem állítja meg a többit. Az elemek feldolgozása szekvenciális; a sikertelen elemeket ugyanazzal az idempotencyKey-jel próbálja újra.

json
// request
{ "documents": [ {
  "itemId": "fa-2026-001",
  "idempotencyKey": "fa-2026-001",
  "metadata": { "documentId": "2026001", "documentTypeId": "…", "processId": "…",
                "senderParticipantId": "0245:2121358349", "receiverParticipantId": "0245:1084695645" },
  "payload": "<Invoice …>", "payloadFormat": "XML" } ] }

// 202 Accepted
{ "total": 2, "accepted": 1, "rejected": 1, "failed": 0,
"results": [
  { "itemId": "fa-2026-001", "ok": true,  "providerDocumentId": "…", "status": "ACCEPTED" },
  { "itemId": "fa-2026-002", "ok": false, "errorCode": "SAPI-AUTH-003", "errorMessage": "…" } ] }

Hibák: SAPI-AUTH-002 (401) · SAPI-AUTH-003 (403) · SAPI-VAL-001 (400: üres vagy túl nagy lista)

Hibamodell

Minden SAPI hiba egységes borítékot használ kategóriával, stabil kóddal, egy retryable jelzővel és egy correlation_id értékkel a támogatás számára.

json
{ "error": {
  "category": "AUTH",
  "code": "SAPI-AUTH-001",
  "message": "Invalid client credentials.",
  "retryable": false,
  "correlation_id": "b4191dfc-…" } }
Megjegyzés: küldéskor az üzleti bizonylatot kézbesítjük; a küldött bizonylatok adóhatósági jelentésének (TDD) C2 oldala előkészítés alatt áll. A fogadáskor esedékes adóhatósági jelentést (C3) automatikusan előállítjuk és benyújtjuk a Szlovák Köztársaság Pénzügyi Igazgatóságának (Finančná správa, FS).

Értesítések és webhookok

Fogadott számláról a céget e-mailben vagy webhookkal (POST az Ön URL-jére) értesíthetjük. A kézbesítés tartós: kimenő várólistában tároljuk, és aszinkron módon kézbesítjük (15 s időtúllépés); hiba esetén legfeljebb 8× újrapróbáljuk exponenciális visszatartással (30 s → max. 1 óra), majd dead-letter. Az Ön szerverének kimaradása így nem veszíti el az értesítést; a következő próbálkozásnál kézbesítjük. Az SSRF-védelem blokkolja a loopback/helyi címeket; a webhook-URL-nek nyilvánosnak kell lennie.

GET/companies/{id}/notificationsmunkamenet / token

Értesítési beállítások: { webhookUrl, notificationEmail, hasSecret }.

PUT/companies/{id}/notificationsowner / admin

Mindkét csatornát beállítja (üres string kikapcsolja az adott csatornát).

MezőTípusKötelezőLeírás
webhookUrlstringnemüres vagy http(s) URL, max. 512
notificationEmailstringnemérvényes e-mail, max. 256
GET/companies/{id}/webhookmunkamenet / token

Webhook-konfiguráció: { url, hasSecret } (a titok nélkül).

PUT/companies/{id}/webhookowner / admin

Beállítja a webhook-URL-t (automatikusan aláíró titkot generál, ha még nincs).

MezőTípusKötelezőLeírás
urlstringigenhttp(s) URL, max. 512
curl
curl -X PUT https://peppol.verteco.digital/api/v1/companies/{id}/webhook \
-H 'Authorization: Bearer vpt_8f2a…' -H 'Content-Type: application/json' \
-d '{"url":"https://vas-system.sk/peppol/webhook"}'
# 200 OK { "url":"https://vas-system.sk/peppol/webhook", "hasSecret": true }
DELETE/companies/{id}/webhookowner / admin

Eltávolítja a webhook-URL-t és a titkot is. 204-et ad vissza.

POST/companies/{id}/webhook/secretowner / admin

Új aláíró titkot generál, és EGYSZER adja vissza; tárolja el az X-Verteco-Signature ellenőrzéséhez.

json
// 200 OK
{ "secret": "vpt_8f2a…" }
POST/companies/{id}/webhook/testowner / admin

Szinkron módon tesztértesítést küld (webhook.test esemény, aláírva, SSRF-védelemmel) a tárolt URL-re, és visszaadja, MIT küldött és MI jött vissza. Ugyanezt indítja a cég részleteinél az „Otestovať webhook“ (Webhook tesztelése) gomb.

json
// 200 OK
{
"sent":     { "url": "https://vas-system.sk/peppol/webhook", "event": "webhook.test",
              "signed": true, "payload": "{…}" },
"received": { "status": 200, "body": "OK", "durationMs": 142, "error": null }
}
// 400 webhook_not_configured if no webhook URL is stored

Webhook payload

Fogadott (invoice.received) és küldött (invoice.sent) számla esetén is POST kérést küldünk ezzel a törzzsel; a típust az event mező különbözteti meg.

Két további esemény jelzi a hálózat ítéletét az Ön által küldött számláról: invoice.delivered (a címzett hozzáférési pontja kézbesítési igazolással (MLS) megerősítette a kézbesítést) és invoice.rejected (elutasítva, vagy a hálózat által, vagy a küldés előtti validáció során). A bizonylat és a cég azonosítóit hordozzák (documentId, invoiceNumber, receiverId, peppolMessageId, companyDic, peppolParticipantId), valamint a status mezőt, a statusDetail mezőt az elutasítás okával és a statusDateTime mezőt. Ezeknek köszönhetően nem kell lekérdezéssel figyelnie a küldött számlák állapotát.

A company.activated esemény akkor érkezik, amikor egy ügyfél befejezi a szolgáltatóválasztást a Szlovák Köztársaság Pénzügyi Igazgatóságának (Finančná správa, FS) portálján (VPDS); törzs: event, companyId, companyDic, peppolParticipantId, status, verifiedAt. A company.deactivated pedig akkor érkezik, amikor egy céget kiregisztrálnak a hálózatból (ugyanaz a törzs verifiedAt nélkül); részletek a /saas útmutatóban:

json
{
"event": "invoice.received",
"companyId": "08dd…",
"documentId": "…",
"invoiceNumber": "2026001",
"senderId": "0088:7300010000001",
"supplierName": "Dodávateľ s.r.o.",
"receiverId": "0245:2121358349",
"issueDate": "2026-06-03",
"dueDate": "2026-06-17",
"deliveryDate": "2026-06-03",
"currency": "EUR",
"totalAmount": "120.00",
"peppolMessageId": "…",
"companyDic": "SK2121358349",
"peppolParticipantId": "0245:2121358349"
}

A companyDic és a peppolParticipantId mező azonosítja azt a céget, amelyre az esemény vonatkozik (fontos azoknak a partnereknek, amelyek egyetlen webhook-URL-t használnak minden ügyfelükhöz).

A hálózat ítélete a küldött számláról:

json
{
"event": "invoice.delivered",          // or "invoice.rejected"
"companyId": "08dd…",
"companyDic": "SK2121358349",
"peppolParticipantId": "0245:2121358349",
"documentId": "…",
"invoiceNumber": "2026001",
"receiverId": "0245:2120049096",
"peppolMessageId": "…",
"status": "delivered",                 // or "rejected"
"statusDetail": null,                  // for rejected: the rejection reason
"statusDateTime": "2026-06-03T10:15:42Z"
}

Cég aktiválása az FS portálon (VPDS) végzett szolgáltatóválasztás után:

json
{
"event": "company.activated",          // company.deactivated has the same body without verifiedAt
"companyId": "08dd…",
"companyDic": "SK2121358349",
"peppolParticipantId": "0245:2121358349",
"status": "active",
"verifiedAt": "2026-06-03T10:02:11Z"
}

Az esemény neve az X-Verteco-Event fejlécben is szerepel. Az események teljes listája: invoice.received, invoice.sent, invoice.delivered, invoice.rejected, company.activated, company.deactivated és a webhook.test tesztesemény. Az ismeretlen eseménytípust javasoljuk félretenni és naplózni; új típust mindig előre bejelentünk.

A partneri értesítő webhook, az ügyfélkezelés (release, pause-sending) és a számlázási modell csak bejegyzett közvetítőknek érhető el, leírásuk itt található: Közvetítőknek.

Aláírás ellenőrzése

Ha a cégnek van titka, az X-Verteco-Signature fejlécet küldjük sha256=HMAC-SHA256(secret, raw body) formában (kisbetűs hex). A HMAC-et mindig a törzs pontos bájtjain számolja:

javascript
import crypto from 'node:crypto';

// rawBody = the exact bytes of the request body (not re-serialized JSON)
function verify(rawBody, header, secret) {
const expected = 'sha256=' +
  crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
return crypto.timingSafeEqual(Buffer.from(header), Buffer.from(expected));
}
A titkot a POST /companies/{id}/webhook/secret hívással kapja meg; ez egyszer adja vissza (a rotáció újat generál). Titok nélkül nem küldjük az X-Verteco-Signature fejlécet.

Tömeges beállítás: egy token, több cég

Egyetlen API-token (a fiókjához/e-mail-címéhez kötve) kezeli az összes tulajdonában lévő céget: aki a POST /companies hívással céget hoz létre, annak owner-e lesz, és beállíthatja a webhookját. A webhook cégenkénti (saját URL és titok), így ugyanazzal a tokennel tetszőleges számú céget csatlakoztathat:

bash
# 1) list of your companies (paginated, see Companies)
curl 'https://peppol.verteco.digital/api/v1/companies?page=0&limit=100' -H 'Authorization: Bearer vpt_8f2a…'

# 2) for EACH company {id}: set the webhook (and/or e-mail)
curl -X PUT https://peppol.verteco.digital/api/v1/companies/{id}/notifications \
-H 'Authorization: Bearer vpt_8f2a…' -H 'Content-Type: application/json' \
-d '{"webhookUrl":"https://vas-system.sk/peppol/webhook","notificationEmail":"faktury@firma.sk"}'

# 3) fetch the signing secret (returned ONLY ONCE) and store it for signature verification
curl -X POST https://peppol.verteco.digital/api/v1/companies/{id}/webhook/secret -H 'Authorization: Bearer vpt_8f2a…'
# → { "secret": "…" }
  • A tokennek az adott cég owner/admin szerepkörével kell rendelkeznie; olyan cégnél, ahol csak member/viewer, 403 forbidden választ ad (nincs bérlők közötti hozzáférés).
  • Minden cégnek adhat eltérő URL-t, vagy mindnek ugyanazt; a payloadban a companyId (és a receiverId) alapján különbözteti meg őket.
  • Több száz cég esetén tartsa be a tokenenkénti kérésszám-korlátot (az aktuális értéket a RateLimit-Limit fejléc adja vissza); kötegeljen visszatartással 429 esetén (Retry-After fejléc).
  • A webhook ténylegesen csak akkor sül el, amikor a cég aktív a Peppolban (miután a Pénzügyi Igazgatóságnál a Vertecót választotta szolgáltatónak) és így ténylegesen fogad bizonylatokat.

Adatmodellek

Az API által visszaadott objektumok mezői.

Company

MezőTípusKötelezőLeírás
idUUIDa cég azonosítója
icostringcégjegyzékszám (IČO, 8 számjegy)
dicstring|nulláfaazonosító (IČ DPH)
legalNamestringhivatalos név
registeredAddressstring|nulla székhely címe
peppolParticipantIdstring|nullPeppol résztvevő (regisztráció után)
statusstringpending_verification | active
rolestringowner | admin | member | viewer (az Ön szerepköre)
createdAtInstanta létrehozás időpontja

Document

MezőTípusKötelezőLeírás
idUUIDa bizonylat azonosítója
directionstringsent | received
peppolMessageIdstring|nullPeppol üzenetazonosító
docTypeIdstring|nullbizonylattípus (Peppol)
senderIdstring|nullküldő (scheme:id)
receiverIdstring|nullcímzett (scheme:id)
invoiceNumberstring|nullszámlaszám
issueDatedate|nulla kiállítás dátuma
currencystring|nullpénznem (pl. EUR)
totalAmountnumber|nullteljes összeg
statusstringfeldolgozási állapot
createdAtInstanta rögzítés időpontja

User · Token · Webhook

MezőTípusKötelezőLeírás
Userobject{ id: UUID, email: string }
Tokenobject{ id, name, prefix, lastUsedAt|null, createdAt }
Webhookobject{ url: string|null, hasSecret: boolean }

Szlovák konvenciók az implementálói gyakorlatból

A Peppol BIS Billing 3.0-n túl a szlovák ERP- és számlázószoftver-gyártók fokozatosan közös értelmezésre jutnak az opcionális mezőkről (az egyeztetés a Szlovák Köztársaság Pénzügyi Igazgatósága (Finančná správa, FS) által működtetett Slack-csatornán zajlik). Alább azok a konvenciók, amelyeket a portálunk már ma is tiszteletben tart: mindegyik érvényes BIS-konstrukció, változatlanul haladnak át az API-nkon, és a fogadott bizonylatokban az emberi olvasásra szánt előnézetben és a PDF-ben is megjelennek.

  • Adózott előleg levonása egy soron: negatív sor cac:DocumentReference elemmel, ahol a cbc:ID a kapott fizetésről szóló adóbizonylat számát hordozza, és a cbc:DocumentTypeCode értéke 130 (BIS: invoice line object identifier, soronként max. 1). Az ilyen sort tartalmazó fogadott számlát az előnézetünk az „odpočet zálohy – daňový doklad č. …” megjegyzéssel jeleníti meg (előleg levonása, adóbizonylat száma: …).
  • Adóbizonylat kapott fizetésről: a Pénzügyi Igazgatóság GYIK-je szerint az InvoiceTypeCode 388 (Tax invoice) kódot használják. Átmegy az API-nkon és a validáción is; a ki nem fizetett (nem adózott) előleg levonását a cbc:PrepaidAmount fejezi ki.
  • Számla érvénytelenítése (sztornó): 381 jóváíró számla (CreditNote) cac:BillingReference hivatkozással az eredeti számlára, nem negatív 380-as számla. Megjegyzés: a hálózat a 384-es kódot szlovák felek között elutasítja (a PEPPOL-EN16931-P0112 szabály csak német szervezetek között engedi); felfelé történő korrekcióhoz használja a 383-as terhelési értesítőt (debit note).
  • BT-83 PaymentID: a szlovák gyakorlat a /VS…/SS…/KS… fizetői hivatkozási formátum felé tart; a puszta változó szimbólum (variabilný symbol) is gyakori. A feldolgozásunk az értéket változatlanul továbbítja, és a fizetési adatokkal együtt jeleníti meg.
  • További tételadatok (gyártási tételszámok, sorozatszámok, lejárati dátumok) a cac:AdditionalItemProperty elemen keresztül, bevett nevekkel, például BatchNumber, SerialNumber, ExpirationDate.
Ezek közösségi konvenciók, nem kötelező nemzeti szabályok: a fogadó rendszernek az ezeket nem használó bizonylatot is kezelnie kell. Ahogy a Pénzügyi Igazgatóságnál folyó egyeztetés lezárul, ezt a szakaszt frissítjük (kövesse a /changelog oldalt).

Bizonylatmellékletek (BT-125)

Mellékletek (PDF, képek) base64 formában csatolhatók az e-számlához a cac:AdditionalDocumentReference elemben (BT-125). A mi korlátunk mellékletenként 25 MB. A Peppol nem határoz meg egységes, hálózatszintű korlátot; az egyes szolgáltatók sajátot állapítanak meg (FS GYIK 9/DPH/2025/IM, 67. példa), ezért nagyon nagy mellékleteknél ellenőrizze a másik fél szolgáltatójának korlátját is.

Nyilvános eszközök (validáció, címzett ellenőrzése)

Két segédvégpont hitelesítés nélkül: ugyanaz a validációs mag és ugyanaz az SML/SMP lekérdezés, amelyet a hozzáférési pontunk használ. CI-hoz és küldés előtti ellenőrzésekhez alkalmasak; szigorúbb nyilvános kérésszám-korlát vonatkozik rájuk.

POST/public/peppol-validatenyilvános

E-számla validációja az EN 16931 + Peppol BIS Billing 3.0 szerint (a szlovák szabályokkal együtt), ugyanúgy, mint a /validator felületi validátor. A kérés törzse = közvetlenül az UBL 2.1 XML (Invoice / CreditNote, vagy a teljes Peppol SBD), Content-Type application/xml, korlát 3 MB.

bash
curl -X POST https://peppol.verteco.digital/api/v1/public/peppol-validate \
-H "Content-Type: application/xml" \
--data-binary @faktura.xml
json
// 200 OK
{
"valid": false,
"errors": [
  "BR-CO-09: [BR-CO-09]-The Seller VAT identifier (BT-31) … shall have a prefix in accordance with ISO code…"
],
"warnings": []
}
// 400 = empty body (empty_document) or document over 3 MB (document_too_large)
GET/public/peppol-check?id=0245:2121358349nyilvános

A címzett ellenőrzése az éles Peppol hálózatban (SML/SMP lekérdezés): regisztrálva van-e, és milyen bizonylattípusokat tud fogadni? Az id paraméter Peppol ID-t (0245:…), áfaazonosítót (IČ DPH, SK…) vagy puszta DIČ-et (szlovák adóazonosító szám) fogad. Hitelesített megfelelője ERP-folyamatokhoz: GET /sapi/discovery.

json
// 200 OK
{
"registered": true,
"participantId": "0245:2121358349",
"smp": "sml.peppol-smp.sk",
"capabilities": ["Faktúra (BIS Billing)", "Dobropis", "Self-billing", "MLS doručenky"], // Slovak labels: Invoice (BIS Billing), Credit note, Self-billing, MLS delivery receipts
"lastCheckedAt": "2026-08-31T…Z"
}

Állapot (ping)

Nyilvános health-check végpont, monitorozásra alkalmas.

GET/pingnyilvános

A backend állapota.

json
// 200 OK
{ "service": "peppol-portal-backend", "status": "ok", "timestamp": "2026-06-17T…Z" }

Az összes komponens élő áttekintése a rendszerállapot oldalon érhető el.

Hamarosan

A küldési/fogadási mag (AS4) elkészült és tesztelt. A következő cégenkénti végpontok hozzáadása folyamatban van; alakjuk még változhat. A partnerek korai hozzáférést kaphatnak.
  • POST/companies/{id}/peppol/register· Manuális regisztráció a Peppol SMP-ben az API-n keresztül. Ma ez automatikusan történik a Szlovák Köztársaság Pénzügyi Igazgatóságának (Finančná správa, FS) portálján (VPDS) végzett szolgáltatóválasztáskor.
A POST /companies/{id}/documents/send már elérhető (béta: a válasz alakja még változhat); stabil programozott küldéshez a SAPI-SK POST /sapi/document/send végpontját javasoljuk Idempotency-Key fejléccel.

Korai hozzáférést szeretne az integrációhoz, sandboxot, vagy kérdése van? Vegye fel velünk a kapcsolatot közvetlenül:

Miriama Mrkávková

Az Ön Peppol-kapcsolattartója

Miriama Mrkávková

+421 944 488 269·peppol​@​verteco.digital