Begleitdokumente
Dieses Dokument soll dazu dienen die Zusammenhänge der plus.e-Invoicing-Konfiguration und dem von der Lösung erzeugten elektronischen Rechnungsdokuments nachvollziehen zu können. Der Fokus soll dabei darauf liegen, wie Begleitdokumente in ein solches elektronisches Rechnungsdokument eingefügt werden können.
Die Funktionalität zur Einbettung von Begleitdokumenten wurde mit der Version 1.1.3.0 eingeführt.
Motivation/Problembeschreibung
Die ZUGFeRD/XRechnung-Spezifikation erlaubt eine Einbettung von Begleitdokumenten auf Zeilenebene und Dokumentenebene, "die Informationen über rechnungsbegründende Unterlagen enthält, die Belege für die in der Rechnung gestellten Ansprüche enthalten" (ZUGFeRD-2.1.1 - Spezifikation_TA.pdf). Um dies zu unterstützen, wurde die Funktionalität in plus.e-Invoicing eingeführt.
Spezifikation
Zur korrekten Platzierung der Daten, muss die entsprechende Stelle im resultierenden elektronischen Rechnungsdokument identifiziert werden. Hierzu wurde das Dokument ZUGFeRD-2.1.1 - Spezifikation_TA.pdf der ZUGFeRD 2.1.1 Spezifikation verwendet. Die entsprechende Dokumentation kann hier heruntergeladen werden. Dieses Dokument ist sowohl für das Profil ZUGFeRD 2.1.1 als auch für XRECHNUNG (entspricht EN 16931 (COMFORT)) gültig.
Begleitdokumente auf Dokumentenebene
Gemäß der Spezifikation ergibt sich AdditionalReferencedDocument
als passendes Element zur Angabe der Begleitdokumente auf Dokumentenebene:
Der komplette Pfad des Elements ergibt sich zu: CrossIndustryInvoice/SupplyChainTradeTransaction/ApplicableHeaderTradeAgreement/AdditionalReferencedDocument
Begleitdokumente auf Zeilenebene
Gemäß der Spezifikation ergibt sich AdditionalReferencedDocument
als passendes Element zur Angabe der Begleitdokumente auf Zeilenebene:
Der komplette Pfad des Elements ergibt sich zu: CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/IncludedSupplyChainTradeLineItem/SpecifiedLineTradeAgreement/AdditionalReferencedDocument
Kinderelemente für *AdditionalReferencedDocument*
Die für die Umsetzung der Funktionalität wichtigen Elemente sind in der folgenden Tabelle aufgelistet:
Name des Elements | Beschreibung | Kardinalität |
---|---|---|
IssuerAssignedID | Die Kennung der Ausschreibung oder des Loses, auf die/das sich die Rechnung bezieht, oder eine vom Verkäufer angegebene Kennung für ein Objekt, auf dem die Rechnung basiert, oder eine Kennung der rechnungsbegründenden Unterlage. | 1..1 |
TypeCode | Der Code 916 "Referenzpapier" wird benutzt, um die Kennung der rechnungsbegründenden Unterlage zu referenzieren. (BT-122) Der Code 50 "Price/sales catalogue response" wird benutzt, um die Ausschreibung oder das Los zu referenzieren. (BT-17) Der Code 130 "Rechnungsdatenblatt" wird benutzt, um eine vom Verkäufer angegebene Kennung für ein Objekt zu referenzieren. (BT-18) | 1..1 |
AttachmentBinaryObject | Ein als Binärobjekt eingebettetes oder zusammen mit der Rechnung gesendetes Anhangsdokument | 0..1 |
AttachmentBinaryObject/mimeCode | Der MIME-Code des Anhangsdokuments | required |
AttachmentBinaryObject/filename | Der Dateiname des Anhangsdokuments | required |
Allgemeine Anmerkung
Die ZUGFeRD Spezifikation unterstützt prinzipiell das Einbetten von Begleitdokumenten direkt in das erzeugte XML-Dokument. Es wird jedoch empfohlen, dass Begleitdokumente direkt in das PDF/A3-Dokument eingebettet und innerhalb des XML mit relativem Pfad referenziert werden. Alternativ könnte eine solche Referenzierung auch auf eine Internetressource hinweisen. Das Element, dass für eine solche Referenzierung verwendet werden könnte, ist das Element URIID.
Notwendige Konfiguration
Hinweis: Diese Änderungen sind bei Verwendung der Standardkonfiguration automatisch eingetragen.
Setup-Zeilen
Zur Unterstützung von Begleitdokumenten im Rechnungsdokument ist es notwendig die Setup-Zeilen entsprechend anzupassen. Da Begleitdokumente sowohl auf Dokumentebene als auch auf Zeilenebene eingebettet werden können, sind zwei unterschiedliche Platzhaltereinträge notwendig. Die entsprechenden Typen dieser Zeilen sind AccompanyingDocumentDocumentLevelPlaceholder sowie AccompanyingDocumentLineLevelPlaceholder. Dies sorgt in erster Linie dafür, dass während der der Erstellung eines elektronischen Rechnungsdokuments kein Fehler auftritt. Zur konformen Unterstützung ist das Hinzufügen von Zeilen des Typs AccompanyingDocument, mit entsprechender Angabe der Spezialberechnungsmethode vom Typ AccompanyingDocument-*, notwendig. Die Bedeutung dieser Spezialberechnungsmethoden ist im Einrichtungsleitfaden SetupLines genauer beschrieben.
Profile
Weitere notwendige Änderungen sind das Einfügen des Wertes für Basiszeile für Begleitdokumente, sowie das Aktivieren der Option Begleitdokumente einbetten in den Profileinstellungen. Der Wert der Basiszeile gibt den Names des Elternelementes vor, den der Platzhaltereintrag repräsentiert.
Code Zuordnungen
Zur Abbildung der unterstützten Dateitypen auf den entsprechenden im Xml-Dokument angegebenen MimeCode, müssen in der Tabelle Code Zuordnungen die korrekten Einträge vom Typ MimeCode erstellt werden.
Beispiel
Die folgende Abbildung zeigt ein XRechnungs-Dokument mit eingebetten Begleitdokumenten auf Rechnungs- und Zeilenebene. Die interessanten Stellen sind mit Kommentaren markiert.
<?xml version="1.0" encoding="UTF-8"?>
<rsm:CrossIndustryInvoice xmlns:a="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100" xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:100" xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100">
...
<rsm:SupplyChainTradeTransaction>
<ram:IncludedSupplyChainTradeLineItem>
...
<ram:SpecifiedTradeProduct>
<ram:SellerAssignedID>1896-S</ram:SellerAssignedID>
<ram:Name>ATHENS Schreibtisch</ram:Name>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<!-- Begleitdokument auf Zeilenebene -->
<ram:AdditionalReferencedDocument>
<ram:IssuerAssignedID>10</ram:IssuerAssignedID>
<ram:TypeCode>916</ram:TypeCode>
<ram:AttachmentBinaryObject filename="helloWorld.jpg" mimeCode="image/jpeg">/9j/4...i5JwPaolLlLjHmP/9k=</ram:AttachmentBinaryObject>
</ram:AdditionalReferencedDocument>
...
</ram:SpecifiedLineTradeAgreement>
...
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
...
</ram:IncludedSupplyChainTradeLineItem>
<ram:ApplicableHeaderTradeAgreement>
...
<!-- Begleitdokument auf Dokumentenebene -->
<ram:AdditionalReferencedDocument>
<ram:IssuerAssignedID>9</ram:IssuerAssignedID>
<ram:TypeCode>916</ram:TypeCode>
<ram:AttachmentBinaryObject filename="hello_world.jpg" mimeCode="image/jpeg">/9j/4AAQS...lLlLjHmP/9k=</ram:AttachmentBinaryObject>
</ram:AdditionalReferencedDocument>
</ram:ApplicableHeaderTradeAgreement>
<ram:ApplicableHeaderTradeDelivery>
...
</ram:ApplicableHeaderTradeDelivery>
<ram:ApplicableHeaderTradeSettlement>
...
</ram:ApplicableHeaderTradeSettlement>
</rsm:SupplyChainTradeTransaction>
</rsm:CrossIndustryInvoice>