Breadcrumbs

openTRANS 2.1 - ZUGFeRD - INVOICE

Spezifikation

Die Implementierung basiert auf dem openTRANS 2.1 Standard INVOICE erweitert um orderManager spezifische Felder. Im Folgenden werden die Felder in openTRANS beschreiben und mit welchen Daten diese zu befüllen sind.

Für alle Felder gelten die allgemeinen Datentypen und Muss/Kann Einstellungen nach Vorgabe von openTRANS 2.1.

Format

Belegkopf

Feld

Feld openTRANS 2.1

Feld OM Rechnung /
Gutschrift

Muss/Kann

Kommentar

Feld ZUGFeRD XML

FELD ZugferdSharp

Belegkopf - Bestellnr

INVOICE.INVOICE_HEADER. 
ORDER_HISTORY.ORDER_ID

Bestellung - Bestellnr

Muss


ApplicableSupplyChainTradeAgreement/BuyerOrderReferencedDocument/ID

TradeLineItems[]/BuyerOrderReferencedDocument/ID

Bekegkopf - Bestellnr (Lieferant)

INVOICE.INVOICE_HEADER.ORDER_HISTORY.
SUPPLIER_ORDER_ID

Bestellung - Lieferanten-Auftragsnnr

Kann

?

ApplicableSupplyChainTradeDelivery/DeliveryNoteReferencedDocument/ID

DeliveryNoteReferencedDocument.ID

Belegkopf - Belegnummer 

INVOICE.INVOICE_HEADER.INVOICE_INFO.INVOICE_ID

Rechnung / Gutschriftnummer

Muss


HeaderExchangedDocument/ID

InvoiceNo

Belegkopf - Datum

INVOICE.INVOICE_HEADER.INVOICE_INFO.
INVOICE_DATE

Rechungs- bzw.
Gutschriftsdatum

Muss

?

HeaderExchangedDocument/IssueDateTime/DateTimeString

InvoiceDate

Belegkopf- Belegtyp

INVOICE.INVOICE_HEADER.INVOICE_INFO.
INVOICE_TYPE

Beleg Rechnung oder
Gutschrift

Muss

was mit dem Gutschrift?

Werte: credit_memo = Gutschrift = ??
invoice = Rechnung = 380

https://www.unece.org/trade/untdid/d00a/tred/tred1001.htm

HeaderExchangedDocument/TypeCode

Type

Belegkopf  - Kommentar

INVOICE.INVOICE_HEADER.INFOICE_INFO.REMARKS

Kommentare

Kann


Notes

Notes

Unternehmen

Feld

Feld openTRANS 2.1

Feld orderManager

Muss/Kann

Kommentar

Feld ZUGFeRD

FELD ZugferdSharp

Unternehmen - Lieferadresse

INVOICE.INVOICE_HEADER.INVOICE_INFO.PARTIES.
PARTY[PARTY_ROLE=delivery].ADDRESS

Bestellung - Lieferadresse

Kann

?
Nur LineTwo

ShipToTradeParty

--

Unternehmen - Rechnungsempfänger

INVOICE.INVOICE_HEADER.INVOICE_INFO.PARTIES.
PARTY[PARTY_ROLE=invoice_recipient].ADDRESS

Rechnungsadresse

Muss

?

ApplicableSupplyChainTradeAgreement/BuyerTradeParty

Buyer

Unternehmen - Käufer

INVOICE.INVOICE_HEADER.INVOICE_INFO.PARTIES.
PARTY[PARTY_ROLE=buyer].ADDRESS

Kunde der Bestellung

Kann

?

wie oben?


Unternehmen - Käufer
Kundennr

INVOICE.INVOICE_HEADER.INVOICE_INFO.PARTIES.
PARTY[PARTY_ROLE=buyer].PARTY_ID[type=supplier_specific]

Kundennr beim Lieferanten

Muss


ApplicableSupplyChainTradeAgreement/BuyerTradeParty.ID

Byuer.ID

Unternehmen - Lieferant

INVOICE.INVOICE_HEADER.INVOICE_INFO.PARTIES.
PARTY[PARTY_ROLE=supplier].ADDRESS

Lieferant der Bestellung

Kann

Kein Supplier?




Position

Pro Rechnungsposition wird eine Position eingefügt. Zu einer Position kann es beliebig viele Unterpositionen geben, die Informationen zu Chargen und Seriennummern enthalten.

Feld

Feld openTRANS 2.1

Feld orderManager
Rechnungs- /Gutschriftsposition

Datentyp

Muss/Kann

Kommentar

Feld ZUGFeRD

FELD ZugferdSharp

Position - Positionnr

INVOICE.INVOICE_ITEM_LIST[i].LINE_ITEM_ID

Zeilennummer


Muss

?

IncludedSupplyChainTradeLineItem[]/AssociatedDocumentLineDocument/LineID

TradeLineItems[].AssociatedDocument.LineID

Position - Artikelnr Lieferant

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.SUPPLIER_PID

Lieferanten Artikelnr

alpha(30)

Kann


IncludedSupplyChainTradeLineItem[]/SpecifiedTradeProduct/SellerAssignedID

TradeLineItems[].SellerAssignedID

Position - Artikelnr Käufer

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.BUYER_PID

Kunden Artikelnr

alpha(30)

Kann


IncludedSupplyChainTradeLineItem[]/SpecifiedTradeProduct/BuyerAssignedID

TradeLineItems[].BuyerAssignedID

Position - EAN

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.
INTERNATIONAL_PID[type=ean]

EAN


Kann


IncludedSupplyChainTradeLineItem[]/SpecifiedTradeProduct/GlobalID

TradeLineItems[].GlobalID

Position - Artikelbezeichnung

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.DESCRIPTION_SHORT

Kurzbeschreibung

alpha(200)

Kann


--

--

Position - Text

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.DESCRIPTION_LONG

Text


Kann


IncludedSupplyChainTradeLineItem[]/SpecifiedTradeProduct/Description

TradeLineItems[].Description

Position - Einheit

INVOICE.INVOICE_ITEM_LIST[i].ORDER_UNIT

UneceUnit

alpha(3)

Muss

Popular:

http://www.robert-kuhlemann.de/iso_masseinheiten.htm

Full list:

https://www.unece.org/cefact/codesfortrade/codes_index.html

IncludedSupplyChainTradeLineItem[]/SpecifiedTradeProduct/BasisQuantity/@unitCode

TradeLineItems[].UnitCode

Position - Netto-Preis

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.
PRICE_AMOUNT

Einzelpreis

decimal

Muss


IncludedSupplyChainTradeLineItem[]/NetPriceProductTradePrice/ChargeAmount

TradeLineItems[].NetUnitPrice

Position - Netto-Zeilensumme

INVOICE.INVOICE_ITEM_LIST[i].PRICE_LINE_AMOUNT

Zeilensumme

decimal

Muss


IncludedSupplyChainTradeLineItem[]/LineTotalAmount

TradeLineItems[].LineTotalAmount

Position - Mwst-Satz

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.
TAX_DETAILS_FIX.TAX

Mehrwertsteuersatz

decimal

Muss

?

nicht in Prodinger

IncludedSupplyChainTradeLineItem[]/ApplicableTradeTax/ApplicablePercent

TradeLineItems[].TaxPercent

Position - Mwst-Betrag

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.
TAX_DETAILS_FIX.TAX_AMOUNT

Mehrwertsteuerbetrag

decimal

Muss


IncludedSupplyChainTradeLineItem[]/ApplicableTradeTax/CalculatedAmount

--

Position - Lieferdatum

INVOICE.INVOICE_ITEM_LIST[i].DELIVERY_DATE.
DELIVERY_START_DATE

Lieferdatum

DateTime

Kann


??


Position - bestätigte Menge

INVOICE.INVOICE_ITEM_LIST[i].QUANTITY

Menge(Summe über alle Unterpositionen)


Muss


IncludedSupplyChainTradeLineItem[]/BasisQuantity

TradeLineItems[].UnitQuantity

Line_Item_ID der Position aus ursprünglicher Bestellung

INVOICE.INVOICE_ITEM_LIST[i].ORDER_REFERENCE.LINE_ITEM_ID

Bestellung - Positionsnummer

alpha(50)

Muss
"0" wenn kein ID vorliegt.

immer leer

IncludedSupplyChainTradeLineItem[]/IncludedSupplyChainTradeLineItem/SpecifiedSupplyChainTradeAgreement/BuyerOrderReferencedDocument/LineID


Position - Einheit (Beschreibung)

INVOICE.INVOICE_ITEM_LIST[i].REMARKS[type = orderunittext]

Mengeneinheit als Text
Standard: Stück

alpha(100)

Kann


--

--

Unterposition

Die Unterposition enthält ergänzende Daten zur Rechnungsposition wie Seriennr und Chargennr. Wird nur angelegt wenn eines der unten genannten Felder in openTRANS INVOICE_ITEM_LIST gefüllt ist. (Außer QUANTITY)

Feld

Feld openTRANS 2.1

Feld orderManager
Rechnungs- /Gutschriftsposition

Muss/Kann

Feld ZUGFeRD

FELD ZugferdSharp

Position - Positionnr

INVOICE.INVOICE_ITEM_LIST[i].LINE_ITEM_ID

Zeilennummer

Muss



Position -  Chargennummer

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.LOT_NUMBER

Unterposition - Chargennr

Kann



Position - bestätigte Menge

INVOICE.INVOICE_ITEM_LIST[i].QUANTITY

Menge in der Charge

Muss



Position - Seriennummer

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.SERIAL_NUMBER

Unterposition - Seriennr

Kann



Position - Lieferdatum

INVOICE.INVOICE_ITEM_LIST[i].DELIVERY_DATE.
DELIVERY_START_DATE

Lieferdatum

Kann



Position - Lieferdatum Ende

INVOICE.INVOICE_ITEM_LIST[i].DELIVERY_DATE.
DELIVERY_END_DATE

Lieferdatum Ende

Kann



Fusszeile

Feld

Feld openTRANS 2.1

Beschreibung

Muss/Kann

Kommentar

Werte

Feld ZUGFeRD

FELD ZugferdSharp

Fusszeile - Beschreibung

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_ID.DESCRIPTION_SHORT

Fusszeile-Beschreibung

Muss





Fusszeile - Zeilesumme

INVOICE.INVOICE_ITEM_LIST[i].PRICE_LINE_AMOUNT

Fusszeile - Zeilensumme

Muss





Fusszeile - Prozent

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.ALLOW_OR_CHARGE.
ALLOW_OR_CHARGE_VALUE.AOC_PERCENTAGE_FACTOR

Fusszeile - Prozent

Kann





Fusszeile - Mwst Satz

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.TAX_DETAILS_FIX.TAX

Fusszeile - Mwst Satz

Muss





Fusszeile - Mwst Betrag

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.TAX_DETAILS_FIX.TAX_AMOUNT

Fusszeile - Mwst Betrag

Muss





Fusszeile - Netto-Betrag

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.PRICE_AMOUNT

Einzelpreis

Muss





Fusszeile - Typ

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.ALLOW_OR_CHARGE_FIX.
ALLOW_OR_CHARGE@type

Zuschlag/Abschlag

Muss


"surcharge" = Zuschlag,
"allowance" = Abschlag



Fusszeile - Typ

INVOICE.INVOICE_ITEM_LIST[i].PRODUCT_PRICE_FIX.
ALLOW_OR_CHARGE_FIX.ALLOW_OR_CHARGE.ALLOW_OR_CHARGE_TYPE

Fusszeilentyp

Muss


"small_order" = Mindermenge,
"rebate" = Rabatt,
"freight" = Fracht/Transport,
"packing" = Verpackung,
"material" = Gefahrgut,
"charge" = sonstiges



Belegfuss

Feld

Feld openTRANS 2.1

Feld OM Rechnung /
Gutschrift

Muss/Kann

Kommentar

Feld ZUGFeRD

FELD ZugferdSharp

Beleg - Gesamtbetrag Netto

INVOICE.INVOICE_SUMMARY.NET_VALUE_GOODS

Gesamtbetrag Netto

Muss


SpecifiedTradeSettlementMonetarySummation/LineTotalAmount

LineTotalAmount

Beleg - Gesamtbetrag MwSt

INVOIC.INVOICE_SUMMARY.TOTAL_TAX[i].TAX_AMOUNT

Gesamtbetrag Mwst

Muss


SpecifiedTradeSettlementMonetarySummation/TaxTotalAmount

TaxTotalAmount