E-Invoicing Germany
ESR.DDto Fields
| Name | Description | Format | Example for DDto |
|---|---|---|---|
| Email (B2B) | Email address of the receiver | Regex | "j.doe@efsta.eu" |
| Leitweg ID (B2G) | The Leitweg ID is an identifier of an electronic invoice for the unique addressing of public contracting authorities in Germany | Regex | "0204:991-33333TEST-33" |
Business-to-Business E-Invoicing (B2B)
B2B E-Invoices must be created in the XRechnung format, just like B2G E-Invoices in Germany.
After receiving the valid B2B Invoice data via the EFR API, the EFR will forward it to our E-Invoicing service which creates the XRechnung and sends it to the buyer’s email address. The XRechnung can also be downloaded by the taxpayer directly from the efsta E-Invoicing view in the efsta Portal.
Example Request
- JSON
- XML
{
"Tra": {
"ESR":
{"D": "2024-06-01T08:30:15", "TL": "001", "TT": "1", "TN": "1", "T": "8.38", "Opr": "101", "OprN": "Mario Rossi", "OprTIN": "xxx", "TP": "Table 1",
"DD": "DE", "DDto": "john.doe@example.com",
"Ctm": { "TaxId": "DE123456789", "Nam": "Buyer Company", "Adr": "Teststreet 3", "Zip": "60306", "City": "Frankfurt", "Ctry": "DE" },
"PosA": [
{ "_": "Pos", "PN": "1", "IN": "1001", "Dsc": "Example Item", "TaxG": "A", "Amt": "3.98", "Qty": "2", "QtyU": "Pc.", "Pri": "1.99", "Cat": "10", "CatN": "Example Category 10"},
{ "_": "Pos", "PN": "2", "IN": "1020", "Dsc": "Example Item", "TaxG": "B", "Amt": "1.50", "Cat": "11", "CatN": "Example Category 11" },
{ "_": "Lin", "Dsc": "Subtotal", "LAmt": "5.48" },
{ "_": "Pos", "PN": "3", "IN": "1030", "Dsc": "Example Item", "TaxG": "A", "Amt": "2.90", "Cat": "12", "CatN": "Example Category 12" }
],
"PayA": [
{ "_": "Pay", "Dsc": "Example Payment", "PayG": "cash", "Amt": "10.00" },
{ "_": "Pay", "Dsc": "Example Change", "PayG": "change", "Amt": "-1.62" }
]
}
}
}
<Tra>
<ESR D="2024-06-01T08:30:15" TL="001" TT="1" TN="1" T="8.38" Opr="101" OprN="Mario Rossi" OprTIN="12345678" TP="Table 1"
DD="DE", DDto="john.doe@example.com">
<Ctm TaxId="DE123456789" Nam="Buyer Company" Adr="Teststreet 3" Zip="60306" City="Frankfurt" Ctry="DE" />
<PosA>
<Pos PN="1" IN="1001" Dsc="Example Item" TaxG="A" Amt="3.98" Qty="2" QtyU="Pc." Pri="1.99" Cat="10" CatN="Example Category 10" />
<Pos PN="2" IN="1020" Dsc="Example Item" TaxG="B" Amt="1.50" Cat="11" CatN="Example Category 11" />
<Lin Dsc="Subtotal" LAmt="5.48" />
<Pos PN="3" IN="1030" Dsc="Example Item" TaxG="A" Amt="2.90" Cat="12" CatN="Example Category 12" />
</PosA>
<PayA>
<Pay Dsc="Example Payment" PayG="cash" Amt="10.00" />
<Pay Dsc="Example Change" PayG="change" Amt="-1.62" />
</PayA>
</ESR>
</Tra>
Business-to-Government E-Invoicing (B2G)
B2G E-Invoices are transmitted through the Peppol-Network using our own efsta Peppol Access Point.
Example Request
- JSON
- XML
{
"Tra": {
"ESR":
{"D": "2024-06-01T08:30:15", "TL": "001", "TT": "1", "TN": "1", "T": "8.38", "Opr": "101", "OprN": "Mario Rossi", "OprTIN": "xxx", "TP": "Table 1",
"DD": "DE", "DDto": "0204:991-33333TEST-33",
"Ctm": { "TaxId": "DE123456789", "Nam": "Buyer Company", "Adr": "Teststreet 3", "Zip": "60306", "City": "Frankfurt", "Ctry": "DE" },
"PosA": [
{ "_": "Pos", "PN": "1", "IN": "1001", "Dsc": "Example Item", "TaxG": "A", "Amt": "3.98", "Qty": "2", "QtyU": "Pc.", "Pri": "1.99", "Cat": "10", "CatN": "Example Category 10"},
{ "_": "Pos", "PN": "2", "IN": "1020", "Dsc": "Example Item", "TaxG": "B", "Amt": "1.50", "Cat": "11", "CatN": "Example Category 11" },
{ "_": "Lin", "Dsc": "Subtotal", "LAmt": "5.48" },
{ "_": "Pos", "PN": "3", "IN": "1030", "Dsc": "Example Item", "TaxG": "A", "Amt": "2.90", "Cat": "12", "CatN": "Example Category 12" }
],
"PayA": [
{ "_": "Pay", "Dsc": "Example Payment", "PayG": "cash", "Amt": "10.00" },
{ "_": "Pay", "Dsc": "Example Change", "PayG": "change", "Amt": "-1.62" }
]
}
}
}
<Tra>
<ESR D="2024-06-01T08:30:15" TL="001" TT="1" TN="1" T="8.38" Opr="101" OprN="Mario Rossi" OprTIN="12345678" TP="Table 1"
DD="DE", DDto="0204:991-33333TEST-33">
<Ctm TaxId="DE123456789" Nam="Buyer Company" Adr="Teststreet 3" Zip="60306" City="Frankfurt" Ctry="DE" />
<PosA>
<Pos PN="1" IN="1001" Dsc="Example Item" TaxG="A" Amt="3.98" Qty="2" QtyU="Pc." Pri="1.99" Cat="10" CatN="Example Category 10" />
<Pos PN="2" IN="1020" Dsc="Example Item" TaxG="B" Amt="1.50" Cat="11" CatN="Example Category 11" />
<Lin Dsc="Subtotal" LAmt="5.48" />
<Pos PN="3" IN="1030" Dsc="Example Item" TaxG="A" Amt="2.90" Cat="12" CatN="Example Category 12" />
</PosA>
<PayA>
<Pay Dsc="Example Payment" PayG="cash" Amt="10.00" />
<Pay Dsc="Example Change" PayG="change" Amt="-1.62" />
</PayA>
</ESR>
</Tra>
Enduser Instructions
Here you can find a guide specifically for endusers to properly set up their E-Invoicing system, available in english and german.