Merge pull request #629 from weclapp-dev/master

Visualizing xml
This commit is contained in:
Jochen Staerk
2025-01-06 10:05:55 +01:00
committed by GitHub
13 changed files with 3959 additions and 4062 deletions

View File

@@ -4,7 +4,10 @@ import static java.math.BigDecimal.ZERO;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Objects;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/***
@@ -91,17 +94,14 @@ public class TransactionCalculator implements IAbsoluteValueProvider {
}
private String getAllowanceChargeReasonForPercent(BigDecimal percent, IZUGFeRDAllowanceCharge[] charges) {
String res = " ";
if ((charges != null) && (charges.length > 0)) {
for (IZUGFeRDAllowanceCharge currentCharge : charges) {
if ((percent == null) || (currentCharge.getTaxPercent().compareTo(percent) == 0)
&& currentCharge.getReason() != null) {
res += currentCharge.getReason() + " ";
}
}
if (charges == null) {
return "";
}
res = res.substring(0, res.length() - 1);
return res;
return Arrays.stream(charges)
.filter(currentCharge -> (percent == null || currentCharge.getTaxPercent().compareTo(percent) == 0))
.map(IZUGFeRDAllowanceCharge::getReason)
.filter(Objects::nonNull)
.collect(Collectors.joining(" "));
}
/***

View File

@@ -20,42 +20,9 @@
*/
package org.mustangproject.ZUGFeRD;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Templates;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.URIResolver;
import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import org.apache.fop.apps.FOPException;
import org.apache.fop.apps.FOUserAgent;
import org.apache.fop.apps.Fop;
import org.apache.fop.apps.FopFactory;
import org.apache.fop.apps.FopFactoryBuilder;
import com.helger.commons.io.stream.StreamHelper;
import org.apache.commons.io.IOUtils;
import org.apache.fop.apps.*;
import org.apache.fop.apps.io.ResourceResolverFactory;
import org.apache.fop.configuration.Configuration;
import org.apache.fop.configuration.ConfigurationException;
@@ -65,12 +32,19 @@ import org.mustangproject.ClasspathResolverURIAdapter;
import org.mustangproject.EStandard;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.helger.commons.io.stream.StreamHelper;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.*;
import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.util.Optional;
public class ZUGFeRDVisualizer {
@@ -113,7 +87,7 @@ public class ZUGFeRDVisualizer {
* @param fis inputstream (will be consumed)
* @return (facturx = cii)
*/
public EStandard findOutStandardFromRootNode(InputStream fis) {
private EStandard findOutStandardFromRootNode(InputStream fis) {
String zf1Signature = "CrossIndustryDocument";
String zf2Signature = "CrossIndustryInvoice";
@@ -144,106 +118,97 @@ public class ZUGFeRDVisualizer {
return null;
}
public String visualize(String xmlFilename, Language lang)
throws FileNotFoundException, TransformerException, IOException, SAXException, ParserConfigurationException {
try {
if (mXsltPDFTemplate == null) {
mXsltPDFTemplate = mFactory.newTemplates(
new StreamSource(CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/xr-pdf.xsl")));
}
if (mXsltHTMLTemplate == null) {
mXsltHTMLTemplate = mFactory.newTemplates(new StreamSource(
CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/xrechnung-html." + lang.name().toLowerCase() + ".xsl")));
}
if (mXsltZF1HTMLTemplate == null) {
mXsltZF1HTMLTemplate = mFactory.newTemplates(new StreamSource(
CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/ZUGFeRD_1p0_c1p0_s1p0.xslt")));
}
} catch (TransformerConfigurationException ex) {
LOGGER.error("Failed to init XSLT templates", ex);
}
/**
* *
* http://www.unece.org/fileadmin/DAM/cefact/xml/XML-Naming-And-Design-Rules-V2_1.pdf
* http://www.ferd-net.de/upload/Dokumente/FACTUR-X_ZUGFeRD_2p0_Teil1_Profil_EN16931_1p03.pdf
* http://countwordsfree.com/xmlviewer
*/
public String visualize(String xmlFilename, Language lang) throws IOException, TransformerException {
FileInputStream fis = new FileInputStream(xmlFilename);
String fileContent = "";
try {
fileContent = new String(Files.readAllBytes(Paths.get(xmlFilename)), StandardCharsets.UTF_8);
} catch (IOException e2) {
LOGGER.error("Failed to read file content", e2);
}
return visualize(fis, lang);
}
ByteArrayOutputStream iaos = new ByteArrayOutputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
public String visualize(InputStream inputXml, Language lang) throws IOException, TransformerException {
initTemplates(lang);
boolean doPostProcessing = false;
String fileContent = new String(IOUtils.toByteArray(inputXml), StandardCharsets.UTF_8);
EStandard thestandard = findOutStandardFromRootNode(new ByteArrayInputStream(fileContent.getBytes(StandardCharsets.UTF_8)));
ByteArrayOutputStream htmlOutput = new ByteArrayOutputStream();
fis = new FileInputStream(xmlFilename); // fis wont reset() so re-read from beginning
EStandard thestandard = findOutStandardFromRootNode(fis);
fis = new FileInputStream(xmlFilename); // fis wont reset() so re-read from beginning
ByteArrayInputStream xmlContentStream = new ByteArrayInputStream(fileContent.getBytes(StandardCharsets.UTF_8));
if (thestandard == EStandard.zugferd) {
applyZF1XSLT(fis, baos);
applyZF1XSLT(xmlContentStream, htmlOutput);
return htmlOutput.toString(StandardCharsets.UTF_8);
} else if (thestandard == EStandard.facturx) {
//zf2 or fx
applyZF2XSLT(fis, iaos);
doPostProcessing = true;
applyZF2XSLT(xmlContentStream, htmlOutput);
} else if (thestandard == EStandard.ubl) {
//zf2 or fx
applyUBL2XSLT(fis, iaos);
doPostProcessing = true;
applyUBL2XSLT(xmlContentStream, htmlOutput);
} else if (thestandard == EStandard.ubl_creditnote) {
//zf2 or fx
applyUBLCreditNote2XSLT(fis, iaos);
doPostProcessing = true;
applyUBLCreditNote2XSLT(xmlContentStream, htmlOutput);
} else if (thestandard == EStandard.orderx) {
//zf2 or fx
applyCIO2XSLT(fis, iaos);
doPostProcessing = true;
applyCIO2XSLT(xmlContentStream, htmlOutput);
} else {
throw new IllegalArgumentException("File does not look like CII or UBL");
}
if (doPostProcessing) {
// take the copy of the stream and re-write it to an InputStream
PipedInputStream in = new PipedInputStream();
PipedOutputStream out;
try {
out = new PipedOutputStream(in);
new Thread(new Runnable() {
public void run() {
try {
// write the original OutputStream to the PipedOutputStream
// note that in order for the below method to work, you need
// to ensure that the data has finished writing to the
// ByteArrayOutputStream
iaos.writeTo(out);
} catch (IOException e) {
LOGGER.error("Failed to write to stream", e);
} finally {
// close the PipedOutputStream here because we're done writing data
// once this thread has completed its run
StreamHelper.close(out);
}
}
}).start();
applyXSLTToHTML(in, baos);
} catch (IOException e1) {
LOGGER.error("Failed to create HTML", e1);
}
Optional<InputStream> in = copyStream(htmlOutput);
ByteArrayOutputStream htmlOutStream = new ByteArrayOutputStream();
if (in.isPresent()) {
applyXSLTToHTML(in.get(), htmlOutStream);
}
return baos.toString(StandardCharsets.UTF_8);
return htmlOutStream.toString(StandardCharsets.UTF_8);
}
/**
* TODO: jstaerk: why not copy with that simple call: new ByteArrayInputStream(byteArrayOutputStream.toByteArray()) ?
*/
private Optional<InputStream> copyStream(ByteArrayOutputStream byteArrayOutputStream) {
// take the copy of the stream and re-write it to an InputStream
PipedInputStream in = new PipedInputStream();
try {
PipedOutputStream out = new PipedOutputStream(in);
new Thread(() -> {
try {
// write the original OutputStream to the PipedOutputStream
// note that in order for the below method to work, you need
// to ensure that the data has finished writing to the
// ByteArrayOutputStream
byteArrayOutputStream.writeTo(out);
} catch (IOException e) {
LOGGER.error("Failed to write to stream", e);
} finally {
// close the PipedOutputStream here because we're done writing data
// once this thread has completed its run
StreamHelper.close(out);
}
}).start();
} catch (IOException e1) {
LOGGER.error("Failed to create HTML", e1);
return Optional.empty();
}
return Optional.of(in);
}
private void initTemplates(Language lang) throws TransformerConfigurationException {
if (mXsltXRTemplate == null) {
mXsltXRTemplate = mFactory.newTemplates(
new StreamSource(CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/cii-xr.xsl")));
}
if (mXsltHTMLTemplate == null) {
mXsltHTMLTemplate = mFactory.newTemplates(new StreamSource(
CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/xrechnung-html." + lang.name().toLowerCase() + ".xsl")));
}
if (mXsltZF1HTMLTemplate == null) {
mXsltZF1HTMLTemplate = mFactory.newTemplates(new StreamSource(
CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/ZUGFeRD_1p0_c1p0_s1p0.xslt")));
}
}
protected String toFOP(String xmlFilename)
throws FileNotFoundException, TransformerException {
throws IOException, TransformerException {
FileInputStream fis = new FileInputStream(xmlFilename);
EStandard theStandard = findOutStandardFromRootNode(fis);
@@ -253,8 +218,8 @@ public class ZUGFeRDVisualizer {
}
protected String toFOP(InputStream is, EStandard theStandard)
throws FileNotFoundException, TransformerException {
throws TransformerException, IOException {
try {
if (mXsltPDFTemplate == null) {
mXsltPDFTemplate = mFactory.newTemplates(
@@ -265,7 +230,6 @@ public class ZUGFeRDVisualizer {
}
ByteArrayOutputStream iaos = new ByteArrayOutputStream();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
//zf2 or fx
if (theStandard == EStandard.facturx) {
@@ -277,33 +241,11 @@ public class ZUGFeRDVisualizer {
}
PipedInputStream in = new PipedInputStream();
PipedOutputStream out;
try {
out = new PipedOutputStream(in);
new Thread(new Runnable() {
public void run() {
try {
// write the original OutputStream to the PipedOutputStream
// note that in order for the below method to work, you need
// to ensure that the data has finished writing to the
// ByteArrayOutputStream
iaos.writeTo(out);
} catch (IOException e) {
LOGGER.error("Failed to write to stream", e);
} finally {
// close the PipedOutputStream here because we're done writing data
// once this thread has completed its run
StreamHelper.close(out);
}
}
}).start();
applyXSLTToPDF(in, baos);
} catch (IOException e1) {
LOGGER.error("Failed to create PDF", e1);
Optional<InputStream> in = copyStream(iaos);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
if (in.isPresent()) {
applyXSLTToPDF(in.get(), baos);
}
return baos.toString(StandardCharsets.UTF_8);
}
@@ -319,7 +261,7 @@ public class ZUGFeRDVisualizer {
*/
try {
result = this.toFOP(XMLinputFile.getAbsolutePath());
} catch (FileNotFoundException | TransformerException e) {
} catch (TransformerException | IOException e) {
LOGGER.error("Failed to apply FOP", e);
}
DefaultConfigurationBuilder cfgBuilder = new DefaultConfigurationBuilder();
@@ -373,7 +315,7 @@ public class ZUGFeRDVisualizer {
}
}
protected void applyZF2XSLT(final InputStream xmlFile, final OutputStream HTMLOutstream)
protected void applyZF2XSLT(final InputStream xmlFile, final OutputStream htmlOutStream)
throws TransformerException {
if (mXsltXRTemplate == null) {
mXsltXRTemplate = mFactory.newTemplates(
@@ -382,10 +324,10 @@ public class ZUGFeRDVisualizer {
}
Transformer transformer = mXsltXRTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(HTMLOutstream));
transformer.transform(new StreamSource(xmlFile), new StreamResult(htmlOutStream));
}
protected void applyCIO2XSLT(final InputStream xmlFile, final OutputStream HTMLOutstream)
protected void applyCIO2XSLT(final InputStream xmlFile, final OutputStream htmlOutstream)
throws TransformerException {
if (mXsltCIOTemplate == null) {
mXsltCIOTemplate = mFactory.newTemplates(
@@ -393,10 +335,10 @@ public class ZUGFeRDVisualizer {
}
Transformer transformer = mXsltCIOTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(HTMLOutstream));
transformer.transform(new StreamSource(xmlFile), new StreamResult(htmlOutstream));
}
protected void applyUBL2XSLT(final InputStream xmlFile, final OutputStream HTMLOutstream)
protected void applyUBL2XSLT(final InputStream xmlFile, final OutputStream htmlOutStream)
throws TransformerException {
if (mXsltUBLTemplate == null) {
mXsltUBLTemplate = mFactory.newTemplates(
@@ -404,10 +346,10 @@ public class ZUGFeRDVisualizer {
}
Transformer transformer = mXsltUBLTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(HTMLOutstream));
transformer.transform(new StreamSource(xmlFile), new StreamResult(htmlOutStream));
}
protected void applyUBLCreditNote2XSLT(final InputStream xmlFile, final OutputStream HTMLOutstream)
protected void applyUBLCreditNote2XSLT(final InputStream xmlFile, final OutputStream htmlOutStream)
throws TransformerException {
if (mXsltUBLTemplate == null) {
mXsltUBLTemplate = mFactory.newTemplates(
@@ -415,28 +357,30 @@ public class ZUGFeRDVisualizer {
}
Transformer transformer = mXsltUBLTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(HTMLOutstream));
transformer.transform(new StreamSource(xmlFile), new StreamResult(htmlOutStream));
}
protected void applyZF1XSLT(final InputStream xmlFile, final OutputStream HTMLOutstream)
protected void applyZF1XSLT(final InputStream xmlFile, final OutputStream htmlOutStream)
throws TransformerException {
Transformer transformer = mXsltZF1HTMLTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(HTMLOutstream));
transformer.transform(new StreamSource(xmlFile), new StreamResult(htmlOutStream));
}
protected void applyXSLTToHTML(final InputStream xmlFile, final OutputStream HTMLOutstream)
throws TransformerException {
protected void applyXSLTToHTML(final InputStream xmlFile, final OutputStream htmlOutStream)
throws TransformerException, IOException {
Transformer transformer = mXsltHTMLTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(HTMLOutstream));
transformer.transform(new StreamSource(xmlFile), new StreamResult(htmlOutStream));
xmlFile.close();
}
protected void applyXSLTToPDF(final InputStream xmlFile, final OutputStream PDFOutstream)
throws TransformerException {
throws TransformerException, IOException {
Transformer transformer = mXsltPDFTemplate.newTransformer();
transformer.transform(new StreamSource(xmlFile), new StreamResult(PDFOutstream));
xmlFile.close();
}
private static class ClasspathResourceURIResolver implements URIResolver {
@@ -445,7 +389,7 @@ public class ZUGFeRDVisualizer {
}
@Override
public Source resolve(String href, String base) throws TransformerException {
public Source resolve(String href, String base) {
return new StreamSource(CLASS_LOADER.getResourceAsStream(RESOURCE_PATH + "stylesheets/" + href));
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,227 +1,229 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:variable name="i18n.bt10" select="'Leitweg-ID'"/>
<xsl:variable name="i18n.bt44" select="'Name'"/>
<xsl:variable name="i18n.title" select="'XRechnung'"/>
<xsl:variable name="i18n.overview" select="'Übersicht'"/>
<xsl:variable name="i18n.items" select="'Positionen'"/>
<xsl:variable name="i18n.information" select="'Informationen'"/>
<xsl:variable name="i18n.attachments" select="'Anhänge'"/>
<xsl:variable name="i18n.history" select="'Bearbeitungshistorie'"/>
<xsl:variable name="i18n.disclaimer" select="'Wir übernehmen keine Haftung für die Richtigkeit der Daten.'"/>
<xsl:variable name="i18n.recipientInfo" select="'Informationen zum Käufer'"/>
<xsl:variable name="i18n.bt50" select="'Straße / Haus-Nr.'"/>
<xsl:variable name="i18n.bt51" select="'Postfach'"/>
<xsl:variable name="i18n.bt163" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt53" select="'PLZ'"/>
<xsl:variable name="i18n.bt52" select="'Ort'"/>
<xsl:variable name="i18n.bt54" select="'Bundesland'"/>
<xsl:variable name="i18n.bt55" select="'Land'"/>
<xsl:variable name="i18n.bt46" select="'Kennung / Kunden-Nr.'"/>
<xsl:variable name="i18n.bt46-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt56" select="'Name'"/>
<xsl:variable name="i18n.bt57" select="'Telefon'"/>
<xsl:variable name="i18n.bt58" select="'E-Mail-Adresse'"/>
<xsl:variable name="i18n.bt27" select="'Firmenname'"/>
<xsl:variable name="i18n.bt35" select="'Straße / Haus-Nr.'"/>
<xsl:variable name="i18n.bt36" select="'Postfach'"/>
<xsl:variable name="i18n.bt162" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt38" select="'PLZ'"/>
<xsl:variable name="i18n.bt37" select="'Ort'"/>
<xsl:variable name="i18n.bt39" select="'Bundesland'"/>
<xsl:variable name="i18n.bt40" select="'ndercode'"/>
<xsl:variable name="i18n.bt29" select="'Kennung'"/>
<xsl:variable name="i18n.bt29-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt41" select="'Name'"/>
<xsl:variable name="i18n.bt42" select="'Telefon'"/>
<xsl:variable name="i18n.bt43" select="'E-Mail-Adresse'"/>
<xsl:variable name="i18n.bt1" select="'Rechnungsnummer'"/>
<xsl:variable name="i18n.bt2" select="'Rechnungsdatum'"/>
<xsl:variable name="i18n.details" select="'Rechnungsdaten'"/>
<xsl:variable name="i18n.period" select="'Abrechnungszeitraum'"/>
<xsl:variable name="i18n.bt3" select="'Rechnungsart'"/>
<xsl:variable name="i18n.bt5" select="'Währung'"/>
<xsl:variable name="i18n.bt73" select="'von'"/>
<xsl:variable name="i18n.bt74" select="'bis'"/>
<xsl:variable name="i18n.bt11" select="'Projektnummer'"/>
<xsl:variable name="i18n.bt12" select="'Vertragsnummer'"/>
<xsl:variable name="i18n.bt13" select="'Bestellnummer'"/>
<xsl:variable name="i18n.bt14" select="'Auftragsnummer'"/>
<xsl:variable name="i18n.bt25" select="'Rechnungsnummer'"/>
<xsl:variable name="i18n.bt26" select="'Rechnungsdatum'"/>
<xsl:variable name="i18n.bg22" select="'Gesamtbeträge der Rechnung'"/>
<xsl:variable name="i18n.bt106" select="'Summe aller Positionen'"/>
<xsl:variable name="i18n.bt107" select="'Summe Nachlässe'"/>
<xsl:variable name="i18n.bt108" select="'Summe Zuschläge'"/>
<xsl:variable name="i18n.bt109" select="'Gesamtsumme'"/>
<xsl:variable name="i18n.bt110" select="'Summe Umsatzsteuer'"/>
<xsl:variable name="i18n.bt111" select="'Summe Umsatzsteuer in Abrechnungswährung'"/>
<xsl:variable name="i18n.bt112" select="'Gesamtsumme'"/>
<xsl:variable name="i18n.bt113" select="'Gezahlter Betrag'"/>
<xsl:variable name="i18n.bt114" select="'Rundungsbetrag'"/>
<xsl:variable name="i18n.bt115" select="'Fälliger Betrag'"/>
<xsl:variable name="i18n.bg23" select="'Aufschlüsselung der Umsatzsteuer auf Ebene der Rechnung'"/>
<xsl:variable name="i18n.bt118" select="'Umsatzsteuerkategorie'"/>
<xsl:variable name="i18n.bt116" select="'Gesamtsumme'"/>
<xsl:variable name="i18n.bt119" select="'Umsatzsteuersatz'"/>
<xsl:variable name="i18n.bt117" select="'Umsatzsteuerbetrag'"/>
<xsl:variable name="i18n.bt120" select="'Befreiungsgrund'"/>
<xsl:variable name="i18n.bt121" select="'Kennung für den Befreiungsgrund'"/>
<xsl:variable name="i18n.bg20" select="'Nachlass auf Ebene der Rechnung'"/>
<xsl:variable name="i18n.bt95" select="'Umsatzsteuerkategorie des Nachlasses'"/>
<xsl:variable name="i18n.bt93" select="'Grundbetrag'"/>
<xsl:variable name="i18n.bt94" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt92" select="'Nachlass'"/>
<xsl:variable name="i18n.bt96" select="'Umsatzsteuersatz des Nachlasses'"/>
<xsl:variable name="i18n.bt97" select="'Grund für den Nachlass'"/>
<xsl:variable name="i18n.bt98" select="'Document level allowance reason code'"/>
<xsl:variable name="i18n.bg21" select="'Zuschlag auf Ebene der Rechnung'"/>
<xsl:variable name="i18n.bt102" select="'Umsatzsteuerkategorie des Zuschlages'"/>
<xsl:variable name="i18n.bt100" select="'Grundbetrag'"/>
<xsl:variable name="i18n.bt101" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt99" select="'Zuschlag'"/>
<xsl:variable name="i18n.bt103" select="'Umsatzsteuersatz des Zuschlages'"/>
<xsl:variable name="i18n.bt104" select="'Grund für den Zuschlag'"/>
<xsl:variable name="i18n.bt105" select="'Document level charge reason code'"/>
<xsl:variable name="i18n.bgx42" select="'Versandkosten'"/>
<xsl:variable name="i18n.btx274" select="'Umsatzsteuerkategorie der Versandkosten'"/>
<xsl:variable name="i18n.btx272" select="'Betrag'"/>
<xsl:variable name="i18n.btx273" select="'Umsatzsteuersatz der Versandkosten'"/>
<xsl:variable name="i18n.btx271" select="'Versandkostenbeschreibung'"/>
<xsl:variable name="i18n.bt20" select="'Skonto; weitere Zahlungsbed.'"/>
<xsl:variable name="i18n.bt9" select="'Fälligkeitsdatum'"/>
<xsl:variable name="i18n.bt81" select="'Code für das Zahlungsmittel'"/>
<xsl:variable name="i18n.bt82" select="'Zahlungsmittel'"/>
<xsl:variable name="i18n.bt83" select="'Verwendungszweck'"/>
<xsl:variable name="i18n.bg18" select="'Karteninformation'"/>
<xsl:variable name="i18n.bt87" select="'Kartennummer'"/>
<xsl:variable name="i18n.bt88" select="'Karteninhaber'"/>
<xsl:variable name="i18n.bg19" select="'Lastschrift'"/>
<xsl:variable name="i18n.bt89" select="'Mandatsreferenznr.'"/>
<xsl:variable name="i18n.bt91" select="'IBAN'"/>
<xsl:variable name="i18n.bt90" select="'Gläubiger-ID'"/>
<xsl:variable name="i18n.bg17" select="'Überweisung'"/>
<xsl:variable name="i18n.bt85" select="'Kontoinhaber'"/>
<xsl:variable name="i18n.bt84" select="'IBAN'"/>
<xsl:variable name="i18n.bt86" select="'BIC'"/>
<xsl:variable name="i18n.bg1" select="'Bemerkung zur Rechnung'"/>
<xsl:variable name="i18n.bt21" select="'Betreff'"/>
<xsl:variable name="i18n.bt22" select="'Bemerkung'"/>
<xsl:variable name="i18n.bt126" select="'Position'"/>
<xsl:variable name="i18n.bt127" select="'Freitext'"/>
<xsl:variable name="i18n.bt128" select="'Objektkennung'"/>
<xsl:variable name="i18n.bt128-id" select="'Schema der Objektkennung'"/>
<xsl:variable name="i18n.bt132" select="'Nummer der Auftragsposition'"/>
<xsl:variable name="i18n.bt133" select="'Kontierungshinweis /Kostenstelle'"/>
<xsl:variable name="i18n.bg26" select="'Abrechnungszeitraum'"/>
<xsl:variable name="i18n.bt134" select="'von'"/>
<xsl:variable name="i18n.bt135" select="'bis'"/>
<xsl:variable name="i18n.bg29" select="'Preiseinzelheiten'"/>
<xsl:variable name="i18n.bt129" select="'Menge'"/>
<xsl:variable name="i18n.bt130" select="'Einheit'"/>
<xsl:variable name="i18n.bt146" select="'Preis pro Einheit (netto)'"/>
<xsl:variable name="i18n.bt131" select="'Gesamtpreis (netto)'"/>
<xsl:variable name="i18n.bt147" select="'Rabatt (netto)'"/>
<xsl:variable name="i18n.bt148" select="'Listenpreis (netto)'"/>
<xsl:variable name="i18n.bt149" select="'Anzahl der Einheit'"/>
<xsl:variable name="i18n.bt150" select="'Code der Maßeinheit'"/>
<xsl:variable name="i18n.bt151" select="'Umsatzsteuer'"/>
<xsl:variable name="i18n.bt152" select="'Umsatzsteuersatz in %'"/>
<xsl:variable name="i18n.bg27" select="'Nachlässe auf Ebene der Rechnungsposition'"/>
<xsl:variable name="i18n.bt137" select="'Grundbetrag (netto)'"/>
<xsl:variable name="i18n.bt138" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt136" select="'Nachlass'"/>
<xsl:variable name="i18n.bt139" select="'Grund des Nachlasses'"/>
<xsl:variable name="i18n.bt140" select="'Code für den Nachlassgrund'"/>
<xsl:variable name="i18n.bg28" select="'Zuschläge auf Ebene der Rechnungsposition'"/>
<xsl:variable name="i18n.bt142" select="'Grundbetrag (netto)'"/>
<xsl:variable name="i18n.bt143" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt141" select="'Zuschlag (netto)'"/>
<xsl:variable name="i18n.bt144" select="'Grund des Zuschlags'"/>
<xsl:variable name="i18n.bt145" select="'Code für den Zuschlagsgrund'"/>
<xsl:variable name="i18n.bg31" select="'Artikelinformationen'"/>
<xsl:variable name="i18n.bt153" select="'Bezeichnung'"/>
<xsl:variable name="i18n.bt154" select="'Beschreibung'"/>
<xsl:variable name="i18n.bt155" select="'Artikelnummer'"/>
<xsl:variable name="i18n.bt156" select="'Kunden-Material-Nr.'"/>
<xsl:variable name="i18n.bg32" select="'Eigenschaften des Artikels'"/>
<xsl:variable name="i18n.bt157" select="'Artikelkennung (EAN)'"/>
<xsl:variable name="i18n.bt157-id" select="'Schema der Artikelkennung'"/>
<xsl:variable name="i18n.bt158" select="'Code der Artikelklassifizierung'"/>
<xsl:variable name="i18n.bt158-id" select="'Kennung zur Bildung des Schemas'"/>
<xsl:variable name="i18n.bt157-vers-id" select="'Version zur Bildung des Schemas'"/>
<xsl:variable name="i18n.bt159" select="'Code des Herkunftslandes'"/>
<xsl:variable name="i18n.bg4" select="'Informationen zum Verkäufer'"/>
<xsl:variable name="i18n.bt28" select="'Abweichender Handelsname'"/>
<xsl:variable name="i18n.bt34" select="'Elektronische Adresse'"/>
<xsl:variable name="i18n.bt34-id" select="'Schema der elektronischen Adresse'"/>
<xsl:variable name="i18n.bt30" select="'Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt31" select="'Umsatzsteuer-ID'"/>
<xsl:variable name="i18n.bt32" select="'Steuernummer'"/>
<xsl:variable name="i18n.bt32-schema" select="'Schema der Steuernummer'"/>
<xsl:variable name="i18n.bt33" select="'Weitere rechtliche Informationen'"/>
<xsl:variable name="i18n.bt6" select="'Code der Umsatzsteuerwährung'"/>
<xsl:variable name="i18n.bg11" select="'Steuervertreter des Verkäufers'"/>
<xsl:variable name="i18n.bt62" select="'Name'"/>
<xsl:variable name="i18n.bt64" select="'Straße / Hausnummer'"/>
<xsl:variable name="i18n.bt65" select="'Postfach'"/>
<xsl:variable name="i18n.bt164" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt67" select="'PLZ'"/>
<xsl:variable name="i18n.bt66" select="'Ort'"/>
<xsl:variable name="i18n.bt68" select="'Bundesland'"/>
<xsl:variable name="i18n.bt69" select="'ndercode'"/>
<xsl:variable name="i18n.bt63" select="'Umsatzsteuer-ID'"/>
<xsl:variable name="i18n.bg7" select="'Informationen zum Käufer'"/>
<xsl:variable name="i18n.bt45" select="'Abweichender Handelsname'"/>
<xsl:variable name="i18n.bt49" select="'Elektronische Adresse'"/>
<xsl:variable name="i18n.bt49-id" select="'Schema der elektronischen Adresse'"/>
<xsl:variable name="i18n.bt47" select="'Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt47-id" select="'Schema der Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt48" select="'Umsatzsteuer-ID'"/>
<xsl:variable name="i18n.bt7" select="'Abrechnungsdatum der Umsatzsteuer'"/>
<xsl:variable name="i18n.bt8" select="'Code des Umsatzsteuer-Abrechnungsdatums'"/>
<xsl:variable name="i18n.bt19" select="'Kontierungsinformation / Kostenstelle'"/>
<xsl:variable name="i18n.bg13" select="'Lieferinformationen'"/>
<xsl:variable name="i18n.bt71" select="'Kennung des Lieferorts'"/>
<xsl:variable name="i18n.bt71-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt72" select="'Lieferdatum'"/>
<xsl:variable name="i18n.bt70" select="'Name des Empfängers'"/>
<xsl:variable name="i18n.bt75" select="'Straße / Haus-Nr.'"/>
<xsl:variable name="i18n.bt76" select="'Postfach'"/>
<xsl:variable name="i18n.bt165" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt78" select="'PLZ'"/>
<xsl:variable name="i18n.bt77" select="'Ort'"/>
<xsl:variable name="i18n.bt79" select="'Bundesland'"/>
<xsl:variable name="i18n.bt80" select="'Land'"/>
<xsl:variable name="i18n.bt17" select="'Vergabenummer'"/>
<xsl:variable name="i18n.bt15" select="'Kennung der Empfangsbestätigung'"/>
<xsl:variable name="i18n.bt16" select="'Kennung der Versandanzeige'"/>
<xsl:variable name="i18n.bt23" select="'Prozesskennung'"/>
<xsl:variable name="i18n.bt24" select="'Spezifikationskennung'"/>
<xsl:variable name="i18n.bt18" select="'Objektkennung'"/>
<xsl:variable name="i18n.bt18-id" select="'Schema der Objektkennung'"/>
<xsl:variable name="i18n.bg10" select="'Vom Verkäufer abweichender Zahlungsempfänger'"/>
<xsl:variable name="i18n.bt59" select="'Name'"/>
<xsl:variable name="i18n.bt60" select="'Kennung'"/>
<xsl:variable name="i18n.bt60-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt61" select="'Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt61-id" select="'Schema der Register-/Registriernummer'"/>
<xsl:variable name="i18n.bg24" select="'Rechnungsbegründende Unterlagen'"/>
<xsl:variable name="i18n.bt122" select="'Kennung'"/>
<xsl:variable name="i18n.bt123" select="'Beschreibung'"/>
<xsl:variable name="i18n.bt124" select="'Verweis (z.B. Internetadresse)'"/>
<xsl:variable name="i18n.bt125" select="'Anhangsdokument'"/>
<xsl:variable name="i18n.bt125-format" select="'Format des Anhangdokuments'"/>
<xsl:variable name="i18n.bt125-name" select="'Name des Anhangsdokuments'"/>
<xsl:variable name="i18n.historyDate" select="'Datum/Uhrzeit'"/>
<xsl:variable name="i18n.historySubject" select="'Betreff'"/>
<xsl:variable name="i18n.historyText" select="'Text'"/>
<xsl:variable name="i18n.historyDetails" select="'Details'"/>
<xsl:variable name="i18n.payment" select="'Zahlungsdaten'"/>
<xsl:variable name="i18n.contract_information" select="'Vertragsdaten'"/>
<xsl:variable name="i18n.preceding_invoice_reference" select="'Vorausgegangene Rechnungen'"/>
<xsl:include href="xrechnung-html.univ.xsl"/>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:variable name="i18n.bt10" select="'Leitweg-ID'"/>
<xsl:variable name="i18n.bt44" select="'Name'"/>
<xsl:variable name="i18n.title" select="'XRechnung'"/>
<xsl:variable name="i18n.overview" select="'Übersicht'"/>
<xsl:variable name="i18n.items" select="'Positionen'"/>
<xsl:variable name="i18n.information" select="'Informationen'"/>
<xsl:variable name="i18n.attachments" select="'Anhänge'"/>
<xsl:variable name="i18n.history" select="'Bearbeitungshistorie'"/>
<xsl:variable name="i18n.disclaimer" select="'Wir übernehmen keine Haftung für die Richtigkeit der Daten.'"/>
<xsl:variable name="i18n.recipientInfo" select="'Informationen zum Käufer'"/>
<xsl:variable name="i18n.dateOf" select="' vom '"/>
<xsl:variable name="i18n.bt50" select="'Straße / Haus-Nr.'"/>
<xsl:variable name="i18n.bt51" select="'Postfach'"/>
<xsl:variable name="i18n.bt163" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt53" select="'PLZ'"/>
<xsl:variable name="i18n.bt52" select="'Ort'"/>
<xsl:variable name="i18n.bt54" select="'Bundesland'"/>
<xsl:variable name="i18n.bt55" select="'Land'"/>
<xsl:variable name="i18n.bt46" select="'Kennung / Kunden-Nr.'"/>
<xsl:variable name="i18n.bt46-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt56" select="'Name'"/>
<xsl:variable name="i18n.bt57" select="'Telefon'"/>
<xsl:variable name="i18n.bt58" select="'E-Mail-Adresse'"/>
<xsl:variable name="i18n.bt27" select="'Firmenname'"/>
<xsl:variable name="i18n.bt35" select="'Straße / Haus-Nr.'"/>
<xsl:variable name="i18n.bt36" select="'Postfach'"/>
<xsl:variable name="i18n.bt162" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt38" select="'PLZ'"/>
<xsl:variable name="i18n.bt37" select="'Ort'"/>
<xsl:variable name="i18n.bt39" select="'Bundesland'"/>
<xsl:variable name="i18n.bt40" select="'Ländercode'"/>
<xsl:variable name="i18n.bt29" select="'Kennung'"/>
<xsl:variable name="i18n.bt29-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt41" select="'Name'"/>
<xsl:variable name="i18n.bt42" select="'Telefon'"/>
<xsl:variable name="i18n.bt43" select="'E-Mail-Adresse'"/>
<xsl:variable name="i18n.bt1" select="'Rechnungsnummer'"/>
<xsl:variable name="i18n.bt2" select="'Rechnungsdatum'"/>
<xsl:variable name="i18n.details" select="'Rechnungsdaten'"/>
<xsl:variable name="i18n.period" select="'Abrechnungszeitraum'"/>
<xsl:variable name="i18n.bt3" select="'Rechnungsart'"/>
<xsl:variable name="i18n.bt5" select="'Währung'"/>
<xsl:variable name="i18n.bt73" select="'von'"/>
<xsl:variable name="i18n.bt74" select="'bis'"/>
<xsl:variable name="i18n.bt11" select="'Projektnummer'"/>
<xsl:variable name="i18n.bt12" select="'Vertragsnummer'"/>
<xsl:variable name="i18n.bt13" select="'Bestellnummer'"/>
<xsl:variable name="i18n.bt14" select="'Auftragsnummer'"/>
<xsl:variable name="i18n.bt25" select="'Rechnungsnummer'"/>
<xsl:variable name="i18n.bt26" select="'Rechnungsdatum'"/>
<xsl:variable name="i18n.bg22" select="'Gesamtbeträge der Rechnung'"/>
<xsl:variable name="i18n.bt106" select="'Summe aller Positionen'"/>
<xsl:variable name="i18n.bt107" select="'Summe Nachlässe'"/>
<xsl:variable name="i18n.bt108" select="'Summe Zuschläge'"/>
<xsl:variable name="i18n.bt109" select="'Gesamtsumme'"/>
<xsl:variable name="i18n.bt110" select="'Summe Umsatzsteuer'"/>
<xsl:variable name="i18n.bt111" select="'Summe Umsatzsteuer in Abrechnungswährung'"/>
<xsl:variable name="i18n.bt112" select="'Gesamtsumme'"/>
<xsl:variable name="i18n.bt113" select="'Gezahlter Betrag'"/>
<xsl:variable name="i18n.bt114" select="'Rundungsbetrag'"/>
<xsl:variable name="i18n.bt115" select="'Fälliger Betrag'"/>
<xsl:variable name="i18n.bg23" select="'Aufschlüsselung der Umsatzsteuer auf Ebene der Rechnung'"/>
<xsl:variable name="i18n.bt118" select="'Umsatzsteuerkategorie'"/>
<xsl:variable name="i18n.bt116" select="'Gesamtsumme'"/>
<xsl:variable name="i18n.bt119" select="'Umsatzsteuersatz'"/>
<xsl:variable name="i18n.bt117" select="'Umsatzsteuerbetrag'"/>
<xsl:variable name="i18n.bt120" select="'Befreiungsgrund'"/>
<xsl:variable name="i18n.bt121" select="'Kennung für den Befreiungsgrund'"/>
<xsl:variable name="i18n.bg20" select="'Nachlass auf Ebene der Rechnung'"/>
<xsl:variable name="i18n.bt95" select="'Umsatzsteuerkategorie des Nachlasses'"/>
<xsl:variable name="i18n.bt93" select="'Grundbetrag'"/>
<xsl:variable name="i18n.bt94" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt92" select="'Nachlass'"/>
<xsl:variable name="i18n.bt96" select="'Umsatzsteuersatz des Nachlasses'"/>
<xsl:variable name="i18n.bt97" select="'Grund für den Nachlass'"/>
<xsl:variable name="i18n.bt98" select="'Document level allowance reason code'"/>
<xsl:variable name="i18n.bg21" select="'Zuschlag auf Ebene der Rechnung'"/>
<xsl:variable name="i18n.bt102" select="'Umsatzsteuerkategorie des Zuschlages'"/>
<xsl:variable name="i18n.bt100" select="'Grundbetrag'"/>
<xsl:variable name="i18n.bt101" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt99" select="'Zuschlag'"/>
<xsl:variable name="i18n.bt103" select="'Umsatzsteuersatz des Zuschlages'"/>
<xsl:variable name="i18n.bt104" select="'Grund für den Zuschlag'"/>
<xsl:variable name="i18n.bt105" select="'Document level charge reason code'"/>
<xsl:variable name="i18n.bgx42" select="'Versandkosten'"/>
<xsl:variable name="i18n.btx274" select="'Umsatzsteuerkategorie der Versandkosten'"/>
<xsl:variable name="i18n.btx272" select="'Betrag'"/>
<xsl:variable name="i18n.btx273" select="'Umsatzsteuersatz der Versandkosten'"/>
<xsl:variable name="i18n.btx271" select="'Versandkostenbeschreibung'"/>
<xsl:variable name="i18n.bt20" select="'Skonto; weitere Zahlungsbed.'"/>
<xsl:variable name="i18n.bt9" select="'Fälligkeitsdatum'"/>
<xsl:variable name="i18n.bt81" select="'Code für das Zahlungsmittel'"/>
<xsl:variable name="i18n.bt82" select="'Zahlungsmittel'"/>
<xsl:variable name="i18n.bt83" select="'Verwendungszweck'"/>
<xsl:variable name="i18n.bg18" select="'Karteninformation'"/>
<xsl:variable name="i18n.bt87" select="'Kartennummer'"/>
<xsl:variable name="i18n.bt88" select="'Karteninhaber'"/>
<xsl:variable name="i18n.bg19" select="'Lastschrift'"/>
<xsl:variable name="i18n.bt89" select="'Mandatsreferenznr.'"/>
<xsl:variable name="i18n.bt91" select="'IBAN'"/>
<xsl:variable name="i18n.bt90" select="'Gläubiger-ID'"/>
<xsl:variable name="i18n.bg17" select="'Überweisung'"/>
<xsl:variable name="i18n.bt85" select="'Kontoinhaber'"/>
<xsl:variable name="i18n.bt84" select="'IBAN'"/>
<xsl:variable name="i18n.bt86" select="'BIC'"/>
<xsl:variable name="i18n.bg1" select="'Bemerkung zur Rechnung'"/>
<xsl:variable name="i18n.bt21" select="'Betreff'"/>
<xsl:variable name="i18n.bt22" select="'Bemerkung'"/>
<xsl:variable name="i18n.bt126" select="'Position'"/>
<xsl:variable name="i18n.bt127" select="'Freitext'"/>
<xsl:variable name="i18n.bt128" select="'Objektkennung'"/>
<xsl:variable name="i18n.bt128-id" select="'Schema der Objektkennung'"/>
<xsl:variable name="i18n.bt132" select="'Nummer der Auftragsposition'"/>
<xsl:variable name="i18n.bt133" select="'Kontierungshinweis /Kostenstelle'"/>
<xsl:variable name="i18n.bg26" select="'Abrechnungszeitraum'"/>
<xsl:variable name="i18n.bt134" select="'von'"/>
<xsl:variable name="i18n.bt135" select="'bis'"/>
<xsl:variable name="i18n.bg29" select="'Preiseinzelheiten'"/>
<xsl:variable name="i18n.bt129" select="'Menge'"/>
<xsl:variable name="i18n.bt130" select="'Einheit'"/>
<xsl:variable name="i18n.bt146" select="'Preis pro Einheit (netto)'"/>
<xsl:variable name="i18n.bt131" select="'Gesamtpreis (netto)'"/>
<xsl:variable name="i18n.bt147" select="'Rabatt (netto)'"/>
<xsl:variable name="i18n.bt148" select="'Listenpreis (netto)'"/>
<xsl:variable name="i18n.bt149" select="'Anzahl der Einheit'"/>
<xsl:variable name="i18n.bt150" select="'Code der Maßeinheit'"/>
<xsl:variable name="i18n.bt151" select="'Umsatzsteuer'"/>
<xsl:variable name="i18n.bt152" select="'Umsatzsteuersatz in %'"/>
<xsl:variable name="i18n.bg27" select="'Nachlässe auf Ebene der Rechnungsposition'"/>
<xsl:variable name="i18n.bt137" select="'Grundbetrag (netto)'"/>
<xsl:variable name="i18n.bt138" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt136" select="'Nachlass'"/>
<xsl:variable name="i18n.bt139" select="'Grund des Nachlasses'"/>
<xsl:variable name="i18n.bt140" select="'Code für den Nachlassgrund'"/>
<xsl:variable name="i18n.bg28" select="'Zuschläge auf Ebene der Rechnungsposition'"/>
<xsl:variable name="i18n.bt142" select="'Grundbetrag (netto)'"/>
<xsl:variable name="i18n.bt143" select="'Prozentsatz'"/>
<xsl:variable name="i18n.bt141" select="'Zuschlag (netto)'"/>
<xsl:variable name="i18n.bt144" select="'Grund des Zuschlags'"/>
<xsl:variable name="i18n.bt145" select="'Code für den Zuschlagsgrund'"/>
<xsl:variable name="i18n.bg31" select="'Artikelinformationen'"/>
<xsl:variable name="i18n.bt153" select="'Bezeichnung'"/>
<xsl:variable name="i18n.bt154" select="'Beschreibung'"/>
<xsl:variable name="i18n.bt155" select="'Artikelnummer'"/>
<xsl:variable name="i18n.bt156" select="'Kunden-Material-Nr.'"/>
<xsl:variable name="i18n.bg32" select="'Eigenschaften des Artikels'"/>
<xsl:variable name="i18n.bt157" select="'Artikelkennung (EAN)'"/>
<xsl:variable name="i18n.bt157-id" select="'Schema der Artikelkennung'"/>
<xsl:variable name="i18n.bt158" select="'Code der Artikelklassifizierung'"/>
<xsl:variable name="i18n.bt158-id" select="'Kennung zur Bildung des Schemas'"/>
<xsl:variable name="i18n.bt157-vers-id" select="'Version zur Bildung des Schemas'"/>
<xsl:variable name="i18n.bt159" select="'Code des Herkunftslandes'"/>
<xsl:variable name="i18n.bg4" select="'Informationen zum Verkäufer'"/>
<xsl:variable name="i18n.bt28" select="'Abweichender Handelsname'"/>
<xsl:variable name="i18n.bt34" select="'Elektronische Adresse'"/>
<xsl:variable name="i18n.bt34-id" select="'Schema der elektronischen Adresse'"/>
<xsl:variable name="i18n.bt30" select="'Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt31" select="'Umsatzsteuer-ID'"/>
<xsl:variable name="i18n.bt32" select="'Steuernummer'"/>
<xsl:variable name="i18n.bt32-schema" select="'Schema der Steuernummer'"/>
<xsl:variable name="i18n.bt33" select="'Weitere rechtliche Informationen'"/>
<xsl:variable name="i18n.bt6" select="'Code der Umsatzsteuerwährung'"/>
<xsl:variable name="i18n.bg11" select="'Steuervertreter des Verkäufers'"/>
<xsl:variable name="i18n.bt62" select="'Name'"/>
<xsl:variable name="i18n.bt64" select="'Straße / Hausnummer'"/>
<xsl:variable name="i18n.bt65" select="'Postfach'"/>
<xsl:variable name="i18n.bt164" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt67" select="'PLZ'"/>
<xsl:variable name="i18n.bt66" select="'Ort'"/>
<xsl:variable name="i18n.bt68" select="'Bundesland'"/>
<xsl:variable name="i18n.bt69" select="'Ländercode'"/>
<xsl:variable name="i18n.bt63" select="'Umsatzsteuer-ID'"/>
<xsl:variable name="i18n.bg7" select="'Informationen zum Käufer'"/>
<xsl:variable name="i18n.bt45" select="'Abweichender Handelsname'"/>
<xsl:variable name="i18n.bt49" select="'Elektronische Adresse'"/>
<xsl:variable name="i18n.bt49-id" select="'Schema der elektronischen Adresse'"/>
<xsl:variable name="i18n.bt47" select="'Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt47-id" select="'Schema der Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt48" select="'Umsatzsteuer-ID'"/>
<xsl:variable name="i18n.bt7" select="'Abrechnungsdatum der Umsatzsteuer'"/>
<xsl:variable name="i18n.bt8" select="'Code des Umsatzsteuer-Abrechnungsdatums'"/>
<xsl:variable name="i18n.bt19" select="'Kontierungsinformation / Kostenstelle'"/>
<xsl:variable name="i18n.bg13" select="'Lieferinformationen'"/>
<xsl:variable name="i18n.bt71" select="'Kennung des Lieferorts'"/>
<xsl:variable name="i18n.bt71-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt72" select="'Lieferdatum'"/>
<xsl:variable name="i18n.bt70" select="'Name des Empfängers'"/>
<xsl:variable name="i18n.bt75" select="'Straße / Haus-Nr.'"/>
<xsl:variable name="i18n.bt76" select="'Postfach'"/>
<xsl:variable name="i18n.bt165" select="'Adresszusatz'"/>
<xsl:variable name="i18n.bt78" select="'PLZ'"/>
<xsl:variable name="i18n.bt77" select="'Ort'"/>
<xsl:variable name="i18n.bt79" select="'Bundesland'"/>
<xsl:variable name="i18n.bt80" select="'Land'"/>
<xsl:variable name="i18n.bt17" select="'Vergabenummer'"/>
<xsl:variable name="i18n.bt15" select="'Kennung der Empfangsbestätigung'"/>
<xsl:variable name="i18n.bt16" select="'Kennung der Versandanzeige'"/>
<xsl:variable name="i18n.btx202" select="'Kennung des Lieferscheins'"/>
<xsl:variable name="i18n.bt23" select="'Prozesskennung'"/>
<xsl:variable name="i18n.bt24" select="'Spezifikationskennung'"/>
<xsl:variable name="i18n.bt18" select="'Objektkennung'"/>
<xsl:variable name="i18n.bt18-id" select="'Schema der Objektkennung'"/>
<xsl:variable name="i18n.bg10" select="'Vom Verkäufer abweichender Zahlungsempfänger'"/>
<xsl:variable name="i18n.bt59" select="'Name'"/>
<xsl:variable name="i18n.bt60" select="'Kennung'"/>
<xsl:variable name="i18n.bt60-id" select="'Schema der Kennung'"/>
<xsl:variable name="i18n.bt61" select="'Register-/Registriernummer'"/>
<xsl:variable name="i18n.bt61-id" select="'Schema der Register-/Registriernummer'"/>
<xsl:variable name="i18n.bg24" select="'Rechnungsbegründende Unterlagen'"/>
<xsl:variable name="i18n.bt122" select="'Kennung'"/>
<xsl:variable name="i18n.bt123" select="'Beschreibung'"/>
<xsl:variable name="i18n.bt124" select="'Verweis (z.B. Internetadresse)'"/>
<xsl:variable name="i18n.bt125" select="'Anhangsdokument'"/>
<xsl:variable name="i18n.bt125-format" select="'Format des Anhangdokuments'"/>
<xsl:variable name="i18n.bt125-name" select="'Name des Anhangsdokuments'"/>
<xsl:variable name="i18n.historyDate" select="'Datum/Uhrzeit'"/>
<xsl:variable name="i18n.historySubject" select="'Betreff'"/>
<xsl:variable name="i18n.historyText" select="'Text'"/>
<xsl:variable name="i18n.historyDetails" select="'Details'"/>
<xsl:variable name="i18n.payment" select="'Zahlungsdaten'"/>
<xsl:variable name="i18n.contract_information" select="'Vertragsdaten'"/>
<xsl:variable name="i18n.preceding_invoice_reference" select="'Vorausgegangene Rechnungen'"/>
<xsl:include href="xrechnung-html.univ.xsl"/>
</xsl:stylesheet>

View File

@@ -1,227 +1,229 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:variable name="i18n.bt10" select="'Routing ID'"/>
<xsl:variable name="i18n.bt44" select="'Name'"/>
<xsl:variable name="i18n.title" select="'XRechnung'"/>
<xsl:variable name="i18n.overview" select="'Overview'"/>
<xsl:variable name="i18n.items" select="'Items'"/>
<xsl:variable name="i18n.information" select="'Information'"/>
<xsl:variable name="i18n.attachments" select="'Attachments'"/>
<xsl:variable name="i18n.history" select="'History'"/>
<xsl:variable name="i18n.disclaimer" select="'We accept no liability for the correctness of the data'"/>
<xsl:variable name="i18n.recipientInfo" select="'Buyer Information'"/>
<xsl:variable name="i18n.bt50" select="'Street / house number'"/>
<xsl:variable name="i18n.bt51" select="'PO Box'"/>
<xsl:variable name="i18n.bt163" select="'Address Addition'"/>
<xsl:variable name="i18n.bt53" select="'Postcode'"/>
<xsl:variable name="i18n.bt52" select="'Place'"/>
<xsl:variable name="i18n.bt54" select="'State/Province'"/>
<xsl:variable name="i18n.bt55" select="'Country'"/>
<xsl:variable name="i18n.bt46" select="'ID'"/>
<xsl:variable name="i18n.bt46-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt56" select="'Name'"/>
<xsl:variable name="i18n.bt57" select="'Phone'"/>
<xsl:variable name="i18n.bt58" select="'E-mail address'"/>
<xsl:variable name="i18n.bt27" select="'Company name'"/>
<xsl:variable name="i18n.bt35" select="'Street / house number'"/>
<xsl:variable name="i18n.bt36" select="'PO Box'"/>
<xsl:variable name="i18n.bt162" select="'Address Addition'"/>
<xsl:variable name="i18n.bt38" select="'Code postal'"/>
<xsl:variable name="i18n.bt37" select="'Place'"/>
<xsl:variable name="i18n.bt39" select="'State/Province'"/>
<xsl:variable name="i18n.bt40" select="'Country code'"/>
<xsl:variable name="i18n.bt29" select="'ID'"/>
<xsl:variable name="i18n.bt29-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt41" select="'Name'"/>
<xsl:variable name="i18n.bt42" select="'Phone'"/>
<xsl:variable name="i18n.bt43" select="'E-mail address'"/>
<xsl:variable name="i18n.bt1" select="'Seller Information'"/>
<xsl:variable name="i18n.bt2" select="'Invoice date'"/>
<xsl:variable name="i18n.details" select="'Invoice details'"/>
<xsl:variable name="i18n.period" select="'Billing period'"/>
<xsl:variable name="i18n.bt3" select="'Invoice type'"/>
<xsl:variable name="i18n.bt5" select="'Currency'"/>
<xsl:variable name="i18n.bt73" select="'from'"/>
<xsl:variable name="i18n.bt74" select="'to'"/>
<xsl:variable name="i18n.bt11" select="'Project number'"/>
<xsl:variable name="i18n.bt12" select="'Contract Number'"/>
<xsl:variable name="i18n.bt13" select="'Order number'"/>
<xsl:variable name="i18n.bt14" select="'Order number'"/>
<xsl:variable name="i18n.bt25" select="'Invoice number'"/>
<xsl:variable name="i18n.bt26" select="'Invoice date'"/>
<xsl:variable name="i18n.bg22" select="'Total amounts of the invoice'"/>
<xsl:variable name="i18n.bt106" select="'Line total'"/>
<xsl:variable name="i18n.bt107" select="'Total discounts'"/>
<xsl:variable name="i18n.bt108" select="'Total charges'"/>
<xsl:variable name="i18n.bt109" select="'Grand total'"/>
<xsl:variable name="i18n.bt110" select="'VAT amount'"/>
<xsl:variable name="i18n.bt111" select="'Total VAT'"/>
<xsl:variable name="i18n.bt112" select="'Grand total'"/>
<xsl:variable name="i18n.bt113" select="'Amount paid'"/>
<xsl:variable name="i18n.bt114" select="'rounding amount'"/>
<xsl:variable name="i18n.bt115" select="'Amount Due'"/>
<xsl:variable name="i18n.bg23" select="'Breakdown of VAT at invoice level'"/>
<xsl:variable name="i18n.bt118" select="'VAT category'"/>
<xsl:variable name="i18n.bt116" select="'Grand total'"/>
<xsl:variable name="i18n.bt119" select="'VAT rate'"/>
<xsl:variable name="i18n.bt117" select="'VAT amount'"/>
<xsl:variable name="i18n.bt120" select="'Reason for exemption:'"/>
<xsl:variable name="i18n.bt121" select="'ID for the exemption reason:'"/>
<xsl:variable name="i18n.bg20" select="'Allowance at invoice level'"/>
<xsl:variable name="i18n.bt95" select="'VAT category of the discount:'"/>
<xsl:variable name="i18n.bt93" select="'Basic amount'"/>
<xsl:variable name="i18n.bt94" select="'Percentage'"/>
<xsl:variable name="i18n.bt92" select="'Allowance'"/>
<xsl:variable name="i18n.bt96" select="'VAT rate on allowance'"/>
<xsl:variable name="i18n.bt97" select="'Reason for the allowance'"/>
<xsl:variable name="i18n.bt98" select="'Document level allowance reason code'"/>
<xsl:variable name="i18n.bg21" select="'Charge amount at invoice level'"/>
<xsl:variable name="i18n.bt102" select="'VAT category of the charge amount'"/>
<xsl:variable name="i18n.bt100" select="'Basic amount'"/>
<xsl:variable name="i18n.bt101" select="'Percentage'"/>
<xsl:variable name="i18n.bt99" select="'Charge amount'"/>
<xsl:variable name="i18n.bt103" select="'VAT rate of the charge amount'"/>
<xsl:variable name="i18n.bt104" select="'Reason for the charge amount:'"/>
<xsl:variable name="i18n.bt105" select="'Document level charge reason code'"/>
<xsl:variable name="i18n.bgx42" select="'Shipping cost'"/>
<xsl:variable name="i18n.btx274" select="'VAT category of the shipping cost'"/>
<xsl:variable name="i18n.btx272" select="'Amount'"/>
<xsl:variable name="i18n.btx273" select="'VAT rate of the shipping cost'"/>
<xsl:variable name="i18n.btx271" select="'Shipping cost description'"/>
<xsl:variable name="i18n.bt20" select="'Discount; other payment terms'"/>
<xsl:variable name="i18n.bt9" select="'Due date'"/>
<xsl:variable name="i18n.bt81" select="'Code for the means of payment'"/>
<xsl:variable name="i18n.bt82" select="'Means of payment'"/>
<xsl:variable name="i18n.bt83" select="'Usage'"/>
<xsl:variable name="i18n.bg18" select="'Card information'"/>
<xsl:variable name="i18n.bt87" select="'Card number'"/>
<xsl:variable name="i18n.bt88" select="'Card holder'"/>
<xsl:variable name="i18n.bg19" select="'Direct debit'"/>
<xsl:variable name="i18n.bt89" select="'Mandate Reference No'"/>
<xsl:variable name="i18n.bt91" select="'IBAN'"/>
<xsl:variable name="i18n.bt90" select="'Creditor ID'"/>
<xsl:variable name="i18n.bg17" select="'Transfer'"/>
<xsl:variable name="i18n.bt85" select="'Account holder'"/>
<xsl:variable name="i18n.bt84" select="'IBAN'"/>
<xsl:variable name="i18n.bt86" select="'BIC'"/>
<xsl:variable name="i18n.bg1" select="'Invoice Comment'"/>
<xsl:variable name="i18n.bt21" select="'Subject'"/>
<xsl:variable name="i18n.bt22" select="'Comment'"/>
<xsl:variable name="i18n.bt126" select="'Line'"/>
<xsl:variable name="i18n.bt127" select="'Free text'"/>
<xsl:variable name="i18n.bt128" select="'Object ID'"/>
<xsl:variable name="i18n.bt128-id" select="'Object ID schema'"/>
<xsl:variable name="i18n.bt132" select="'Order line number'"/>
<xsl:variable name="i18n.bt133" select="'Account assignment information'"/>
<xsl:variable name="i18n.bg26" select="'Billing period'"/>
<xsl:variable name="i18n.bt134" select="'from'"/>
<xsl:variable name="i18n.bt135" select="'to'"/>
<xsl:variable name="i18n.bg29" select="'Price details'"/>
<xsl:variable name="i18n.bt129" select="'Quantity'"/>
<xsl:variable name="i18n.bt130" select="'Unit'"/>
<xsl:variable name="i18n.bt146" select="'Unit price (net)'"/>
<xsl:variable name="i18n.bt131" select="'Total price (net)'"/>
<xsl:variable name="i18n.bt147" select="'Discount (net)'"/>
<xsl:variable name="i18n.bt148" select="'Net list price'"/>
<xsl:variable name="i18n.bt149" select="'Number of units'"/>
<xsl:variable name="i18n.bt150" select="'Unit of measure code'"/>
<xsl:variable name="i18n.bt151" select="'VAT'"/>
<xsl:variable name="i18n.bt152" select="'VAT rate in percent'"/>
<xsl:variable name="i18n.bg27" select="'Allowances at line level'"/>
<xsl:variable name="i18n.bt137" select="'Basic amount (net)'"/>
<xsl:variable name="i18n.bt138" select="'Percentage'"/>
<xsl:variable name="i18n.bt136" select="'Allowance (net)'"/>
<xsl:variable name="i18n.bt139" select="'Reason for allowance'"/>
<xsl:variable name="i18n.bt140" select="'Code for the reason for the estate'"/>
<xsl:variable name="i18n.bg28" select="'Charges at invoice line level'"/>
<xsl:variable name="i18n.bt142" select="'Basic amount (net)'"/>
<xsl:variable name="i18n.bt143" select="'percentage'"/>
<xsl:variable name="i18n.bt141" select="'Charge amount (net)'"/>
<xsl:variable name="i18n.bt144" select="'Reason for the allowance'"/>
<xsl:variable name="i18n.bt145" select="'Reason code'"/>
<xsl:variable name="i18n.bg31" select="'Item Information'"/>
<xsl:variable name="i18n.bt153" select="'Name'"/>
<xsl:variable name="i18n.bt154" select="'Description'"/>
<xsl:variable name="i18n.bt155" select="'Part number'"/>
<xsl:variable name="i18n.bt156" select="'Customer''s material number'"/>
<xsl:variable name="i18n.bg32" select="'Article properties'"/>
<xsl:variable name="i18n.bt157" select="'Item ID'"/>
<xsl:variable name="i18n.bt157-id" select="'Item ID schema'"/>
<xsl:variable name="i18n.bt158" select="'Item classification code'"/>
<xsl:variable name="i18n.bt158-id" select="'Identifier to form the schema'"/>
<xsl:variable name="i18n.bt157-vers-id" select="'Version for creating the schema'"/>
<xsl:variable name="i18n.bt159" select="'Country of origin code'"/>
<xsl:variable name="i18n.bg4" select="'Seller Information'"/>
<xsl:variable name="i18n.bt28" select="'Differing trade name'"/>
<xsl:variable name="i18n.bt34" select="'Electronic address'"/>
<xsl:variable name="i18n.bt34-id" select="'Electronic address scheme'"/>
<xsl:variable name="i18n.bt30" select="'Register number'"/>
<xsl:variable name="i18n.bt31" select="'VAT ID'"/>
<xsl:variable name="i18n.bt32" select="'Tax ID'"/>
<xsl:variable name="i18n.bt32-schema" select="'Tax ID scheme'"/>
<xsl:variable name="i18n.bt33" select="'Further legal information'"/>
<xsl:variable name="i18n.bt6" select="'VAT currency code'"/>
<xsl:variable name="i18n.bg11" select="'seller''s tax representative'"/>
<xsl:variable name="i18n.bt62" select="'Name'"/>
<xsl:variable name="i18n.bt64" select="'Street / house number'"/>
<xsl:variable name="i18n.bt65" select="'PO Box'"/>
<xsl:variable name="i18n.bt164" select="'Address Addition'"/>
<xsl:variable name="i18n.bt67" select="'Postcode'"/>
<xsl:variable name="i18n.bt66" select="'Place'"/>
<xsl:variable name="i18n.bt68" select="'State/Province'"/>
<xsl:variable name="i18n.bt69" select="'Country code'"/>
<xsl:variable name="i18n.bt63" select="'VAT ID'"/>
<xsl:variable name="i18n.bg7" select="'Buyer Information'"/>
<xsl:variable name="i18n.bt45" select="'Differing trade name'"/>
<xsl:variable name="i18n.bt49" select="'E-mail address'"/>
<xsl:variable name="i18n.bt49-id" select="'Electronic address scheme'"/>
<xsl:variable name="i18n.bt47" select="'Register number'"/>
<xsl:variable name="i18n.bt47-id" select="'Scheme of register/register number'"/>
<xsl:variable name="i18n.bt48" select="'VAT ID'"/>
<xsl:variable name="i18n.bt7" select="'VAT payday date'"/>
<xsl:variable name="i18n.bt8" select="'VAT Statement Date Code'"/>
<xsl:variable name="i18n.bt19" select="'Account assignment information'"/>
<xsl:variable name="i18n.bg13" select="'Shipping information'"/>
<xsl:variable name="i18n.bt71" select="'Identification of the place of delivery'"/>
<xsl:variable name="i18n.bt71-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt72" select="'Date of delivery'"/>
<xsl:variable name="i18n.bt70" select="'Recipient name'"/>
<xsl:variable name="i18n.bt75" select="'Street / house number'"/>
<xsl:variable name="i18n.bt76" select="'PO Box'"/>
<xsl:variable name="i18n.bt165" select="'Address Addition'"/>
<xsl:variable name="i18n.bt78" select="'Code postal'"/>
<xsl:variable name="i18n.bt77" select="'Place'"/>
<xsl:variable name="i18n.bt79" select="'State/Province'"/>
<xsl:variable name="i18n.bt80" select="'Country'"/>
<xsl:variable name="i18n.bt17" select="'Assignment number'"/>
<xsl:variable name="i18n.bt15" select="'Receipt confirmation ID'"/>
<xsl:variable name="i18n.bt16" select="'Dispatch note ID'"/>
<xsl:variable name="i18n.bt23" select="'Process ID'"/>
<xsl:variable name="i18n.bt24" select="'Specification ID'"/>
<xsl:variable name="i18n.bt18" select="'Object ID'"/>
<xsl:variable name="i18n.bt18-id" select="'Object ID schema'"/>
<xsl:variable name="i18n.bg10" select="'Payee other than Seller'"/>
<xsl:variable name="i18n.bt59" select="'Name'"/>
<xsl:variable name="i18n.bt60" select="'ID'"/>
<xsl:variable name="i18n.bt60-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt61" select="'Register number'"/>
<xsl:variable name="i18n.bt61-id" select="'Scheme of register/register number'"/>
<xsl:variable name="i18n.bg24" select="'Documents justifying the invoice'"/>
<xsl:variable name="i18n.bt122" select="'ID'"/>
<xsl:variable name="i18n.bt123" select="'Description'"/>
<xsl:variable name="i18n.bt124" select="'Reference (e.g. Internet address)'"/>
<xsl:variable name="i18n.bt125" select="'Attachment'"/>
<xsl:variable name="i18n.bt125-format" select="'Format of attachment'"/>
<xsl:variable name="i18n.bt125-name" select="'Name of attachment'"/>
<xsl:variable name="i18n.historyDate" select="'Date/time'"/>
<xsl:variable name="i18n.historySubject" select="'Subject'"/>
<xsl:variable name="i18n.historyText" select="'Text'"/>
<xsl:variable name="i18n.historyDetails" select="'Details:'"/>
<xsl:variable name="i18n.payment" select="'Payment details'"/>
<xsl:variable name="i18n.contract_information" select="'Contract Information'"/>
<xsl:variable name="i18n.preceding_invoice_reference" select="'Previous invoices'"/>
<xsl:include href="xrechnung-html.univ.xsl"/>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:variable name="i18n.bt10" select="'Routing ID'"/>
<xsl:variable name="i18n.bt44" select="'Name'"/>
<xsl:variable name="i18n.title" select="'XRechnung'"/>
<xsl:variable name="i18n.overview" select="'Overview'"/>
<xsl:variable name="i18n.items" select="'Items'"/>
<xsl:variable name="i18n.information" select="'Information'"/>
<xsl:variable name="i18n.attachments" select="'Attachments'"/>
<xsl:variable name="i18n.history" select="'History'"/>
<xsl:variable name="i18n.disclaimer" select="'We accept no liability for the correctness of the data'"/>
<xsl:variable name="i18n.recipientInfo" select="'Buyer Information'"/>
<xsl:variable name="i18n.dateOf" select="' from '"/>
<xsl:variable name="i18n.bt50" select="'Street / house number'"/>
<xsl:variable name="i18n.bt51" select="'PO Box'"/>
<xsl:variable name="i18n.bt163" select="'Address Addition'"/>
<xsl:variable name="i18n.bt53" select="'Postcode'"/>
<xsl:variable name="i18n.bt52" select="'Place'"/>
<xsl:variable name="i18n.bt54" select="'State/Province'"/>
<xsl:variable name="i18n.bt55" select="'Country'"/>
<xsl:variable name="i18n.bt46" select="'ID'"/>
<xsl:variable name="i18n.bt46-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt56" select="'Name'"/>
<xsl:variable name="i18n.bt57" select="'Phone'"/>
<xsl:variable name="i18n.bt58" select="'E-mail address'"/>
<xsl:variable name="i18n.bt27" select="'Company name'"/>
<xsl:variable name="i18n.bt35" select="'Street / house number'"/>
<xsl:variable name="i18n.bt36" select="'PO Box'"/>
<xsl:variable name="i18n.bt162" select="'Address Addition'"/>
<xsl:variable name="i18n.bt38" select="'Code postal'"/>
<xsl:variable name="i18n.bt37" select="'Place'"/>
<xsl:variable name="i18n.bt39" select="'State/Province'"/>
<xsl:variable name="i18n.bt40" select="'Country code'"/>
<xsl:variable name="i18n.bt29" select="'ID'"/>
<xsl:variable name="i18n.bt29-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt41" select="'Name'"/>
<xsl:variable name="i18n.bt42" select="'Phone'"/>
<xsl:variable name="i18n.bt43" select="'E-mail address'"/>
<xsl:variable name="i18n.bt1" select="'Seller Information'"/>
<xsl:variable name="i18n.bt2" select="'Invoice date'"/>
<xsl:variable name="i18n.details" select="'Invoice details'"/>
<xsl:variable name="i18n.period" select="'Billing period'"/>
<xsl:variable name="i18n.bt3" select="'Invoice type'"/>
<xsl:variable name="i18n.bt5" select="'Currency'"/>
<xsl:variable name="i18n.bt73" select="'from'"/>
<xsl:variable name="i18n.bt74" select="'to'"/>
<xsl:variable name="i18n.bt11" select="'Project number'"/>
<xsl:variable name="i18n.bt12" select="'Contract Number'"/>
<xsl:variable name="i18n.bt13" select="'Order number'"/>
<xsl:variable name="i18n.bt14" select="'Order number'"/>
<xsl:variable name="i18n.bt25" select="'Invoice number'"/>
<xsl:variable name="i18n.bt26" select="'Invoice date'"/>
<xsl:variable name="i18n.bg22" select="'Total amounts of the invoice'"/>
<xsl:variable name="i18n.bt106" select="'Line total'"/>
<xsl:variable name="i18n.bt107" select="'Total discounts'"/>
<xsl:variable name="i18n.bt108" select="'Total charges'"/>
<xsl:variable name="i18n.bt109" select="'Grand total'"/>
<xsl:variable name="i18n.bt110" select="'VAT amount'"/>
<xsl:variable name="i18n.bt111" select="'Total VAT'"/>
<xsl:variable name="i18n.bt112" select="'Grand total'"/>
<xsl:variable name="i18n.bt113" select="'Amount paid'"/>
<xsl:variable name="i18n.bt114" select="'rounding amount'"/>
<xsl:variable name="i18n.bt115" select="'Amount Due'"/>
<xsl:variable name="i18n.bg23" select="'Breakdown of VAT at invoice level'"/>
<xsl:variable name="i18n.bt118" select="'VAT category'"/>
<xsl:variable name="i18n.bt116" select="'Grand total'"/>
<xsl:variable name="i18n.bt119" select="'VAT rate'"/>
<xsl:variable name="i18n.bt117" select="'VAT amount'"/>
<xsl:variable name="i18n.bt120" select="'Reason for exemption:'"/>
<xsl:variable name="i18n.bt121" select="'ID for the exemption reason:'"/>
<xsl:variable name="i18n.bg20" select="'Allowance at invoice level'"/>
<xsl:variable name="i18n.bt95" select="'VAT category of the discount:'"/>
<xsl:variable name="i18n.bt93" select="'Basic amount'"/>
<xsl:variable name="i18n.bt94" select="'Percentage'"/>
<xsl:variable name="i18n.bt92" select="'Allowance'"/>
<xsl:variable name="i18n.bt96" select="'VAT rate on allowance'"/>
<xsl:variable name="i18n.bt97" select="'Reason for the allowance'"/>
<xsl:variable name="i18n.bt98" select="'Document level allowance reason code'"/>
<xsl:variable name="i18n.bg21" select="'Charge amount at invoice level'"/>
<xsl:variable name="i18n.bt102" select="'VAT category of the charge amount'"/>
<xsl:variable name="i18n.bt100" select="'Basic amount'"/>
<xsl:variable name="i18n.bt101" select="'Percentage'"/>
<xsl:variable name="i18n.bt99" select="'Charge amount'"/>
<xsl:variable name="i18n.bt103" select="'VAT rate of the charge amount'"/>
<xsl:variable name="i18n.bt104" select="'Reason for the charge amount:'"/>
<xsl:variable name="i18n.bt105" select="'Document level charge reason code'"/>
<xsl:variable name="i18n.bgx42" select="'Shipping cost'"/>
<xsl:variable name="i18n.btx274" select="'VAT category of the shipping cost'"/>
<xsl:variable name="i18n.btx272" select="'Amount'"/>
<xsl:variable name="i18n.btx273" select="'VAT rate of the shipping cost'"/>
<xsl:variable name="i18n.btx271" select="'Shipping cost description'"/>
<xsl:variable name="i18n.bt20" select="'Discount; other payment terms'"/>
<xsl:variable name="i18n.bt9" select="'Due date'"/>
<xsl:variable name="i18n.bt81" select="'Code for the means of payment'"/>
<xsl:variable name="i18n.bt82" select="'Means of payment'"/>
<xsl:variable name="i18n.bt83" select="'Usage'"/>
<xsl:variable name="i18n.bg18" select="'Card information'"/>
<xsl:variable name="i18n.bt87" select="'Card number'"/>
<xsl:variable name="i18n.bt88" select="'Card holder'"/>
<xsl:variable name="i18n.bg19" select="'Direct debit'"/>
<xsl:variable name="i18n.bt89" select="'Mandate Reference No'"/>
<xsl:variable name="i18n.bt91" select="'IBAN'"/>
<xsl:variable name="i18n.bt90" select="'Creditor ID'"/>
<xsl:variable name="i18n.bg17" select="'Transfer'"/>
<xsl:variable name="i18n.bt85" select="'Account holder'"/>
<xsl:variable name="i18n.bt84" select="'IBAN'"/>
<xsl:variable name="i18n.bt86" select="'BIC'"/>
<xsl:variable name="i18n.bg1" select="'Invoice Comment'"/>
<xsl:variable name="i18n.bt21" select="'Subject'"/>
<xsl:variable name="i18n.bt22" select="'Comment'"/>
<xsl:variable name="i18n.bt126" select="'Line'"/>
<xsl:variable name="i18n.bt127" select="'Free text'"/>
<xsl:variable name="i18n.bt128" select="'Object ID'"/>
<xsl:variable name="i18n.bt128-id" select="'Object ID schema'"/>
<xsl:variable name="i18n.bt132" select="'Order line number'"/>
<xsl:variable name="i18n.bt133" select="'Account assignment information'"/>
<xsl:variable name="i18n.bg26" select="'Billing period'"/>
<xsl:variable name="i18n.bt134" select="'from'"/>
<xsl:variable name="i18n.bt135" select="'to'"/>
<xsl:variable name="i18n.bg29" select="'Price details'"/>
<xsl:variable name="i18n.bt129" select="'Quantity'"/>
<xsl:variable name="i18n.bt130" select="'Unit'"/>
<xsl:variable name="i18n.bt146" select="'Unit price (net)'"/>
<xsl:variable name="i18n.bt131" select="'Total price (net)'"/>
<xsl:variable name="i18n.bt147" select="'Discount (net)'"/>
<xsl:variable name="i18n.bt148" select="'Net list price'"/>
<xsl:variable name="i18n.bt149" select="'Number of units'"/>
<xsl:variable name="i18n.bt150" select="'Unit of measure code'"/>
<xsl:variable name="i18n.bt151" select="'VAT'"/>
<xsl:variable name="i18n.bt152" select="'VAT rate in percent'"/>
<xsl:variable name="i18n.bg27" select="'Allowances at line level'"/>
<xsl:variable name="i18n.bt137" select="'Basic amount (net)'"/>
<xsl:variable name="i18n.bt138" select="'Percentage'"/>
<xsl:variable name="i18n.bt136" select="'Allowance (net)'"/>
<xsl:variable name="i18n.bt139" select="'Reason for allowance'"/>
<xsl:variable name="i18n.bt140" select="'Code for the reason for the estate'"/>
<xsl:variable name="i18n.bg28" select="'Charges at invoice line level'"/>
<xsl:variable name="i18n.bt142" select="'Basic amount (net)'"/>
<xsl:variable name="i18n.bt143" select="'percentage'"/>
<xsl:variable name="i18n.bt141" select="'Charge amount (net)'"/>
<xsl:variable name="i18n.bt144" select="'Reason for the allowance'"/>
<xsl:variable name="i18n.bt145" select="'Reason code'"/>
<xsl:variable name="i18n.bg31" select="'Item Information'"/>
<xsl:variable name="i18n.bt153" select="'Name'"/>
<xsl:variable name="i18n.bt154" select="'Description'"/>
<xsl:variable name="i18n.bt155" select="'Part number'"/>
<xsl:variable name="i18n.bt156" select="'Customer''s material number'"/>
<xsl:variable name="i18n.bg32" select="'Article properties'"/>
<xsl:variable name="i18n.bt157" select="'Item ID'"/>
<xsl:variable name="i18n.bt157-id" select="'Item ID schema'"/>
<xsl:variable name="i18n.bt158" select="'Item classification code'"/>
<xsl:variable name="i18n.bt158-id" select="'Identifier to form the schema'"/>
<xsl:variable name="i18n.bt157-vers-id" select="'Version for creating the schema'"/>
<xsl:variable name="i18n.bt159" select="'Country of origin code'"/>
<xsl:variable name="i18n.bg4" select="'Seller Information'"/>
<xsl:variable name="i18n.bt28" select="'Differing trade name'"/>
<xsl:variable name="i18n.bt34" select="'Electronic address'"/>
<xsl:variable name="i18n.bt34-id" select="'Electronic address scheme'"/>
<xsl:variable name="i18n.bt30" select="'Register number'"/>
<xsl:variable name="i18n.bt31" select="'VAT ID'"/>
<xsl:variable name="i18n.bt32" select="'Tax ID'"/>
<xsl:variable name="i18n.bt32-schema" select="'Tax ID scheme'"/>
<xsl:variable name="i18n.bt33" select="'Further legal information'"/>
<xsl:variable name="i18n.bt6" select="'VAT currency code'"/>
<xsl:variable name="i18n.bg11" select="'seller''s tax representative'"/>
<xsl:variable name="i18n.bt62" select="'Name'"/>
<xsl:variable name="i18n.bt64" select="'Street / house number'"/>
<xsl:variable name="i18n.bt65" select="'PO Box'"/>
<xsl:variable name="i18n.bt164" select="'Address Addition'"/>
<xsl:variable name="i18n.bt67" select="'Postcode'"/>
<xsl:variable name="i18n.bt66" select="'Place'"/>
<xsl:variable name="i18n.bt68" select="'State/Province'"/>
<xsl:variable name="i18n.bt69" select="'Country code'"/>
<xsl:variable name="i18n.bt63" select="'VAT ID'"/>
<xsl:variable name="i18n.bg7" select="'Buyer Information'"/>
<xsl:variable name="i18n.bt45" select="'Differing trade name'"/>
<xsl:variable name="i18n.bt49" select="'E-mail address'"/>
<xsl:variable name="i18n.bt49-id" select="'Electronic address scheme'"/>
<xsl:variable name="i18n.bt47" select="'Register number'"/>
<xsl:variable name="i18n.bt47-id" select="'Scheme of register/register number'"/>
<xsl:variable name="i18n.bt48" select="'VAT ID'"/>
<xsl:variable name="i18n.bt7" select="'VAT payday date'"/>
<xsl:variable name="i18n.bt8" select="'VAT Statement Date Code'"/>
<xsl:variable name="i18n.bt19" select="'Account assignment information'"/>
<xsl:variable name="i18n.bg13" select="'Shipping information'"/>
<xsl:variable name="i18n.bt71" select="'Identification of the place of delivery'"/>
<xsl:variable name="i18n.bt71-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt72" select="'Date of delivery'"/>
<xsl:variable name="i18n.bt70" select="'Recipient name'"/>
<xsl:variable name="i18n.bt75" select="'Street / house number'"/>
<xsl:variable name="i18n.bt76" select="'PO Box'"/>
<xsl:variable name="i18n.bt165" select="'Address Addition'"/>
<xsl:variable name="i18n.bt78" select="'Code postal'"/>
<xsl:variable name="i18n.bt77" select="'Place'"/>
<xsl:variable name="i18n.bt79" select="'State/Province'"/>
<xsl:variable name="i18n.bt80" select="'Country'"/>
<xsl:variable name="i18n.bt17" select="'Assignment number'"/>
<xsl:variable name="i18n.bt15" select="'Receipt confirmation ID'"/>
<xsl:variable name="i18n.bt16" select="'Dispatch note ID'"/>
<xsl:variable name="i18n.btx202" select="'Delivery note ID'"/>
<xsl:variable name="i18n.bt23" select="'Process ID'"/>
<xsl:variable name="i18n.bt24" select="'Specification ID'"/>
<xsl:variable name="i18n.bt18" select="'Object ID'"/>
<xsl:variable name="i18n.bt18-id" select="'Object ID schema'"/>
<xsl:variable name="i18n.bg10" select="'Payee other than Seller'"/>
<xsl:variable name="i18n.bt59" select="'Name'"/>
<xsl:variable name="i18n.bt60" select="'ID'"/>
<xsl:variable name="i18n.bt60-id" select="'ID scheme'"/>
<xsl:variable name="i18n.bt61" select="'Register number'"/>
<xsl:variable name="i18n.bt61-id" select="'Scheme of register/register number'"/>
<xsl:variable name="i18n.bg24" select="'Documents justifying the invoice'"/>
<xsl:variable name="i18n.bt122" select="'ID'"/>
<xsl:variable name="i18n.bt123" select="'Description'"/>
<xsl:variable name="i18n.bt124" select="'Reference (e.g. Internet address)'"/>
<xsl:variable name="i18n.bt125" select="'Attachment'"/>
<xsl:variable name="i18n.bt125-format" select="'Format of attachment'"/>
<xsl:variable name="i18n.bt125-name" select="'Name of attachment'"/>
<xsl:variable name="i18n.historyDate" select="'Date/time'"/>
<xsl:variable name="i18n.historySubject" select="'Subject'"/>
<xsl:variable name="i18n.historyText" select="'Text'"/>
<xsl:variable name="i18n.historyDetails" select="'Details:'"/>
<xsl:variable name="i18n.payment" select="'Payment details'"/>
<xsl:variable name="i18n.contract_information" select="'Contract Information'"/>
<xsl:variable name="i18n.preceding_invoice_reference" select="'Previous invoices'"/>
<xsl:include href="xrechnung-html.univ.xsl"/>
</xsl:stylesheet>

View File

@@ -1,227 +1,229 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:variable name="i18n.bt10" select="'Identifiant d''itinéraire'"/>
<xsl:variable name="i18n.bt44" select="'Nom'"/>
<xsl:variable name="i18n.title" select="'XRechnung'"/>
<xsl:variable name="i18n.overview" select="'Aperçu'"/>
<xsl:variable name="i18n.items" select="'Détails'"/>
<xsl:variable name="i18n.information" select="'Additif'"/>
<xsl:variable name="i18n.attachments" select="'Pièces jointes'"/>
<xsl:variable name="i18n.history" select="'Historique de traitement'"/>
<xsl:variable name="i18n.disclaimer" select="'Nous n''assumons aucune responsabilité quant à l''exactitude des données.'"/>
<xsl:variable name="i18n.recipientInfo" select="'Informations sur l''acheteur'"/>
<xsl:variable name="i18n.bt50" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt51" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt163" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt53" select="'Code postal'"/>
<xsl:variable name="i18n.bt52" select="'Lieu'"/>
<xsl:variable name="i18n.bt54" select="'Région'"/>
<xsl:variable name="i18n.bt55" select="'Pays'"/>
<xsl:variable name="i18n.bt46" select="'Identifiant'"/>
<xsl:variable name="i18n.bt46-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt56" select="'Nom'"/>
<xsl:variable name="i18n.bt57" select="'Téléphone'"/>
<xsl:variable name="i18n.bt58" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt27" select="'Nom de la société'"/>
<xsl:variable name="i18n.bt35" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt36" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt162" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt38" select="'Code postal'"/>
<xsl:variable name="i18n.bt37" select="'Lieu'"/>
<xsl:variable name="i18n.bt39" select="'Région'"/>
<xsl:variable name="i18n.bt40" select="'Code pays'"/>
<xsl:variable name="i18n.bt29" select="'Identifiant'"/>
<xsl:variable name="i18n.bt29-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt41" select="'Nom'"/>
<xsl:variable name="i18n.bt42" select="'Téléphone'"/>
<xsl:variable name="i18n.bt43" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt1" select="'Informations sur le vendeur'"/>
<xsl:variable name="i18n.bt2" select="'Date de facture'"/>
<xsl:variable name="i18n.details" select="'Détails de la facturation'"/>
<xsl:variable name="i18n.period" select="'Période de facturation'"/>
<xsl:variable name="i18n.bt3" select="'Type de facture'"/>
<xsl:variable name="i18n.bt5" select="'Devise'"/>
<xsl:variable name="i18n.bt73" select="'de'"/>
<xsl:variable name="i18n.bt74" select="'jusqu''à'"/>
<xsl:variable name="i18n.bt11" select="'Numéro du projet'"/>
<xsl:variable name="i18n.bt12" select="'Numéro du contrat'"/>
<xsl:variable name="i18n.bt13" select="'Numéro de commande'"/>
<xsl:variable name="i18n.bt14" select="'Numéro de commande'"/>
<xsl:variable name="i18n.bt25" select="'Numéro de facture'"/>
<xsl:variable name="i18n.bt26" select="'Date de facture'"/>
<xsl:variable name="i18n.bg22" select="'Montants totaux de la facture'"/>
<xsl:variable name="i18n.bt106" select="'Total de toutes les lignes'"/>
<xsl:variable name="i18n.bt107" select="'Total de remises'"/>
<xsl:variable name="i18n.bt108" select="'Total de suppléments'"/>
<xsl:variable name="i18n.bt109" select="'Montant total'"/>
<xsl:variable name="i18n.bt110" select="'montant de la TVA'"/>
<xsl:variable name="i18n.bt111" select="'Montant total de TVA'"/>
<xsl:variable name="i18n.bt112" select="'Montant total'"/>
<xsl:variable name="i18n.bt113" select="'Montant payé'"/>
<xsl:variable name="i18n.bt114" select="'Montant arrondi'"/>
<xsl:variable name="i18n.bt115" select="'Montant '"/>
<xsl:variable name="i18n.bg23" select="'Ventilation de la TVA au niveau de la facture'"/>
<xsl:variable name="i18n.bt118" select="'Catégorie de TVA'"/>
<xsl:variable name="i18n.bt116" select="'Montant total'"/>
<xsl:variable name="i18n.bt119" select="'taux TVA'"/>
<xsl:variable name="i18n.bt117" select="'montant de la TVA'"/>
<xsl:variable name="i18n.bt120" select="'Motif d''exemption'"/>
<xsl:variable name="i18n.bt121" select="'Identifiant pour motif d''exemption'"/>
<xsl:variable name="i18n.bg20" select="'Allocation au niveau de la facture'"/>
<xsl:variable name="i18n.bt95" select="'Catégorie de TVA de la remise'"/>
<xsl:variable name="i18n.bt93" select="'Montant de base'"/>
<xsl:variable name="i18n.bt94" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt92" select="'Allocation'"/>
<xsl:variable name="i18n.bt96" select="'Taux de TVA de la allocation'"/>
<xsl:variable name="i18n.bt97" select="'Motif de la remise'"/>
<xsl:variable name="i18n.bt98" select="'Document level allowance reason code'"/>
<xsl:variable name="i18n.bg21" select="'Supplément au niveau de la facture'"/>
<xsl:variable name="i18n.bt102" select="'Catégorie de TVA du supplément'"/>
<xsl:variable name="i18n.bt100" select="'Montant de base'"/>
<xsl:variable name="i18n.bt101" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt99" select="'Supplément'"/>
<xsl:variable name="i18n.bt103" select="'Taux de TVA du supplément'"/>
<xsl:variable name="i18n.bt104" select="'Raison du supplément'"/>
<xsl:variable name="i18n.bt105" select="'Document level charge reason code'"/>
<xsl:variable name="i18n.bgx42" select="'Frais d''expédition'"/>
<xsl:variable name="i18n.btx274" select="'Catégorie de TVA des frais de port'"/>
<xsl:variable name="i18n.btx272" select="'Montant'"/>
<xsl:variable name="i18n.btx273" select="'VAT rate of the shipping cost'"/>
<xsl:variable name="i18n.btx271" select="'Taux de TVA des frais de port'"/>
<xsl:variable name="i18n.bt20" select="'Rabais; autres conditions de paiement'"/>
<xsl:variable name="i18n.bt9" select="'Date d''échéance'"/>
<xsl:variable name="i18n.bt81" select="'Code du moyen de paiement'"/>
<xsl:variable name="i18n.bt82" select="'Moyens de paiement'"/>
<xsl:variable name="i18n.bt83" select="'Utilisation'"/>
<xsl:variable name="i18n.bg18" select="'Information de la carte'"/>
<xsl:variable name="i18n.bt87" select="'Numéro de carte'"/>
<xsl:variable name="i18n.bt88" select="'Titulaire de la carte'"/>
<xsl:variable name="i18n.bg19" select="'Prélèvement automatique'"/>
<xsl:variable name="i18n.bt89" select="'Numéro de référence du mandat'"/>
<xsl:variable name="i18n.bt91" select="'IBAN'"/>
<xsl:variable name="i18n.bt90" select="'Identifiant du créancier'"/>
<xsl:variable name="i18n.bg17" select="'Transfert'"/>
<xsl:variable name="i18n.bt85" select="'Titulaire du compte'"/>
<xsl:variable name="i18n.bt84" select="'IBAN'"/>
<xsl:variable name="i18n.bt86" select="'BIC'"/>
<xsl:variable name="i18n.bg1" select="'Commentaire sur la facture'"/>
<xsl:variable name="i18n.bt21" select="'Objet'"/>
<xsl:variable name="i18n.bt22" select="'Commentaire'"/>
<xsl:variable name="i18n.bt126" select="'Position'"/>
<xsl:variable name="i18n.bt127" select="'Texte libre'"/>
<xsl:variable name="i18n.bt128" select="'Identifiant d''objet'"/>
<xsl:variable name="i18n.bt128-id" select="'Schéma de l''Identifiant objet'"/>
<xsl:variable name="i18n.bt132" select="'Numéro de ligne de commande'"/>
<xsl:variable name="i18n.bt133" select="'Information sur l''attribution de compte'"/>
<xsl:variable name="i18n.bg26" select="'Période de facturation'"/>
<xsl:variable name="i18n.bt134" select="'de'"/>
<xsl:variable name="i18n.bt135" select="'jusqu''à'"/>
<xsl:variable name="i18n.bg29" select="'Détails de prix'"/>
<xsl:variable name="i18n.bt129" select="'Quantité'"/>
<xsl:variable name="i18n.bt130" select="'Unité'"/>
<xsl:variable name="i18n.bt146" select="'Prix unitaire net'"/>
<xsl:variable name="i18n.bt131" select="'Prix total net'"/>
<xsl:variable name="i18n.bt147" select="'Remise nette'"/>
<xsl:variable name="i18n.bt148" select="'Prix catalogue (net)'"/>
<xsl:variable name="i18n.bt149" select="'Nombre d''unités'"/>
<xsl:variable name="i18n.bt150" select="'Code de l''unité de mesure '"/>
<xsl:variable name="i18n.bt151" select="'TVA'"/>
<xsl:variable name="i18n.bt152" select="'Pourcentage de TVA'"/>
<xsl:variable name="i18n.bg27" select="'Allocations au niveau de la ligne de facture'"/>
<xsl:variable name="i18n.bt137" select="'Montant de base net'"/>
<xsl:variable name="i18n.bt138" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt136" select="'Allocation nette'"/>
<xsl:variable name="i18n.bt139" select="'Raison pour l''allocation '"/>
<xsl:variable name="i18n.bt140" select="'Code de la raison pour l''allocation'"/>
<xsl:variable name="i18n.bg28" select="'Supplément au niveau de la ligne de facture'"/>
<xsl:variable name="i18n.bt142" select="'Montant de base net'"/>
<xsl:variable name="i18n.bt143" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt141" select="'Supplément net'"/>
<xsl:variable name="i18n.bt144" select="'Raison du supplément'"/>
<xsl:variable name="i18n.bt145" select="'Code de la raison du supplément'"/>
<xsl:variable name="i18n.bg31" select="'Informations sur l''article'"/>
<xsl:variable name="i18n.bt153" select="'Nom'"/>
<xsl:variable name="i18n.bt154" select="'Description'"/>
<xsl:variable name="i18n.bt155" select="'Numéro d''article'"/>
<xsl:variable name="i18n.bt156" select="'N° client / matériel'"/>
<xsl:variable name="i18n.bg32" select="'Propriétés de l''article'"/>
<xsl:variable name="i18n.bt157" select="'Identifiant article'"/>
<xsl:variable name="i18n.bt157-id" select="'Schéma de l''Identifiant article'"/>
<xsl:variable name="i18n.bt158" select="'Code de classification des articles'"/>
<xsl:variable name="i18n.bt158-id" select="'Identifiant pour la création du schéma'"/>
<xsl:variable name="i18n.bt157-vers-id" select="'Version de création du schéma'"/>
<xsl:variable name="i18n.bt159" select="'Code du pays d''origine'"/>
<xsl:variable name="i18n.bg4" select="'Informations sur le vendeur'"/>
<xsl:variable name="i18n.bt28" select="'Nom commercial différent'"/>
<xsl:variable name="i18n.bt34" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt34-id" select="'Schéma de l''adresse électronique'"/>
<xsl:variable name="i18n.bt30" select="'Numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt31" select="'Identifiant TVA'"/>
<xsl:variable name="i18n.bt32" select="'Numéro fiscale'"/>
<xsl:variable name="i18n.bt32-schema" select="'Schéma du numéro fiscal'"/>
<xsl:variable name="i18n.bt33" select="'Autres informations légales'"/>
<xsl:variable name="i18n.bt6" select="'Code devise de la TVA'"/>
<xsl:variable name="i18n.bg11" select="'Représentant fiscal du vendeur'"/>
<xsl:variable name="i18n.bt62" select="'Nom'"/>
<xsl:variable name="i18n.bt64" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt65" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt164" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt67" select="'Code postal'"/>
<xsl:variable name="i18n.bt66" select="'Lieu'"/>
<xsl:variable name="i18n.bt68" select="'Région'"/>
<xsl:variable name="i18n.bt69" select="'Code pays'"/>
<xsl:variable name="i18n.bt63" select="'Identifiant TVA'"/>
<xsl:variable name="i18n.bg7" select="'Informations sur l''acheteur'"/>
<xsl:variable name="i18n.bt45" select="'Nom commercial différent '"/>
<xsl:variable name="i18n.bt49" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt49-id" select="'Schéma de l''adresse électronique'"/>
<xsl:variable name="i18n.bt47" select="'Numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt47-id" select="'Schéma du numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt48" select="'Identifiant TVA'"/>
<xsl:variable name="i18n.bt7" select="'Date de facturation de la TVA'"/>
<xsl:variable name="i18n.bt8" select="'Code de date de règlement de la TVA'"/>
<xsl:variable name="i18n.bt19" select="'Informations sur l''attribution de compte'"/>
<xsl:variable name="i18n.bg13" select="'Informations de livraison'"/>
<xsl:variable name="i18n.bt71" select="'Identification du lieu de livraison'"/>
<xsl:variable name="i18n.bt71-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt72" select="'Date de livraison'"/>
<xsl:variable name="i18n.bt70" select="'Nom du destinataire'"/>
<xsl:variable name="i18n.bt75" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt76" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt165" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt78" select="'Code postal'"/>
<xsl:variable name="i18n.bt77" select="'Lieu'"/>
<xsl:variable name="i18n.bt79" select="'Région'"/>
<xsl:variable name="i18n.bt80" select="'Pays'"/>
<xsl:variable name="i18n.bt17" select="'Numéro d''attribution'"/>
<xsl:variable name="i18n.bt15" select="'Identifiant de l''accusé de réception'"/>
<xsl:variable name="i18n.bt16" select="'Identifiant du bordereau d''expédition'"/>
<xsl:variable name="i18n.bt23" select="'Identifiant processus'"/>
<xsl:variable name="i18n.bt24" select="'Identifiant spécification'"/>
<xsl:variable name="i18n.bt18" select="'Identifiant objet'"/>
<xsl:variable name="i18n.bt18-id" select="'Schéma de l''Identifiant objet'"/>
<xsl:variable name="i18n.bg10" select="'bénéficiaire autre que le vendeur'"/>
<xsl:variable name="i18n.bt59" select="'Nom'"/>
<xsl:variable name="i18n.bt60" select="'Identifiant'"/>
<xsl:variable name="i18n.bt60-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt61" select="'Numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt61-id" select="'Schéma du numéro d''enregistrement'"/>
<xsl:variable name="i18n.bg24" select="'Documents justificatifs'"/>
<xsl:variable name="i18n.bt122" select="'Identifiant'"/>
<xsl:variable name="i18n.bt123" select="'Description'"/>
<xsl:variable name="i18n.bt124" select="'Référence (par exemple l''adresse Internet)'"/>
<xsl:variable name="i18n.bt125" select="'Document joint'"/>
<xsl:variable name="i18n.bt125-format" select="'Format du document joint'"/>
<xsl:variable name="i18n.bt125-name" select="'Nom du document joint '"/>
<xsl:variable name="i18n.historyDate" select="'Date/heure'"/>
<xsl:variable name="i18n.historySubject" select="'Objet'"/>
<xsl:variable name="i18n.historyText" select="'Texte'"/>
<xsl:variable name="i18n.historyDetails" select="'Détails'"/>
<xsl:variable name="i18n.payment" select="'Détails de paiement'"/>
<xsl:variable name="i18n.contract_information" select="'Informations sur le contrat'"/>
<xsl:variable name="i18n.preceding_invoice_reference" select="'Factures précédentes'"/>
<xsl:include href="xrechnung-html.univ.xsl"/>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:variable name="i18n.bt10" select="'Identifiant d''itinéraire'"/>
<xsl:variable name="i18n.bt44" select="'Nom'"/>
<xsl:variable name="i18n.title" select="'XRechnung'"/>
<xsl:variable name="i18n.overview" select="'Aperçu'"/>
<xsl:variable name="i18n.items" select="'Détails'"/>
<xsl:variable name="i18n.information" select="'Additif'"/>
<xsl:variable name="i18n.attachments" select="'Pièces jointes'"/>
<xsl:variable name="i18n.history" select="'Historique de traitement'"/>
<xsl:variable name="i18n.disclaimer" select="'Nous n''assumons aucune responsabilité quant à l''exactitude des données.'"/>
<xsl:variable name="i18n.recipientInfo" select="'Informations sur l''acheteur'"/>
<xsl:variable name="i18n.dateOf" select="' du '"/>
<xsl:variable name="i18n.bt50" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt51" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt163" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt53" select="'Code postal'"/>
<xsl:variable name="i18n.bt52" select="'Lieu'"/>
<xsl:variable name="i18n.bt54" select="'Région'"/>
<xsl:variable name="i18n.bt55" select="'Pays'"/>
<xsl:variable name="i18n.bt46" select="'Identifiant'"/>
<xsl:variable name="i18n.bt46-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt56" select="'Nom'"/>
<xsl:variable name="i18n.bt57" select="'Téléphone'"/>
<xsl:variable name="i18n.bt58" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt27" select="'Nom de la société'"/>
<xsl:variable name="i18n.bt35" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt36" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt162" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt38" select="'Code postal'"/>
<xsl:variable name="i18n.bt37" select="'Lieu'"/>
<xsl:variable name="i18n.bt39" select="'Région'"/>
<xsl:variable name="i18n.bt40" select="'Code pays'"/>
<xsl:variable name="i18n.bt29" select="'Identifiant'"/>
<xsl:variable name="i18n.bt29-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt41" select="'Nom'"/>
<xsl:variable name="i18n.bt42" select="'Téléphone'"/>
<xsl:variable name="i18n.bt43" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt1" select="'Informations sur le vendeur'"/>
<xsl:variable name="i18n.bt2" select="'Date de facture'"/>
<xsl:variable name="i18n.details" select="'Détails de la facturation'"/>
<xsl:variable name="i18n.period" select="'Période de facturation'"/>
<xsl:variable name="i18n.bt3" select="'Type de facture'"/>
<xsl:variable name="i18n.bt5" select="'Devise'"/>
<xsl:variable name="i18n.bt73" select="'de'"/>
<xsl:variable name="i18n.bt74" select="'jusqu''à'"/>
<xsl:variable name="i18n.bt11" select="'Numéro du projet'"/>
<xsl:variable name="i18n.bt12" select="'Numéro du contrat'"/>
<xsl:variable name="i18n.bt13" select="'Numéro de commande'"/>
<xsl:variable name="i18n.bt14" select="'Numéro de commande'"/>
<xsl:variable name="i18n.bt25" select="'Numéro de facture'"/>
<xsl:variable name="i18n.bt26" select="'Date de facture'"/>
<xsl:variable name="i18n.bg22" select="'Montants totaux de la facture'"/>
<xsl:variable name="i18n.bt106" select="'Total de toutes les lignes'"/>
<xsl:variable name="i18n.bt107" select="'Total de remises'"/>
<xsl:variable name="i18n.bt108" select="'Total de suppléments'"/>
<xsl:variable name="i18n.bt109" select="'Montant total'"/>
<xsl:variable name="i18n.bt110" select="'montant de la TVA'"/>
<xsl:variable name="i18n.bt111" select="'Montant total de TVA'"/>
<xsl:variable name="i18n.bt112" select="'Montant total'"/>
<xsl:variable name="i18n.bt113" select="'Montant payé'"/>
<xsl:variable name="i18n.bt114" select="'Montant arrondi'"/>
<xsl:variable name="i18n.bt115" select="'Montant dû'"/>
<xsl:variable name="i18n.bg23" select="'Ventilation de la TVA au niveau de la facture'"/>
<xsl:variable name="i18n.bt118" select="'Catégorie de TVA'"/>
<xsl:variable name="i18n.bt116" select="'Montant total'"/>
<xsl:variable name="i18n.bt119" select="'taux TVA'"/>
<xsl:variable name="i18n.bt117" select="'montant de la TVA'"/>
<xsl:variable name="i18n.bt120" select="'Motif d''exemption'"/>
<xsl:variable name="i18n.bt121" select="'Identifiant pour motif d''exemption'"/>
<xsl:variable name="i18n.bg20" select="'Allocation au niveau de la facture'"/>
<xsl:variable name="i18n.bt95" select="'Catégorie de TVA de la remise'"/>
<xsl:variable name="i18n.bt93" select="'Montant de base'"/>
<xsl:variable name="i18n.bt94" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt92" select="'Allocation'"/>
<xsl:variable name="i18n.bt96" select="'Taux de TVA de la allocation'"/>
<xsl:variable name="i18n.bt97" select="'Motif de la remise'"/>
<xsl:variable name="i18n.bt98" select="'Document level allowance reason code'"/>
<xsl:variable name="i18n.bg21" select="'Supplément au niveau de la facture'"/>
<xsl:variable name="i18n.bt102" select="'Catégorie de TVA du supplément'"/>
<xsl:variable name="i18n.bt100" select="'Montant de base'"/>
<xsl:variable name="i18n.bt101" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt99" select="'Supplément'"/>
<xsl:variable name="i18n.bt103" select="'Taux de TVA du supplément'"/>
<xsl:variable name="i18n.bt104" select="'Raison du supplément'"/>
<xsl:variable name="i18n.bt105" select="'Document level charge reason code'"/>
<xsl:variable name="i18n.bgx42" select="'Frais d''expédition'"/>
<xsl:variable name="i18n.btx274" select="'Catégorie de TVA des frais de port'"/>
<xsl:variable name="i18n.btx272" select="'Montant'"/>
<xsl:variable name="i18n.btx273" select="'VAT rate of the shipping cost'"/>
<xsl:variable name="i18n.btx271" select="'Taux de TVA des frais de port'"/>
<xsl:variable name="i18n.bt20" select="'Rabais; autres conditions de paiement'"/>
<xsl:variable name="i18n.bt9" select="'Date d''échéance'"/>
<xsl:variable name="i18n.bt81" select="'Code du moyen de paiement'"/>
<xsl:variable name="i18n.bt82" select="'Moyens de paiement'"/>
<xsl:variable name="i18n.bt83" select="'Utilisation'"/>
<xsl:variable name="i18n.bg18" select="'Information de la carte'"/>
<xsl:variable name="i18n.bt87" select="'Numéro de carte'"/>
<xsl:variable name="i18n.bt88" select="'Titulaire de la carte'"/>
<xsl:variable name="i18n.bg19" select="'Prélèvement automatique'"/>
<xsl:variable name="i18n.bt89" select="'Numéro de référence du mandat'"/>
<xsl:variable name="i18n.bt91" select="'IBAN'"/>
<xsl:variable name="i18n.bt90" select="'Identifiant du créancier'"/>
<xsl:variable name="i18n.bg17" select="'Transfert'"/>
<xsl:variable name="i18n.bt85" select="'Titulaire du compte'"/>
<xsl:variable name="i18n.bt84" select="'IBAN'"/>
<xsl:variable name="i18n.bt86" select="'BIC'"/>
<xsl:variable name="i18n.bg1" select="'Commentaire sur la facture'"/>
<xsl:variable name="i18n.bt21" select="'Objet'"/>
<xsl:variable name="i18n.bt22" select="'Commentaire'"/>
<xsl:variable name="i18n.bt126" select="'Position'"/>
<xsl:variable name="i18n.bt127" select="'Texte libre'"/>
<xsl:variable name="i18n.bt128" select="'Identifiant d''objet'"/>
<xsl:variable name="i18n.bt128-id" select="'Schéma de l''Identifiant objet'"/>
<xsl:variable name="i18n.bt132" select="'Numéro de ligne de commande'"/>
<xsl:variable name="i18n.bt133" select="'Information sur l''attribution de compte'"/>
<xsl:variable name="i18n.bg26" select="'Période de facturation'"/>
<xsl:variable name="i18n.bt134" select="'de'"/>
<xsl:variable name="i18n.bt135" select="'jusqu''à'"/>
<xsl:variable name="i18n.bg29" select="'Détails de prix'"/>
<xsl:variable name="i18n.bt129" select="'Quantité'"/>
<xsl:variable name="i18n.bt130" select="'Unité'"/>
<xsl:variable name="i18n.bt146" select="'Prix unitaire net'"/>
<xsl:variable name="i18n.bt131" select="'Prix total net'"/>
<xsl:variable name="i18n.bt147" select="'Remise nette'"/>
<xsl:variable name="i18n.bt148" select="'Prix catalogue (net)'"/>
<xsl:variable name="i18n.bt149" select="'Nombre d''unités'"/>
<xsl:variable name="i18n.bt150" select="'Code de l''unité de mesure '"/>
<xsl:variable name="i18n.bt151" select="'TVA'"/>
<xsl:variable name="i18n.bt152" select="'Pourcentage de TVA'"/>
<xsl:variable name="i18n.bg27" select="'Allocations au niveau de la ligne de facture'"/>
<xsl:variable name="i18n.bt137" select="'Montant de base net'"/>
<xsl:variable name="i18n.bt138" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt136" select="'Allocation nette'"/>
<xsl:variable name="i18n.bt139" select="'Raison pour l''allocation '"/>
<xsl:variable name="i18n.bt140" select="'Code de la raison pour l''allocation'"/>
<xsl:variable name="i18n.bg28" select="'Supplément au niveau de la ligne de facture'"/>
<xsl:variable name="i18n.bt142" select="'Montant de base net'"/>
<xsl:variable name="i18n.bt143" select="'Pourcentage'"/>
<xsl:variable name="i18n.bt141" select="'Supplément net'"/>
<xsl:variable name="i18n.bt144" select="'Raison du supplément'"/>
<xsl:variable name="i18n.bt145" select="'Code de la raison du supplément'"/>
<xsl:variable name="i18n.bg31" select="'Informations sur l''article'"/>
<xsl:variable name="i18n.bt153" select="'Nom'"/>
<xsl:variable name="i18n.bt154" select="'Description'"/>
<xsl:variable name="i18n.bt155" select="'Numéro d''article'"/>
<xsl:variable name="i18n.bt156" select="'N° client / matériel'"/>
<xsl:variable name="i18n.bg32" select="'Propriétés de l''article'"/>
<xsl:variable name="i18n.bt157" select="'Identifiant article'"/>
<xsl:variable name="i18n.bt157-id" select="'Schéma de l''Identifiant article'"/>
<xsl:variable name="i18n.bt158" select="'Code de classification des articles'"/>
<xsl:variable name="i18n.bt158-id" select="'Identifiant pour la création du schéma'"/>
<xsl:variable name="i18n.bt157-vers-id" select="'Version de création du schéma'"/>
<xsl:variable name="i18n.bt159" select="'Code du pays d''origine'"/>
<xsl:variable name="i18n.bg4" select="'Informations sur le vendeur'"/>
<xsl:variable name="i18n.bt28" select="'Nom commercial différent'"/>
<xsl:variable name="i18n.bt34" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt34-id" select="'Schéma de l''adresse électronique'"/>
<xsl:variable name="i18n.bt30" select="'Numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt31" select="'Identifiant TVA'"/>
<xsl:variable name="i18n.bt32" select="'Numéro fiscale'"/>
<xsl:variable name="i18n.bt32-schema" select="'Schéma du numéro fiscal'"/>
<xsl:variable name="i18n.bt33" select="'Autres informations légales'"/>
<xsl:variable name="i18n.bt6" select="'Code devise de la TVA'"/>
<xsl:variable name="i18n.bg11" select="'Représentant fiscal du vendeur'"/>
<xsl:variable name="i18n.bt62" select="'Nom'"/>
<xsl:variable name="i18n.bt64" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt65" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt164" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt67" select="'Code postal'"/>
<xsl:variable name="i18n.bt66" select="'Lieu'"/>
<xsl:variable name="i18n.bt68" select="'Région'"/>
<xsl:variable name="i18n.bt69" select="'Code pays'"/>
<xsl:variable name="i18n.bt63" select="'Identifiant TVA'"/>
<xsl:variable name="i18n.bg7" select="'Informations sur l''acheteur'"/>
<xsl:variable name="i18n.bt45" select="'Nom commercial différent '"/>
<xsl:variable name="i18n.bt49" select="'Adresse électronique'"/>
<xsl:variable name="i18n.bt49-id" select="'Schéma de l''adresse électronique'"/>
<xsl:variable name="i18n.bt47" select="'Numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt47-id" select="'Schéma du numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt48" select="'Identifiant TVA'"/>
<xsl:variable name="i18n.bt7" select="'Date de facturation de la TVA'"/>
<xsl:variable name="i18n.bt8" select="'Code de date de règlement de la TVA'"/>
<xsl:variable name="i18n.bt19" select="'Informations sur l''attribution de compte'"/>
<xsl:variable name="i18n.bg13" select="'Informations de livraison'"/>
<xsl:variable name="i18n.bt71" select="'Identification du lieu de livraison'"/>
<xsl:variable name="i18n.bt71-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt72" select="'Date de livraison'"/>
<xsl:variable name="i18n.bt70" select="'Nom du destinataire'"/>
<xsl:variable name="i18n.bt75" select="'Rue / Numéro de maison'"/>
<xsl:variable name="i18n.bt76" select="'Boîte postale'"/>
<xsl:variable name="i18n.bt165" select="'Supplément d''adresse'"/>
<xsl:variable name="i18n.bt78" select="'Code postal'"/>
<xsl:variable name="i18n.bt77" select="'Lieu'"/>
<xsl:variable name="i18n.bt79" select="'Région'"/>
<xsl:variable name="i18n.bt80" select="'Pays'"/>
<xsl:variable name="i18n.bt17" select="'Numéro d''attribution'"/>
<xsl:variable name="i18n.bt15" select="'Identifiant de l''accusé de réception'"/>
<xsl:variable name="i18n.bt16" select="'Identifiant du bordereau d''expédition'"/>
<xsl:variable name="i18n.btx202" select="'Identifiant du bon de livraison'"/>
<xsl:variable name="i18n.bt23" select="'Identifiant processus'"/>
<xsl:variable name="i18n.bt24" select="'Identifiant spécification'"/>
<xsl:variable name="i18n.bt18" select="'Identifiant objet'"/>
<xsl:variable name="i18n.bt18-id" select="'Schéma de l''Identifiant objet'"/>
<xsl:variable name="i18n.bg10" select="'bénéficiaire autre que le vendeur'"/>
<xsl:variable name="i18n.bt59" select="'Nom'"/>
<xsl:variable name="i18n.bt60" select="'Identifiant'"/>
<xsl:variable name="i18n.bt60-id" select="'Schéma de l''Identifiant'"/>
<xsl:variable name="i18n.bt61" select="'Numéro d''enregistrement'"/>
<xsl:variable name="i18n.bt61-id" select="'Schéma du numéro d''enregistrement'"/>
<xsl:variable name="i18n.bg24" select="'Documents justificatifs'"/>
<xsl:variable name="i18n.bt122" select="'Identifiant'"/>
<xsl:variable name="i18n.bt123" select="'Description'"/>
<xsl:variable name="i18n.bt124" select="'Référence (par exemple l''adresse Internet)'"/>
<xsl:variable name="i18n.bt125" select="'Document joint'"/>
<xsl:variable name="i18n.bt125-format" select="'Format du document joint'"/>
<xsl:variable name="i18n.bt125-name" select="'Nom du document joint '"/>
<xsl:variable name="i18n.historyDate" select="'Date/heure'"/>
<xsl:variable name="i18n.historySubject" select="'Objet'"/>
<xsl:variable name="i18n.historyText" select="'Texte'"/>
<xsl:variable name="i18n.historyDetails" select="'Détails'"/>
<xsl:variable name="i18n.payment" select="'Détails de paiement'"/>
<xsl:variable name="i18n.contract_information" select="'Informations sur le contrat'"/>
<xsl:variable name="i18n.preceding_invoice_reference" select="'Factures précédentes'"/>
<xsl:include href="xrechnung-html.univ.xsl"/>
</xsl:stylesheet>

View File

@@ -1144,17 +1144,29 @@ function downloadData (element_id) {
<xsl:apply-templates select="./xr:VAT_BREAKDOWN"/>
</div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<xsl:apply-templates select="./xr:DOCUMENT_LEVEL_ALLOWANCES"/>
</div>
<xsl:choose>
<xsl:when test="./xr:DOCUMENT_LEVEL_ALLOWANCES">
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<xsl:apply-templates select="./xr:DOCUMENT_LEVEL_ALLOWANCES"/>
</div>
</xsl:when>
</xsl:choose>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<xsl:apply-templates select="./xr:DOCUMENT_LEVEL_CHARGES"/>
</div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<xsl:apply-templates select="./xr:LOGISTICS_SERVICE_CHARGES"/>
</div>
<xsl:choose>
<xsl:when test="./xr:DOCUMENT_LEVEL_CHARGES">
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<xsl:apply-templates select="./xr:DOCUMENT_LEVEL_CHARGES"/>
</div>
</xsl:when>
</xsl:choose>
<xsl:choose>
<xsl:when test="./xr:LOGISTICS_SERVICE_CHARGES">
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<xsl:apply-templates select="./xr:LOGISTICS_SERVICE_CHARGES"/>
</div>
</xsl:when>
</xsl:choose>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig first">
<div class="boxzeile">
@@ -2182,11 +2194,24 @@ function downloadData (element_id) {
</div>
<div class="boxzeile">
<div class="boxdaten legende"><xsl:value-of select="$i18n.bt15"/>:</div>
<div id="BT-15" title="BT-15" class="boxdaten wert"><xsl:value-of select="xr:Receiving_advice_reference"/></div>
<div id="BT-15" title="BT-15" class="boxdaten wert">
<xsl:value-of select="xr:Receiving_advice_reference"/>
<xsl:if test="xr:Receiving_advice_reference/@bt-x-201"><xsl:value-of select="concat($i18n.dateOf, format-date(xr:Receiving_advice_reference/@bt-x-201,'[D].[M].[Y]'))"/></xsl:if>
</div>
</div>
<div class="boxzeile">
<div class="boxdaten legende"><xsl:value-of select="$i18n.bt16"/>:</div>
<div id="BT-16" title="BT-16" class="boxdaten wert"><xsl:value-of select="xr:Despatch_advice_reference"/></div>
<div id="BT-16" title="BT-16" class="boxdaten wert">
<xsl:value-of select="xr:Despatch_advice_reference"/>
<xsl:if test="xr:Despatch_advice_reference/@bt-x-200"><xsl:value-of select="concat($i18n.dateOf, format-date(xr:Despatch_advice_reference/@bt-x-200,'[D].[M].[Y]'))"/></xsl:if>
</div>
</div>
<div class="boxzeile">
<div class="boxdaten legende"><xsl:value-of select="$i18n.btx202"/>:</div>
<div id="BT-X-202" title="BT-X-202" class="boxdaten wert">
<xsl:value-of select="xr:Delivery_note_reference"/>
<xsl:if test="xr:Delivery_note_reference/@bt-x-203"><xsl:value-of select="concat($i18n.dateOf, format-date(xr:Delivery_note_reference/@bt-x-203,'[D].[M].[Y]'))"/></xsl:if>
</div>
</div>
<div class="boxzeile">
<div class="boxdaten legende"><xsl:value-of select="$i18n.bt23"/>:</div>

View File

@@ -22,10 +22,9 @@ package org.mustangproject.ZUGFeRD;
import org.junit.FixMethodOrder;
import org.junit.runners.MethodSorters;
import org.mustangproject.ZUGFeRD.ZUGFeRDVisualizer.Language;
import org.mustangproject.util.ByteArraySearcher;
import org.xml.sax.SAXException;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.TransformerException;
import java.io.File;
import java.io.IOException;
@@ -40,179 +39,34 @@ public class VisualizationTest extends ResourceCase {
final String TARGET_PDF_UBL = "./target/testout-Visualization-cii.pdf";
public void testCIIVisualizationBasic() {
// the writing part
String sourceFilename = "factur-x.xml";
File CIIinputFile = getResourceAsFile(sourceFilename);
String expected = null;
String result = null;
try {
ZUGFeRDVisualizer zvi = new ZUGFeRDVisualizer();
/* remove file endings so that tests can also pass after checking
out from git with arbitrary options (which may include CSRF changes)
*/
result = zvi.visualize(CIIinputFile.getAbsolutePath(), ZUGFeRDVisualizer.Language.FR);
Files.write(Paths.get("./target/testout-factur-x-vis.fr.html"), result.getBytes(StandardCharsets.UTF_8));
result = result
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
File expectedResult = getResourceAsFile("factur-x-vis.fr.html");
expected = new String(Files.readAllBytes(expectedResult.toPath()), StandardCharsets.UTF_8)
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
// remove linebreaks as well...
} catch (UnsupportedOperationException e) {
fail("UnsupportedOperationException should not happen: " + e.getMessage());
} catch (IllegalArgumentException e) {
fail("IllegalArgumentException should not happen: " + e.getMessage());
} catch (TransformerException e) {
fail("TransformerException should not happen: " + e.getMessage());
} catch (IOException e) {
fail("IOException should not happen: " + e.getMessage());
} catch (ParserConfigurationException e) {
fail("ParserConfigurationException should not happen: " + e.getMessage());
} catch (SAXException e) {
fail("SAXException should not happen: " + e.getMessage());
}
assertNotNull(result);
// Reading ZUGFeRD
assertEquals(expected, result);
this.runZUGFeRDVisualization("factur-x.xml", "factur-x-vis.fr.html", Language.FR);
}
public void testCIIVisualizationExtended() {
// the writing part
String sourceFilename = "factur-x-extended.xml";
File CIIinputFile = getResourceAsFile(sourceFilename);
String expected = null;
String result = null;
try {
ZUGFeRDVisualizer zvi = new ZUGFeRDVisualizer();
/* remove file endings so that tests can also pass after checking
out from git with arbitrary options (which may include CSRF changes)
*/
result = zvi.visualize(CIIinputFile.getAbsolutePath(), ZUGFeRDVisualizer.Language.DE);
Files.write(Paths.get("./target/testout-factur-x-vis-extended.de.html"), result.getBytes(StandardCharsets.UTF_8));
result = result
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
File expectedResult = getResourceAsFile("factur-x-vis-extended.de.html");
expected = new String(Files.readAllBytes(expectedResult.toPath()), StandardCharsets.UTF_8)
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
// remove linebreaks as well...
} catch (UnsupportedOperationException e) {
fail("UnsupportedOperationException should not happen: " + e.getMessage());
} catch (IllegalArgumentException e) {
fail("IllegalArgumentException should not happen: " + e.getMessage());
} catch (TransformerException e) {
fail("TransformerException should not happen: " + e.getMessage());
} catch (IOException e) {
fail("IOException should not happen: " + e.getMessage());
} catch (ParserConfigurationException e) {
fail("ParserConfigurationException should not happen: " + e.getMessage());
} catch (SAXException e) {
fail("SAXException should not happen: " + e.getMessage());
}
assertNotNull(result);
// Reading ZUGFeRD
assertEquals(expected, result);
this.runZUGFeRDVisualization("factur-x-extended.xml", "factur-x-vis-extended.de.html", Language.DE);
}
public void testUBLCreditNoteVisualizationBasic() {
// the writing part
File UBLinputFile = getResourceAsFile("ubl-creditnote.xml");
String expected = null;
String result = null;
try {
ZUGFeRDVisualizer zvi = new ZUGFeRDVisualizer();
/* remove file endings so that tests can also pass after checking
out from git with arbitrary options (which may include CSRF changes)
*/
result = zvi.visualize(UBLinputFile.getAbsolutePath(), ZUGFeRDVisualizer.Language.EN);
Files.write(Paths.get("./target/testout-factur-x-vis-ubl-creditnote.en.html"), result.getBytes(StandardCharsets.UTF_8));
result = result
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
File expectedResult = getResourceAsFile("factur-x-vis-ubl-creditnote.en.html");
expected = new String(Files.readAllBytes(expectedResult.toPath()), StandardCharsets.UTF_8)
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
// remove linebreaks as well...
} catch (UnsupportedOperationException e) {
fail("UnsupportedOperationException should not happen: " + e.getMessage());
} catch (IllegalArgumentException e) {
fail("IllegalArgumentException should not happen: " + e.getMessage());
} catch (TransformerException e) {
fail("TransformerException should not happen: " + e.getMessage());
} catch (IOException e) {
fail("IOException should not happen: " + e.getMessage());
} catch (ParserConfigurationException e) {
fail("ParserConfigurationException should not happen: " + e.getMessage());
} catch (SAXException e) {
fail("SAXException should not happen: " + e.getMessage());
}
assertNotNull(result);
// Reading ZUGFeRD
assertEquals(expected, result);
this.runZUGFeRDVisualization("ubl-creditnote.xml", "factur-x-vis-ubl-creditnote.en.html", Language.EN);
}
public void testUBLVisualizationBasic() {
this.runZUGFeRDVisualization("ubl/01.01a-INVOICE.ubl.xml", "factur-x-vis-ubl.en.html", Language.EN);
}
// the writing part
File UBLinputFile = getResourceAsFile("ubl/01.01a-INVOICE.ubl.xml");
private void runZUGFeRDVisualization(String inputFilename, String resultFileName, Language lang) {
File CIIinputFile = getResourceAsFile(inputFilename);
String expected = null;
String result = null;
try {
ZUGFeRDVisualizer zvi = new ZUGFeRDVisualizer();
/* remove file endings so that tests can also pass after checking
out from git with arbitrary options (which may include CSRF changes)
*/
result = zvi.visualize(UBLinputFile.getAbsolutePath(), ZUGFeRDVisualizer.Language.EN);
Files.write(Paths.get("./target/testout-factur-x-vis-ubl.en.html"), result.getBytes(StandardCharsets.UTF_8));
result = result
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
result = zvi.visualize(CIIinputFile.getAbsolutePath(), lang);
Files.write(Paths.get("./target/testout-" + resultFileName), result.getBytes(StandardCharsets.UTF_8));
File expectedResult = getResourceAsFile("factur-x-vis-ubl.en.html");
File expectedResult = getResourceAsFile(resultFileName);
expected = new String(Files.readAllBytes(expectedResult.toPath()), StandardCharsets.UTF_8)
.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", "");
// remove linebreaks as well...
;
} catch (UnsupportedOperationException e) {
fail("UnsupportedOperationException should not happen: " + e.getMessage());
@@ -222,16 +76,20 @@ public class VisualizationTest extends ResourceCase {
fail("TransformerException should not happen: " + e.getMessage());
} catch (IOException e) {
fail("IOException should not happen: " + e.getMessage());
} catch (ParserConfigurationException e) {
fail("ParserConfigurationException should not happen: " + e.getMessage());
} catch (SAXException e) {
fail("SAXException should not happen: " + e.getMessage());
}
assertNotNull(result);
// Reading ZUGFeRD
assertEquals(expected, result);
/* remove file endings so that tests can also pass after checking
out from git with arbitrary options (which may include CSRF changes)
*/
assertEquals(expected.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", ""), result.replace("\r", "")
.replace("\n", "")
.replace("\t", "")
.replace(" ", ""));
}
public void testPDFVisualizationCII() {

View File

@@ -1,427 +1,430 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- English disclaimer below.-->
<!--Nutzungsrechte
ZUGFeRD Datenformat Version 2.3.0, 18.09.2024
Beispiel Version 18.09.2024
Zweck des Forums elektronisch Rechnung Deutschland, welches am 31. März 2010 unter der Arbeitsgemeinschaft für
wirtschaftliche Verwaltung e. V. gegründet wurde, ist u. a. die Schaffung und Spezifizierung eines offenen Datenformats
für strukturierten elektronischen Datenaustausch auf der Grundlage offener und nicht diskriminierender, standardisierter
Technologien („ZUGFeRD Datenformat“).
Das ZUGFeRD Datenformat wird nach Maßgabe des FeRD sowohl Unternehmen als auch der öffentlichen Verwaltung
frei zugänglich gemacht. Hierfür bietet FeRD allen Unternehmen und Organisationen der öffentlichen Verwaltung eine
Lizenz für die Nutzung des urheberrechtlich geschützten ZUGFeRD-Datenformats zu fairen, sachgerechten und nicht
diskriminierenden Bedingungen an.
Die Spezifikation des FeRD zur Implementierung des ZUGFeRD Datenformats ist in ihrer jeweils geltenden Fassung
abrufbar unter www.ferd-net.de.
Im Einzelnen schließt die Nutzungsgewährung ein:
=====================================
FeRD räumt eine Lizenz für die Nutzung des urheberrechtlich geschützten ZUGFeRD Datenformats in der jeweils
geltenden und akzeptierten Fassung (www.ferd-net.de) ein.
Die Lizenz beinhaltet ein unwiderrufliches Nutzungsrecht einschließlich des Rechts der Weiterentwicklung,
Weiterbearbeitung und Verbindung mit anderen Produkten.
Die Lizenz gilt insbesondere für die Entwicklung, die Gestaltung, die Herstellung, den Verkauf, die Nutzung oder
anderweitige Verwendung des ZUGFeRD Datenformats für Hardware- und/oder Softwareprodukte sowie sonstige
Anwendungen und Dienste.
Diese Lizenz schließt nicht die wesentlichen Patente der Mitglieder von FeRD ein. Als wesentliche Patente sind Patente
und Patentanmeldungen weltweit zu verstehen, die einen oder mehrere Patentansprüche beinhalten, bei denen es sich um
notwendige Ansprüche handelt. Notwendige Ansprüche sind lediglich jene Ansprüche der Wesentlichen Patente, die durch
die Implementierung des ZUGFeRD Datenformats notwendigerweise verletzt würden.
Der Lizenznehmer ist berechtigt, seinen jeweiligen Konzerngesellschaften ein unbefristetes, weltweites, nicht übertragbares,
unwiderrufliches Nutzungsrecht einschließlich des Rechts der Weiterentwicklung, Weiterbearbeitung und Verbindung mit
anderen Produkten einzuräumen.
Die Lizenz wird kostenfrei zur Verfügung gestellt.
Außer im Falle vorsätzlichen Verschuldens oder grober Fahrlässigkeit haftet FeRD weder für Nutzungsausfall, entgangenen
Gewinn, Datenverlust, Kommunikationsverlust, Einnahmeausfall, Vertragseinbußen, Geschäftsausfall oder für Kosten,
Schäden, Verluste oder Haftpflichten im Zusammenhang mit einer Unterbrechung der Geschäftstätigkeit, noch für konkrete,
beiläufig entstandene, mittelbare Schäden, Straf- oder Folgeschäden und zwar auch dann nicht, wenn die Möglichkeit der
Kosten, Verluste bzw. Schäden hätte normalerweise vorhergesehen werden können.-->
<!--Right of use
ZUGFeRD Data format version 2.3.0, September 18th, 2024
The purpose of the Forum elektronische Rechnung Deutschland (FeRD), which was founded on March 31, 2010 under the
umbrella of Arbeitsgemeinschaft für wirtschaftliche Verwaltung e. V., is, among other things, to create and specify an
open data format for structured electronic data exchange on the basis of open and non discriminatory, standardised
technologies ("ZUGFeRD data format").
The ZUGFeRD data format is used by both companies and public administration according to the FeRD
made freely accessible. For this purpose FeRD offers all companies and organisations of the public administration a
License to use the copyrighted ZUGFeRD data format in a fair, appropriate and non
discriminatory conditions.
The specification of the FeRD for the implementation of the ZUGFeRD data format is, in its currently valid version
available at www.ferd-net.de.
In detail, the grant of use includes
=====================================
FeRD grants a license for the use of the copyrighted ZUGFeRD data format in the respective
valid and accepted version (www.ferd-net.de).
The license includes an irrevocable right of use including the right of further development,
Further processing and connection with other products.
The license applies in particular to the development, design, production, sale, use or
other use of the ZUGFeRD data format for hardware and/or software products and other
applications and services.
This license does not include the essential patents of the members of FeRD. The essential patents are patents
and patent applications worldwide which contain one or more claims that are
necessary claims. Necessary claims are only those claims of the essential patents which are
the implementation of the ZUGFeRD data format would necessarily be violated.
The Licensee is entitled to provide its respective group companies with an unlimited, worldwide, non-transferable,
irrevocable right of use including the right of further development, further processing and connection with
other products.
The license is provided free of charge.
Except in the case of intentional fault or gross negligence, FeRD is not liable for loss of use, loss of
Profit, loss of data, loss of communication, loss of revenue, loss of contracts, loss of business or for costs
damages, losses or liabilities in connection with an interruption of business, nor for concrete,
incidental, indirect, punitive or consequential damages, even if the possibility of
costs, losses or damages could normally have been foreseen.-->
<rsm:CrossIndustryInvoice 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:ExchangedDocumentContext>
<ram:TestIndicator>
<udt:Indicator>true</udt:Indicator>
</ram:TestIndicator>
<ram:GuidelineSpecifiedDocumentContextParameter>
<ram:ID>urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
<rsm:ExchangedDocument>
<ram:ID>KR87654321012</ram:ID>
<ram:Name>KOSTENRECHNUNG</ram:Name>
<ram:TypeCode>380</ram:TypeCode>
<ram:IssueDateTime>
<udt:DateTimeString format="102">20241115</udt:DateTimeString>
</ram:IssueDateTime>
<ram:IncludedNote>
<ram:ContentCode>ST3</ram:ContentCode>
<ram:Content>Es bestehen Rabatt- oder Bonusvereinbarungen.</ram:Content>
<ram:SubjectCode>AAK</ram:SubjectCode>
</ram:IncludedNote>
<ram:IncludedNote>
<ram:ContentCode>EEV</ram:ContentCode>
<ram:Content>Der Verkäufer bleibt Eigentümer der Waren bis zur vollständigen Erfüllung der Kaufpreisforderung.</ram:Content>
<ram:SubjectCode>AAJ</ram:SubjectCode>
</ram:IncludedNote>
<ram:IncludedNote>
<ram:Content>MUSTERLIEFERANT GMBH
BAHNHOFSTRASSE 99
99199 MUSTERHAUSEN
Geschäftsführung:
Max Mustermann
USt-IdNr: DE123456789
Telefon: +49 932 431 0
www.musterlieferant.de
HRB Nr. 372876
Amtsgericht Musterstadt
GLN 4304171000002
</ram:Content>
<ram:SubjectCode>REG</ram:SubjectCode>
</ram:IncludedNote>
</rsm:ExchangedDocument>
<rsm:SupplyChainTradeTransaction>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>1</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4123456000014</ram:GlobalID>
<ram:SellerAssignedID>WA997</ram:SellerAssignedID>
<ram:Name>Wirkarbeit HT</ram:Name>
<ram:ApplicableProductCharacteristic>
<ram:Description>Zählpunkt</ram:Description>
<ram:Value>DE0001346484600000000000000100038</ram:Value>
</ram:ApplicableProductCharacteristic>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0520</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0520</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="KWH">1000.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>52.00</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>2</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4123456000021</ram:GlobalID>
<ram:SellerAssignedID>ÖST250</ram:SellerAssignedID>
<ram:Name>Ökosteuer Lieferant</ram:Name>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0205</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0205</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="KWH">1000.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>20.50</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>3</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4260331811362</ram:GlobalID>
<ram:Name>Kommissionierer 1250032 D. Muster</ram:Name>
<ram:Description>Besteller: Hr. Mayer, Personalnr. 4488</ram:Description>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>15.0000</ram:ChargeAmount>
<ram:AppliedTradeAllowanceCharge>
<ram:ChargeIndicator>
<udt:Indicator>false</udt:Indicator>
</ram:ChargeIndicator>
<ram:ActualAmount>4.50</ram:ActualAmount>
<ram:Reason>Artikelrabatt 1</ram:Reason>
</ram:AppliedTradeAllowanceCharge>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>10.5000</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="HUR">27.5000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>288.75</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>4</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">2001015001325</ram:GlobalID>
<ram:SellerAssignedID>FB05</ram:SellerAssignedID>
<ram:Name>FALTENBEUTEL 16x6x28 CM</ram:Name>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0105</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0105</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="H87">3500.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>36.75</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>5</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4123456000038</ram:GlobalID>
<ram:SellerAssignedID>KOP05</ram:SellerAssignedID>
<ram:Name>Kopierpapier A4</ram:Name>
<ram:Description>Zählerstand von-bis: 543210 - 544420</ram:Description>
<ram:ApplicableProductCharacteristic>
<ram:Description>Zähler-Nr.</ram:Description>
<ram:Value>MG-X79318</ram:Value>
</ram:ApplicableProductCharacteristic>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0100</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0100</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="H87">1210.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>12.10</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:ApplicableHeaderTradeAgreement>
<ram:SellerTradeParty>
<ram:ID>549910</ram:ID>
<ram:GlobalID schemeID="0088">4333741000005</ram:GlobalID>
<ram:Name>MUSTERLIEFERANT GMBH</ram:Name>
<ram:DefinedTradeContact>
<ram:TelephoneUniversalCommunication>
<ram:CompleteNumber>+49 932 431 500</ram:CompleteNumber>
</ram:TelephoneUniversalCommunication>
<ram:EmailURIUniversalCommunication>
<ram:URIID>max.mustermann@musterlieferant.de</ram:URIID>
</ram:EmailURIUniversalCommunication>
</ram:DefinedTradeContact>
<ram:PostalTradeAddress>
<ram:PostcodeCode>99199</ram:PostcodeCode>
<ram:LineOne>BAHNHOFSTRASSE 99</ram:LineOne>
<ram:CityName>MUSTERHAUSEN</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
<ram:SpecifiedTaxRegistration>
<ram:ID schemeID="FC">201/113/40209</ram:ID>
</ram:SpecifiedTaxRegistration>
</ram:SellerTradeParty>
<ram:BuyerTradeParty>
<ram:ID>339420</ram:ID>
<ram:GlobalID schemeID="0088">4304171000002</ram:GlobalID>
<ram:Name>MUSTER-KUNDE GMBH</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>40235</ram:PostcodeCode>
<ram:LineOne>KUNDENWEG 88</ram:LineOne>
<ram:CityName>DUESSELDORF</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:BuyerTradeParty>
<ram:AdditionalReferencedDocument>
<ram:IssuerAssignedID>A777123</ram:IssuerAssignedID>
<ram:TypeCode>130</ram:TypeCode>
</ram:AdditionalReferencedDocument>
</ram:ApplicableHeaderTradeAgreement>
<ram:ApplicableHeaderTradeDelivery>
<ram:ShipToTradeParty>
<ram:GlobalID schemeID="0088">4304171088093</ram:GlobalID>
<ram:Name>MUSTER-MARKT</ram:Name>
<ram:DefinedTradeContact>
<ram:DepartmentName>7322</ram:DepartmentName>
</ram:DefinedTradeContact>
<ram:PostalTradeAddress>
<ram:PostcodeCode>31157</ram:PostcodeCode>
<ram:LineOne>HAUPTSTRASSE 44</ram:LineOne>
<ram:CityName>SARSTEDT</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:ShipToTradeParty>
<ram:ActualDeliverySupplyChainEvent>
<ram:OccurrenceDateTime>
<udt:DateTimeString format="102">20241030</udt:DateTimeString>
</ram:OccurrenceDateTime>
</ram:ActualDeliverySupplyChainEvent>
<ram:DeliveryNoteReferencedDocument>
<ram:IssuerAssignedID>L87654321012</ram:IssuerAssignedID>
</ram:DeliveryNoteReferencedDocument>
</ram:ApplicableHeaderTradeDelivery>
<ram:ApplicableHeaderTradeSettlement>
<ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>
<ram:InvoiceeTradeParty>
<ram:ID>339420</ram:ID>
<ram:GlobalID schemeID="0088">4304171000002</ram:GlobalID>
<ram:Name>MUSTER-KUNDE GMBH</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>40235</ram:PostcodeCode>
<ram:LineOne>KUNDENWEG 88</ram:LineOne>
<ram:CityName>DUESSELDORF</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:InvoiceeTradeParty>
<ram:ApplicableTradeTax>
<ram:CalculatedAmount>76.67</ram:CalculatedAmount>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>403.55</ram:BasisAmount>
<ram:LineTotalBasisAmount>410.10</ram:LineTotalBasisAmount>
<ram:AllowanceChargeBasisAmount>-6.55</ram:AllowanceChargeBasisAmount>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeAllowanceCharge>
<ram:ChargeIndicator>
<udt:Indicator>false</udt:Indicator>
</ram:ChargeIndicator>
<ram:BasisAmount>410.10</ram:BasisAmount>
<ram:ActualAmount>21.55</ram:ActualAmount>
<ram:Reason>Sonderrabatt</ram:Reason>
<ram:CategoryTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:CategoryTradeTax>
</ram:SpecifiedTradeAllowanceCharge>
<ram:SpecifiedLogisticsServiceCharge>
<ram:Description>Transportkosten: Frachbetrag</ram:Description>
<ram:AppliedAmount>15.00</ram:AppliedAmount>
<ram:AppliedTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:AppliedTradeTax>
</ram:SpecifiedLogisticsServiceCharge>
<ram:SpecifiedTradePaymentTerms>
<ram:Description>Skontovereinbarung: 2% bei Zahlung innerhalb 10 Tagen nach Rechnungsdatum</ram:Description>
<ram:ApplicableTradePaymentDiscountTerms>
<ram:BasisPeriodMeasure unitCode="DAY">10</ram:BasisPeriodMeasure>
<ram:CalculationPercent>2.00</ram:CalculationPercent>
</ram:ApplicableTradePaymentDiscountTerms>
</ram:SpecifiedTradePaymentTerms>
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
<ram:LineTotalAmount>410.10</ram:LineTotalAmount>
<ram:ChargeTotalAmount>15.00</ram:ChargeTotalAmount>
<ram:AllowanceTotalAmount>21.55</ram:AllowanceTotalAmount>
<ram:TaxBasisTotalAmount>403.55</ram:TaxBasisTotalAmount>
<ram:TaxTotalAmount currencyID="EUR">76.67</ram:TaxTotalAmount>
<ram:GrandTotalAmount>480.22</ram:GrandTotalAmount>
<ram:TotalPrepaidAmount>0.00</ram:TotalPrepaidAmount>
<ram:DuePayableAmount>480.22</ram:DuePayableAmount>
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
</ram:ApplicableHeaderTradeSettlement>
</rsm:SupplyChainTradeTransaction>
</rsm:CrossIndustryInvoice>
<?xml version="1.0" encoding="UTF-8"?>
<!-- English disclaimer below.-->
<!--Nutzungsrechte
ZUGFeRD Datenformat Version 2.3.0, 18.09.2024
Beispiel Version 18.09.2024
Zweck des Forums elektronisch Rechnung Deutschland, welches am 31. März 2010 unter der Arbeitsgemeinschaft für
wirtschaftliche Verwaltung e. V. gegründet wurde, ist u. a. die Schaffung und Spezifizierung eines offenen Datenformats
für strukturierten elektronischen Datenaustausch auf der Grundlage offener und nicht diskriminierender, standardisierter
Technologien („ZUGFeRD Datenformat“).
Das ZUGFeRD Datenformat wird nach Maßgabe des FeRD sowohl Unternehmen als auch der öffentlichen Verwaltung
frei zugänglich gemacht. Hierfür bietet FeRD allen Unternehmen und Organisationen der öffentlichen Verwaltung eine
Lizenz für die Nutzung des urheberrechtlich geschützten ZUGFeRD-Datenformats zu fairen, sachgerechten und nicht
diskriminierenden Bedingungen an.
Die Spezifikation des FeRD zur Implementierung des ZUGFeRD Datenformats ist in ihrer jeweils geltenden Fassung
abrufbar unter www.ferd-net.de.
Im Einzelnen schließt die Nutzungsgewährung ein:
=====================================
FeRD räumt eine Lizenz für die Nutzung des urheberrechtlich geschützten ZUGFeRD Datenformats in der jeweils
geltenden und akzeptierten Fassung (www.ferd-net.de) ein.
Die Lizenz beinhaltet ein unwiderrufliches Nutzungsrecht einschließlich des Rechts der Weiterentwicklung,
Weiterbearbeitung und Verbindung mit anderen Produkten.
Die Lizenz gilt insbesondere für die Entwicklung, die Gestaltung, die Herstellung, den Verkauf, die Nutzung oder
anderweitige Verwendung des ZUGFeRD Datenformats für Hardware- und/oder Softwareprodukte sowie sonstige
Anwendungen und Dienste.
Diese Lizenz schließt nicht die wesentlichen Patente der Mitglieder von FeRD ein. Als wesentliche Patente sind Patente
und Patentanmeldungen weltweit zu verstehen, die einen oder mehrere Patentansprüche beinhalten, bei denen es sich um
notwendige Ansprüche handelt. Notwendige Ansprüche sind lediglich jene Ansprüche der Wesentlichen Patente, die durch
die Implementierung des ZUGFeRD Datenformats notwendigerweise verletzt würden.
Der Lizenznehmer ist berechtigt, seinen jeweiligen Konzerngesellschaften ein unbefristetes, weltweites, nicht übertragbares,
unwiderrufliches Nutzungsrecht einschließlich des Rechts der Weiterentwicklung, Weiterbearbeitung und Verbindung mit
anderen Produkten einzuräumen.
Die Lizenz wird kostenfrei zur Verfügung gestellt.
Außer im Falle vorsätzlichen Verschuldens oder grober Fahrlässigkeit haftet FeRD weder für Nutzungsausfall, entgangenen
Gewinn, Datenverlust, Kommunikationsverlust, Einnahmeausfall, Vertragseinbußen, Geschäftsausfall oder für Kosten,
Schäden, Verluste oder Haftpflichten im Zusammenhang mit einer Unterbrechung der Geschäftstätigkeit, noch für konkrete,
beiläufig entstandene, mittelbare Schäden, Straf- oder Folgeschäden und zwar auch dann nicht, wenn die Möglichkeit der
Kosten, Verluste bzw. Schäden hätte normalerweise vorhergesehen werden können.-->
<!--Right of use
ZUGFeRD Data format version 2.3.0, September 18th, 2024
The purpose of the Forum elektronische Rechnung Deutschland (FeRD), which was founded on March 31, 2010 under the
umbrella of Arbeitsgemeinschaft für wirtschaftliche Verwaltung e. V., is, among other things, to create and specify an
open data format for structured electronic data exchange on the basis of open and non discriminatory, standardised
technologies ("ZUGFeRD data format").
The ZUGFeRD data format is used by both companies and public administration according to the FeRD
made freely accessible. For this purpose FeRD offers all companies and organisations of the public administration a
License to use the copyrighted ZUGFeRD data format in a fair, appropriate and non
discriminatory conditions.
The specification of the FeRD for the implementation of the ZUGFeRD data format is, in its currently valid version
available at www.ferd-net.de.
In detail, the grant of use includes
=====================================
FeRD grants a license for the use of the copyrighted ZUGFeRD data format in the respective
valid and accepted version (www.ferd-net.de).
The license includes an irrevocable right of use including the right of further development,
Further processing and connection with other products.
The license applies in particular to the development, design, production, sale, use or
other use of the ZUGFeRD data format for hardware and/or software products and other
applications and services.
This license does not include the essential patents of the members of FeRD. The essential patents are patents
and patent applications worldwide which contain one or more claims that are
necessary claims. Necessary claims are only those claims of the essential patents which are
the implementation of the ZUGFeRD data format would necessarily be violated.
The Licensee is entitled to provide its respective group companies with an unlimited, worldwide, non-transferable,
irrevocable right of use including the right of further development, further processing and connection with
other products.
The license is provided free of charge.
Except in the case of intentional fault or gross negligence, FeRD is not liable for loss of use, loss of
Profit, loss of data, loss of communication, loss of revenue, loss of contracts, loss of business or for costs
damages, losses or liabilities in connection with an interruption of business, nor for concrete,
incidental, indirect, punitive or consequential damages, even if the possibility of
costs, losses or damages could normally have been foreseen.-->
<rsm:CrossIndustryInvoice 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:ExchangedDocumentContext>
<ram:TestIndicator>
<udt:Indicator>true</udt:Indicator>
</ram:TestIndicator>
<ram:GuidelineSpecifiedDocumentContextParameter>
<ram:ID>urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended</ram:ID>
</ram:GuidelineSpecifiedDocumentContextParameter>
</rsm:ExchangedDocumentContext>
<rsm:ExchangedDocument>
<ram:ID>KR87654321012</ram:ID>
<ram:Name>KOSTENRECHNUNG</ram:Name>
<ram:TypeCode>380</ram:TypeCode>
<ram:IssueDateTime>
<udt:DateTimeString format="102">20241115</udt:DateTimeString>
</ram:IssueDateTime>
<ram:IncludedNote>
<ram:ContentCode>ST3</ram:ContentCode>
<ram:Content>Es bestehen Rabatt- oder Bonusvereinbarungen.</ram:Content>
<ram:SubjectCode>AAK</ram:SubjectCode>
</ram:IncludedNote>
<ram:IncludedNote>
<ram:ContentCode>EEV</ram:ContentCode>
<ram:Content>Der Verkäufer bleibt Eigentümer der Waren bis zur vollständigen Erfüllung der Kaufpreisforderung.</ram:Content>
<ram:SubjectCode>AAJ</ram:SubjectCode>
</ram:IncludedNote>
<ram:IncludedNote>
<ram:Content>MUSTERLIEFERANT GMBH
BAHNHOFSTRASSE 99
99199 MUSTERHAUSEN
Geschäftsführung:
Max Mustermann
USt-IdNr: DE123456789
Telefon: +49 932 431 0
www.musterlieferant.de
HRB Nr. 372876
Amtsgericht Musterstadt
GLN 4304171000002
</ram:Content>
<ram:SubjectCode>REG</ram:SubjectCode>
</ram:IncludedNote>
</rsm:ExchangedDocument>
<rsm:SupplyChainTradeTransaction>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>1</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4123456000014</ram:GlobalID>
<ram:SellerAssignedID>WA997</ram:SellerAssignedID>
<ram:Name>Wirkarbeit HT</ram:Name>
<ram:ApplicableProductCharacteristic>
<ram:Description>Zählpunkt</ram:Description>
<ram:Value>DE0001346484600000000000000100038</ram:Value>
</ram:ApplicableProductCharacteristic>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0520</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0520</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="KWH">1000.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>52.00</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>2</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4123456000021</ram:GlobalID>
<ram:SellerAssignedID>ÖST250</ram:SellerAssignedID>
<ram:Name>Ökosteuer Lieferant</ram:Name>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0205</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0205</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="KWH">1000.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>20.50</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>3</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4260331811362</ram:GlobalID>
<ram:Name>Kommissionierer 1250032 D. Muster</ram:Name>
<ram:Description>Besteller: Hr. Mayer, Personalnr. 4488</ram:Description>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>15.0000</ram:ChargeAmount>
<ram:AppliedTradeAllowanceCharge>
<ram:ChargeIndicator>
<udt:Indicator>false</udt:Indicator>
</ram:ChargeIndicator>
<ram:ActualAmount>4.50</ram:ActualAmount>
<ram:Reason>Artikelrabatt 1</ram:Reason>
</ram:AppliedTradeAllowanceCharge>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>10.5000</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="HUR">27.5000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>288.75</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>4</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">2001015001325</ram:GlobalID>
<ram:SellerAssignedID>FB05</ram:SellerAssignedID>
<ram:Name>FALTENBEUTEL 16x6x28 CM</ram:Name>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0105</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0105</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="H87">3500.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>36.75</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:IncludedSupplyChainTradeLineItem>
<ram:AssociatedDocumentLineDocument>
<ram:LineID>5</ram:LineID>
</ram:AssociatedDocumentLineDocument>
<ram:SpecifiedTradeProduct>
<ram:GlobalID schemeID="0088">4123456000038</ram:GlobalID>
<ram:SellerAssignedID>KOP05</ram:SellerAssignedID>
<ram:Name>Kopierpapier A4</ram:Name>
<ram:Description>Zählerstand von-bis: 543210 - 544420</ram:Description>
<ram:ApplicableProductCharacteristic>
<ram:Description>Zähler-Nr.</ram:Description>
<ram:Value>MG-X79318</ram:Value>
</ram:ApplicableProductCharacteristic>
</ram:SpecifiedTradeProduct>
<ram:SpecifiedLineTradeAgreement>
<ram:GrossPriceProductTradePrice>
<ram:ChargeAmount>0.0100</ram:ChargeAmount>
</ram:GrossPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>0.0100</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
</ram:SpecifiedLineTradeAgreement>
<ram:SpecifiedLineTradeDelivery>
<ram:BilledQuantity unitCode="H87">1210.0000</ram:BilledQuantity>
</ram:SpecifiedLineTradeDelivery>
<ram:SpecifiedLineTradeSettlement>
<ram:ApplicableTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeSettlementLineMonetarySummation>
<ram:LineTotalAmount>12.10</ram:LineTotalAmount>
</ram:SpecifiedTradeSettlementLineMonetarySummation>
</ram:SpecifiedLineTradeSettlement>
</ram:IncludedSupplyChainTradeLineItem>
<ram:ApplicableHeaderTradeAgreement>
<ram:SellerTradeParty>
<ram:ID>549910</ram:ID>
<ram:GlobalID schemeID="0088">4333741000005</ram:GlobalID>
<ram:Name>MUSTERLIEFERANT GMBH</ram:Name>
<ram:DefinedTradeContact>
<ram:TelephoneUniversalCommunication>
<ram:CompleteNumber>+49 932 431 500</ram:CompleteNumber>
</ram:TelephoneUniversalCommunication>
<ram:EmailURIUniversalCommunication>
<ram:URIID>max.mustermann@musterlieferant.de</ram:URIID>
</ram:EmailURIUniversalCommunication>
</ram:DefinedTradeContact>
<ram:PostalTradeAddress>
<ram:PostcodeCode>99199</ram:PostcodeCode>
<ram:LineOne>BAHNHOFSTRASSE 99</ram:LineOne>
<ram:CityName>MUSTERHAUSEN</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
<ram:SpecifiedTaxRegistration>
<ram:ID schemeID="FC">201/113/40209</ram:ID>
</ram:SpecifiedTaxRegistration>
</ram:SellerTradeParty>
<ram:BuyerTradeParty>
<ram:ID>339420</ram:ID>
<ram:GlobalID schemeID="0088">4304171000002</ram:GlobalID>
<ram:Name>MUSTER-KUNDE GMBH</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>40235</ram:PostcodeCode>
<ram:LineOne>KUNDENWEG 88</ram:LineOne>
<ram:CityName>DUESSELDORF</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:BuyerTradeParty>
<ram:AdditionalReferencedDocument>
<ram:IssuerAssignedID>A777123</ram:IssuerAssignedID>
<ram:TypeCode>130</ram:TypeCode>
</ram:AdditionalReferencedDocument>
</ram:ApplicableHeaderTradeAgreement>
<ram:ApplicableHeaderTradeDelivery>
<ram:ShipToTradeParty>
<ram:GlobalID schemeID="0088">4304171088093</ram:GlobalID>
<ram:Name>MUSTER-MARKT</ram:Name>
<ram:DefinedTradeContact>
<ram:DepartmentName>7322</ram:DepartmentName>
</ram:DefinedTradeContact>
<ram:PostalTradeAddress>
<ram:PostcodeCode>31157</ram:PostcodeCode>
<ram:LineOne>HAUPTSTRASSE 44</ram:LineOne>
<ram:CityName>SARSTEDT</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:ShipToTradeParty>
<ram:ActualDeliverySupplyChainEvent>
<ram:OccurrenceDateTime>
<udt:DateTimeString format="102">20241030</udt:DateTimeString>
</ram:OccurrenceDateTime>
</ram:ActualDeliverySupplyChainEvent>
<ram:DeliveryNoteReferencedDocument>
<ram:IssuerAssignedID>L87654321012</ram:IssuerAssignedID>
<ram:FormattedIssueDateTime>
<qdt:DateTimeString format="102">20241031</qdt:DateTimeString>
</ram:FormattedIssueDateTime>
</ram:DeliveryNoteReferencedDocument>
</ram:ApplicableHeaderTradeDelivery>
<ram:ApplicableHeaderTradeSettlement>
<ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>
<ram:InvoiceeTradeParty>
<ram:ID>339420</ram:ID>
<ram:GlobalID schemeID="0088">4304171000002</ram:GlobalID>
<ram:Name>MUSTER-KUNDE GMBH</ram:Name>
<ram:PostalTradeAddress>
<ram:PostcodeCode>40235</ram:PostcodeCode>
<ram:LineOne>KUNDENWEG 88</ram:LineOne>
<ram:CityName>DUESSELDORF</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
</ram:InvoiceeTradeParty>
<ram:ApplicableTradeTax>
<ram:CalculatedAmount>76.67</ram:CalculatedAmount>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>403.55</ram:BasisAmount>
<ram:LineTotalBasisAmount>410.10</ram:LineTotalBasisAmount>
<ram:AllowanceChargeBasisAmount>-6.55</ram:AllowanceChargeBasisAmount>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
<ram:SpecifiedTradeAllowanceCharge>
<ram:ChargeIndicator>
<udt:Indicator>false</udt:Indicator>
</ram:ChargeIndicator>
<ram:BasisAmount>410.10</ram:BasisAmount>
<ram:ActualAmount>21.55</ram:ActualAmount>
<ram:Reason>Sonderrabatt</ram:Reason>
<ram:CategoryTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:CategoryTradeTax>
</ram:SpecifiedTradeAllowanceCharge>
<ram:SpecifiedLogisticsServiceCharge>
<ram:Description>Transportkosten: Frachbetrag</ram:Description>
<ram:AppliedAmount>15.00</ram:AppliedAmount>
<ram:AppliedTradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>19.00</ram:RateApplicablePercent>
</ram:AppliedTradeTax>
</ram:SpecifiedLogisticsServiceCharge>
<ram:SpecifiedTradePaymentTerms>
<ram:Description>Skontovereinbarung: 2% bei Zahlung innerhalb 10 Tagen nach Rechnungsdatum</ram:Description>
<ram:ApplicableTradePaymentDiscountTerms>
<ram:BasisPeriodMeasure unitCode="DAY">10</ram:BasisPeriodMeasure>
<ram:CalculationPercent>2.00</ram:CalculationPercent>
</ram:ApplicableTradePaymentDiscountTerms>
</ram:SpecifiedTradePaymentTerms>
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
<ram:LineTotalAmount>410.10</ram:LineTotalAmount>
<ram:ChargeTotalAmount>15.00</ram:ChargeTotalAmount>
<ram:AllowanceTotalAmount>21.55</ram:AllowanceTotalAmount>
<ram:TaxBasisTotalAmount>403.55</ram:TaxBasisTotalAmount>
<ram:TaxTotalAmount currencyID="EUR">76.67</ram:TaxTotalAmount>
<ram:GrandTotalAmount>480.22</ram:GrandTotalAmount>
<ram:TotalPrepaidAmount>0.00</ram:TotalPrepaidAmount>
<ram:DuePayableAmount>480.22</ram:DuePayableAmount>
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
</ram:ApplicableHeaderTradeSettlement>
</rsm:SupplyChainTradeTransaction>
</rsm:CrossIndustryInvoice>

View File

@@ -1085,7 +1085,6 @@
</div>
<div class="boxabstand"></div>
</div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig">
<div class="boxzeile">
<div id="uebersichtVersandkosten" class="box">
@@ -2248,6 +2247,10 @@
<div class="boxdaten legende">Kennung der Versandanzeige:</div>
<div id="BT-16" title="BT-16" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Kennung des Lieferscheins:</div>
<div id="BT-X-202" title="BT-X-202" class="boxdaten wert">L87654321012 vom 31.10.2024</div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Prozesskennung:</div>
<div id="BT-23" title="BT-23" class="boxdaten wert"></div>

View File

@@ -1359,7 +1359,6 @@
</div>
<div class="boxabstand"></div>
</div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig first">
<div class="boxzeile">
<div id="uebersichtZahlungsinformationen" class="box subBox">
@@ -1556,7 +1555,7 @@
<div class="boxzeile">
<div class="boxdaten legende ">Description:</div>
<div id="BT-154" title="BT-154" class="boxdaten wert">Processor: Intel Core 2 Duo SU9400 LV (1.4GHz). RAM:
3MB. Screen 1440x900</div>
3MB. Screen 1440x900</div>
</div>
<div class="boxzeile">
<div class="boxdaten legende ">Part number:</div>
@@ -2355,6 +2354,10 @@
<div class="boxdaten legende">Dispatch note ID:</div>
<div id="BT-16" title="BT-16" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Delivery note ID:</div>
<div id="BT-X-202" title="BT-X-202" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Process ID:</div>
<div id="BT-23" title="BT-23" class="boxdaten wert"></div>

View File

@@ -1219,9 +1219,6 @@
</div>
</div>
</div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig first">
<div class="boxzeile">
<div id="uebersichtZahlungsinformationen" class="box subBox">
@@ -1755,6 +1752,10 @@
<div class="boxdaten legende">Dispatch note ID:</div>
<div id="BT-16" title="BT-16" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Delivery note ID:</div>
<div id="BT-X-202" title="BT-X-202" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Process ID:</div>
<div id="BT-23" title="BT-23" class="boxdaten wert"></div>

View File

@@ -1250,9 +1250,6 @@
</div>
</div>
</div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig"></div>
<div class="boxtabelle boxabstandtop boxtabelleZweispaltig first">
<div class="boxzeile">
<div id="uebersichtZahlungsinformationen" class="box subBox">
@@ -1927,6 +1924,10 @@
<div class="boxdaten legende">Identifiant du bordereau d'expédition:</div>
<div id="BT-16" title="BT-16" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Identifiant du bon de livraison:</div>
<div id="BT-X-202" title="BT-X-202" class="boxdaten wert"></div>
</div>
<div class="boxzeile">
<div class="boxdaten legende">Identifiant processus:</div>
<div id="BT-23" title="BT-23" class="boxdaten wert"></div>