Docs

3 API3.4

3.4

Odczyt faktury, jej zdarzeń i dokumentów

Odczyt faktury, jej zdarzeń i dokumentów.

  • W sandboxie

Prostymi słowami

Te wywołania pokazują, na jakim etapie jest faktura, każde zdarzenie z jej historii i zapisane dla niej pliki.

Po 202 stan faktury można śledzić za pomocą czterech odczytów. Wszystkie wymagają klucza z zakresem read. Dla identyfikatora, który nie istnieje albo należy do innego klienta, odpowiedzią jest 404.

Faktura

GET /invoices/{id} zwraca bieżący stan faktury.

PoleZnaczenie
id, invoice_ref, invoice_numberNasz identyfikator, identyfikator dokumentu w ERP i numer faktury.
route, environment, clientKanał przesyłania, środowisko i identyfikator klienta (local, gdy nie podano żadnego).
statequeued, submitted, ready, cancelled i tak dalej. Obie warstwy wymienia strona Statusy.
legal_idWłasny numer referencyjny kanału, gdy sieć ma już fakturę: numer KSeF, indeks przesłania w ANAF, identyfikator dokumentu w punkcie dostępowym albo identyfikator faktury na platformie francuskiej.
document_sha256SHA-256 tego, co zostało zapisane.
attemptsWcześniejsze przesłania tego samego invoice_ref, na przykład po odrzuceniu i poprawce.
deadline_atOrientacyjny termin, tylko dla Rumunii i Polski, i tylko gdy faktura zawiera datę wystawienia. Nigdy nie jest wcześniejszy niż rzeczywisty i nie jest poradą prawną.
created_at, updated_atZnaczniki czasu RFC 3339 w UTC.
curl "https://api-sandbox-eu.eurinvoice.com/invoices/inv_936a93e38de84e7b0a1d7681" \
  -H "Authorization: Bearer <your-api-key>"
Odpowiedź200 OK
{
  "invoice_ref": "CAPTURE-JSON-1790961440",
  "environment": "sandbox",
  "document_sha256": "45f857890231e9bc6e73c1ec1e53bc01e7b030f84068b324bdd9ef42b88322bc",
  "route": "DE-XRECHNUNG",
  "updated_at": "2026-10-06T19:49:02.676Z",
  "documents": [
    {
      "sha256": "45f857890231e9bc6e73c1ec1e53bc01e7b030f84068b324bdd9ef42b88322bc",
      "kind": "canonical",
      "href": "/invoices/inv_936a93e38de84e7b0a1d7681/documents/canonical"
    },
    {
      "sha256": "ad122fe72dc6f04b2de6b6bbc01fcb7e46e33116b12e3bbb02a569cde3f10106",
      "kind": "manifest",
      "href": "/invoices/inv_936a93e38de84e7b0a1d7681/documents/manifest"
    },
    {
      "sha256": "941fd5005aa03586a7bf23f3039c6d15e38220879d46690f9199a494e35fdc11",
      "kind": "validation-report",
      "href": "/invoices/inv_936a93e38de84e7b0a1d7681/documents/validation-report"
    },
    {
      "sha256": "251a52fec3bdd44555a7396a1567d62c5ada3e3b7d002bb757d6b50e347c2e90",
      "kind": "xrechnung-ubl",
      "href": "/invoices/inv_936a93e38de84e7b0a1d7681/documents/xrechnung-ubl"
    }
  ],
  "client": "acme-srl",
  "created_at": "2026-10-06T19:49:01.621Z",
  "id": "inv_936a93e38de84e7b0a1d7681",
  "state": "ready",
  "invoice_number": "DOC-mux3dlqm"
}
Zarejestrowano 7 paź 2026.

Jej zdarzenia

GET /invoices/{id}/events odtwarza każde zdarzenie statusu faktury w kolejności sequence. Służy do nadrobienia zaległości po przerwie w działaniu. Zdarzenia nie wygasają, dopóki trwa umowa, i niczego nie trzeba potwierdzać.

curl "https://api-sandbox-eu.eurinvoice.com/invoices/inv_936a93e38de84e7b0a1d7681/events" \
  -H "Authorization: Bearer <your-api-key>"
Odpowiedź200 OK
{
  "data": [
    {
      "occurred_at": "2026-10-06T19:49:01.621Z",
      "sequence": 1,
      "environment": "sandbox",
      "invoice_ref": "CAPTURE-JSON-1790961440",
      "document_sha256": "45f857890231e9bc6e73c1ec1e53bc01e7b030f84068b324bdd9ef42b88322bc",
      "event_id": "evt_e1b58da963c46e4a63409006",
      "country_route": "DE-XRECHNUNG",
      "invoice_number": "DOC-mux3dlqm",
      "status": "received"
    },
    {
      "occurred_at": "2026-10-06T19:49:02.661Z",
      "sequence": 2,
      "environment": "sandbox",
      "invoice_ref": "CAPTURE-JSON-1790961440",
      "document_sha256": "45f857890231e9bc6e73c1ec1e53bc01e7b030f84068b324bdd9ef42b88322bc",
      "event_id": "evt_0dcb4d0b797e93185b22c27d",
      "country_route": "DE-XRECHNUNG",
      "invoice_number": "DOC-mux3dlqm",
      "status": "validated"
    }
  ]
}
Zarejestrowano 7 paź 2026.

Wszystkie faktury

GET /invoices wyświetla i przeszukuje faktury klienta, od najnowszej, stronami. Filtruje według q (fragment invoice_ref lub numeru), route, state i dnia otrzymania (received_from, received_to). Wiersz zawiera to, co GET /invoices/{id}, bez dokumentów i bez treści faktury: bez nabywcy, bez kwot i bez daty wystawienia. GET /invoices/series zlicza faktury otrzymane i odrzucone dla każdego dnia i kanału, na potrzeby wykresu. Zob. dokumentację referencyjną.

Jej dokumenty

GET /invoices/{id}/documents/{kind} zwraca to, co zapisała usługa. Dostępne rodzaje:

RodzajZapisywany, gdy
canonicalPrzesłano JSON. Plik to faktura w takiej postaci, w jakiej ją wysłano.
erp-exportPrzesłano eksport z ERP. Plik to eksport w takiej postaci, w jakiej wysłało go ERP.
ubl, cii, fa3, pdfPlik w postaci wysłanej albo dokument zbudowany przez usługę: xrechnung-ubl dla Niemiec, ubl lub fa3 dla pozostałych kanałów.
validation-reportCo wykazała każda kontrola.
manifestSHA-256 bajtów, które trafiają do kanału, i kontrole, które na nich wykonano.

Rodzaje JSON są zwracane jako application/json.

ETag to SHA-256 pliku. Dokumenty można odczytać tylko z kluczem. Nie ma publicznych linków. Przebieg próbny niczego nie zapisuje.

curl "https://api-sandbox-eu.eurinvoice.com/invoices/inv_1721a979f65d8ff80ef5f64b/documents/ubl" \
  -H "Authorization: Bearer <your-api-key>"
Odpowiedź200 OK
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"><cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID><cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID><cbc:ID>RE-2026-0142</cbc:ID><cbc:IssueDate>2026-09-26</cbc:IssueDate><cbc:DueDate>2026-10-10</cbc:DueDate><cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode><cbc:Note>Vielen Dank für Ihren Auftrag.</cbc:Note><cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode><cbc:BuyerReference>PO-88731</cbc:BuyerReference><cac:InvoicePeriod><cbc:StartDate>2026-09-01</cbc:StartDate><cbc:EndDate>2026-09-30</cbc:EndDate></cac:InvoicePeriod><cac:AccountingSupplierParty><cac:Party><cbc:EndpointID schemeID="9930">DE123456789</cbc:EndpointID><cac:PostalAddress><cbc:StreetName>Hafenstraße 12</cbc:StreetName><cbc:CityName>Hamburg</cbc:CityName><cbc:PostalZone>20457</cbc:PostalZone><cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country></cac:PostalAddress><cac:PartyTaxScheme><cbc:CompanyID>DE123456789</cbc:CompanyID><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:PartyTaxScheme><cac:PartyLegalEntity><cbc:RegistrationName>Nordlicht Software GmbH</cbc:RegistrationName><cbc:CompanyID>HRB 123456</cbc:CompanyID><cbc:CompanyLegalForm>GmbH</cbc:CompanyLegalForm></cac:PartyLegalEntity><cac:Contact><cbc:Name>Jana Petersen</cbc:Name><cbc:Telephone>+49 40 1234567</cbc:Telephone><cbc:ElectronicMail>[email protected]</cbc:ElectronicMail></cac:Contact></cac:Party></cac:AccountingSupplierParty><cac:AccountingCustomerParty><cac:Party><cbc:EndpointID schemeID="9930">DE987654321</cbc:EndpointID><cac:PostalAddress><cbc:StreetName>Marienplatz 4</cbc:StreetName><cbc:CityName>München</cbc:CityName><cbc:PostalZone>80331</cbc:PostalZone><cac:Country><cbc:IdentificationCode>DE</cbc:IdentificationCode></cac:Country></cac:PostalAddress><cac:PartyTaxScheme><cbc:CompanyID>DE987654321</cbc:CompanyID><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:PartyTaxScheme><cac:PartyLegalEntity><cbc:RegistrationName>Brauhaus Weber AG</cbc:RegistrationName></cac:PartyLegalEntity></cac:Party></cac:AccountingCustomerParty><cac:PaymentMeans><cbc:PaymentMeansCode>58</cbc:PaymentMeansCode><cbc:PaymentID>RE-2026-0142</cbc:PaymentID><cac:PayeeFinancialAccount><cbc:ID>DE89370400440532013000</cbc:ID><cbc:Name>Nordlicht Software GmbH</cbc:Name><cac:FinancialInstitutionBranch><cbc:ID>COBADEFFXXX</cbc:ID></cac:FinancialInstitutionBranch></cac:PayeeFinancialAccount></cac:PaymentMeans><cac:PaymentTerms><cbc:Note>Zahlbar innerhalb von 14 Tagen ohne Abzug.</cbc:Note></cac:PaymentTerms><cac:TaxTotal><cbc:TaxAmount currencyID="EUR">1255.71</cbc:TaxAmount><cac:TaxSubtotal><cbc:TaxableAmount currencyID="EUR">6609.00</cbc:TaxableAmount><cbc:TaxAmount currencyID="EUR">1255.71</cbc:TaxAmount><cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19.00</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory></cac:TaxSubtotal></cac:TaxTotal><cac:LegalMonetaryTotal><cbc:LineExtensionAmount currencyID="EUR">6609.00</cbc:LineExtensionAmount><cbc:TaxExclusiveAmount currencyID="EUR">6609.00</cbc:TaxExclusiveAmount><cbc:TaxInclusiveAmount currencyID="EUR">7864.71</cbc:TaxInclusiveAmount><cbc:PayableAmount currencyID="EUR">7864.71</cbc:PayableAmount></cac:LegalMonetaryTotal><cac:InvoiceLine><cbc:ID>1</cbc:ID><cbc:InvoicedQuantity unitCode="LS">1</cbc:InvoicedQuantity><cbc:LineExtensionAmount currencyID="EUR">5900.00</cbc:LineExtensionAmount><cac:Item><cbc:Description>Mapping Business Central → EN 16931, Validierung XRechnung, Test im Peppol-Testnetz</cbc:Description><cbc:Name>E-Rechnung Einführung (Festpreis)</cbc:Name><cac:ClassifiedTaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19.00</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:ClassifiedTaxCategory></cac:Item><cac:Price><cbc:PriceAmount currencyID="EUR">5900.00</cbc:PriceAmount></cac:Price></cac:InvoiceLine><cac:InvoiceLine><cbc:ID>2</cbc:ID><cbc:InvoicedQuantity unitCode="MON">1</cbc:InvoicedQuantity><cbc:LineExtensionAmount currencyID="EUR">349.00</cbc:LineExtensionAmount><cac:Item><cbc:Description>Care Plus, September 2026</cbc:Description><cbc:Name>Betreuung abgelehnter Rechnungen</cbc:Name><cac:ClassifiedTaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19.00</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:ClassifiedTaxCategory></cac:Item><cac:Price><cbc:PriceAmount currencyID="EUR">349.00</cbc:PriceAmount></cac:Price></cac:InvoiceLine><cac:InvoiceLine><cbc:ID>3</cbc:ID><cbc:InvoicedQuantity unitCode="HUR">3</cbc:InvoicedQuantity><cbc:LineExtensionAmount currencyID="EUR">360.00</cbc:LineExtensionAmount><cac:Item><cbc:Description>Remote, Buchhaltungsteam</cbc:Description><cbc:Name>Zusätzliche Schulung</cbc:Name><cac:ClassifiedTaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19.00</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:ClassifiedTaxCategory></cac:Item><cac:Price><cbc:PriceAmount currencyID="EUR">120.00</cbc:PriceAmount></cac:Price></cac:InvoiceLine></Invoice>

<!-- shortened for these docs -->
Skrócony plik UBL z przesłania przez Peppol, zarejestrowany 7 paź 2026.

Odpowiedzi

StatusZnaczenie
200Faktura, jej zdarzenia lub plik.
401Brak klucza lub nieznany klucz.
403Klucz nie ma zakresu read.
404Brak takiej faktury dla tego klienta albo brak takiego rodzaju dokumentu dla niej.
429Zbyt wiele żądań dla klucza. Należy odczekać liczbę sekund podaną w Retry-After.
curl "https://api-sandbox-eu.eurinvoice.com/invoices/inv_unknown" \
  -H "Authorization: Bearer <your-api-key>"
Odpowiedź404 Not Found
{
  "type": "https://eurinvoice.com/problems/not-found",
  "title": "No such resource for this client",
  "status": 404
}
Zarejestrowano 7 paź 2026.

Na tej stronie