Predaja datoteka
Predajte račune kao datoteke.
- Još nije u sandboxu
Jednostavnim riječima
Predaja datoteka namijenjena je ERP sustavima koji mogu samo zapisivati datoteke: račune stavljaju u mapu, a usluga vraća rezultate kao datoteke u istoj mapi. Klijent tako ne mora izrađivati API vezu. Prati mapu na računalu na kojem radi usluga. Nije uključena u hostiranom sandboxu, a siguran prijenos datoteka i pohrana u oblaku nisu izrađeni.
ERP koji može samo zapisivati datoteke može predavati račune putem jedne mape. Usluga prati mapu i svaku datoteku obrađuje kao predaju: JSON datoteku kao POST /invoices, XML datoteku kao POST /invoices/xml. Rezultati se vraćaju kao datoteke u istoj mapi.
Napomena
Još nije u sandboxu
Predaja datoteka prati lokalnu mapu. Nije uključena u hostiranom sandboxu. Nema SFTP-a ni objektne pohrane; bilo što od toga izradilo bi se samo ako bude potrebno za pilot.
Postavljanje
Mapa se određuje pri instalaciji usluge. Usluga je provjerava jednom u sekundi, a kad mapa nije postavljena, ne prati ništa. Datoteka prolazi isti prijem kao API poziv, pa se odbija iz istih razloga.
Imenovanje datoteke
| Datoteka | Obrađuje se kao |
|---|---|
INVOICE-REF.json | POST /invoices. Sadržaj je JSON tijelo tog poziva (pogledajte predaju JSON-a). Ako tijelo ima invoice_ref, on mora biti jednak nazivu datoteke bez .json. |
INVOICE-REF.ROUTE.xml | POST /invoices/xml. ROUTE je DE-XRECHNUNG, PEPPOL, FR-PA, PL-KSEF ili RO-EFACTURA. Sadržaj je datoteka računa (pogledajte predaju XML-a). |
- Referenca računa ima do 100 znakova i ne sadrži
/ni\. - Datoteka veća od 5 MB odbija se.
- Naziv koji počinje točkom, sadrži
..ili ne odgovara nijednom uzorku ostaje netaknut. Idempotency-Keyčine prva 32 znaka SHA-256 datoteke. Ponovno ubacivanje identične datoteke je ponavljanje, a ne drugi račun.
Što se vraća
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 herePrihvaćena datoteka premješta se u done/. Događaji računa zapisuju se u status/, jedna datoteka po događaju, s nazivom INVOICE-REF-<sequence>.json. Svaka je jedna stavka odgovora GET /invoices/{id}/events. Sadrže hash računa, a ne sadržaj računa.
{
"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"
}Događaji koji postoje u trenutku prihvaćanja datoteke zapisuju se odmah. Svaki sljedeći događaj zapisuje se čim stigne, sve dok račun ne dosegne završno stanje (accepted, delivered, rejected, validation_failed, dead_letter ili cancelled) ili dok ne prođe 30 dana.
Odbijena datoteka premješta se u failed/, a status/INVOICE-REF-error.json sadrži odgovor koji bi dao API. Za datoteku koja nije račun to je 422 u nastavku. Ispravite podatke i ponovno ubacite datoteku pod istim nazivom.
{
"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
}Čega ovdje nema
- SFTP i objektna pohrana.
- Način da se iz mape pročita ID
inv_prihvaćenog računa. Statusne datoteke sadržeinvoice_refiinvoice_number.