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.
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úbor | Spracuje sa ako |
|---|---|
INVOICE-REF.json | POST /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.xml | POST /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-Keytvorí 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
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 herePrijatý 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.
{
"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"
}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.
{
"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
}Č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_refainvoice_number.