ePošťák.sk

Prístup k API

Prístup k API

Zistíte, či firma potrebuje vlastný API kľúč z Nastavení, alebo ju pripojí program partnera, ako prebieha súhlas firmy, aký client_id program používa, kto platí a kedy sa používa kľúč obmedzený na jednu firmu.

Predpoklady

  • Viete, či firma posiela doklady z vlastného systému, alebo z programu, ktorý dodáva partner (napr. Basic od SofCom).

Tri cesty k API

Ak firma používa vlastný softvér, aktivuje API v Nastaveniach a vloží si kľúč. Ak ju pripája program partnera, program jej otvorí odkaz na súhlas, firma ho potvrdí a program ďalej pracuje s kľúčom partnera.

Firma, ktorá ostáva pri inom poštárovi, dnes môže odosielať cez ePošťák iba cez program partnera; samostatná registrácia iba na odosielanie zatiaľ nie je.

OtázkaVlastný kľúčProgram partnera (súhlas firmy)Program partnera, iba odosielanie
Pre kohoFirma v ePošťáku s vlastným softvérom.Firma v ePošťáku, ktorá posiela a prijíma cez program partnera.Firma, ktorá prijíma u iného poštára a cez ePošťák iba odosiela.
Kde začneteNastavenia → API v ePošťáku.Partner vytvorí odkaz: POST /api/v1/consent-offers (odporúčané; staršia možnosť je POST /api/v1/firms/consent-link) alebo partnerský portál → Consenty.Program pošle žiadosť POST /api/v1/onboarding-requests.
Čo firma urobíObjedná API a vytvorí kľúč.Otvorí odkaz, prihlási sa do ePošťáka a jedným potvrdením na jednej stránke udelí súhlas a objedná API pre svoju firmu (aktivuje sa hneď). Samostatná objednávka v Nastaveniach ani kľúč nie sú potrebné.Potvrdí jednu stránku z e-mailu na kontakt z portálu Finančnej správy.
Aký client_id sa používaKľúč firmy.Kľúč partnera s hlavičkou X-Firm-Id, alebo kľúč partnera obmedzený na túto firmu. Firma žiadny kľúč nevkladá.Kľúč partnera s hlavičkou X-Firm-Id.

Vlastný kľúč: Nastavenia → API

  1. 1. Objednajte a aktivujte API

    V Nastaveniach → API je štandardná objednávka: bez mesačného paušálu a minimálnej viazanosti, spotrebu platí firma podľa cenníka. Po súhlase s podmienkami kliknite Objednať a aktivovať API. Štandardnú objednávku aktivujeme automaticky po overení podmienok.

  2. 2. Vytvorte produkčný API kľúč

    Kliknite Vytvoriť produkčný API kľúč. Zobrazí sa client_id a client_secret; celý client_secret sa ukáže iba raz, preto si ho hneď uložte.

  3. 3. Vložte kľúč do svojho softvéru

    client_id a client_secret zadajte priamo do svojho účtovného alebo ERP systému. Neposielajte ich e-mailom dodávateľovi ani podpore.

Program partnera krok za krokom

Partner má od ePošťáka jeden partnerský kľúč (client_id a client_secret). Tým istým kľúčom vytvára odkazy na súhlas a po súhlase pracuje s každou pripojenou firmou. Token získate cez POST /api/v1/auth/token (rovnaký endpoint ako /sapi/v1/auth/token).

  1. 1. Partner vytvorí odkaz na súhlas

    POST /api/v1/consent-offers s DIČ (alebo IČO) firmy, režimom, rozhraniami a oprávneniami (odporúčaný endpoint; POST /api/v1/firms/consent-link ostáva ako staršia možnosť s rovnocennými údajmi). Odpoveď obsahuje consentUrl, platný 14 dní. Voliteľné returnUrl (https, origin registrovaný pre partnera) vráti klienta do vášho programu po potvrdení. Bez programovania vytvoríte ten istý odkaz v partnerskom portáli v časti Consenty.

  2. 2. Program otvorí odkaz zákazníkovi

    Zákazník klikne v programe na tlačidlo, ktoré otvorí consent_url v prehliadači. Odkaz môžete poslať aj e-mailom.

  3. 3. Zákazník sa prihlási a potvrdí súhlas

    Stránka ukáže partnera, firmu a rozsah oprávnení. Zákazník sa prihlási do ePošťáka ako vlastník alebo správca firmy a súhlas potvrdí. Ak firma ešte nemá účet v ePošťáku, najprv si na vpds.financnasprava.sk vyberie ePošťáka ako poštára a potom odkaz otvorí znova. Žiadny kľúč nevidí ani nikam nevkladá.

  4. 4. Program zistí firm_id

    GET /api/v1/firms/consent-status?dic=… Po potvrdení vráti consent_status: active, next_action: use_firm_id a firm.id. Kým zákazník nepotvrdí, vracia await_consent_acceptance. Webhook o potvrdení neposielame, stav preto overujte opakovane alebo po návrate zákazníka do programu.

  5. 5. Program volá API za firmu

    Každé volanie za firmu posiela partnerský token a hlavičku X-Firm-Id: firm.id. Ak program beží u zákazníka, použite namiesto hlavného kľúča kľúč obmedzený na firmu (nasledujúca časť).

1. Odkaz na súhlas (syntetické hodnoty)
curl -X POST "https://epostak.sk/api/v1/consent-offers" \
  -H "Authorization: Bearer <PARTNERSKY_JWT>" \
  -H "Content-Type: application/json" \
  -d '{"targetIdentifierType":"dic","targetIdentifier":"2022988022","customerReference":"ZAKAZNIK-001","requestedInterfaces":["enterprise_api"],"relationshipMode":"technical_delegation","scopes":["firms:manage","documents:send","documents:read"],"returnUrl":"https://program.example/spat"}'

# 201 → {"id":"…","consentUrl":"https://epostak.sk/auth/integrator-consent?token=…","status":"issued","expiresAt":"…"}
# Webhooky consent.accepted, consent.revoked a consent.expired: PUT /api/v1/onboarding-requests/webhook
# Ďalšie: consent.declined (nextAction contact_client), consent.awaiting_pfs, consent.scopes_updated, webhook.disabled
4. Stav súhlasu a firm_id
curl "https://epostak.sk/api/v1/firms/consent-status?dic=2022988022" \
  -H "Authorization: Bearer <PARTNERSKY_JWT>"

# 200 → {"firm":{"id":"<FIRM_ID>",…},"consent_status":"active","next_action":"use_firm_id"}

Program nainštalovaný u zákazníka: kľúč pre jednu firmu

Hlavný partnerský kľúč pracuje so všetkými vašimi firmami. Do inštalácie u zákazníka ho preto nedávajte. Po súhlase vydajte pre firmu vlastný kľúč obmedzený na ňu: POST /api/v1/integrator/keys so scopedFirmId = firm.id. Odpoveď obsahuje clientId a jednorazovo zobrazený key (client_secret). Tieto dve hodnoty nastavíte do inštalácie zákazníka.

Inštalácia si s týmto kľúčom získa token cez POST /api/v1/auth/token a volá API s hlavičkou X-Firm-Id: firm.id. Pre inú firmu kľúč nefunguje. Ak zákazník súhlas odvolá, kľúč prestane fungovať.

Kroky 1, 4 a vydanie kľúča robí váš server s hlavným kľúčom. Ak server nemáte, urobíte ich ručne v partnerskom portáli: Consenty (odkaz) a API kľúče (kľúč pre firmu).

Kľúč obmedzený na firmu (syntetické hodnoty)
curl -X POST "https://epostak.sk/api/v1/integrator/keys" \
  -H "Authorization: Bearer <PARTNERSKY_JWT>" \
  -H "Content-Type: application/json" \
  -d '{"name":"ZAKAZNIK-001","scopedFirmId":"<FIRM_ID>","scopes":["documents:send","documents:read"]}'

# 201 → {"clientId":"<CLIENT_ID>","key":"sk_int_…","scopedFirmId":"<FIRM_ID>",…}

Iba odosielanie: firma ostáva u iného poštára

  • Partner pošle žiadosť POST /api/v1/onboarding-requests s DIČ firmy. Firma na portáli Finančnej správy vyberie ePošťák a potvrdí jednu stránku z e-mailu. Váš digitálny poštár na príjem faktúr sa nemení. Výber ePošťáka na portáli Finančnej správy používame výlučne na overenie, že ste oprávnený daňový subjekt používať dané Peppol ID. Celý postup, stavy a webhooky opisuje návod Iba odosielanie.
  • Firmy môže takto pripájať každý partner s platnou produkčnou zmluvou, ktorá pokrýva Enterprise API: technický partner (platí firma) alebo spravovaný integrátor (platí integrátor). Samostatné povolenie od ePošťáka netreba.
  • Priama zmluva firmy na Enterprise API (firma používa API iba sama pre seba) neoprávňuje pripájať iné firmy.

Príjem: cez ePošťák alebo ostáva u vášho poštára

  • Prijímať cez ePošťák — firma je v SMP u nás a doklady prijíma v ePošťáku.
  • Iba odosielať — SMP nemeníme, príjem ostáva u vášho súčasného poštára. Odosielame ako 0245:DIČ; odpovede a prijaté faktúry idú tam, kde je firma zapísaná v SMP. Túto voľbu dnes ponúka iba pripojenie cez program partnera.
  • Príjem k nám nikdy nepresunieme potichu; prechod ide existujúcim postupom zmeny poštára.

Kto platí

VzťahPlatiteľ
Vlastný kľúčFirma podľa cenníka API.
Technický partner (relationshipMode: technical_delegation)Firma podľa svojho cenníka v ePošťáku (alebo podľa ceny dohodnutej s partnerom, ak ju má). Firma potvrdí jednu stránku: súhlas a jej vlastná štandardná API objednávka vzniknú spolu; ak už objednávku má, iba udelí súhlas. Partner neplatí nič.
Spravovaná služba (relationshipMode: managed_service)Partner zo svojho fakturačného účtu.

Očakávaný výsledok

Viete, ktorou cestou firma získa prístup, kto platí a či niekto musí niekam vložiť kľúč.

Keď to nefunguje

  • Firma nevidí tlačidlo Potvrdiť, alebo stránka žiada doplniť fakturačné údaje: prihláste sa ako vlastník alebo správca a doplňte názov, IČO, DIČ a adresu v Nastaveniach. Potom odkaz otvorte znova.
  • Partner dostane 403 SEND_ONLY_NOT_AUTHORIZED: jeho produkčná zmluva nepokrýva Enterprise API alebo zvolený spôsob účtovania.
  • consent-status vracia await_consent_acceptance: zákazník odkaz ešte nepotvrdil. Odkaz platí 14 dní; po expirácii vytvorte nový.
  • Zákazník po prihlásení vidí „Prihlásený účet nemá oprávnenie udeliť súhlas za túto firmu“: musí sa prihlásiť ako vlastník alebo správca firmy.
  • Firma s iným poštárom po výbere ePošťáka na portáli Finančnej správy vidí „Čakáme na žiadosť od vášho programu“: program ešte neposlal žiadosť POST /api/v1/onboarding-requests. Keď ju pošle, firma dostane e-mail s odkazom.
  • Stratený client_secret: v Nastaveniach → API kľúč regenerujte; starý prestane okamžite fungovať.

Pokračujte

  1. Iba odosielanie

    Jeden spoločný praktický návod pre send-only onboarding.

  2. Registračné API

    Referenčný detail schváleného onboarding kontraktu.

  3. Autentifikácia

    Rozlíši typy prístupu a nasmeruje na presnú referenciu.

Súvisiace návody

Všetka dokumentácia