Docs
8

Odovzdávanie súborov

Odovzdávanie faktúr ako súborov.

  • Zatiaľ nie v sandboxe

Jednoducho povedané

Odovzdávanie súborov je určené pre ERP systémy, ktoré vedia len zapisovať súbory: faktúry vložia do priečinka a služba vráti výsledky ako súbory v tom istom priečinku. Klient tak nemusí budovať napojenie cez API. Služba sleduje priečinok na počítači, na ktorom beží. V hostovanom sandboxe nie je zapnuté a zabezpečený prenos súborov a cloudové úložisko nie sú implementované.

ERP, ktorý vie len zapisovať súbory, môže faktúry odovzdávať cez jeden priečinok. Služba priečinok sleduje a každý súbor spracuje ako podanie: súbor JSON ako POST /invoices, súbor XML ako POST /invoices/xml. Výsledky sa vracajú ako súbory v tom istom priečinku.

Zatiaľ nie v sandboxenie je v hostovanom sandboxe

Poznámka

Zatiaľ nie v sandboxe

Odovzdávanie súborov sleduje lokálny priečinok. V hostovanom sandboxe nie je zapnuté. Neexistuje SFTP ani objektové úložisko; každé z nich by sa implementovalo, len ak by ho potreboval pilotný projekt.

Nastavenie

Priečinok sa nastaví pri inštalácii služby. Služba ho kontroluje raz za sekundu, a ak nie je nastavený žiadny priečinok, nesleduje nič. Súbor prechádza rovnakým vstupom ako volanie API, takže sa odmietne z rovnakých dôvodov.

Pomenovanie súboru

SúborSpracuje sa ako
INVOICE-REF.jsonPOST /invoices. Obsah je telo JSON tohto volania (pozri podanie JSON). Ak telo obsahuje invoice_ref, musí sa zhodovať s názvom súboru bez .json.
INVOICE-REF.ROUTE.xmlPOST /invoices/xml. ROUTE je DE-XRECHNUNG, PEPPOL, FR-PA, PL-KSEF alebo RO-EFACTURA. Obsah je súbor faktúry (pozri podanie XML).
  • Referencia faktúry má najviac 100 znakov a neobsahuje / ani \.
  • Súbor väčší ako 5 MB sa odmietne.
  • Názov, ktorý začína bodkou, obsahuje .. alebo nezodpovedá ani jednému vzoru, služba ignoruje.
  • Idempotency-Key tvorí prvých 32 znakov hashu SHA-256 súboru. Opätovné vloženie rovnakého súboru je opakovanie, nie druhá faktúra.

Čo sa vracia

Text
drop/
  DE-4711.json            you write this
  status/
    DE-4711-1.json        one file per status event
    DE-4712-error.json    the answer to a refused file
  done/
    DE-4711.json          an accepted file moves here
  failed/
    DE-4712.json          a refused file moves here

Prijatý súbor sa presunie do done/. Udalosti faktúry sa zapisujú do status/, jeden súbor na udalosť, s názvom INVOICE-REF-<sequence>.json. Každý je jednou položkou odpovede GET /invoices/{id}/events. Obsahujú hash faktúry, ale nie obsah faktúry.

status/DE-4711-1.json
{
  "occurred_at": "2026-10-02T17:17:55.857Z",
  "sequence": 1,
  "environment": "sandbox",
  "invoice_ref": "CAPTURE-JSON-1790961440",
  "document_sha256": "3b41395db498666777b74f9f5b9fae82871720304bc25bbb590e25b7b75ea1d4",
  "event_id": "evt_200c0def79ed702df81d702f",
  "country_route": "DE-XRECHNUNG",
  "invoice_number": "CAPTURE-JSON-1790961440",
  "status": "validated"
}
Jedna udalosť zo zaznamenanej odpovede, rozpísaná na viac riadkov; v súbore je na jednom riadku.

Udalosti, ktoré existujú v čase prijatia súboru, sa zapíšu hneď. Každá neskoršia udalosť sa zapíše, len čo príde, kým faktúra nedosiahne konečný stav (accepted, delivered, rejected, validation_failed, dead_letter alebo cancelled) alebo neuplynie 30 dní.

Odmietnutý súbor sa presunie do failed/ a status/INVOICE-REF-error.json obsahuje odpoveď, ktorú by dalo API. Pri súbore, ktorý nie je faktúrou, je to 422 nižšie. Opravte údaje a vložte súbor znova pod rovnakým názvom.

status/DE-4712-error.json
{
  "type": "https://eurinvoice.com/problems/validation-failed",
  "title": "The invoice did not pass the checks",
  "errors": [
    {
      "code": "EI-XML-TYPE",
      "fix_hint": "Send the invoice itself, in the format agreed for the route.",
      "who_fixes": "erp",
      "source": "XML-safety",
      "message": "The file is not an invoice in a format this route accepts. Please send the invoice in the agreed format."
    }
  ],
  "status": 422
}
Odpoveď na súbor `.xml`, ktorý nie je faktúrou, zo zaznamenaného volania.

Čo tu nie je

  • SFTP a objektové úložisko.
  • Spôsob, ako z priečinka prečítať ID inv_ prijatej faktúry. Stavové súbory obsahujú invoice_ref a invoice_number.

Na tejto stránke