Docs

Prova

Vedere una simulazione su una fattura di esempio.

  • Nella sandbox

In parole semplici

La pagina Prova mostra una simulazione su una fattura di esempio senza alcuna configurazione: si sceglie un esempio e si legge la risposta, che indica il campo e chi lo corregge. Tutte le fatture sono inventate.

Una simulazione mostra cosa distingue eurinvoice: quando una fattura è errata, la risposta indica il campo, fornisce un codice del catalogo e dice chi lo corregge. Scegliere una fattura e leggere la risposta.

Solo dati di esempio. Non inserire una fattura reale, un’azienda reale o una chiave di un sistema in produzione. Nulla di ciò che si inserisce viene memorizzato su un server, e in modalità esempio nulla lascia questa pagina.

Risposte registrate, 7 ott 2026. Ognuna è stata registrata dal servizio e viene riprodotta qui. L’XML è stato generato dal codice stesso del servizio. Non viene chiamato alcun server.

Una software house tedesca fattura a un birrificio. Il validatore KoSIT controlla il file.

Fisso in modalità esempio.

Vai alla risposta

La fattura

Questo è ciò che è stato inviato.

Tipo di fattura
Venditore
Acquirente
Dati della fattura
Righe

Riga 1

Riga 2

Riga 3

Calcolati da questa pagina per la visualizzazione. Il servizio calcola i propri totali.

Subtotale
6609,00 EUR
IVA (19 %)
1255,71 EUR
Totale dovuto
7864,71 EUR

La risposta

ValidaDE-XRECHNUNG, registrata il 7 ott 2026

  1. schemasuperato
  2. mappingsuperato
  3. pre-checksuperato
  4. kositsuperato

Nessuna segnalazione.

File generato

  • xrechnung-ubl SHA-256 cc1a764a50fb6439f558a2459bcd4a5a58d8960bdc28c6dd1bab00790e67a630

Il servizio ha riportato questo hash per il file che ha generato. L’XML qui sotto ha lo stesso hash (5305 byte). È mostrato con interruzioni di riga; il download è il file così come è stato generato.

L’XML generato
<?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:xeinkauf.de:kosit:xrechnung_3.0</cbc:CustomizationID>
  <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
  <cbc:ID>RE-2026-0143</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">DE938296582</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>DE938296582</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">DE965003781</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>DE965003781</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-0143</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>
Richiesta

Il JSON che questa pagina invia a POST /validate. Il comando cURL usa una chiave segnaposto.

{
  "invoice_ref": "RE-2026-0143",
  "route": "DE-XRECHNUNG",
  "environment": "sandbox",
  "document": {
    "lang": "de",
    "country": "DE",
    "invoice": {
      "number": "RE-2026-0143",
      "issue_date": "2026-09-26",
      "due_date": "2026-10-10",
      "type_code": 380,
      "currency": "EUR",
      "buyer_reference": "PO-88731",
      "period": {
        "start": "2026-09-01",
        "end": "2026-09-30"
      },
      "notes": [
        "Vielen Dank für Ihren Auftrag."
      ]
    },
    "seller": {
      "name": "Nordlicht Software GmbH",
      "address": {
        "street": "Hafenstraße 12",
        "city": "Hamburg",
        "postcode": "20457",
        "country": "DE"
      },
      "vat_id": "DE938296582",
      "tax_number": "27/123/45678",
      "company_id": "HRB 123456",
      "register": "Amtsgericht Hamburg HRB 123456",
      "managing_directors": "Geschäftsführer: Jana Petersen",
      "legal_info": "GmbH",
      "endpoint": {
        "id": "DE938296582",
        "scheme": "9930"
      },
      "contact": {
        "name": "Jana Petersen",
        "email": "[email protected]",
        "phone": "+49 40 1234567"
      },
      "brand_color": "#1160FF",
      "accent_color": "#FF9021"
    },
    "buyer": {
      "name": "Brauhaus Weber AG",
      "address": {
        "street": "Marienplatz 4",
        "city": "München",
        "postcode": "80331",
        "country": "DE"
      },
      "vat_id": "DE965003781",
      "endpoint": {
        "id": "DE965003781",
        "scheme": "9930"
      }
    },
    "lines": [
      {
        "name": "E-Rechnung Einführung (Festpreis)",
        "description": "Mapping Business Central → EN 16931, Validierung XRechnung, Test im Peppol-Testnetz",
        "quantity": 1,
        "unit": "LS",
        "unit_price": 5900,
        "vat_category": "S",
        "vat_rate": 19
      },
      {
        "name": "Betreuung abgelehnter Rechnungen",
        "description": "Care Plus, September 2026",
        "quantity": 1,
        "unit": "MON",
        "unit_price": 349,
        "vat_category": "S",
        "vat_rate": 19
      },
      {
        "name": "Zusätzliche Schulung",
        "description": "Remote, Buchhaltungsteam",
        "quantity": 3,
        "unit": "HUR",
        "unit_price": 120,
        "vat_category": "S",
        "vat_rate": 19
      }
    ],
    "payment": {
      "means_code": 58,
      "iban": "DE89 3704 0044 0532 0130 00",
      "bic": "COBADEFFXXX",
      "reference": "RE-2026-0143",
      "terms": "Zahlbar innerhalb von 14 Tagen ohne Abzug."
    },
    "profile": "xrechnung"
  }
}
curl -X POST "https://localhost:8443/validate" \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Content-Type: application/json" \
  --data-binary @invoice.json
Risposta
{
  "valid": true,
  "route": "DE-XRECHNUNG",
  "documents": [
    {
      "sha256": "cc1a764a50fb6439f558a2459bcd4a5a58d8960bdc28c6dd1bab00790e67a630",
      "kind": "xrechnung-ubl"
    }
  ],
  "layers": [
    {
      "findings": [],
      "passed": true,
      "layer": "schema"
    },
    {
      "findings": [],
      "passed": true,
      "layer": "mapping"
    },
    {
      "findings": [],
      "passed": true,
      "layer": "pre-check"
    },
    {
      "findings": [],
      "passed": true,
      "layer": "kosit"
    }
  ]
}

Cosa si vede

Ognuna delle sei fatture è un esempio inventato, eseguito una volta con POST /validate, con la risposta salvata. La pagina riproduce quella risposta: non chiama alcun server e non memorizza nulla. L’XML di una risposta valida è stato generato dal codice stesso del servizio, e il suo hash è uguale a quello riportato dal servizio.

Cosa non fa

  • Non memorizza nulla e non ha account. Una simulazione non mette in coda e non invia nulla.
  • Funziona solo per fatture tra aziende.
  • Non fornisce diciture legali. Per le fatture in inversione contabile ed esenti, la base giuridica va inserita a mano.
  • Non esegue una simulazione su una fattura che si modifica. Per farlo, richiedere una chiave sandbox e chiamare POST /validate.