Neu: XML-Export für Kontoauszüge mit SmartKontoauszug
Neu: XML-Export für Kontoauszüge mit SmartKontoauszug
SmartKontoauszug bietet ab sofort den Export von Kontoauszügen im XML-Format an. XML ist der Industriestandard für den strukturierten Datenaustausch – besonders im Finanzbereich.
Was ist XML?
XML (Extensible Markup Language) ist ein textbasiertes Format zur Darstellung hierarchisch strukturierter Daten. Im Bankwesen ist XML die Grundlage für Standards wie SEPA, CAMT und ISO 20022.
Beispiel:
<?xml version="1.0" encoding="UTF-8"?>
<Kontoauszug>
<Konto>
<IBAN>DE89370400440532013000</IBAN>
<Inhaber>Max Mustermann</Inhaber>
</Konto>
<Transaktionen>
<Transaktion>
<Datum>2026-01-15</Datum>
<Empfaenger>Müller GmbH</Empfaenger>
<Betrag>-250.00</Betrag>
<Verwendungszweck>Rechnung 2026-001</Verwendungszweck>
</Transaktion>
</Transaktionen>
</Kontoauszug>
Warum XML?
XML bietet einzigartige Vorteile für den professionellen Einsatz:
- Selbstbeschreibend: Daten und Struktur in einem
- Validierbar: Schema-Prüfung möglich (XSD)
- Transformierbar: XSLT für Formatkonvertierung
- Standardisiert: Basis für Finanz-Standards (CAMT, SEPA, ISO 20022)
Anwendungsfälle für den XML-Export
1. Enterprise-Integration
XML ist der Standard für:
- SAP und andere ERP-Systeme
- Enterprise Service Bus (ESB)
- B2B-Datenaustausch
- EDI-Schnittstellen
2. Banken-Schnittstellen
Viele Banken-Standards basieren auf XML:
- CAMT.053: Kontoauszug
- CAMT.054: Einzelumsätze
- pain.001: Überweisungen
- pain.008: Lastschriften
3. Dokumentenmanagement
XML eignet sich für:
- Langzeitarchivierung (PDF/A-3 mit eingebettetem XML)
- Revisionssichere Ablage
- Volltextsuche über strukturierte Daten
4. Datenkonvertierung
Mit XSLT lässt sich XML in beliebige Formate transformieren:
- HTML für Webdarstellung
- PDF für Berichte
- Andere XML-Formate (CAMT, DATEV)
Technische Spezifikation
XML-Struktur
<?xml version="1.0" encoding="UTF-8"?>
<SmartKontoauszug version="1.0">
<Meta>
<ExportiertAm>2026-02-15T10:30:00Z</ExportiertAm>
<Quelle>SmartKontoauszug</Quelle>
</Meta>
<Konto>
<IBAN>DE89370400440532013000</IBAN>
<BIC>COBADEFFXXX</BIC>
<Inhaber>Max Mustermann</Inhaber>
<Bank>Commerzbank</Bank>
</Konto>
<Zeitraum>
<Von>2026-01-01</Von>
<Bis>2026-01-31</Bis>
</Zeitraum>
<Saldo>
<Anfang>5000.00</Anfang>
<Ende>4250.00</Ende>
<Waehrung>EUR</Waehrung>
</Saldo>
<Transaktionen>
<Transaktion>
<Buchungsdatum>2026-01-15</Buchungsdatum>
<Valutadatum>2026-01-15</Valutadatum>
<Betrag>-250.00</Betrag>
<Waehrung>EUR</Waehrung>
<Empfaenger>
<Name>Müller GmbH</Name>
<IBAN>DE12345678901234567890</IBAN>
</Empfaenger>
<Verwendungszweck>Rechnung 2026-001</Verwendungszweck>
<Buchungsart>Überweisung</Buchungsart>
</Transaktion>
</Transaktionen>
</SmartKontoauszug>
Zeichensatz und Encoding
- UTF-8 Encoding für alle Umlaute und Sonderzeichen
- XML-Declaration mit Encoding-Angabe
- Valides, wohlgeformtes XML
Verarbeitung mit verschiedenen Sprachen
Python mit ElementTree
import xml.etree.ElementTree as ET
tree = ET.parse('kontoauszug.xml')
root = tree.getroot()
for transaktion in root.findall('.//Transaktion'):
betrag = transaktion.find('Betrag').text
empfaenger = transaktion.find('Empfaenger/Name').text
print(f"{empfaenger}: {betrag}€")
Java mit DOM
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse("kontoauszug.xml");
NodeList transaktionen = doc.getElementsByTagName("Transaktion");
for (int i = 0; i < transaktionen.getLength(); i++) {
Element trans = (Element) transaktionen.item(i);
String betrag = trans.getElementsByTagName("Betrag").item(0).getTextContent();
System.out.println("Betrag: " + betrag);
}
XSLT-Transformation
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<table>
<xsl:for-each select="//Transaktion">
<tr>
<td><xsl:value-of select="Buchungsdatum"/></td>
<td><xsl:value-of select="Empfaenger/Name"/></td>
<td><xsl:value-of select="Betrag"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Weitere Exportformate
SmartKontoauszug bietet verschiedene Formate für jeden Anwendungsfall:
- CSV – Für Excel und Tabellenkalkulationen
- JSON – Für Web-APIs und Entwickler
- DATEV – Für Steuerberater
- Lexware – Für Lexware Buchhaltung
Fazit
Der XML-Export macht SmartKontoauszug fit für Enterprise-Anforderungen. Ob ERP-Integration, Banken-Schnittstellen oder Langzeitarchivierung – mit XML sind Sie bestens gerüstet.
