Tax Filing Service

<back to all web services

CreateUmsatzsteuererklaerung2023Xml

SyncUmsatzsteuerJahressteuererklärung2023

A synchronous service to create XML content that represents the annual VAT return for 2023.

Requires Authentication
The following routes are available for this service:
POST/CreateUmsatzsteuererklaerung2023XmlA synchronous service to create xml content that represents the annual VAT return for 2023
import Foundation
import ServiceStack

/**
* A synchronous service to create XML content that represents the annual VAT return for 2023.
*/
// @Api(Description="A synchronous service to create XML content that represents the annual VAT return for 2023.")
public class CreateUmsatzsteuererklaerung2023Xml : CreateUmsatzsteuererklaerung2023XmlBase
{
    /**
    * Berichtigte Erklärung
    */
    // @ApiMember(Description="Berichtigte Erklärung", Name="BerErkl")
    public var berErkl:BerErkl2023

    /**
    * A. Allgemeine Angaben.
    */
    // @ApiMember(Description="A. Allgemeine Angaben.", Name="Allg")
    public var allg:Allg2023

    /**
    * Angaben zu den Mitwirkenden, die bei der Anfertigung dieser Steuererklärung einschließlich der Anlagen mitgewirkt haben.
    */
    // @ApiMember(Description="Angaben zu den Mitwirkenden, die bei der Anfertigung dieser Steuererklärung einschließlich der Anlagen mitgewirkt haben.", Name="Mitwirk")
    public var mitwirk:Mitwirk2023

    /**
    * B. Angaben zur Besteuerung der Kleinunternehmer (§ 19 Absatz 1 UStG). Die Zeilen 33 und 34 sind nur auszufüllen, wenn der Umsatz $VZ-1$ (zuzüglich Steuer) nicht mehr als 22.000 € betragen hat und auf die Anwendung des § 19 Absatz 1 UStG nicht verzichtet worden ist.
    */
    // @ApiMember(Description="B. Angaben zur Besteuerung der Kleinunternehmer (§ 19 Absatz 1 UStG). Die Zeilen 33 und 34 sind nur auszufüllen, wenn der Umsatz $VZ-1$ (zuzüglich Steuer) nicht mehr als 22.000 € betragen hat und auf die Anwendung des § 19 Absatz 1 UStG nicht verzichtet worden ist.", Name="Kleinuntern")
    public var kleinuntern:Kleinuntern2023

    /**
    * C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
    */
    // @ApiMember(Description="C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="Umsaetze")
    public var umsaetze:Umsaetze2023

    /**
    * D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
    */
    // @ApiMember(Description="D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="UmsStfrei")
    public var umsStfrei:UmsStfrei2023

    /**
    * E. Innergemeinschaftliche Erwerbe.
    */
    // @ApiMember(Description="E. Innergemeinschaftliche Erwerbe.", Name="IgErw")
    public var igErw:IgErw2023

    /**
    * F. Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG).
    */
    // @ApiMember(Description="F. Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG).", Name="Auslag13a")
    public var auslag13a:Auslag13a2023

    /**
    * G. Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG).
    */
    // @ApiMember(Description="G. Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG).", Name="IgDrei")
    public var igDrei:IgDrei2023

    /**
    * H. Leistungsempfänger als Steuerschuldner (§ 13b UStG).
    */
    // @ApiMember(Description="H. Leistungsempfänger als Steuerschuldner (§ 13b UStG).", Name="Ums13b")
    public var ums13b:Ums13b2023

    /**
    * I. Ergänzende Angaben zu Umsätzen.
    */
    // @ApiMember(Description="I. Ergänzende Angaben zu Umsätzen.", Name="ErgAngUms")
    public var ergAngUms:ErgAngUms2023

    /**
    * J. Abziehbare Vorsteuerbeträge
    */
    // @ApiMember(Description="J. Abziehbare Vorsteuerbeträge", Name="AbzVoSt")
    public var abzVoSt:AbzVoSt2023

    /**
    * K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)
    */
    // @ApiMember(Description="K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)", Name="BerVoSt15a")
    public var berVoSt15a:BerVoSt15a2023

    /**
    * L. Berechnung der zu entrichtenden Umsatzsteuer
    */
    // @ApiMember(Description="L. Berechnung der zu entrichtenden Umsatzsteuer", Name="BerechUSt")
    public var berechUSt:BerechUSt2023

    /**
    * Anlage UN zur Umsatzsteuererklärung für im Ausland ansässige Unternehmer
    */
    // @ApiMember(Description="Anlage UN zur Umsatzsteuererklärung für im Ausland ansässige Unternehmer", Name="Un")
    public var un:UN2023

    /**
    * Anlage FV zur Umsatzsteuererklärung $VZ$
    */
    // @ApiMember(Description="Anlage FV zur Umsatzsteuererklärung $VZ$", Name="Fv")
    public var fv:FV2023

    /**
    * Der Vorgang bei einer Veranlagung.
    */
    // @ApiMember(Description="Der Vorgang bei einer Veranlagung.")
    public var vorgang:VeranlagungVorgangTyp

    /**
    * Die Steuernummer. Bundeseinheitliche 13-stellige Steuernummer im ELSTER-Steuernummernformat
    */
    // @ApiMember(Description="Die Steuernummer. Bundeseinheitliche 13-stellige Steuernummer im ELSTER-Steuernummernformat")
    public var stNr:StringTyp

    /**
    * Ordnungsbegriff
    */
    // @ApiMember(Description="Ordnungsbegriff")
    public var ordnungsbegriff:StringTyp

    /**
    * Identifikationsnummer steuerpflichtige Person / Ehemann / Person A
    */
    // @ApiMember(Description="Identifikationsnummer steuerpflichtige Person / Ehemann / Person A")
    public var id:StringTyp

    /**
    * Identifikationsnummer Ehefrau / Person B
    */
    // @ApiMember(Description="Identifikationsnummer Ehefrau / Person B")
    public var idEhefrau:StringTyp

    /**
    * Name, alphanumerisch, max. 45-stellig.
    */
    // @ApiMember(Description="Name, alphanumerisch, max. 45-stellig.")
    public var absName:StringTyp

    /**
    * Straße und Hausnummer, alphanumerisch, max. 30-stellig.
    */
    // @ApiMember(Description="Straße und Hausnummer, alphanumerisch, max. 30-stellig.")
    public var absStr:StringTyp

    /**
    * Postleitzahl des Absenders der Erklärung, numerisch, 5-stellig.
    */
    // @ApiMember(Description="Postleitzahl des Absenders der Erklärung, numerisch, 5-stellig.")
    public var absPlz:StringTyp

    /**
    * Ort, alphanumerisch, max. 29-stellig.
    */
    // @ApiMember(Description="Ort, alphanumerisch, max. 29-stellig.")
    public var absOrt:StringTyp

    /**
    * Copyrightmeldung des SW-Herstellers, alphanumerisch, max.50-stellig
    */
    // @ApiMember(Description="Copyrightmeldung des SW-Herstellers, alphanumerisch, max.50-stellig")
    public var copyright:StringTyp

    /**
    * TeleNummer (für finanzamtsinterne Zwecke; keine Eingabe durch Anwender)
    */
    // @ApiMember(Description="TeleNummer (für finanzamtsinterne Zwecke; keine Eingabe durch Anwender)")
    public var teleNummer:StringTyp

    /**
    * Die Art des ermittelten Ordnungsbegriffs zu füllen.
    */
    // @ApiMember(Description="Die Art des ermittelten Ordnungsbegriffs zu füllen.")
    public var ordNrArt:OrdNrArtTyp

    /**
    * Die zur Abholung notwendigen Informationen werden hier angegeben.
    */
    // @ApiMember(Description="Die zur Abholung notwendigen Informationen werden hier angegeben.")
    public var rueckuebermittlung:E50Rueckuebermittlung

    /**
    * The four-digit federal tax office number of the receiving tax office.
    */
    // @ApiMember(Description="The four-digit federal tax office number of the receiving tax office.", IsRequired=true, Name="Bundesfinanzamtsnummer")
    public var bundesfinanzamtsnummer:String

    /**
    * The details of the provider that submits the tax data.
    */
    // @ApiMember(Description="The details of the provider that submits the tax data.", IsRequired=true, Name="DatenLieferant")
    public var datenLieferant:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case berErkl
        case allg
        case mitwirk
        case kleinuntern
        case umsaetze
        case umsStfrei
        case igErw
        case auslag13a
        case igDrei
        case ums13b
        case ergAngUms
        case abzVoSt
        case berVoSt15a
        case berechUSt
        case un
        case fv
        case vorgang
        case stNr
        case ordnungsbegriff
        case id
        case idEhefrau
        case absName
        case absStr
        case absPlz
        case absOrt
        case copyright
        case teleNummer
        case ordNrArt
        case rueckuebermittlung
        case bundesfinanzamtsnummer
        case datenLieferant
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        berErkl = try container.decodeIfPresent(BerErkl2023.self, forKey: .berErkl)
        allg = try container.decodeIfPresent(Allg2023.self, forKey: .allg)
        mitwirk = try container.decodeIfPresent(Mitwirk2023.self, forKey: .mitwirk)
        kleinuntern = try container.decodeIfPresent(Kleinuntern2023.self, forKey: .kleinuntern)
        umsaetze = try container.decodeIfPresent(Umsaetze2023.self, forKey: .umsaetze)
        umsStfrei = try container.decodeIfPresent(UmsStfrei2023.self, forKey: .umsStfrei)
        igErw = try container.decodeIfPresent(IgErw2023.self, forKey: .igErw)
        auslag13a = try container.decodeIfPresent(Auslag13a2023.self, forKey: .auslag13a)
        igDrei = try container.decodeIfPresent(IgDrei2023.self, forKey: .igDrei)
        ums13b = try container.decodeIfPresent(Ums13b2023.self, forKey: .ums13b)
        ergAngUms = try container.decodeIfPresent(ErgAngUms2023.self, forKey: .ergAngUms)
        abzVoSt = try container.decodeIfPresent(AbzVoSt2023.self, forKey: .abzVoSt)
        berVoSt15a = try container.decodeIfPresent(BerVoSt15a2023.self, forKey: .berVoSt15a)
        berechUSt = try container.decodeIfPresent(BerechUSt2023.self, forKey: .berechUSt)
        un = try container.decodeIfPresent(UN2023.self, forKey: .un)
        fv = try container.decodeIfPresent(FV2023.self, forKey: .fv)
        vorgang = try container.decodeIfPresent(VeranlagungVorgangTyp.self, forKey: .vorgang)
        stNr = try container.decodeIfPresent(StringTyp.self, forKey: .stNr)
        ordnungsbegriff = try container.decodeIfPresent(StringTyp.self, forKey: .ordnungsbegriff)
        id = try container.decodeIfPresent(StringTyp.self, forKey: .id)
        idEhefrau = try container.decodeIfPresent(StringTyp.self, forKey: .idEhefrau)
        absName = try container.decodeIfPresent(StringTyp.self, forKey: .absName)
        absStr = try container.decodeIfPresent(StringTyp.self, forKey: .absStr)
        absPlz = try container.decodeIfPresent(StringTyp.self, forKey: .absPlz)
        absOrt = try container.decodeIfPresent(StringTyp.self, forKey: .absOrt)
        copyright = try container.decodeIfPresent(StringTyp.self, forKey: .copyright)
        teleNummer = try container.decodeIfPresent(StringTyp.self, forKey: .teleNummer)
        ordNrArt = try container.decodeIfPresent(OrdNrArtTyp.self, forKey: .ordNrArt)
        rueckuebermittlung = try container.decodeIfPresent(E50Rueckuebermittlung.self, forKey: .rueckuebermittlung)
        bundesfinanzamtsnummer = try container.decodeIfPresent(String.self, forKey: .bundesfinanzamtsnummer)
        datenLieferant = try container.decodeIfPresent(String.self, forKey: .datenLieferant)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if berErkl != nil { try container.encode(berErkl, forKey: .berErkl) }
        if allg != nil { try container.encode(allg, forKey: .allg) }
        if mitwirk != nil { try container.encode(mitwirk, forKey: .mitwirk) }
        if kleinuntern != nil { try container.encode(kleinuntern, forKey: .kleinuntern) }
        if umsaetze != nil { try container.encode(umsaetze, forKey: .umsaetze) }
        if umsStfrei != nil { try container.encode(umsStfrei, forKey: .umsStfrei) }
        if igErw != nil { try container.encode(igErw, forKey: .igErw) }
        if auslag13a != nil { try container.encode(auslag13a, forKey: .auslag13a) }
        if igDrei != nil { try container.encode(igDrei, forKey: .igDrei) }
        if ums13b != nil { try container.encode(ums13b, forKey: .ums13b) }
        if ergAngUms != nil { try container.encode(ergAngUms, forKey: .ergAngUms) }
        if abzVoSt != nil { try container.encode(abzVoSt, forKey: .abzVoSt) }
        if berVoSt15a != nil { try container.encode(berVoSt15a, forKey: .berVoSt15a) }
        if berechUSt != nil { try container.encode(berechUSt, forKey: .berechUSt) }
        if un != nil { try container.encode(un, forKey: .un) }
        if fv != nil { try container.encode(fv, forKey: .fv) }
        if vorgang != nil { try container.encode(vorgang, forKey: .vorgang) }
        if stNr != nil { try container.encode(stNr, forKey: .stNr) }
        if ordnungsbegriff != nil { try container.encode(ordnungsbegriff, forKey: .ordnungsbegriff) }
        if id != nil { try container.encode(id, forKey: .id) }
        if idEhefrau != nil { try container.encode(idEhefrau, forKey: .idEhefrau) }
        if absName != nil { try container.encode(absName, forKey: .absName) }
        if absStr != nil { try container.encode(absStr, forKey: .absStr) }
        if absPlz != nil { try container.encode(absPlz, forKey: .absPlz) }
        if absOrt != nil { try container.encode(absOrt, forKey: .absOrt) }
        if copyright != nil { try container.encode(copyright, forKey: .copyright) }
        if teleNummer != nil { try container.encode(teleNummer, forKey: .teleNummer) }
        if ordNrArt != nil { try container.encode(ordNrArt, forKey: .ordNrArt) }
        if rueckuebermittlung != nil { try container.encode(rueckuebermittlung, forKey: .rueckuebermittlung) }
        if bundesfinanzamtsnummer != nil { try container.encode(bundesfinanzamtsnummer, forKey: .bundesfinanzamtsnummer) }
        if datenLieferant != nil { try container.encode(datenLieferant, forKey: .datenLieferant) }
    }
}

/**
* Create XML content that represents an annual VAT return (Umsatzsteuerjahresserklärung) for 2023.
*/
// @Api(Description="Create XML content that represents an annual VAT return (Umsatzsteuerjahresserklärung) for 2023.")
public class CreateUmsatzsteuererklaerung2023XmlBase : IPost, Codable
{
    /**
    * Berichtigte Erklärung
    */
    // @ApiMember(Description="Berichtigte Erklärung", Name="BerErkl")
    public var berErkl:BerErkl2023

    /**
    * A. Allgemeine Angaben.
    */
    // @ApiMember(Description="A. Allgemeine Angaben.", Name="Allg")
    public var allg:Allg2023

    /**
    * Angaben zu den Mitwirkenden, die bei der Anfertigung dieser Steuererklärung einschließlich der Anlagen mitgewirkt haben.
    */
    // @ApiMember(Description="Angaben zu den Mitwirkenden, die bei der Anfertigung dieser Steuererklärung einschließlich der Anlagen mitgewirkt haben.", Name="Mitwirk")
    public var mitwirk:Mitwirk2023

    /**
    * B. Angaben zur Besteuerung der Kleinunternehmer (§ 19 Absatz 1 UStG). Die Zeilen 33 und 34 sind nur auszufüllen, wenn der Umsatz $VZ-1$ (zuzüglich Steuer) nicht mehr als 22.000 € betragen hat und auf die Anwendung des § 19 Absatz 1 UStG nicht verzichtet worden ist.
    */
    // @ApiMember(Description="B. Angaben zur Besteuerung der Kleinunternehmer (§ 19 Absatz 1 UStG). Die Zeilen 33 und 34 sind nur auszufüllen, wenn der Umsatz $VZ-1$ (zuzüglich Steuer) nicht mehr als 22.000 € betragen hat und auf die Anwendung des § 19 Absatz 1 UStG nicht verzichtet worden ist.", Name="Kleinuntern")
    public var kleinuntern:Kleinuntern2023

    /**
    * C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
    */
    // @ApiMember(Description="C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="Umsaetze")
    public var umsaetze:Umsaetze2023

    /**
    * D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
    */
    // @ApiMember(Description="D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="UmsStfrei")
    public var umsStfrei:UmsStfrei2023

    /**
    * E. Innergemeinschaftliche Erwerbe.
    */
    // @ApiMember(Description="E. Innergemeinschaftliche Erwerbe.", Name="IgErw")
    public var igErw:IgErw2023

    /**
    * F. Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG).
    */
    // @ApiMember(Description="F. Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG).", Name="Auslag13a")
    public var auslag13a:Auslag13a2023

    /**
    * G. Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG).
    */
    // @ApiMember(Description="G. Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG).", Name="IgDrei")
    public var igDrei:IgDrei2023

    /**
    * H. Leistungsempfänger als Steuerschuldner (§ 13b UStG).
    */
    // @ApiMember(Description="H. Leistungsempfänger als Steuerschuldner (§ 13b UStG).", Name="Ums13b")
    public var ums13b:Ums13b2023

    /**
    * I. Ergänzende Angaben zu Umsätzen.
    */
    // @ApiMember(Description="I. Ergänzende Angaben zu Umsätzen.", Name="ErgAngUms")
    public var ergAngUms:ErgAngUms2023

    /**
    * J. Abziehbare Vorsteuerbeträge
    */
    // @ApiMember(Description="J. Abziehbare Vorsteuerbeträge", Name="AbzVoSt")
    public var abzVoSt:AbzVoSt2023

    /**
    * K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)
    */
    // @ApiMember(Description="K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)", Name="BerVoSt15a")
    public var berVoSt15a:BerVoSt15a2023

    /**
    * L. Berechnung der zu entrichtenden Umsatzsteuer
    */
    // @ApiMember(Description="L. Berechnung der zu entrichtenden Umsatzsteuer", Name="BerechUSt")
    public var berechUSt:BerechUSt2023

    /**
    * Anlage UN zur Umsatzsteuererklärung für im Ausland ansässige Unternehmer
    */
    // @ApiMember(Description="Anlage UN zur Umsatzsteuererklärung für im Ausland ansässige Unternehmer", Name="Un")
    public var un:UN2023

    /**
    * Anlage FV zur Umsatzsteuererklärung $VZ$
    */
    // @ApiMember(Description="Anlage FV zur Umsatzsteuererklärung $VZ$", Name="Fv")
    public var fv:FV2023

    /**
    * Der Vorgang bei einer Veranlagung.
    */
    // @ApiMember(Description="Der Vorgang bei einer Veranlagung.")
    public var vorgang:VeranlagungVorgangTyp

    /**
    * Die Steuernummer. Bundeseinheitliche 13-stellige Steuernummer im ELSTER-Steuernummernformat
    */
    // @ApiMember(Description="Die Steuernummer. Bundeseinheitliche 13-stellige Steuernummer im ELSTER-Steuernummernformat")
    public var stNr:StringTyp

    /**
    * Ordnungsbegriff
    */
    // @ApiMember(Description="Ordnungsbegriff")
    public var ordnungsbegriff:StringTyp

    /**
    * Identifikationsnummer steuerpflichtige Person / Ehemann / Person A
    */
    // @ApiMember(Description="Identifikationsnummer steuerpflichtige Person / Ehemann / Person A")
    public var id:StringTyp

    /**
    * Identifikationsnummer Ehefrau / Person B
    */
    // @ApiMember(Description="Identifikationsnummer Ehefrau / Person B")
    public var idEhefrau:StringTyp

    /**
    * Name, alphanumerisch, max. 45-stellig.
    */
    // @ApiMember(Description="Name, alphanumerisch, max. 45-stellig.")
    public var absName:StringTyp

    /**
    * Straße und Hausnummer, alphanumerisch, max. 30-stellig.
    */
    // @ApiMember(Description="Straße und Hausnummer, alphanumerisch, max. 30-stellig.")
    public var absStr:StringTyp

    /**
    * Postleitzahl des Absenders der Erklärung, numerisch, 5-stellig.
    */
    // @ApiMember(Description="Postleitzahl des Absenders der Erklärung, numerisch, 5-stellig.")
    public var absPlz:StringTyp

    /**
    * Ort, alphanumerisch, max. 29-stellig.
    */
    // @ApiMember(Description="Ort, alphanumerisch, max. 29-stellig.")
    public var absOrt:StringTyp

    /**
    * Copyrightmeldung des SW-Herstellers, alphanumerisch, max.50-stellig
    */
    // @ApiMember(Description="Copyrightmeldung des SW-Herstellers, alphanumerisch, max.50-stellig")
    public var copyright:StringTyp

    /**
    * TeleNummer (für finanzamtsinterne Zwecke; keine Eingabe durch Anwender)
    */
    // @ApiMember(Description="TeleNummer (für finanzamtsinterne Zwecke; keine Eingabe durch Anwender)")
    public var teleNummer:StringTyp

    /**
    * Die Art des ermittelten Ordnungsbegriffs zu füllen.
    */
    // @ApiMember(Description="Die Art des ermittelten Ordnungsbegriffs zu füllen.")
    public var ordNrArt:OrdNrArtTyp

    /**
    * Die zur Abholung notwendigen Informationen werden hier angegeben.
    */
    // @ApiMember(Description="Die zur Abholung notwendigen Informationen werden hier angegeben.")
    public var rueckuebermittlung:E50Rueckuebermittlung

    /**
    * The four-digit federal tax office number of the receiving tax office.
    */
    // @ApiMember(Description="The four-digit federal tax office number of the receiving tax office.", IsRequired=true, Name="Bundesfinanzamtsnummer")
    public var bundesfinanzamtsnummer:String

    /**
    * The details of the provider that submits the tax data.
    */
    // @ApiMember(Description="The details of the provider that submits the tax data.", IsRequired=true, Name="DatenLieferant")
    public var datenLieferant:String

    required public init(){}
}

/**
* Berichtigte Erklärung
*/
// @Api(Description="Berichtigte Erklärung")
public class BerErkl2023 : Codable
{
    /**
    * Berichtigte Steuererklärung
    */
    // @ApiMember(Description="Berichtigte Steuererklärung", Name="E3000601")
    public var e3000601:Bool1Typ

    required public init(){}
}

/**
* Boolescher Datentyp, welcher als '1' (Ja) oder '' (Nein) im Jahressteuererklärung angeschrieben wird.
*/
// @Api(Description="Boolescher Datentyp, welcher als '1' (Ja) oder '' (Nein) im Jahressteuererklärung angeschrieben wird.")
public class Bool1Typ : CustomTypBase
{
    /**
    * Wenn der Wert true ist, '1' wird im Jahressteuererklärung angeschrieben; ansonsten ein Leerstring.
    */
    // @ApiMember(Description="Wenn der Wert true ist, '1' wird im Jahressteuererklärung angeschrieben; ansonsten ein Leerstring.", IsRequired=true, Name="Wert")
    public var wert:Bool

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Bool.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Basisklasse für einen benutzerdefinierten Datentyp
*/
// @Api(Description="Basisklasse für einen benutzerdefinierten Datentyp")
public class CustomTypBase : ICustomTyp, Codable
{
    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){}
}

/**
* Allgemeine Angaben
*/
// @Api(Description="Allgemeine Angaben")
public class Allg2023 : Codable
{
    /**
    * Angaben zum Unternehmen
    */
    // @ApiMember(Description="Angaben zum Unternehmen", IsRequired=true, Name="Unternehmen")
    // @Validate(Validator="NotNull")
    public var unternehmen:Unternehmen2023

    /**
    * Im Ausland ansässiger Unternehmer?
    */
    // @ApiMember(Description="Im Ausland ansässiger Unternehmer?", Name="ImAuslAnsUnt")
    public var imAuslAnsUnt:ImAuslAnsUnt2023

    /**
    * Fiskalvertreter?
    */
    // @ApiMember(Description="Fiskalvertreter?", Name="Fiskalvetr")
    public var fiskalvetr:Fiskalvertr2023

    /**
    * Dauer der Unternehmereigenschaft (falls nicht vom 1. Januar bis zum 31. Dezember 2023)
    */
    // @ApiMember(Description="Dauer der Unternehmereigenschaft (falls nicht vom 1. Januar bis zum 31. Dezember 2023)", Name="DauerUntEig")
    public var dauerUntEig:DauerUntEig2023

    /**
    * Besteuerungen der Entgelte
    */
    // @ApiMember(Description="Besteuerungen der Entgelte", Name="BestArt")
    public var bestArt:BestArt2023

    /**
    * Verrechnungen / Abtretungen
    */
    // @ApiMember(Description="Verrechnungen / Abtretungen", Name="Verrech")
    public var verrech:Verrech2023

    /**
    * Ergänzende Angaben zur Steuererklärung
    */
    // @ApiMember(Description="Ergänzende Angaben zur Steuererklärung", Name="ErgAngErkl")
    public var ergAngErkl:ErgAngErkl2023

    required public init(){}
}

/**
* Angaben zum Unternehmen
*/
// @Api(Description="Angaben zum Unternehmen")
public class Unternehmen2023 : Codable
{
    /**
    * Name des Unternehmers
    */
    // @ApiMember(Description="Name des Unternehmers", IsRequired=true, Name="E3000901")
    public var e3000901:StringTyp

    /**
    * ggf. abweichender Firmenname
    */
    // @ApiMember(Description="ggf. abweichender Firmenname", Name="E3000902")
    public var e3000902:StringTyp

    /**
    * Art des Unternehmens
    */
    // @ApiMember(Description="Art des Unternehmens", Name="E3001001")
    public var e3001001:StringTyp

    /**
    * Adresse oder Postfach
    */
    // @ApiMember(Description="Adresse oder Postfach", Name="Adr")
    public var adr:UnternehmenAdr2023

    /**
    * Kontakt
    */
    // @ApiMember(Description="Kontakt", Name="Kontakt")
    public var kontakt:UnternehmenKontakt2023

    required public init(){}
}

/**
* Zeichenkettenfeld.
*/
// @Api(Description="Zeichenkettenfeld.")
public class StringTyp : CustomTypBase
{
    /**
    * Der Wert des Datentyps.  1 bis 999 Zeichen, alphanumerisch
    */
    // @ApiMember(Description="Der Wert des Datentyps. \n 1 bis 999 Zeichen, alphanumerisch", IsRequired=true, Name="Wert")
    public var wert:String

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(String.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Adresse oder Postfach eines Unternehmens
*/
// @Api(Description="Adresse oder Postfach eines Unternehmens")
public class UnternehmenAdr2023 : Codable
{
    /**
    * Straße
    */
    // @ApiMember(Description="Straße", IsRequired=true, Name="E3001101")
    // @Validate(Validator="NotNull")
    public var e3001101:StringTyp

    /**
    * Hausnummer
    */
    // @ApiMember(Description="Hausnummer", IsRequired=true, Name="E3001203")
    // @Validate(Validator="NotNull")
    public var e3001203:StringTyp

    /**
    * Hausnummerzusatz
    */
    // @ApiMember(Description="Hausnummerzusatz", Name="E3001204")
    public var e3001204:StringTyp

    /**
    * Adressergänzung
    */
    // @ApiMember(Description="Adressergänzung", Name="E3001205")
    public var e3001205:StringTyp

    /**
    * Postleitzahl
    */
    // @ApiMember(Description="Postleitzahl", Name="E3001206")
    public var e3001206:StringTyp

    /**
    * Ort
    */
    // @ApiMember(Description="Ort", Name="E3001207")
    public var e3001207:StringTyp

    /**
    * Postleitzahl zu Postfach
    */
    // @ApiMember(Description="Postleitzahl zu Postfach", Name="E3001403")
    public var e3001403:StringTyp

    /**
    * Postfach
    */
    // @ApiMember(Description="Postfach", Name="E3001404")
    public var e3001404:StringTyp

    required public init(){}
}

/**
* Kontakt eines Unternehmens
*/
// @Api(Description="Kontakt eines Unternehmens")
public class UnternehmenKontakt2023 : Codable
{
    /**
    * Telefon
    */
    // @ApiMember(Description="Telefon", Name="E3001202")
    public var e3001202:StringTyp

    /**
    * E-Mail Adresse
    */
    // @ApiMember(Description="E-Mail Adresse", Name="E3001301")
    public var e3001301:StringTyp

    required public init(){}
}

/**
* Im Ausland ansässiger Unternehmer
*/
// @Api(Description="Im Ausland ansässiger Unternehmer")
public class ImAuslAnsUnt2023 : Codable
{
    /**
    * Im Ausland ansässiger Unternehmer. Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage UN.
    */
    // @ApiMember(Description="Im Ausland ansässiger Unternehmer. Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage UN.", Name="E3001402")
    public var e3001402:Bool1Typ

    required public init(){}
}

/**
* Fiskalvertreter
*/
// @Api(Description="Fiskalvertreter")
public class Fiskalvertr2023 : Codable
{
    /**
    * Fiskalvertreter. Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage FV.
    */
    // @ApiMember(Description="Fiskalvertreter. Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage FV.", Name="E3001801")
    public var e3001801:Bool1Typ

    required public init(){}
}

/**
* Dauer der Unternehmereigenschaft
*/
// @Api(Description="Dauer der Unternehmereigenschaft")
public class DauerUntEig2023 : Codable
{
    /**
    * 1. Zeitraum
    */
    // @ApiMember(Description="1. Zeitraum", Name="E3001401")
    public var e3001401:ZeitraumTyp

    /**
    * 2. Zeitraum
    */
    // @ApiMember(Description="2. Zeitraum", Name="E3001501")
    public var e3001501:ZeitraumTyp

    required public init(){}
}

/**
* Datum-Uhrzeit-Typ. Format: TT.MM - TT. MM
*/
// @Api(Description="Datum-Uhrzeit-Typ. Format: TT.MM - TT. MM")
public class ZeitraumTyp : CustomTypBase
{
    /**
    * Wert des Datentyps.
    */
    // @ApiMember(Description="Wert des Datentyps.", IsRequired=true, Name="Wert")
    public var wert:ErklaerungZeitraum

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(ErklaerungZeitraum.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Stellt ein Datumbereich dar (TT.MM-TT.MM) dar
*/
// @Api(Description="Stellt ein Datumbereich dar (TT.MM-TT.MM) dar")
public class ErklaerungZeitraum : Codable
{
    /**
    * Der Anfang des Datumbreiches.
    */
    // @ApiMember(Description="Der Anfang des Datumbreiches.", Name="Start")
    public var start:Date

    /**
    * Das Ende des Datumbereiches.
    */
    // @ApiMember(Description="Das Ende des Datumbereiches.", Name="Ende")
    public var ende:Date

    required public init(){}
}

/**
* Besteuerung der Entgelte
*/
// @Api(Description="Besteuerung der Entgelte")
public class BestArt2023 : Codable
{
    /**
    * Die Steuer wurde berechnet nach
    */
    // @ApiMember(Description="Die Steuer wurde berechnet nach", IsRequired=true, Name="E3002203")
    public var e3002203:EntgeltartTyp

    required public init(){}
}

/**
* Datentyp, welches die Art der Entgeltart darstellt.
*/
// @Api(Description="Datentyp, welches die Art der Entgeltart darstellt.")
public class EntgeltartTyp : CustomTypBase
{
    /**
    * Wert des Datentyps.
    */
    // @ApiMember(Description="Wert des Datentyps.", IsRequired=true, Name="Wert")
    public var wert:Entgeltart

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Entgeltart.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Art der Entgelte
*/
// @Flags()
public enum Entgeltart : Int, Codable
{
    case VereinbarteEntgelte = 1
    case VereinnahmteEntgelte = 16
}

/**
* Verrechnung / Abtretung
*/
// @Api(Description="Verrechnung / Abtretung")
public class Verrech2023 : Codable
{
    /**
    * Verrechnung des Erstattungsbetrages erwünscht / Erstattungsbetrag ist abgetreten (Teilen Sie bitte die Verrechnungswünsche dem Finanzamt gesondert mit).
    */
    // @ApiMember(Description="Verrechnung des Erstattungsbetrages erwünscht / Erstattungsbetrag ist abgetreten (Teilen Sie bitte die Verrechnungswünsche dem Finanzamt gesondert mit).", Name="E3001701")
    public var e3001701:Bool1Typ

    required public init(){}
}

/**
* Ergänzende Angaben zur Steuererklärung
*/
// @Api(Description="Ergänzende Angaben zur Steuererklärung")
public class ErgAngErkl2023 : Codable
{
    /**
    * Über die Angaben in der Steuererklärung hinaus sind weitere oder abweichende Angaben oder Sachverhalte zu berücksichtigen?
    */
    // @ApiMember(Description="Über die Angaben in der Steuererklärung hinaus sind weitere oder abweichende Angaben oder Sachverhalte zu berücksichtigen?", Name="E3002201")
    public var e3002201:Bool1Typ

    /**
    * Ergänzende Angaben zur Steuererklärung
    */
    // @ApiMember(Description="Ergänzende Angaben zur Steuererklärung", Name="E3002202")
    public var e3002202:StringTyp

    required public init(){}
}

/**
* Angaben zum Mitwirkender, der bei der Anfertigung dieser Steuererklärung einschließlich der Anlagen mitgewirkt hat.
*/
// @Api(Description="Angaben zum Mitwirkender, der bei der Anfertigung dieser Steuererklärung einschließlich der Anlagen mitgewirkt hat.")
public class Mitwirk2023 : Codable
{
    /**
    * Angaben zu den Kanzleien
    */
    // @ApiMember(Description="Angaben zu den Kanzleien", Name="Kanzlei")
    public var kanzlei:Kanzlei2023

    /**
    * Angaben zu den Bearbeiter
    */
    // @ApiMember(Description="Angaben zu den Bearbeiter", Name="Bearb")
    public var bearb:Bearb2023

    /**
    * Adressen der Mitwirkende
    */
    // @ApiMember(Description="Adressen der Mitwirkende", Name="Adr")
    public var adr:MitwirkAdr2023

    /**
    * Kontakte der Mitwirkende
    */
    // @ApiMember(Description="Kontakte der Mitwirkende", Name="Kontakt")
    public var kontakt:MitwirkKontakt2023

    /**
    * Mitwirkungen bei der Steuererklärung
    */
    // @ApiMember(Description="Mitwirkungen bei der Steuererklärung", Name="MitwirkErkl")
    public var mitwirkErkl:MitwirkErkl2023

    required public init(){}
}

public class Kanzlei2023 : Codable
{
    /**
    * Bearbeiterkennzeichen
    */
    // @ApiMember(Description="Bearbeiterkennzeichen", Name="E3002509")
    public var e3002509:StringTyp

    /**
    * Mandantennummer
    */
    // @ApiMember(Description="Mandantennummer", Name="E3002506")
    public var e3002506:StringTyp

    /**
    * (Feld? wird nicht gedruckt) Ihr Zeichen/gegebenenfalls Zuordnungskriterium für Bescheiddatenübermittlung
    */
    // @ApiMember(Description="(Feld? wird nicht gedruckt) Ihr Zeichen/gegebenenfalls Zuordnungskriterium für Bescheiddatenübermittlung", Name="E3002507")
    public var e3002507:StringTyp

    required public init(){}
}

public class Bearb2023 : Codable
{
    /**
    * Name
    */
    // @ApiMember(Description="Name", Name="E3002501")
    public var e3002501:StringTyp

    /**
    * Vorname
    */
    // @ApiMember(Description="Vorname", Name="E3002502")
    public var e3002502:StringTyp

    required public init(){}
}

public class MitwirkAdr2023 : Codable
{
    /**
    * Straße, Hausnummer
    */
    // @ApiMember(Description="Straße, Hausnummer", Name="E3002503")
    public var e3002503:StringTyp

    /**
    * Postleitzahl, Wohnort
    */
    // @ApiMember(Description="Postleitzahl, Wohnort", Name="E3002504")
    public var e3002504:StringTyp

    required public init(){}
}

public class MitwirkKontakt2023 : Codable
{
    /**
    * Telefon
    */
    // @ApiMember(Description="Telefon", Name="E3002505")
    public var e3002505:StringTyp

    /**
    * zusätzliche Angaben
    */
    // @ApiMember(Description="zusätzliche Angaben", Name="E3002508")
    public var e3002508:StringTyp

    required public init(){}
}

public class MitwirkErkl2023 : Codable
{
    /**
    * Die Steuererklärung wurde unter Mitwirkung eines Angehörigen der steuerberatenden Berufe im Sinne der §§ 3 und 4 des Steuerberatungsgesetzes erstellt
    */
    // @ApiMember(Description="Die Steuererklärung wurde unter Mitwirkung eines Angehörigen der steuerberatenden Berufe im Sinne der §§ 3 und 4 des Steuerberatungsgesetzes erstellt", Name="E3002602")
    public var e3002602:Bool1Typ

    required public init(){}
}

/**
* Angaben der Besteuerung von Kleinunternehmer der Umsatzsteuererklärung.
*/
// @Api(Description="Angaben der Besteuerung von Kleinunternehmer der Umsatzsteuererklärung.")
public class Kleinuntern2023 : Codable
{
    /**
    * Betrag Tabelle
    */
    // @ApiMember(Description="Betrag Tabelle", Name="Tabelle")
    public var tabelle:KleineunternTabelle2023

    required public init(){}
}

/**
* Kleinenuntern Betrag Tabelle 2023
*/
// @Api(Description="Kleinenuntern Betrag Tabelle 2023")
public class KleineunternTabelle2023 : Codable
{
    /**
    * Umsatz im Kalenderjahr 2022 (Berechnung nach § 19 Absatz 1 und 3 UStG)
    */
    // @ApiMember(Description="Umsatz im Kalenderjahr 2022 (Berechnung nach § 19 Absatz 1 und 3 UStG)", Name="E3002301")
    public var e3002301:GeldBetragOhneCent5DETyp

    /**
    * Umsatz im Kalenderjahr 2023 (Berechnung nach § 19 Absatz 1 und 3 UStG)
    */
    // @ApiMember(Description="Umsatz im Kalenderjahr 2023 (Berechnung nach § 19 Absatz 1 und 3 UStG)", Name="E3002401")
    public var e3002401:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Geldbetrag ohne Cent mit 6 Stellen. Mindestens eine Ziffer und maximal 5 Ziffern. Minusvorzeichen erlaubt.
*/
// @Api(Description="Geldbetrag ohne Cent mit 6 Stellen. Mindestens eine Ziffer und maximal 5 Ziffern. Minusvorzeichen erlaubt.")
public class GeldBetragOhneCent5DETyp : CustomTypBase
{
    /**
    * Wert des Datentyps. Mindestens eine Ziffer und maximal 5 Ziffern. Minusvorzeichen erlaubt.
    */
    // @ApiMember(Description="Wert des Datentyps. Mindestens eine Ziffer und maximal 5 Ziffern. Minusvorzeichen erlaubt.", IsRequired=true)
    public var betrag:GeldBetragOhneCent5DE

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case betrag
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        betrag = try container.decodeIfPresent(GeldBetragOhneCent5DE.self, forKey: .betrag)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if betrag != nil { try container.encode(betrag, forKey: .betrag) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Represents an amount of money without cents whose value has a maximum length of 5 digits.That is, 1 to 5 digits. Minus sign allowed
*/
// @Api(Description="Represents an amount of money without cents whose value has a maximum length of 5 digits.That is, 1 to 5 digits. Minus sign allowed")
public class GeldBetragOhneCent5DE : GeldBetragOhneCent
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Int

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Int.self, forKey: .wert)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
    }
}

/**
* Specifies an amount of money without cents with limits and a specialized string representation
*/
// @Api(Description="Specifies an amount of money without cents with limits and a specialized string representation")
public class GeldBetragOhneCent : Codable
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Int

    required public init(){}
}

/**
* Geldbetrag ohne Cent mit 13 Stellen. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen erlaubt.
*/
// @Api(Description="Geldbetrag ohne Cent mit 13 Stellen. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen erlaubt.")
public class GeldBetragOhneCent12DETyp : CustomTypBase
{
    /**
    * Wert des Datentyps. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen erlaubt.
    */
    // @ApiMember(Description="Wert des Datentyps. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen erlaubt.", IsRequired=true)
    public var betrag:GeldBetragOhneCent12DE

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case betrag
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        betrag = try container.decodeIfPresent(GeldBetragOhneCent12DE.self, forKey: .betrag)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if betrag != nil { try container.encode(betrag, forKey: .betrag) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Represents an amount of money without cents whose value has a maximum length of 12 digits. That is, 1 to 12 digits. Minus sign allowed.
*/
// @Api(Description="Represents an amount of money without cents whose value has a maximum length of 12 digits. That is, 1 to 12 digits. Minus sign allowed.")
public class GeldBetragOhneCent12DE : GrossGeldBetragOhneCent
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Int

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Int.self, forKey: .wert)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
    }
}

/**
* Specifies an amount of money without cents with limits and a specialized string representation
*/
// @Api(Description="Specifies an amount of money without cents with limits and a specialized string representation")
public class GrossGeldBetragOhneCent : Codable
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Int

    required public init(){}
}

/**
* Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben
*/
// @Api(Description="Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben")
public class Umsaetze2023 : Codable
{
    /**
    * Umsätze Tabelle 2023 (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Umsätze Tabelle 2023 (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="Tabelle")
    public var tabelle:UmsaetzeTabelle2023

    required public init(){}
}

/**
* Umsaetze Tabelle 2023 (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
*/
// @Api(Description="Umsaetze Tabelle 2023 (Bemessungsgrundlage ohne Umsatzsteuer Steuer)")
public class UmsaetzeTabelle2023 : Codable
{
    /**
    * Umsätze zum allgemeinen Steuersatz
    */
    // @ApiMember(Description="Umsätze zum allgemeinen Steuersatz", Name="UmsAllg")
    public var umsAllg:UmsAllg2023

    /**
    * Umsätze zum ermäßigten Steuersatz
    */
    // @ApiMember(Description="Umsätze zum ermäßigten Steuersatz", Name="UmsErm")
    public var umsErm:UmsErm2023

    /**
    * Umsätze zum ermäßigten Steuersatz
    */
    // @ApiMember(Description="Umsätze zum ermäßigten Steuersatz", Name="UmsErm0")
    public var umsErm0:UmsErm02023

    /**
    * Umsätze zu anderen Steuersätzen
    */
    // @ApiMember(Description="Umsätze zu anderen Steuersätzen", Name="UmsAnd")
    public var umsAnd:UmsAnd2023

    /**
    * Umsätze land- und forstwirtschaftlicher Betriebe nach § 24 UStG
    */
    // @ApiMember(Description="Umsätze land- und forstwirtschaftlicher Betriebe nach § 24 UStG", Name="UmsLuf")
    public var umsLuf:UmsLuf2023

    /**
    * Steuer infolge Wechsels der Besteuerungsform
    */
    // @ApiMember(Description="Steuer infolge Wechsels der Besteuerungsform", Name="WechsBestForm")
    public var wechsBestForm:WechsBestForm2023

    /**
    * Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung
    */
    // @ApiMember(Description="Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung", Name="NachstStSatzAend")
    public var nachstStSatzAend:NachstStSatzAend2023

    /**
    * Summe
    */
    // @ApiMember(Description="Summe", Name="UmsSum")
    public var umsSum:UmsSum2023

    required public init(){}
}

/**
* Umsätze zum allgemeinen Steuersatz
*/
// @Api(Description="Umsätze zum allgemeinen Steuersatz")
public class UmsAllg2023 : Codable
{
    /**
    * Lieferungen und sonstige Leistungen zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen und sonstige Leistungen zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003303")
    public var e3003303:GeldBetragOhneCent12DETyp

    /**
    * Lieferungen und sonstige Leistungen zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen und sonstige Leistungen zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003304")
    public var e3003304:GeldBetragMitCent12DETyp

    /**
    * Umsätze zum Unentgeltliche Wertabgaben
    */
    // @ApiMember(Description="Umsätze zum Unentgeltliche Wertabgaben", Name="Unent_Wertabgaben")
    public var unent_Wertabgaben:UmsAllgUnentWertabgaben2023

    required public init(){}
}

/**
* Geldbetrag mit Cent mit 12 Vorkommastellen. Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen erlaubt. ',' als Dezimaltrennzeichen.
*/
// @Api(Description="Geldbetrag mit Cent mit 12 Vorkommastellen. Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen erlaubt. ',' als Dezimaltrennzeichen.")
public class GeldBetragMitCent12DETyp : CustomTypBase
{
    /**
    * Wert des Datentyps. Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen erlaubt.
    */
    // @ApiMember(Description="Wert des Datentyps. Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen erlaubt.", IsRequired=true, Name="Betrag")
    public var betrag:GeldBetragMitCent12DE

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case betrag
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        betrag = try container.decodeIfPresent(GeldBetragMitCent12DE.self, forKey: .betrag)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if betrag != nil { try container.encode(betrag, forKey: .betrag) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Represents an amount of money with cents whose value has a maximum length of 14 digits. That is, 1 to 12 digits before the decimal separator and 2 digits after the decimal separator. Minus sign allowed.
*/
// @Api(Description="Represents an amount of money with cents whose value has a maximum length of 14 digits. That is, 1 to 12 digits before the decimal separator and 2 digits after the decimal separator. Minus sign allowed.")
public class GeldBetragMitCent12DE : GeldBetragMitCent
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Double.self, forKey: .wert)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
    }
}

/**
* Specifies an amount of money with cents with limits and a specialized string representation
*/
// @Api(Description="Specifies an amount of money with cents with limits and a specialized string representation")
public class GeldBetragMitCent : Codable
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Double

    required public init(){}
}

/**
* Umsätze zum Unentgeltliche Wertabgaben
*/
// @Api(Description="Umsätze zum Unentgeltliche Wertabgaben")
public class UmsAllgUnentWertabgaben2023 : Codable
{
    /**
    * Lieferungen nach § 3 Absatz 1b UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen nach § 3 Absatz 1b UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003405")
    public var e3003405:GeldBetragOhneCent12DETyp

    /**
    * Lieferungen nach § 3 Absatz 1b UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen nach § 3 Absatz 1b UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003406")
    public var e3003406:GeldBetragMitCent12DETyp

    /**
    * Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003505")
    public var e3003505:GeldBetragOhneCent12DETyp

    /**
    * Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003506")
    public var e3003506:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Umsätze zum ermäßigten Steuersatz
*/
// @Api(Description="Umsätze zum ermäßigten Steuersatz")
public class UmsErm2023 : Codable
{
    /**
    * Lieferungen und sonstige Leistungen zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen und sonstige Leistungen zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3004401")
    public var e3004401:GeldBetragOhneCent12DETyp

    /**
    * Lieferungen und sonstige Leistungen zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen und sonstige Leistungen zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3004402")
    public var e3004402:GeldBetragMitCent12DETyp

    /**
    * Umsätze zum ermäßigten Steuersatz Unentgeltliche Wertabgaben
    */
    // @ApiMember(Description="Umsätze zum ermäßigten Steuersatz Unentgeltliche Wertabgaben", Name="Unent_Wertabgaben")
    public var unent_Wertabgaben:UmsErmUnentWertabgaben2023

    required public init(){}
}

/**
* Umsätze zum ermäßigten Steuersatz Unentgeltliche Wertabgaben
*/
// @Api(Description="Umsätze zum ermäßigten Steuersatz Unentgeltliche Wertabgaben")
public class UmsErmUnentWertabgaben2023 : Codable
{
    /**
    * Lieferungen nach § 3 Absatz 1b UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen nach § 3 Absatz 1b UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003703")
    public var e3003703:GeldBetragOhneCent12DETyp

    /**
    * Lieferungen nach § 3 Absatz 1b UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen nach § 3 Absatz 1b UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003704")
    public var e3003704:GeldBetragMitCent12DETyp

    /**
    * Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003803")
    public var e3003803:GeldBetragOhneCent12DETyp

    /**
    * Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 % (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003804")
    public var e3003804:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Umsätze zum ermäßigten Steuersatz von 0 %
*/
// @Api(Description="Umsätze zum ermäßigten Steuersatz von 0 %")
public class UmsErm02023 : Codable
{
    /**
    * Lieferungen und sonstige Leistungen zu 0 % (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Lieferungen und sonstige Leistungen zu 0 % (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="E3002801")
    public var e3002801:PositiverGeldBetragOhneCent12DETyp

    /**
    * Umsätze zum ermäßigten Steuersatz von 0 % (Unentgeltliche Wertabgaben)
    */
    // @ApiMember(Description="Umsätze zum ermäßigten Steuersatz von 0 % (Unentgeltliche Wertabgaben)", Name="Unent_Wertabgaben")
    public var unent_Wertabgaben:UmsErm0UnentWertabgaben2023

    required public init(){}
}

/**
* Positiver Geldbetrag ohne Cent mit 13 Stellen. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen NICHT erlaubt.
*/
// @Api(Description="Positiver Geldbetrag ohne Cent mit 13 Stellen. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen NICHT erlaubt.")
public class PositiverGeldBetragOhneCent12DETyp : CustomTypBase
{
    /**
    * Wert des Datentyps. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen NICHT erlaubt.
    */
    // @ApiMember(Description="Wert des Datentyps. Mindestens eine Ziffer und maximal 12 Ziffern. Minusvorzeichen NICHT erlaubt.", IsRequired=true)
    public var betrag:PositiverGeldBetragOhneCent12DE

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case betrag
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        betrag = try container.decodeIfPresent(PositiverGeldBetragOhneCent12DE.self, forKey: .betrag)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if betrag != nil { try container.encode(betrag, forKey: .betrag) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Represents an unsigned amount of money without cents whose value has a maximum length of 12 digits. That is, 1 to 12 digits. Minus sign NOT allowed.
*/
// @Api(Description="Represents an unsigned amount of money without cents whose value has a maximum length of 12 digits. That is, 1 to 12 digits. Minus sign NOT allowed.")
public class PositiverGeldBetragOhneCent12DE : GrossGeldBetragOhneCent
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Int

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Int.self, forKey: .wert)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
    }
}

/**
* Umsätze zum ermäßigten Steuersatz von 0 % (Unentgeltliche Wertabgaben)
*/
// @Api(Description="Umsätze zum ermäßigten Steuersatz von 0 % (Unentgeltliche Wertabgaben)")
public class UmsErm0UnentWertabgaben2023 : Codable
{
    /**
    * Lieferungen nach § 3 Absatz 1b UStG zu 0 % (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Lieferungen nach § 3 Absatz 1b UStG zu 0 % (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="E3002901")
    public var e3002901:PositiverGeldBetragOhneCent12DETyp

    /**
    * Sonstige Leistungen nach § 3 Absatz 9a UStG zu 0 % (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Sonstige Leistungen nach § 3 Absatz 9a UStG zu 0 % (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="E3003001")
    public var e3003001:PositiverGeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
*/
// @Api(Description="Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer Steuer)")
public class UmsAnd2023 : Codable
{
    /**
    * Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="E3005001")
    public var e3005001:GeldBetragOhneCent12DETyp

    /**
    * Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="E3005002")
    public var e3005002:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Umsätze land- und forstwirtschaftlicher Betriebe nach § 24 UStG
*/
// @Api(Description="Umsätze land- und forstwirtschaftlicher Betriebe nach § 24 UStG")
public class UmsLuf2023 : Codable
{
    /**
    * Lieferungen in das übrige Gemeinschaftsgebiet an Abnehmer mit Umsatzsteuer-Identifikationsnummer
    */
    // @ApiMember(Description="Lieferungen in das übrige Gemeinschaftsgebiet an Abnehmer mit Umsatzsteuer-Identifikationsnummer", Name="E3005201")
    public var e3005201:GeldBetragOhneCent12DETyp

    /**
    * Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben), für die eine Steuer nach § 24 UStG zu entrichten ist (Sägewerkserzeugnisse, Getränke und alkoholische Flüssigkeiten, z. B. Wein)
    */
    // @ApiMember(Description="Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben), für die eine Steuer nach § 24 UStG zu entrichten ist (Sägewerkserzeugnisse, Getränke und alkoholische Flüssigkeiten, z. B. Wein)", Name="E3005005")
    public var e3005005:GeldBetragOhneCent12DETyp

    /**
    * Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben), für die eine Steuer nach § 24 UStG zu entrichten ist (Sägewerkserzeugnisse, Getränke und alkoholische Flüssigkeiten, z. B. Wein)
    */
    // @ApiMember(Description="Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben), für die eine Steuer nach § 24 UStG zu entrichten ist (Sägewerkserzeugnisse, Getränke und alkoholische Flüssigkeiten, z. B. Wein)", Name="E3005006")
    public var e3005006:GeldBetragMitCent12DETyp

    /**
    * Übrige steuerpflichtige Umsätze land- und forstwirtschaftlicher Betriebe, für die keine Steuer zu entrichten ist
    */
    // @ApiMember(Description="Übrige steuerpflichtige Umsätze land- und forstwirtschaftlicher Betriebe, für die keine Steuer zu entrichten ist", Name="E3005801")
    public var e3005801:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Steuer infolge Wechsels der Besteuerungsform
*/
// @Api(Description="Steuer infolge Wechsels der Besteuerungsform")
public class WechsBestForm2023 : Codable
{
    /**
    * Steuer (Nachsteuer) auf vereinnahmte Anzahlungen infolge des Wechsels der Besteuerungsform
    */
    // @ApiMember(Description="Steuer (Nachsteuer) auf vereinnahmte Anzahlungen infolge des Wechsels der Besteuerungsform", Name="E3102901")
    public var e3102901:PositiverGeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Absoluter Geldbetrag mit Cent mit 12 Vorkommastellen. Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt. ',' als Dezimaltrennzeichen.
*/
// @Api(Description="Absoluter Geldbetrag mit Cent mit 12 Vorkommastellen. Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt. ',' als Dezimaltrennzeichen.")
public class PositiverGeldBetragMitCent12DETyp : CustomTypBase
{
    /**
    * Wert des Datentyps.  Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt.
    */
    // @ApiMember(Description="Wert des Datentyps.  Mindestens eine Ziffer und maximal 12 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt.", IsRequired=true, Name="Betrag")
    public var betrag:PositiverGeldBetragMitCent12DE

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case betrag
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        betrag = try container.decodeIfPresent(PositiverGeldBetragMitCent12DE.self, forKey: .betrag)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if betrag != nil { try container.encode(betrag, forKey: .betrag) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Represents an unsigned amount of money with cents whose value has a maximum length of 14 digits. That is, 1 to 12 digits before the decimal separator and 2 digits after the decimal separator. Minus sign NOT allowed.
*/
// @Api(Description="Represents an unsigned amount of money with cents whose value has a maximum length of 14 digits. That is, 1 to 12 digits before the decimal separator and 2 digits after the decimal separator. Minus sign NOT allowed.")
public class PositiverGeldBetragMitCent12DE : GeldBetragMitCent
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Double.self, forKey: .wert)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
    }
}

/**
* Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung
*/
// @Api(Description="Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung")
public class NachstStSatzAend2023 : Codable
{
    /**
    * Nachsteuer auf versteuerte Anzahlungen und ähnlichem wegen Steuersatzänderung
    */
    // @ApiMember(Description="Nachsteuer auf versteuerte Anzahlungen und ähnlichem wegen Steuersatzänderung", Name="E3005901")
    public var e3005901:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Summe
*/
// @Api(Description="Summe")
public class UmsSum2023 : Codable
{
    /**
    * Summe der Steuer (zu übertragen in Zeile 102)
    */
    // @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 102)", Name="E3006001")
    public var e3006001:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
*/
// @Api(Description="Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.")
public class UmsStfrei2023 : Codable
{
    /**
    * Bemessungsgrundlage ohne Umsatzsteuer
    */
    // @ApiMember(Description="Bemessungsgrundlage ohne Umsatzsteuer", Name="Tabelle")
    public var tabelle:UmsStfreiTabelle2023

    required public init(){}
}

/**
* Bemessungsgrundlage ohne Umsatzsteuer
*/
// @Api(Description="Bemessungsgrundlage ohne Umsatzsteuer")
public class UmsStfreiTabelle2023 : Codable
{
    /**
    * Steuerfreie Umsätze mit Vorsteuerabzug
    */
    // @ApiMember(Description="Steuerfreie Umsätze mit Vorsteuerabzug", Name="MitVoStAbz")
    public var mitVoStAbz:MitVoStAbz2023

    /**
    * Steuerfreie Umsätze ohne Vorsteuerabzug
    */
    // @ApiMember(Description="Steuerfreie Umsätze ohne Vorsteuerabzug", Name="OhneVoStAbz")
    public var ohneVoStAbz:OhneVoStAbz2023

    required public init(){}
}

/**
* Steuerfreie Umsätze mit Vorsteuerabzug
*/
// @Api(Description="Steuerfreie Umsätze mit Vorsteuerabzug")
public class MitVoStAbz2023 : Codable
{
    /**
    * a) Liste innergemeinschaftlicher Lieferungen (§ 4 Nummer 1 Buchstabe b UStG)
    */
    // @ApiMember(Description="a) Liste innergemeinschaftlicher Lieferungen (§ 4 Nummer 1 Buchstabe b UStG)", Name="IgLfg")
    public var igLfg:IgLfg2023

    /**
    * b) Liste weiterer steuerfreien Umsätze mit Vorsteuerabzug (zum Beispiel nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG)
    */
    // @ApiMember(Description="b) Liste weiterer steuerfreien Umsätze mit Vorsteuerabzug (zum Beispiel nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG)", Name="IgLfg")
    public var umsStFreiWeit:UmsStFreiWeit2023

    required public init(){}
}

/**
* Innergemeinschaftliche Lieferungen (§ 4 Nummer 1 Buchstabe b UStG)
*/
// @Api(Description="Innergemeinschaftliche Lieferungen (§ 4 Nummer 1 Buchstabe b UStG)")
public class IgLfg2023 : Codable
{
    /**
    * an Abnehmer mit Umsatzsteuer-Identifikationsnummer
    */
    // @ApiMember(Description="an Abnehmer mit Umsatzsteuer-Identifikationsnummer", Name="E3103301")
    public var e3103301:GeldBetragOhneCent12DETyp

    /**
    * neuer Fahrzeuge an Abnehmer ohne Umsatzsteuer-Identifikationsnummer
    */
    // @ApiMember(Description="neuer Fahrzeuge an Abnehmer ohne Umsatzsteuer-Identifikationsnummer", Name="E3103401")
    public var e3103401:GeldBetragOhneCent12DETyp

    /**
    * neuer Fahrzeuge außerhalb eines Unternehmens (§ 2a UStG)
    */
    // @ApiMember(Description="neuer Fahrzeuge außerhalb eines Unternehmens (§ 2a UStG)", Name="E3103501")
    public var e3103501:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Weitere steuerfreie Umsätze mit Vorsteuerabzug (zum Beispiel nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG)
*/
// @Api(Description="Weitere steuerfreie Umsätze mit Vorsteuerabzug (zum Beispiel nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG)")
public class UmsStFreiWeit2023 : Codable
{
    /**
    * Ausfuhrlieferungen und Lohnveredelungen an Gegenständen der Ausfuhr (§ 4 Nummer 1 Buchstabe a UStG)
    */
    // @ApiMember(Description="Ausfuhrlieferungen und Lohnveredelungen an Gegenständen der Ausfuhr (§ 4 Nummer 1 Buchstabe a UStG)", Name="E3103801")
    public var e3103801:GeldBetragOhneCent12DETyp

    /**
    * Weitere steuerfreie Umsätze mit Vorsteuerabzug (z. B. nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG), Umsätze nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer) 
    */
    // @ApiMember(Description="Weitere steuerfreie Umsätze mit Vorsteuerabzug (z. B. nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG), Umsätze nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer) ", Name="E3103901")
    public var e3103901:StringTyp

    /**
    * Weitere steuerfreie Umsätze mit Vorsteuerabzug (z. B. nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG), Umsätze nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer)
    */
    // @ApiMember(Description="Weitere steuerfreie Umsätze mit Vorsteuerabzug (z. B. nach § 4 Nummer 1 Buchstabe a, 2 bis 7 UStG), Umsätze nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer)", Name="E3103902")
    public var e3103902:GeldBetragOhneCent12DETyp

    /**
    * Umsätze im Sinne des Offshore-Steuerabkommens, des Zusatzabkommens zum NATO-Truppenstatut und des Ergänzungsabkommens zum Protokoll über die NATO-Hauptquartiere
    */
    // @ApiMember(Description="Umsätze im Sinne des Offshore-Steuerabkommens, des Zusatzabkommens zum NATO-Truppenstatut und des Ergänzungsabkommens zum Protokoll über die NATO-Hauptquartiere", Name="E3104001")
    public var e3104001:GeldBetragOhneCent12DETyp

    /**
    * Reiseleistungen nach § 25 Absatz 2 UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Reiseleistungen nach § 25 Absatz 2 UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104101")
    public var e3104101:GeldBetragOhneCent12DETyp

    /**
    * Summe der Zeilen 41 bis 44
    */
    // @ApiMember(Description="Summe der Zeilen 41 bis 44", Name="E3104201")
    public var e3104201:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Steuerfreie Umsätze ohne Vorsteuerabzug
*/
// @Api(Description="Steuerfreie Umsätze ohne Vorsteuerabzug")
public class OhneVoStAbz2023 : Codable
{
    /**
    * a) Steuerfreie Umsätze ohne Vorsteuerabzug nicht zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend
    */
    // @ApiMember(Description="a) Steuerfreie Umsätze ohne Vorsteuerabzug nicht zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend", Name="NichtGesUms")
    public var nichtGesUms:NichtGesUms2023

    /**
    * b) Steuerfreie Umsätze ohne Vorsteuerabzug zum Gesamtumsatz(§ 19 Absatz 3 UStG) gehörend
    */
    // @ApiMember(Description="b) Steuerfreie Umsätze ohne Vorsteuerabzug zum Gesamtumsatz(§ 19 Absatz 3 UStG) gehörend", Name="GesUms")
    public var gesUms:GesUms2023

    required public init(){}
}

/**
* Steuerfreie Umsätze ohne Vorsteuerabzug nicht zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend
*/
// @Api(Description="Steuerfreie Umsätze ohne Vorsteuerabzug nicht zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend")
public class NichtGesUms2023 : Codable
{
    /**
    * z. B. nach § 4 Nummer 12 UStG (Vermietung und Verpachtung von Grundstücken)
    */
    // @ApiMember(Description="z. B. nach § 4 Nummer 12 UStG (Vermietung und Verpachtung von Grundstücken)", Name="E3104401")
    public var e3104401:GeldBetragOhneCent12DETyp

    /**
    * nach § 4 Nummer ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="nach § 4 Nummer ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104501")
    public var e3104501:StringTyp

    /**
    * nach § 4 Nummer ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="nach § 4 Nummer ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104502")
    public var e3104502:GeldBetragOhneCent12DETyp

    /**
    * Summe der Zeilen 46 und 47
    */
    // @ApiMember(Description="Summe der Zeilen 46 und 47", Name="E3104601")
    public var e3104601:GeldBetragOhneCent12DETyp

    required public init(){}
}

public class GesUms2023 : Codable
{
    /**
    * Zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer)
    */
    // @ApiMember(Description="Zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer)", Name="E3104901")
    public var e3104901:StringTyp

    /**
    * Zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Zum Gesamtumsatz (§ 19 Absatz 3 UStG) gehörend nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104902")
    public var e3104902:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Innergemeinschaftliche Erwerbe
*/
// @Api(Description="Innergemeinschaftliche Erwerbe")
public class IgErw2023 : Codable
{
    /**
    * Innergemeinschaftliche Erwerbe Bemessungsgrundlage ohne Umsatzsteuer Steuer Tabelle
    */
    // @ApiMember(Description="Innergemeinschaftliche Erwerbe Bemessungsgrundlage ohne Umsatzsteuer Steuer Tabelle", Name="Tabelle")
    public var tabelle:IgErwTabelle2023

    required public init(){}
}

/**
* Innergemeinschaftliche Erwerbe Bemessungsgrundlage ohne Umsatzsteuer Steuer Tabelle
*/
// @Api(Description="Innergemeinschaftliche Erwerbe Bemessungsgrundlage ohne Umsatzsteuer Steuer Tabelle")
public class IgErwTabelle2023 : Codable
{
    /**
    * Steuerfreie innergemeinschaftliche Erwerbe
    */
    // @ApiMember(Description="Steuerfreie innergemeinschaftliche Erwerbe", Name="Stfrei")
    public var stfrei:Stfrei2023

    /**
    * Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)
    */
    // @ApiMember(Description="Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)", Name="Stpfl")
    public var stpfl:Stpfl2023

    /**
    * Summe
    */
    // @ApiMember(Description="Summe", Name="IgErwSum")
    public var igErwSum:IgErwSum2023

    required public init(){}
}

public class Stfrei2023 : Codable
{
    /**
    * von bestimmten Gegenständen und Anlagegold nach §§ 4b und 25c UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="von bestimmten Gegenständen und Anlagegold nach §§ 4b und 25c UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3100901")
    public var e3100901:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)
*/
// @Api(Description="Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)")
public class Stpfl2023 : Codable
{
    /**
    * zum Steuersatz von 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="zum Steuersatz von 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3100902")
    public var e3100902:GeldBetragOhneCent12DETyp

    /**
    * zum Steuersatz von 19 Prozent (Steuer)
    */
    // @ApiMember(Description="zum Steuersatz von 19 Prozent (Steuer)", Name="E3100903")
    public var e3100903:GeldBetragMitCent12DETyp

    /**
    * zum Steuersatz von 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="zum Steuersatz von 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3101301")
    public var e3101301:GeldBetragOhneCent12DETyp

    /**
    * zum Steuersatz von 7 Prozent (Steuer)
    */
    // @ApiMember(Description="zum Steuersatz von 7 Prozent (Steuer)", Name="E3101302")
    public var e3101302:GeldBetragMitCent12DETyp

    /**
    * zum Steuersatz von 0 Prozent (Steuer)
    */
    // @ApiMember(Description="zum Steuersatz von 0 Prozent (Steuer)", Name="E3101305")
    public var e3101305:PositiverGeldBetragOhneCent12DETyp

    /**
    * zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3101303")
    public var e3101303:GeldBetragOhneCent12DETyp

    /**
    * zu anderen Steuersätzen (Steuer)
    */
    // @ApiMember(Description="zu anderen Steuersätzen (Steuer)", Name="E3101304")
    public var e3101304:GeldBetragMitCent12DETyp

    /**
    * neuer Fahrzeuge (§ 1b Absatz 2 und 3 UStG) von Lieferern ohne USt-Identifikationsnummer zum allgemeinen Steuersatz (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="neuer Fahrzeuge (§ 1b Absatz 2 und 3 UStG) von Lieferern ohne USt-Identifikationsnummer zum allgemeinen Steuersatz (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3101401")
    public var e3101401:GeldBetragOhneCent12DETyp

    /**
    * neuer Fahrzeuge (§ 1b Absatz 2 und 3 UStG) von Lieferern ohne USt-Identifikationsnummer zum allgemeinen Steuersatz (Steuer)
    */
    // @ApiMember(Description="neuer Fahrzeuge (§ 1b Absatz 2 und 3 UStG) von Lieferern ohne USt-Identifikationsnummer zum allgemeinen Steuersatz (Steuer)", Name="E3101402")
    public var e3101402:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Summe
*/
// @Api(Description="Summe")
public class IgErwSum2023 : Codable
{
    /**
    * Summe der Steuer (zu übertragen in Zeile 153)
    */
    // @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 153)", Name="E3101501")
    public var e3101501:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG)
*/
// @Api(Description="Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG)")
public class Auslag13a2023 : Codable
{
    /**
    * Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="Tabelle")
    public var tabelle:Auslag13aTabelle2023

    required public init(){}
}

/**
* Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
*/
// @Api(Description="Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)")
public class Auslag13aTabelle2023 : Codable
{
    /**
    * Lieferungen, die der Auslagerung vorangegangen sind (§ 4 Nummer 4a Satz 1 Buchstabe a Satz 2 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Lieferungen, die der Auslagerung vorangegangen sind (§ 4 Nummer 4a Satz 1 Buchstabe a Satz 2 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102804")
    public var e3102804:GeldBetragOhneCent12DETyp

    /**
    * Lieferungen, die der Auslagerung vorangegangen sind (§ 4 Nummer 4a Satz 1 Buchstabe a Satz 2 UStG) (Steuer)
    */
    // @ApiMember(Description="Lieferungen, die der Auslagerung vorangegangen sind (§ 4 Nummer 4a Satz 1 Buchstabe a Satz 2 UStG) (Steuer)", Name="E3102805")
    public var e3102805:GeldBetragMitCent12DETyp

    /**
    * Summe der Steuer (zu übertragen in Zeile 154)
    */
    // @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 154)", Name="Auslag13aSum")
    public var auslag13aSum:Auslag13aSum2023

    required public init(){}
}

/**
* Summe der Steuer (zu übertragen in Zeile 154)
*/
// @Api(Description="Summe der Steuer (zu übertragen in Zeile 154)")
public class Auslag13aSum2023 : Codable
{
    /**
    * Summe der Steuer (zu übertragen in Zeile 154)
    */
    // @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 154)", Name="E3102904")
    public var e3102904:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG)
*/
// @Api(Description="Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG)")
public class IgDrei2023 : Codable
{
    /**
    * Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="Tabelle")
    public var tabelle:IgDreiTabelle2023

    required public init(){}
}

/**
* Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
*/
// @Api(Description="Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)")
public class IgDreiTabelle2023 : Codable
{
    /**
    * Lieferungen des ersten Abnehmers
    */
    // @ApiMember(Description="Lieferungen des ersten Abnehmers", Name="LfgErstAbn")
    public var lfgErstAbn:LfgErstAbn2023

    /**
    * Lieferungen, für die der letzte Abnehmer die Umsatzsteuer schuldet
    */
    // @ApiMember(Description="Lieferungen, für die der letzte Abnehmer die Umsatzsteuer schuldet", Name="LfgLetztAbn")
    public var lfgLetztAbn:LfgLetztAbn2023

    /**
    * Summe
    */
    // @ApiMember(Description="Summe", Name="IgDreiSum")
    public var igDreiSum:IgDreiSum2023

    required public init(){}
}

/**
* Lieferungen des ersten Abnehmers
*/
// @Api(Description="Lieferungen des ersten Abnehmers")
public class LfgErstAbn2023 : Codable
{
    /**
    * Bemessungsgrundlage ohne Umsatzsteuer (volle EUR)
    */
    // @ApiMember(Description="Bemessungsgrundlage ohne Umsatzsteuer (volle EUR)", Name="E3101801")
    public var e3101801:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Lieferungen, für die der letzte Abnehmer die Umsatzsteuer schuldet
*/
// @Api(Description="Lieferungen, für die der letzte Abnehmer die Umsatzsteuer schuldet")
public class LfgLetztAbn2023 : Codable
{
    /**
    * zum Steuersatz von 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="zum Steuersatz von 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3101701")
    public var e3101701:GeldBetragOhneCent12DETyp

    /**
    * zum Steuersatz von 19 Prozent (Steuer)
    */
    // @ApiMember(Description="zum Steuersatz von 19 Prozent (Steuer)", Name="E3101702")
    public var e3101702:GeldBetragMitCent12DETyp

    /**
    * zum Steuersatz von 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="zum Steuersatz von 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102301")
    public var e3102301:GeldBetragOhneCent12DETyp

    /**
    * zum Steuersatz von 7 Prozent (Steuer)
    */
    // @ApiMember(Description="zum Steuersatz von 7 Prozent (Steuer)", Name="E3102302")
    public var e3102302:GeldBetragMitCent12DETyp

    /**
    * zum Steuersatz von 0 Prozent (Steuer)
    */
    // @ApiMember(Description="zum Steuersatz von 0 Prozent (Steuer)", Name="E3102305")
    public var e3102305:PositiverGeldBetragOhneCent12DETyp

    /**
    * zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102303")
    public var e3102303:GeldBetragOhneCent12DETyp

    /**
    * zu anderen Steuersätzen (Steuer)
    */
    // @ApiMember(Description="zu anderen Steuersätzen (Steuer)", Name="E3102304")
    public var e3102304:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Summe
*/
// @Api(Description="Summe")
public class IgDreiSum2023 : Codable
{
    /**
    * Summe der Steuer (zu übertragen in Zeile 105)
    */
    // @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 105)", Name="E3102401")
    public var e3102401:GeldBetragMitCent12DETyp

    required public init(){}
}

public class Ums13b2023 : Codable
{
    /**
    * Leistungsempfänger als Steuerschuldner (§ 13b UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)
    */
    // @ApiMember(Description="Leistungsempfänger als Steuerschuldner (§ 13b UStG) Tabelle (Bemessungsgrundlage ohne Umsatzsteuer Steuer)", Name="Tabelle")
    public var tabelle:Ums13bTabelle2023

    required public init(){}
}

public class Ums13bTabelle2023 : Codable
{
    /**
    * Sonstige Leistungen nach § 3a Absatz 2 UStG eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Sonstige Leistungen nach § 3a Absatz 2 UStG eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102205")
    public var e3102205:GeldBetragOhneCent12DETyp

    /**
    * Steuerpflichtige sonstige Leistungen eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG) (Steuer)
    */
    // @ApiMember(Description="Steuerpflichtige sonstige Leistungen eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG) (Steuer)", Name="E3102206")
    public var e3102206:GeldBetragMitCent12DETyp

    /**
    * Umsätze, die unter das GrEStG fallen (§ 13b Absatz 2 Nummer 3 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Umsätze, die unter das GrEStG fallen (§ 13b Absatz 2 Nummer 3 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102307")
    public var e3102307:GeldBetragOhneCent12DETyp

    /**
    * Umsätze, die unter das GrEStG fallen (§ 13b Absatz 2 Nummer 3 UStG) (Steuer)
    */
    // @ApiMember(Description="Umsätze, die unter das GrEStG fallen (§ 13b Absatz 2 Nummer 3 UStG) (Steuer)", Name="E3102308")
    public var e3102308:GeldBetragMitCent12DETyp

    /**
    * Andere Leistungen (§ 13b Absatz 2 Nummer 1, 2, 4 bis 12 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Andere Leistungen (§ 13b Absatz 2 Nummer 1, 2, 4 bis 12 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102503")
    public var e3102503:GeldBetragOhneCent12DETyp

    /**
    * Andere Leistungen (§ 13b Absatz 2 Nummer 1, 2, 4 bis 12 UStG) (Steuer)
    */
    // @ApiMember(Description="Andere Leistungen (§ 13b Absatz 2 Nummer 1, 2, 4 bis 12 UStG) (Steuer)", Name="E3102504")
    public var e3102504:GeldBetragMitCent12DETyp

    /**
    * Summe
    */
    // @ApiMember(Description="Summe", Name="Ums13bSum")
    public var ums13bSum:Ums13bSum2023

    required public init(){}
}

/**
* Summe der Steuer (zu übertragen in Zeile 156)
*/
// @Api(Description="Summe der Steuer (zu übertragen in Zeile 156)")
public class Ums13bSum2023 : Codable
{
    /**
    * Summe der Steuer (zu übertragen in Zeile 106)
    */
    // @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 106)", Name="E3102601")
    public var e3102601:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Ergänzende Angaben zu Umsätzen
*/
// @Api(Description="Ergänzende Angaben zu Umsätzen")
public class ErgAngUms2023 : Codable
{
    /**
    * Ergänzende Angaben zu Umsätzen Betrag Tabelle
    */
    // @ApiMember(Description="Ergänzende Angaben zu Umsätzen Betrag Tabelle", Name="Tabelle")
    public var tabelle:ErgAngUmsTabelle2023

    required public init(){}
}

/**
* Ergänzende Angaben zu Umsätzen Betrag Tabelle
*/
// @Api(Description="Ergänzende Angaben zu Umsätzen Betrag Tabelle")
public class ErgAngUmsTabelle2023 : Codable
{
    /**
    * Umsätze, die auf Grund eines Verzichts auf Steuerbefreiung (§ 9 UStG) als steuerpflichtig behandelt worden sind (in Abschnitt C enthalten) (Betrag volle EUR)
    */
    // @ApiMember(Description="Umsätze, die auf Grund eines Verzichts auf Steuerbefreiung (§ 9 UStG) als steuerpflichtig behandelt worden sind (in Abschnitt C enthalten) (Betrag volle EUR)", Name="E3105201")
    public var e3105201:GeldBetragOhneCent12DETyp

    /**
    * Steuerpflichtige Umsätze des leistenden Unternehmers, für die der Leistungsempfänger die Steuer nach § 13b Absatz 5 UStG schuldet (Betrag volle EUR)
    */
    // @ApiMember(Description="Steuerpflichtige Umsätze des leistenden Unternehmers, für die der Leistungsempfänger die Steuer nach § 13b Absatz 5 UStG schuldet (Betrag volle EUR)", Name="E3105301")
    public var e3105301:GeldBetragOhneCent12DETyp

    /**
    * Telekommunikations-, Rundfunk- und Fernsehdienstleistungen sowie auf elektronischem Weg erbrachte sonstige Leistungen an im übrigen Gemeinschaftsgebiet ansässige Nichtunternehmer sowie innergemeinschaftliche Fernverkäufe in das übrige Gemeinschaftsgebiet unter der Voraussetzung des § 3a Absatz 5 Sätze 3 und 4 UStG und § 3c Absatz 4 Sätze 1 und 2 UStG (in Abschnitt B oder C enthalten) (Betrag volle EUR)
    */
    // @ApiMember(Description="Telekommunikations-, Rundfunk- und Fernsehdienstleistungen sowie auf elektronischem Weg erbrachte sonstige Leistungen an im übrigen Gemeinschaftsgebiet ansässige Nichtunternehmer sowie innergemeinschaftliche Fernverkäufe in das übrige Gemeinschaftsgebiet unter der Voraussetzung des § 3a Absatz 5 Sätze 3 und 4 UStG und § 3c Absatz 4 Sätze 1 und 2 UStG (in Abschnitt B oder C enthalten) (Betrag volle EUR)", Name="E3105101")
    public var e3105101:GeldBetragOhneCent12DETyp

    /**
    * Telekommunikations-, Rundfunk- und Fernsehdienstleistungen sowie auf elektronischem Weg erbrachte sonstige Leistungen an im übrigen Gemeinschaftsgebiet ansässige Nichtunternehmer sowie innergemeinschaftliche Fernverkäufe in das übrige Gemeinschaftsgebiet unter der Voraussetzung des § 3a Absatz 5 Sätze 3 und 4 UStG und § 3c Absatz 4 Sätze 1 und 2 UStG (in anderen EU-Mitgliedstaaten zu versteuern) (Betrag volle EUR)
    */
    // @ApiMember(Description="Telekommunikations-, Rundfunk- und Fernsehdienstleistungen sowie auf elektronischem Weg erbrachte sonstige Leistungen an im übrigen Gemeinschaftsgebiet ansässige Nichtunternehmer sowie innergemeinschaftliche Fernverkäufe in das übrige Gemeinschaftsgebiet unter der Voraussetzung des § 3a Absatz 5 Sätze 3 und 4 UStG und § 3c Absatz 4 Sätze 1 und 2 UStG (in anderen EU-Mitgliedstaaten zu versteuern) (Betrag volle EUR)", Name="E3105102")
    public var e3105102:GeldBetragOhneCent12DETyp

    /**
    * Nicht steuerbare Geschäftsveräußerung im Ganzen gemäß § 1 Absatz 1a UStG (Betrag volle EUR)
    */
    // @ApiMember(Description="Nicht steuerbare Geschäftsveräußerung im Ganzen gemäß § 1 Absatz 1a UStG (Betrag volle EUR)", Name="E3105602")
    public var e3105602:GeldBetragOhneCent12DETyp

    /**
    * Nicht steuerbare sonstige Leistungen gemäß § 18b Satz 1 Nummer 2 UStG (Betrag volle EUR)
    */
    // @ApiMember(Description="Nicht steuerbare sonstige Leistungen gemäß § 18b Satz 1 Nummer 2 UStG (Betrag volle EUR)", Name="E3105702")
    public var e3105702:GeldBetragOhneCent12DETyp

    /**
    * Übrige nicht steuerbare Umsätze (Leistungsort nicht im Inland) (Betrag volle EUR)
    */
    // @ApiMember(Description="Übrige nicht steuerbare Umsätze (Leistungsort nicht im Inland) (Betrag volle EUR)", Name="E3105801")
    public var e3105801:GeldBetragOhneCent12DETyp

    /**
    * In den Zeilen 72, 74 und 75 enthaltene Umsätze, die nach § 15 Absatz 2 und 3 UStG den Vorsteuerabzug ausschließen (Betrag volle EUR)
    */
    // @ApiMember(Description="In den Zeilen 72, 74 und 75 enthaltene Umsätze, die nach § 15 Absatz 2 und 3 UStG den Vorsteuerabzug ausschließen (Betrag volle EUR)", Name="E3105901")
    public var e3105901:GeldBetragOhneCent12DETyp

    /**
    * Auf den inländischen Streckenanteil entfallende Umsätze grenzüberschreitender Personenbeförderungen im Luftverkehr (§ 26 Absatz 3 UStG) (Betrag volle EUR)
    */
    // @ApiMember(Description="Auf den inländischen Streckenanteil entfallende Umsätze grenzüberschreitender Personenbeförderungen im Luftverkehr (§ 26 Absatz 3 UStG) (Betrag volle EUR)", Name="E3106001")
    public var e3106001:GeldBetragOhneCent12DETyp

    /**
    * Minderung der Bemessungsgrundlage nach § 17 Absatz 1 Satz 1 in Verbindung mit Absatz 2 Nummer 1 Satz 1 UStG (in Abschnitt B oder C enthalten) (Betrag volle EUR)
    */
    // @ApiMember(Description="Minderung der Bemessungsgrundlage nach § 17 Absatz 1 Satz 1 in Verbindung mit Absatz 2 Nummer 1 Satz 1 UStG (in Abschnitt B oder C enthalten) (Betrag volle EUR)", Name="E3106101")
    public var e3106101:PositiverGeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Abziehbare Vorsteuerbeträge (ohne die Berichtigung nach § 15a UStG)
*/
// @Api(Description="Abziehbare Vorsteuerbeträge (ohne die Berichtigung nach § 15a UStG)")
public class AbzVoSt2023 : Codable
{
    /**
    * Abziehbare Vorsteuerbeträge (ohne die Berichtigung nach § 15a UStG) Steuer Tabelle
    */
    // @ApiMember(Description="Abziehbare Vorsteuerbeträge (ohne die Berichtigung nach § 15a UStG) Steuer Tabelle", Name="Tabelle")
    public var tabelle:AbzVoStTabelle2023

    required public init(){}
}

/**
* Abziehbare Vorsteuerbeträge (ohne die Berichtigung nach § 15a UStG) Steuer Tabelle
*/
// @Api(Description="Abziehbare Vorsteuerbeträge (ohne die Berichtigung nach § 15a UStG) Steuer Tabelle")
public class AbzVoStTabelle2023 : Codable
{
    /**
    * Vorsteuerbeträge aus Rechnungen von anderen Unternehmern (§ 15 Absatz 1 Satz 1 Nummer 1 UStG)
    */
    // @ApiMember(Description="Vorsteuerbeträge aus Rechnungen von anderen Unternehmern (§ 15 Absatz 1 Satz 1 Nummer 1 UStG)", Name="E3006201")
    public var e3006201:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerbeträge aus innergemeinschaftlichen Erwerben von Gegenständen (§ 15 Absatz 1 Satz 1 Nummer 3 UStG) 
    */
    // @ApiMember(Description="Vorsteuerbeträge aus innergemeinschaftlichen Erwerben von Gegenständen (§ 15 Absatz 1 Satz 1 Nummer 3 UStG) ", Name="E3006301")
    public var e3006301:GeldBetragMitCent12DETyp

    /**
    * Entstandene Einfuhrumsatzsteuer (§ 15 Absatz 1 Satz 1 Nummer 2 UStG)
    */
    // @ApiMember(Description="Entstandene Einfuhrumsatzsteuer (§ 15 Absatz 1 Satz 1 Nummer 2 UStG)", Name="E3006401")
    public var e3006401:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerabzug für die Steuer, die der Abnehmer als Auslagerer nach § 13a Absatz 1 Nummer 6 UStG schuldet (§ 15 Absatz 1 Satz 1 Nummer 5 UStG)
    */
    // @ApiMember(Description="Vorsteuerabzug für die Steuer, die der Abnehmer als Auslagerer nach § 13a Absatz 1 Nummer 6 UStG schuldet (§ 15 Absatz 1 Satz 1 Nummer 5 UStG)", Name="E3006503")
    public var e3006503:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerbeträge aus Leistungen im Sinne des § 13b UStG (§ 15 Absatz 1 Satz 1 Nummer 4 UStG)
    */
    // @ApiMember(Description="Vorsteuerbeträge aus Leistungen im Sinne des § 13b UStG (§ 15 Absatz 1 Satz 1 Nummer 4 UStG)", Name="E3006502")
    public var e3006502:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerbeträge nach dem Durchschnittssatz für bestimmte Körperschaften, Personenvereinigungen und Vermögensmassen (§ 23a UStG)
    */
    // @ApiMember(Description="Vorsteuerbeträge nach dem Durchschnittssatz für bestimmte Körperschaften, Personenvereinigungen und Vermögensmassen (§ 23a UStG)", Name="E3006601")
    public var e3006601:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerabzug für innergemeinschaftliche Lieferungen neuer Fahrzeuge außerhalb eines Unternehmens (§ 2a UStG) sowie von Kleinunternehmern im Sinne des § 19 Absatz 1 UStG (§ 15 Absatz 4a UStG)
    */
    // @ApiMember(Description="Vorsteuerabzug für innergemeinschaftliche Lieferungen neuer Fahrzeuge außerhalb eines Unternehmens (§ 2a UStG) sowie von Kleinunternehmern im Sinne des § 19 Absatz 1 UStG (§ 15 Absatz 4a UStG)", Name="E3006701")
    public var e3006701:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerbeträge aus innergemeinschaftlichen Dreiecksgeschäften (§ 25b Absatz 5 UStG)
    */
    // @ApiMember(Description="Vorsteuerbeträge aus innergemeinschaftlichen Dreiecksgeschäften (§ 25b Absatz 5 UStG)", Name="E3006801")
    public var e3006801:GeldBetragMitCent12DETyp

    /**
    * Summe der Vorsteuerbeträge (zu übertragen in Zeile 108)
    */
    // @ApiMember(Description="Summe der Vorsteuerbeträge (zu übertragen in Zeile 108)", Name="AbzVoStSum")
    public var abzVoStSum:AbzVoStSum2023

    /**
    * Ergänzende Angabe
    */
    // @ApiMember(Description="Ergänzende Angabe", Name="AbzVoStSum")
    public var ergAng:ErgAng2023

    required public init(){}
}

/**
* Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)
*/
// @Api(Description="Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)")
public class AbzVoStSum2023 : Codable
{
    /**
    * Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)
    */
    // @ApiMember(Description="Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)", Name="E3006901")
    public var e3006901:GeldBetragMitCent12DETyp

    required public init(){}
}

public class ErgAng2023 : Codable
{
    /**
    * Minderung der abziehbaren Vorsteuerbeträge nach § 17 Absatz 1 Satz 2 in Verbindung mit Absatz 2 Nummer 1 Satz 1 UStG (in den Zeilen 79, 84 und 85 enthalten)
    */
    // @ApiMember(Description="Minderung der abziehbaren Vorsteuerbeträge nach § 17 Absatz 1 Satz 2 in Verbindung mit Absatz 2 Nummer 1 Satz 1 UStG (in den Zeilen 79, 84 und 85 enthalten)", Name="E3007001")
    public var e3007001:PositiverGeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Berichtigung des Vorsteuerabzugs (§ 15a UStG).
*/
// @Api(Description="Berichtigung des Vorsteuerabzugs (§ 15a UStG).")
public class BerVoSt15a2023 : Codable
{
    /**
    * Sind im Kalenderjahr 2023 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden?
    */
    // @ApiMember(Description="Sind im Kalenderjahr 2023 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden?", Name="GrdstErstmVerw")
    public var grdstErstmVerw:GrdstErstmVerw2023

    /**
    * Haben sich im Jahr 2023 die für den ursprünglichen Vorsteuerabzug maßgebenden Verhältnisse geändert bei
    */
    // @ApiMember(Description="Haben sich im Jahr 2023 die für den ursprünglichen Vorsteuerabzug maßgebenden Verhältnisse geändert bei", Name="AendVerh")
    public var aendVerh:AendVerh2023

    /**
    * Die Verhältnisse, die ursprünglich für die Beurteilung des Vorsteuerabzugs maßgebend waren, haben sich seitdem geändert durch:
    */
    // @ApiMember(Description="Die Verhältnisse, die ursprünglich für die Beurteilung des Vorsteuerabzugs maßgebend waren, haben sich seitdem geändert durch:", Name="GrundAendVerh")
    public var grundAendVerh:GrundAendVerh2023

    /**
    * Nutzungsänderung
    */
    // @ApiMember(Description="Nutzungsänderung", Name="VoStBerBetr")
    public var voStBerBetr:VoStBerBetr2023

    required public init(){}
}

/**
* Angaben zur erstmaligen Verwendung von Grundstücken, Grundstücksteilen, Gebäuden oder Gebäudeteilen
*/
// @Api(Description="Angaben zur erstmaligen Verwendung von Grundstücken, Grundstücksteilen, Gebäuden oder Gebäudeteilen")
public class GrdstErstmVerw2023 : Codable
{
    /**
    * Sind im Kalenderjahr 2023 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden? Falls ja, bitte eine 1 eintragen
    */
    // @ApiMember(Description="Sind im Kalenderjahr 2023 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden? Falls ja, bitte eine 1 eintragen", Name="E3007301")
    public var e3007301:Bool1Typ

    /**
    * Angaben zum Grundstück oder Gebäude.
    */
    // @ApiMember(Description="Angaben zum Grundstück oder Gebäude.", Name="AngGrdst")
    public var angGrdst:AngGrdst2023

    required public init(){}
}

/**
* Angaben zum Grundstück oder Gebäude.
*/
// @Api(Description="Angaben zum Grundstück oder Gebäude.")
public class AngGrdst2023 : Codable
{
    /**
    * Lage des Grundstücks oder Gebäudes
    */
    // @ApiMember(Description="Lage des Grundstücks oder Gebäudes", Name="E3007401")
    public var e3007401:StringTyp

    /**
    * Zeitpunkt der erstmaligen tatsächlichen Verwendung
    */
    // @ApiMember(Description="Zeitpunkt der erstmaligen tatsächlichen Verwendung", Name="E3007402")
    public var e3007402:DatumUhrzeitTyp

    /**
    * Art der Verwendung im Erstjahr
    */
    // @ApiMember(Description="Art der Verwendung im Erstjahr", Name="E3007403")
    public var e3007403:StringTyp

    /**
    * Umfang der Verwendung im Erstjahr
    */
    // @ApiMember(Description="Umfang der Verwendung im Erstjahr", Name="E3007404")
    public var e3007404:PositiverGeldBetragMitCent13DETyp

    /**
    * insgesamt angefallene Vorsteuer
    */
    // @ApiMember(Description="insgesamt angefallene Vorsteuer", Name="E3007405")
    public var e3007405:GeldBetragOhneCent12DETyp

    /**
    * in den Vorjahren - Investitionsphase - bereits abgezogene Vorsteuer
    */
    // @ApiMember(Description="in den Vorjahren - Investitionsphase - bereits abgezogene Vorsteuer", Name="E3007406")
    public var e3007406:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Datum-Uhrzeit-Typ. Format: TT.MM.JJJJ.
*/
// @Api(Description="Datum-Uhrzeit-Typ. Format: TT.MM.JJJJ.")
public class DatumUhrzeitTyp : CustomTypBase
{
    /**
    * Wert des Datentyps.
    */
    // @ApiMember(Description="Wert des Datentyps.", IsRequired=true, Name="Wert")
    public var wert:Date

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Date.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Absoluter Geldbetrag mit Cent mit 13 Vorkommastellen. Mindestens eine Ziffer und maximal 13 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt. ',' als Dezimaltrennzeichen.
*/
// @Api(Description="Absoluter Geldbetrag mit Cent mit 13 Vorkommastellen. Mindestens eine Ziffer und maximal 13 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt. ',' als Dezimaltrennzeichen.")
public class PositiverGeldBetragMitCent13DETyp : CustomTypBase
{
    /**
    * Wert des Datentyps.  Mindestens eine Ziffer und maximal 13 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt.
    */
    // @ApiMember(Description="Wert des Datentyps.  Mindestens eine Ziffer und maximal 13 Ziffern vor dem Dezimaltrennzeichen. 2 Ziffern nach dem Dezimaltrennzeichen. Minusvorzeichen NICHT erlaubt.", IsRequired=true)
    public var betrag:PositiverGeldBetragMitCent13DE

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case betrag
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        betrag = try container.decodeIfPresent(PositiverGeldBetragMitCent13DE.self, forKey: .betrag)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if betrag != nil { try container.encode(betrag, forKey: .betrag) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Represents an unsigned amount of money with cents whose value has a maximum length of 15 digits. That is, 1 to 13 digits before the decimal separator and 2 digits after the decimal separator. Minus sign NOT allowed.
*/
// @Api(Description="Represents an unsigned amount of money with cents whose value has a maximum length of 15 digits. That is, 1 to 13 digits before the decimal separator and 2 digits after the decimal separator. Minus sign NOT allowed.")
public class PositiverGeldBetragMitCent13DE : GeldBetragMitCent
{
    /**
    * The intrinsic currency value.
    */
    // @ApiMember(Description="The intrinsic currency value.")
    public var wert:Double

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Double.self, forKey: .wert)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
    }
}

/**
* Haben sich im Jahr 2023 die für den ursprünglichen Vorsteuerabzug maßgebenden Verhältnisse geändert bei.
*/
// @Api(Description="Haben sich im Jahr 2023 die für den ursprünglichen Vorsteuerabzug maßgebenden Verhältnisse geändert bei.")
public class AendVerh2023 : Codable
{
    /**
    * 1. Grundstücken, Grundstücksteilen, Gebäuden oder Gebäudeteilen, die innerhalb der letzten 10 Jahre erstmals tatsächlich und nicht nur einmalig zur Ausführung von Umsätzen verwendet worden sind? Falls ja, bitte eine 'true' eintragen
    */
    // @ApiMember(Description="1. Grundstücken, Grundstücksteilen, Gebäuden oder Gebäudeteilen, die innerhalb der letzten 10 Jahre erstmals tatsächlich und nicht nur einmalig zur Ausführung von Umsätzen verwendet worden sind? Falls ja, bitte eine 'true' eintragen", Name="E3007601")
    public var e3007601:Bool1Typ

    /**
    * 2. anderen Wirtschaftsgütern und sonstigen Leistungen, die innerhalb der letzten 5 Jahre erstmals tatsächlich und nicht nur einmalig zur Ausführung von Umsätzen verwendet worden sind? Falls ja, bitte eine 'true' eintragen)
    */
    // @ApiMember(Description="2. anderen Wirtschaftsgütern und sonstigen Leistungen, die innerhalb der letzten 5 Jahre erstmals tatsächlich und nicht nur einmalig zur Ausführung von Umsätzen verwendet worden sind? Falls ja, bitte eine 'true' eintragen)", Name="E3008501")
    public var e3008501:Bool1Typ

    /**
    * 3. Wirtschaftsgütern und sonstigen Leistungen, die nur einmalig zur Ausführung von Umsätzen verwendet worden sind? Falls ja, bitte eine 1 eintragen
    */
    // @ApiMember(Description="3. Wirtschaftsgütern und sonstigen Leistungen, die nur einmalig zur Ausführung von Umsätzen verwendet worden sind? Falls ja, bitte eine 1 eintragen", Name="E3008601")
    public var e3008601:Bool1Typ

    required public init(){}
}

/**
* Die Verhältnisse, die ursprünglich für die Beurteilung des Vorsteuerabzugs maßgebend waren, haben sich seitdem geändert durch:
*/
// @Api(Description="Die Verhältnisse, die ursprünglich für die Beurteilung des Vorsteuerabzugs maßgebend waren, haben sich seitdem geändert durch:")
public class GrundAendVerh2023 : Codable
{
    /**
    * Veräußerung
    */
    // @ApiMember(Description="Veräußerung", Name="E3007801")
    public var e3007801:BoolXTyp

    /**
    * Lieferung im Sinne des § 3 Absatz 1b UStG
    */
    // @ApiMember(Description="Lieferung im Sinne des § 3 Absatz 1b UStG", Name="E3007802")
    public var e3007802:BoolXTyp

    /**
    * Wechsel der Besteuerungsform, § 15a Absatz 7 UStG
    */
    // @ApiMember(Description="Wechsel der Besteuerungsform, § 15a Absatz 7 UStG", Name="E3007803")
    public var e3007803:BoolXTyp

    /**
    * Nutzungsänderungen
    */
    // @ApiMember(Description="Nutzungsänderungen", Name="NutzAend")
    public var nutzAend:NutzAend2023

    required public init(){}
}

/**
* Boolescher Datentyp, welcher als 'X' (Ja) oder Leerstring (Nein) im Jahressteuererklärung angeschrieben wird.
*/
// @Api(Description="Boolescher Datentyp, welcher als 'X' (Ja) oder Leerstring (Nein) im Jahressteuererklärung angeschrieben wird.")
public class BoolXTyp : CustomTypBase
{
    /**
    * Wenn der Wert true ist, 'X' wird im Jahressteuererklärung angeschrieben; ansonsten ein Leerstring.
    */
    // @ApiMember(Description="Wenn der Wert true ist, 'X' wird im Jahressteuererklärung angeschrieben; ansonsten ein Leerstring.", IsRequired=true, Name="Wert")
    public var wert:Bool

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Bool.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Nutzungsänderung.
*/
// @Api(Description="Nutzungsänderung.")
public class NutzAend2023 : Codable
{
    /**
    * Nutzungsänderung, und zwar
    */
    // @ApiMember(Description="Nutzungsänderung, und zwar", Name="E3007901")
    public var e3007901:BoolXTyp

    /**
    * Übergang von steuerpflichtiger zu steuerfreier Vermietung oder umgekehrt beziehungsweise Änderung des Verwendungsschlüssels bei gemischt genutzten Grundstücken (insbesondere bei Mieterwechsel)
    */
    // @ApiMember(Description="Übergang von steuerpflichtiger zu steuerfreier Vermietung oder umgekehrt beziehungsweise Änderung des Verwendungsschlüssels bei gemischt genutzten Grundstücken (insbesondere bei Mieterwechsel)", Name="E3008001")
    public var e3008001:BoolXTyp

    /**
    * steuerfreie Vermietung bisher eigengewerblich genutzter Räume oder umgekehrt; Übergang von einer Vermietung für NATO- oder ähnliche Zwecke zu einer nach  § 4 Nummer 12 UStG steuerfreien Vermietung
    */
    // @ApiMember(Description="steuerfreie Vermietung bisher eigengewerblich genutzter Räume oder umgekehrt; Übergang von einer Vermietung für NATO- oder ähnliche Zwecke zu einer nach  § 4 Nummer 12 UStG steuerfreien Vermietung", Name="E3008202")
    public var e3008202:BoolXTyp

    /**
    * Andere Gründe für die geänderte Beurteilung des Vorsteuerabzugs:
    */
    // @ApiMember(Description="Andere Gründe für die geänderte Beurteilung des Vorsteuerabzugs:", Name="E3008401")
    public var e3008401:BoolXTyp

    /**
    * Begründung
    */
    // @ApiMember(Description="Begründung", Name="E3008402")
    public var e3008402:StringTyp

    required public init(){}
}

/**
* Vorsteuerberichtigungsbeträge.
*/
// @Api(Description="Vorsteuerberichtigungsbeträge.")
public class VoStBerBetr2023 : Codable
{
    /**
    * Vorsteuerberichtigungsbeträge nachträglich abziehbar zurückzuzahlen Tabelle
    */
    // @ApiMember(Description="Vorsteuerberichtigungsbeträge nachträglich abziehbar zurückzuzahlen Tabelle", Name="Tabelle")
    public var tabelle:VoStBerBetrTabelle2023

    required public init(){}
}

/**
* Vorsteuerberichtigungsbeträge nachträglich abziehbar zurückzuzahlen Tabelle
*/
// @Api(Description="Vorsteuerberichtigungsbeträge nachträglich abziehbar zurückzuzahlen Tabelle")
public class VoStBerBetrTabelle2023 : Codable
{
    /**
    * zu 1. (z. B. Grundstücke, § 15a Absatz 1 Satz 2 UStG) (nachträglich abziehbar)
    */
    // @ApiMember(Description="zu 1. (z. B. Grundstücke, § 15a Absatz 1 Satz 2 UStG) (nachträglich abziehbar)", Name="E3008701")
    public var e3008701:PositiverGeldBetragMitCent12DETyp

    /**
    * zu 1. (z. B. Grundstücke, § 15a Absatz 1 Satz 2 UStG) (zurückzuzahlen)
    */
    // @ApiMember(Description="zu 1. (z. B. Grundstücke, § 15a Absatz 1 Satz 2 UStG) (zurückzuzahlen)", Name="E3008702")
    public var e3008702:PositiverGeldBetragMitCent12DETyp

    /**
    * zu 2. (z. B. andere Wirtschaftsgüter, § 15a Absatz 1 Satz 1 UStG)
    */
    // @ApiMember(Description="zu 2. (z. B. andere Wirtschaftsgüter, § 15a Absatz 1 Satz 1 UStG)", Name="E3008801")
    public var e3008801:PositiverGeldBetragMitCent12DETyp

    /**
    * zu 2. (z. B. andere Wirtschaftsgüter, § 15a Absatz 1 Satz 1 UStG) (zurückzuzahlen)
    */
    // @ApiMember(Description="zu 2. (z. B. andere Wirtschaftsgüter, § 15a Absatz 1 Satz 1 UStG) (zurückzuzahlen)", Name="E3008802")
    public var e3008802:PositiverGeldBetragMitCent12DETyp

    /**
    * zu 3. (z. B. Wirtschaftsgüter,§ 15a Absatz 2 UStG) (nachträglich abziehbar)
    */
    // @ApiMember(Description="zu 3. (z. B. Wirtschaftsgüter,§ 15a Absatz 2 UStG) (nachträglich abziehbar)", Name="E3008803")
    public var e3008803:PositiverGeldBetragMitCent12DETyp

    /**
    * zu 3. (z. B. Wirtschaftsgüter, § 15a Absatz 2 UStG) (zurückzuzahlen)
    */
    // @ApiMember(Description="zu 3. (z. B. Wirtschaftsgüter, § 15a Absatz 2 UStG) (zurückzuzahlen)", Name="E3008804")
    public var e3008804:PositiverGeldBetragMitCent12DETyp

    /**
    * Summe
    */
    // @ApiMember(Description="Summe", Name="VoStBerBetrSum")
    public var voStBerBetrSum:VoStBerBetrSum2023

    required public init(){}
}

/**
* Summe
*/
// @Api(Description="Summe")
public class VoStBerBetrSum2023 : Codable
{
    /**
    * Summe nachträglich abziehbar (zu übertragen in Zeile 109)
    */
    // @ApiMember(Description="Summe nachträglich abziehbar (zu übertragen in Zeile 109)", Name="E3008901")
    public var e3008901:PositiverGeldBetragMitCent12DETyp

    /**
    * Summe zurückzuzahlen (zu übertragen in Zeile 111)
    */
    // @ApiMember(Description="Summe zurückzuzahlen (zu übertragen in Zeile 111)", Name="E3008902")
    public var e3008902:PositiverGeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Berechnung der zu entrichtenden Umsatzsteuer.
*/
// @Api(Description="Berechnung der zu entrichtenden Umsatzsteuer.")
public class BerechUSt2023 : Codable
{
    /**
    * Berechnung der zu entrichtenden Umsatzsteuer, Steuer Tabelle
    */
    // @ApiMember(Description="Berechnung der zu entrichtenden Umsatzsteuer, Steuer Tabelle", Name="Tabelle")
    public var tabelle:BerechUStTabelle2023

    required public init(){}
}

/**
* Berechnung der zu entrichtenden Umsatzsteuer, Steuer Tabelle
*/
// @Api(Description="Berechnung der zu entrichtenden Umsatzsteuer, Steuer Tabelle")
public class BerechUStTabelle2023 : Codable
{
    /**
    * Umsatzsteuer auf steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben (aus Zeile 37)
    */
    // @ApiMember(Description="Umsatzsteuer auf steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben (aus Zeile 37)", Name="E3009201")
    public var e3009201:GeldBetragMitCent12DETyp

    /**
    * Umsatzsteuer auf innergemeinschaftliche Erwerbe (aus Zeile 56)
    */
    // @ApiMember(Description="Umsatzsteuer auf innergemeinschaftliche Erwerbe (aus Zeile 56)", Name="E3009401")
    public var e3009401:GeldBetragMitCent12DETyp

    /**
    * Umsatzsteuer, die vom Auslagerer oder Lagerhalter geschuldet wird (§ 13a Absatz 1 Nummer 6 UStG) (aus Zeile 58)
    */
    // @ApiMember(Description="Umsatzsteuer, die vom Auslagerer oder Lagerhalter geschuldet wird (§ 13a Absatz 1 Nummer 6 UStG) (aus Zeile 58)", Name="E3009602")
    public var e3009602:GeldBetragMitCent12DETyp

    /**
    * Umsatzsteuer, die vom letzten Abnehmer im innergemeinschaftlichen Dreiecksgeschäft geschuldet wird (§ 25b Absatz 2 UStG) (aus Zeile 64)
    */
    // @ApiMember(Description="Umsatzsteuer, die vom letzten Abnehmer im innergemeinschaftlichen Dreiecksgeschäft geschuldet wird (§ 25b Absatz 2 UStG) (aus Zeile 64)", Name="E3009501")
    public var e3009501:GeldBetragMitCent12DETyp

    /**
    * Umsatzsteuer, die vom Leistungsempfänger nach § 13b UStG geschuldet wird (aus Zeile 68)
    */
    // @ApiMember(Description="Umsatzsteuer, die vom Leistungsempfänger nach § 13b UStG geschuldet wird (aus Zeile 68)", Name="E3009502")
    public var e3009502:GeldBetragMitCent12DETyp

    /**
    * Zwischensumme
    */
    // @ApiMember(Description="Zwischensumme", Name="E3009801")
    public var e3009801:GeldBetragMitCent12DETyp

    /**
    * Abziehbare Vorsteuerbeträge (aus Zeile 87)
    */
    // @ApiMember(Description="Abziehbare Vorsteuerbeträge (aus Zeile 87)", Name="E3009901")
    public var e3009901:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerbeträge, die auf Grund des § 15a UStG nachträglich abziehbar sind (aus Zeile 101)
    */
    // @ApiMember(Description="Vorsteuerbeträge, die auf Grund des § 15a UStG nachträglich abziehbar sind (aus Zeile 101)", Name="E3010001")
    public var e3010001:PositiverGeldBetragMitCent12DETyp

    /**
    * Verbleibender Betrag
    */
    // @ApiMember(Description="Verbleibender Betrag", Name="E3010201")
    public var e3010201:GeldBetragMitCent12DETyp

    /**
    * Vorsteuerbeträge, die auf Grund des § 15a UStG zurückzuzahlen sind (aus Zeile 101)
    */
    // @ApiMember(Description="Vorsteuerbeträge, die auf Grund des § 15a UStG zurückzuzahlen sind (aus Zeile 101)", Name="E3009701")
    public var e3009701:PositiverGeldBetragMitCent12DETyp

    /**
    * In Rechnungen unrichtig oder unberechtigt ausgewiesene Steuerbeträge (§ 14c UStG) sowie Steuerbeträge, die nach § 6a Absatz 4 Satz 2 UStG geschuldet werden
    */
    // @ApiMember(Description="In Rechnungen unrichtig oder unberechtigt ausgewiesene Steuerbeträge (§ 14c UStG) sowie Steuerbeträge, die nach § 6a Absatz 4 Satz 2 UStG geschuldet werden", Name="E3010301")
    public var e3010301:GeldBetragMitCent12DETyp

    /**
    * Steuerbeträge, die nach § 17 Absatz 1 Satz 7 UStG geschuldet werden
    */
    // @ApiMember(Description="Steuerbeträge, die nach § 17 Absatz 1 Satz 7 UStG geschuldet werden", Name="E3010401")
    public var e3010401:GeldBetragMitCent12DETyp

    /**
    * Steuer- und Vorsteuerbeträge, die auf frühere Besteuerungszeiträume entfallen (nur für Kleinunternehmer, die § 19 Absatz 1 UStG anwenden)
    */
    // @ApiMember(Description="Steuer- und Vorsteuerbeträge, die auf frühere Besteuerungszeiträume entfallen (nur für Kleinunternehmer, die § 19 Absatz 1 UStG anwenden)", Name="E3010501")
    public var e3010501:GeldBetragMitCent12DETyp

    /**
    * Umsatzsteuer / Überschuss (bei Überschuss - bitte dem Betrag ein Minuszeichen voranstellen)
    */
    // @ApiMember(Description="Umsatzsteuer / Überschuss (bei Überschuss - bitte dem Betrag ein Minuszeichen voranstellen)", Name="E3010601")
    public var e3010601:GeldBetragMitCent12DETyp

    /**
    * Anrechenbare Beträge (aus Zeile 19 der Anlage UN)
    */
    // @ApiMember(Description="Anrechenbare Beträge (aus Zeile 19 der Anlage UN)", Name="E3010602")
    public var e3010602:GeldBetragMitCent12DETyp

    /**
    * Verbleibende Umsatzsteuer / Verbleibender Überschuss
    */
    // @ApiMember(Description="Verbleibende Umsatzsteuer / Verbleibender Überschuss", Name="VerblUSt")
    public var verblUSt:VerblUSt2023

    /**
    * Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -
    */
    // @ApiMember(Description="Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -", Name="ZahlErstatt")
    public var zahlErstatt:ZahlErstatt2023

    required public init(){}
}

/**
* Verbleibende Umsatzsteuer / Verbleibender Überschuss.
*/
// @Api(Description="Verbleibende Umsatzsteuer / Verbleibender Überschuss.")
public class VerblUSt2023 : Codable
{
    /**
    * Verbleibende Umsatzsteuer / Verbleibender Überschuss (bei verbleibendem Überschuss - bitte dem Betrag ein Minuszeichen voranstellen)
    */
    // @ApiMember(Description="Verbleibende Umsatzsteuer / Verbleibender Überschuss (bei verbleibendem Überschuss - bitte dem Betrag ein Minuszeichen voranstellen)", IsRequired=true, Name="E3011101")
    // @Validate(Validator="NotNull")
    public var e3011101:GeldBetragMitCent12DETyp

    /**
    * Vorauszahlungssoll 2023 (einschließlich Sondervorauszahlung)
    */
    // @ApiMember(Description="Vorauszahlungssoll 2023 (einschließlich Sondervorauszahlung)", IsRequired=true, Name="E3011301")
    // @Validate(Validator="NotNull")
    public var e3011301:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -
*/
// @Api(Description="Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -")
public class ZahlErstatt2023 : Codable
{
    /**
    * Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch (bei Erstattungsanspruch - bitte dem Betrag ein Minuszeichen voranstellen)
    */
    // @ApiMember(Description="Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch (bei Erstattungsanspruch - bitte dem Betrag ein Minuszeichen voranstellen)", IsRequired=true, Name="E3011401")
    // @Validate(Validator="NotNull")
    public var e3011401:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Anlage UN zur Umsatzsteuererklärung für im Ausland ansässige Unternehmer.
*/
// @Api(Description="Anlage UN zur Umsatzsteuererklärung für im Ausland ansässige Unternehmer.")
public class UN2023 : Codable
{
    /**
    * A. Allgemeine Angaben
    */
    // @ApiMember(Description="A. Allgemeine Angaben", Name="Allg")
    public var allg:UnAllg2023

    /**
    * B. Vorsteuer-Vergütungsverfahren beim Bundeszentralamt für Steuern
    */
    // @ApiMember(Description="B. Vorsteuer-Vergütungsverfahren beim Bundeszentralamt für Steuern", Name="VoStVerguetBZSt")
    public var voStVerguetBZSt:VoStVerguetBZSt2023

    /**
    * C. Anrechenbare Beträge
    */
    // @ApiMember(Description="C. Anrechenbare Beträge", Name="AnrechBetr")
    public var anrechBetr:AnrechBetr2023

    /**
    * D. Ergänzende Angaben zu Umsätzen
    */
    // @ApiMember(Description="D. Ergänzende Angaben zu Umsätzen", Name="ErgAngUms")
    public var ergAngUms:UnErgAngUms2023

    required public init(){}
}

/**
* Allgemeine Angaben.
*/
// @Api(Description="Allgemeine Angaben.")
public class UnAllg2023 : Codable
{
    /**
    * Bankverbindung
    */
    // @ApiMember(Description="Bankverbindung", Name="Bank")
    public var bank:Bank2023

    /**
    * Bevollmächtigter/Empfangsbevollmächtigter
    */
    // @ApiMember(Description="Bevollmächtigter/Empfangsbevollmächtigter", Name="Vollm")
    public var vollm:Vollm2023

    required public init(){}
}

/**
* Bankverbindung.
*/
// @Api(Description="Bankverbindung.")
public class Bank2023 : Codable
{
    /**
    * IBAN
    */
    // @ApiMember(Description="IBAN", Name="E3201001")
    public var e3201001:StringTyp

    /**
    * BIC (nur bei Bankverbindungen außerhalb des Europäischen Wirtschaftsraums)
    */
    // @ApiMember(Description="BIC (nur bei Bankverbindungen außerhalb des Europäischen Wirtschaftsraums)", Name="E3201002")
    public var e3201002:StringTyp

    /**
    * Name des Geldinstituts (Zweigstelle) und Ort
    */
    // @ApiMember(Description="Name des Geldinstituts (Zweigstelle) und Ort", Name="E3200901")
    public var e3200901:StringTyp

    /**
    * Kontonummer (nur bei Bankverbindungen außerhalb des Europäischen Zahlungsverkehrsraums - SEPA)
    */
    // @ApiMember(Description="Kontonummer (nur bei Bankverbindungen außerhalb des Europäischen Zahlungsverkehrsraums - SEPA)", Name="E3200902")
    public var e3200902:StringTyp

    /**
    * Kontoinhaber laut Zeile 4 auf Vordruck USt2A
    */
    // @ApiMember(Description="Kontoinhaber laut Zeile 4 auf Vordruck USt2A", Name="E3200904")
    public var e3200904:BoolXTyp

    /**
    * Name des Kontoinhabers
    */
    // @ApiMember(Description="Name des Kontoinhabers", Name="E3200905")
    public var e3200905:StringTyp

    required public init(){}
}

/**
* Bevollmächtigter/Empfangsbevollmächtigter.
*/
// @Api(Description="Bevollmächtigter/Empfangsbevollmächtigter.")
public class Vollm2023 : Codable
{
    /**
    * Zur Wahrnehmung der steuerlichen Pflichten und Rechte als Bevollmächtigter (§ 80 AO) ist bestellt:
    */
    // @ApiMember(Description="Zur Wahrnehmung der steuerlichen Pflichten und Rechte als Bevollmächtigter (§ 80 AO) ist bestellt:", Name="E3201301")
    public var e3201301:BoolXTyp

    /**
    * Zum Empfang von Schriftstücken als Empfangsbevollmächtigter (§ 123 AO) ist bestellt:
    */
    // @ApiMember(Description="Zum Empfang von Schriftstücken als Empfangsbevollmächtigter (§ 123 AO) ist bestellt:", Name="E3201401")
    public var e3201401:BoolXTyp

    /**
    * Name
    */
    // @ApiMember(Description="Name", Name="E3201501")
    public var e3201501:StringTyp

    /**
    * Straße
    */
    // @ApiMember(Description="Straße", Name="E3201601")
    public var e3201601:StringTyp

    /**
    * Hausnummer
    */
    // @ApiMember(Description="Hausnummer", Name="E3201302")
    public var e3201302:StringTyp

    /**
    * Hausnummerzusatz
    */
    // @ApiMember(Description="Hausnummerzusatz", Name="E3201303")
    public var e3201303:StringTyp

    /**
    * Adressergänzung
    */
    // @ApiMember(Description="Adressergänzung", Name="E3201304")
    public var e3201304:StringTyp

    /**
    * Postleitzahl
    */
    // @ApiMember(Description="Postleitzahl", Name="E3201403")
    public var e3201403:StringTyp

    /**
    * Ort
    */
    // @ApiMember(Description="Ort", Name="E3201404")
    public var e3201404:StringTyp

    /**
    * Postleitzahl zu Postfach
    */
    // @ApiMember(Description="Postleitzahl zu Postfach", Name="E3201503")
    public var e3201503:StringTyp

    /**
    * Postfach
    */
    // @ApiMember(Description="Postfach", Name="E3201504")
    public var e3201504:StringTyp

    /**
    * Bevollmächtigter/Empfangsbevollmächtigter Kontakt
    */
    // @ApiMember(Description="Bevollmächtigter/Empfangsbevollmächtigter Kontakt", Name="Kontakt")
    public var kontakt:VollmKontakt2023

    /**
    * Angaben zur Unterschrift
    */
    // @ApiMember(Description="Angaben zur Unterschrift", Name="AngUnterschr")
    public var angUnterschr:AngUnterschr2023

    required public init(){}
}

/**
* Bevollmächtigter/Empfangsbevollmächtigter Kontakt.
*/
// @Api(Description="Bevollmächtigter/Empfangsbevollmächtigter Kontakt.")
public class VollmKontakt2023 : Codable
{
    /**
    * Telefon
    */
    // @ApiMember(Description="Telefon", Name="E3201602")
    public var e3201602:StringTyp

    /**
    * E-Mail-Adresse
    */
    // @ApiMember(Description="E-Mail-Adresse", Name="E3201502")
    public var e3201502:StringTyp

    required public init(){}
}

/**
* Angaben zur Unterschrift.
*/
// @Api(Description="Angaben zur Unterschrift.")
public class AngUnterschr2023 : Codable
{
    /**
    * Die Umsatzsteuererklärung wurde vom Bevollmächtigten elektronisch authentifiziert übermittelt. Die Voraussetzungen des § 150 Absatz 3 AO liegen vor.
    */
    // @ApiMember(Description="Die Umsatzsteuererklärung wurde vom Bevollmächtigten elektronisch authentifiziert übermittelt. Die Voraussetzungen des § 150 Absatz 3 AO liegen vor.", Name="E3201701")
    public var e3201701:BoolXTyp

    required public init(){}
}

/**
* Vorsteuer-Vergütungsverfahren beim Bundeszentralamt für Steuern.
*/
// @Api(Description="Vorsteuer-Vergütungsverfahren beim Bundeszentralamt für Steuern.")
public class VoStVerguetBZSt2023 : Codable
{
    /**
    * Ist für das Kalenderjahr 2023 die Vergütung von Vorsteuern in einem besonderen Verfahren (§ 18 Absatz 9 UStG, §§ 59 bis 61a UStDV) beantragt worden?
    */
    // @ApiMember(Description="Ist für das Kalenderjahr 2023 die Vergütung von Vorsteuern in einem besonderen Verfahren (§ 18 Absatz 9 UStG, §§ 59 bis 61a UStDV) beantragt worden?", IsRequired=true, Name="E3201101")
    // @Validate(Validator="NotNull")
    public var e3201101:Bool12Typ

    required public init(){}
}

/**
* Boolescher Datentyp, welcher als '1' (Ja) oder '2' (Nein) im Jahressteuererklärung angeschrieben wird.
*/
// @Api(Description="Boolescher Datentyp, welcher als '1' (Ja) oder '2' (Nein) im Jahressteuererklärung angeschrieben wird.")
public class Bool12Typ : CustomTypBase
{
    /**
    * Wenn der Wert true ist, '1' wird im Jahressteuererklärung angeschrieben; ansonsten '2'.
    */
    // @ApiMember(Description="Wenn der Wert true ist, '1' wird im Jahressteuererklärung angeschrieben; ansonsten '2'.", IsRequired=true, Name="Wert")
    public var wert:Bool

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(Bool.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* C. Anrechenbare Beträge.
*/
// @Api(Description="C. Anrechenbare Beträge.")
public class AnrechBetr2023 : Codable
{
    /**
    * Bei der Beförderungseinzelbesteuerung entrichtete Umsatzsteuer (§ 18 Absatz 5b Satz 2 UStG) - Belege bitte gesondert übermitteln -
    */
    // @ApiMember(Description="Bei der Beförderungseinzelbesteuerung entrichtete Umsatzsteuer (§ 18 Absatz 5b Satz 2 UStG) - Belege bitte gesondert übermitteln -", Name="E3201902")
    public var e3201902:GeldBetragMitCent12DETyp

    /**
    * Entrichtete Sicherheitsleistungen (§ 18 Absatz 12 Satz 5 UStG) - Belege bitte gesondert übermitteln -
    */
    // @ApiMember(Description="Entrichtete Sicherheitsleistungen (§ 18 Absatz 12 Satz 5 UStG) - Belege bitte gesondert übermitteln -", Name="E3202002")
    public var e3202002:GeldBetragMitCent12DETyp

    /**
    * Summe (zu übertragen in Zeile 116 der Steuererklärung)
    */
    // @ApiMember(Description="Summe (zu übertragen in Zeile 116 der Steuererklärung)", Name="E3202102")
    public var e3202102:GeldBetragMitCent12DETyp

    required public init(){}
}

/**
* Ergänzende Angaben zu Umsätzen.
*/
// @Api(Description="Ergänzende Angaben zu Umsätzen.")
public class UnErgAngUms2023 : Codable
{
    /**
    * Ergänzende Angaben zu Umsätzen Tabelle (Bemessungsgrundlage ohne Umsatzsteuer)
    */
    // @ApiMember(Description="Ergänzende Angaben zu Umsätzen Tabelle (Bemessungsgrundlage ohne Umsatzsteuer)", Name="Tabelle")
    public var tabelle:UnErgAngUmsTabelle2023

    required public init(){}
}

/**
* Ergänzende Angaben zu Umsätzen Tabelle (Bemessungsgrundlage ohne Umsatzsteuer)
*/
// @Api(Description="Ergänzende Angaben zu Umsätzen Tabelle (Bemessungsgrundlage ohne Umsatzsteuer)")
public class UnErgAngUmsTabelle2023 : Codable
{
    /**
    * In den steuerpflichtigen Umsätzen enthaltene Umsätze
    */
    // @ApiMember(Description="In den steuerpflichtigen Umsätzen enthaltene Umsätze", Name="InstpflUmsEnt")
    public var instpflUmsEnt:InstpflUmsEnt2023

    required public init(){}
}

/**
* In den steuerpflichtigen Umsätzen enthaltene Umsätze.
*/
// @Api(Description="In den steuerpflichtigen Umsätzen enthaltene Umsätze.")
public class InstpflUmsEnt2023 : Codable
{
    /**
    * Innergemeinschaftliche Fernverkäufe aus dem übrigen Gemeinschaftsgebiet (§ 3c UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
    */
    // @ApiMember(Description="Innergemeinschaftliche Fernverkäufe aus dem übrigen Gemeinschaftsgebiet (§ 3c UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3201901")
    public var e3201901:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Anlage FV zur Umsatzsteuererklärung 2023
*/
// @Api(Description="Anlage FV zur Umsatzsteuererklärung 2023")
public class FV2023 : Codable
{
    /**
    * Aufstellung aller vertretenen Unternehmer
    */
    // @ApiMember(Description="Aufstellung aller vertretenen Unternehmer", Name="AufstAllerVertrUnt")
    public var aufstAllerVertrUnt:AufstAllerVertrUnt2023

    required public init(){}
}

/**
* Aufstellung aller vertretenen Unternehmer
*/
// @Api(Description="Aufstellung aller vertretenen Unternehmer")
public class AufstAllerVertrUnt2023 : Codable
{
    /**
    * Die vertretenen Unternehmer
    */
    // @ApiMember(Description="Die vertretenen Unternehmer", Name="Einzs")
    public var einzs:[Einz2023] = []

    /**
    * Die Summe
    */
    // @ApiMember(Description="Die Summe", Name="Sum")
    public var sum:AufstAllerVertrUntSum2023

    required public init(){}
}

/**
* Einzelner vertretene Unternehmer
*/
// @Api(Description="Einzelner vertretene Unternehmer")
public class Einz2023 : Codable
{
    /**
    * Name des vertretenen Unternehmers
    */
    // @ApiMember(Description="Name des vertretenen Unternehmers", Name="E3300201")
    public var e3300201:StringTyp

    /**
    * Anschrift des vertretenen Unternehmers
    */
    // @ApiMember(Description="Anschrift des vertretenen Unternehmers", Name="E3300202")
    public var e3300202:StringTyp

    /**
    * Falls vorhanden: Umsatzsteuer-Identifikationsnummer des vertretenen Unternehmers
    */
    // @ApiMember(Description="Falls vorhanden: Umsatzsteuer-Identifikationsnummer des vertretenen Unternehmers", Name="E3300203")
    public var e3300203:StringTyp

    /**
    * Summe der jeweiligen Bemessungsgrundlagen in EUR
    */
    // @ApiMember(Description="Summe der jeweiligen Bemessungsgrundlagen in EUR", Name="E3300204")
    public var e3300204:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Summe
*/
// @Api(Description="Summe")
public class AufstAllerVertrUntSum2023 : Codable
{
    /**
    *  Summe in EUR
    */
    // @ApiMember(Description=" Summe in EUR", Name="E3300301")
    public var e3300301:GeldBetragOhneCent12DETyp

    required public init(){}
}

/**
* Datentyp, welches den Vorgang bei einer Veranlagung darstellt.
*/
// @Api(Description="Datentyp, welches den Vorgang bei einer Veranlagung darstellt.")
public class VeranlagungVorgangTyp : CustomTypBase
{
    /**
    * Wert des Datentyps.
    */
    // @ApiMember(Description="Wert des Datentyps.", IsRequired=true, Name="Wert")
    public var wert:VeranlagungVorgang

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(VeranlagungVorgang.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Stellt den Vorgang bei einer Veranlagung dar.
*/
public enum VeranlagungVorgang : Int, Codable
{
    case NurVeranlagung = 1
    case VeranlagungMitVorauszahlung = 4
}

/**
* Datentyp, welches die ermittelten Ordnungsbegriff zu füllen darstellt.
*/
// @Api(Description="Datentyp, welches die ermittelten Ordnungsbegriff zu füllen darstellt.")
public class OrdNrArtTyp : CustomTypBase
{
    /**
    * Wert des Datentyps.
    */
    // @ApiMember(Description="Wert des Datentyps.", IsRequired=true, Name="Wert")
    public var wert:OrdNrArt

    /**
    * Identifizierung der Zeile / Typ im Fremdprogramm.
    */
    // @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
    public var alias:String

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case wert
        case alias
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        wert = try container.decodeIfPresent(OrdNrArt.self, forKey: .wert)
        alias = try container.decodeIfPresent(String.self, forKey: .alias)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if wert != nil { try container.encode(wert, forKey: .wert) }
        if alias != nil { try container.encode(alias, forKey: .alias) }
    }
}

/**
* Stellt die Art der Ordnungsnummer dar.
*/
public enum OrdNrArt : String, Codable
{
    case S
    case O
}

/**
* Stellt die Informationen zur Bescheidrückübermittlung für die neue Struktur der Jahrresteuererklärung dar.
*/
// @Api(Description="Stellt die Informationen zur Bescheidrückübermittlung für die neue Struktur der Jahrresteuererklärung dar.")
public class E50Rueckuebermittlung : Codable
{
    /**
    * Wird die elektronische Bereitstellung der Bescheiddaten gewünscht?
    */
    // @ApiMember(Description="Wird die elektronische Bereitstellung der Bescheiddaten gewünscht?")
    public var bescheid:Bool12Typ

    /**
    * Art der Benachrichtigung über vorliegende Bescheiddaten zur Abholung.
    */
    // @ApiMember(Description="Art der Benachrichtigung über vorliegende Bescheiddaten zur Abholung.")
    public var artRueckuebermittlung:StringTyp

    /**
    * Schlüssel unter dem die Bescheiddaten verschlüsselt zur Abholung bereitgestellt werden sollen
    */
    // @ApiMember(Description="Schlüssel unter dem die Bescheiddaten verschlüsselt zur Abholung bereitgestellt werden sollen")
    public var schluesselRueckuebermittlung:StringTyp

    /**
    * Benachrichtigungsadresse (in der Regel E-Mail-Adresse) für die Benachrichtigung über die elektronische Bereitstellung der Bescheiddaten.
    */
    // @ApiMember(Description="Benachrichtigungsadresse (in der Regel E-Mail-Adresse) für die Benachrichtigung über die elektronische Bereitstellung der Bescheiddaten.")
    public var adresseRueckuebermittlung:StringTyp

    required public init(){}
}

/**
* Represents the response from a service that generates XML content.
*/
// @Api(Description="Represents the response from a service that generates XML content.")
public class XmlResponse : Codable
{
    /**
    * The XML-based content of the response.
    */
    // @ApiMember(Description="The XML-based content of the response.")
    public var content:String

    /**
    * Metadata that contains structured error information on the XML response.
    */
    // @ApiMember(Description="Metadata that contains structured error information on the XML response.")
    public var responseStatus:ResponseStatus

    required public init(){}
}


Swift CreateUmsatzsteuererklaerung2023Xml DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /CreateUmsatzsteuererklaerung2023Xml HTTP/1.1 
Host: taxfiling.pwc.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	berErkl: 
	{
		e3000601: 
		{
			wert: False,
			alias: String
		}
	},
	allg: 
	{
		unternehmen: 
		{
			e3000901: 
			{
				wert: String,
				alias: String
			},
			e3000902: 
			{
				wert: String,
				alias: String
			},
			e3001001: 
			{
				wert: String,
				alias: String
			},
			adr: 
			{
				e3001101: 
				{
					wert: String,
					alias: String
				},
				e3001203: 
				{
					wert: String,
					alias: String
				},
				e3001204: 
				{
					wert: String,
					alias: String
				},
				e3001205: 
				{
					wert: String,
					alias: String
				},
				e3001206: 
				{
					wert: String,
					alias: String
				},
				e3001207: 
				{
					wert: String,
					alias: String
				},
				e3001403: 
				{
					wert: String,
					alias: String
				},
				e3001404: 
				{
					wert: String,
					alias: String
				}
			},
			kontakt: 
			{
				e3001202: 
				{
					wert: String,
					alias: String
				},
				e3001301: 
				{
					wert: String,
					alias: String
				}
			}
		},
		imAuslAnsUnt: 
		{
			e3001402: 
			{
				wert: False,
				alias: String
			}
		},
		fiskalvetr: 
		{
			e3001801: 
			{
				wert: False,
				alias: String
			}
		},
		dauerUntEig: 
		{
			e3001401: 
			{
				wert: 
				{
					start: 0001-01-01,
					ende: 0001-01-01
				},
				alias: String
			},
			e3001501: 
			{
				wert: 
				{
					start: 0001-01-01,
					ende: 0001-01-01
				},
				alias: String
			}
		},
		bestArt: 
		{
			e3002203: 
			{
				wert: 1,
				alias: String
			}
		},
		verrech: 
		{
			e3001701: 
			{
				wert: False,
				alias: String
			}
		},
		ergAngErkl: 
		{
			e3002201: 
			{
				wert: False,
				alias: String
			},
			e3002202: 
			{
				wert: String,
				alias: String
			}
		}
	},
	mitwirk: 
	{
		kanzlei: 
		{
			e3002509: 
			{
				wert: String,
				alias: String
			},
			e3002506: 
			{
				wert: String,
				alias: String
			},
			e3002507: 
			{
				wert: String,
				alias: String
			}
		},
		bearb: 
		{
			e3002501: 
			{
				wert: String,
				alias: String
			},
			e3002502: 
			{
				wert: String,
				alias: String
			}
		},
		adr: 
		{
			e3002503: 
			{
				wert: String,
				alias: String
			},
			e3002504: 
			{
				wert: String,
				alias: String
			}
		},
		kontakt: 
		{
			e3002505: 
			{
				wert: String,
				alias: String
			},
			e3002508: 
			{
				wert: String,
				alias: String
			}
		},
		mitwirkErkl: 
		{
			e3002602: 
			{
				wert: False,
				alias: String
			}
		}
	},
	kleinuntern: 
	{
		tabelle: 
		{
			e3002301: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3002401: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			}
		}
	},
	umsaetze: 
	{
		tabelle: 
		{
			umsAllg: 
			{
				e3003303: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3003304: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				unent_Wertabgaben: 
				{
					e3003405: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003406: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003505: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003506: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			},
			umsErm: 
			{
				e3004401: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3004402: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				unent_Wertabgaben: 
				{
					e3003703: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003704: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003803: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003804: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			},
			umsErm0: 
			{
				e3002801: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				unent_Wertabgaben: 
				{
					e3002901: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3003001: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			},
			umsAnd: 
			{
				e3005001: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3005002: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			umsLuf: 
			{
				e3005201: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3005005: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3005006: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3005801: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			wechsBestForm: 
			{
				e3102901: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			nachstStSatzAend: 
			{
				e3005901: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			umsSum: 
			{
				e3006001: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	umsStfrei: 
	{
		tabelle: 
		{
			mitVoStAbz: 
			{
				igLfg: 
				{
					e3103301: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3103401: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3103501: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				},
				umsStFreiWeit: 
				{
					e3103801: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3103901: 
					{
						wert: String,
						alias: String
					},
					e3103902: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3104001: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3104101: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3104201: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			},
			ohneVoStAbz: 
			{
				nichtGesUms: 
				{
					e3104401: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3104501: 
					{
						wert: String,
						alias: String
					},
					e3104502: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3104601: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				},
				gesUms: 
				{
					e3104901: 
					{
						wert: String,
						alias: String
					},
					e3104902: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			}
		}
	},
	igErw: 
	{
		tabelle: 
		{
			stfrei: 
			{
				e3100901: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			stpfl: 
			{
				e3100902: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3100903: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101301: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101302: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101305: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101303: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101304: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101401: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101402: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			igErwSum: 
			{
				e3101501: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	auslag13a: 
	{
		tabelle: 
		{
			e3102804: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3102805: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			auslag13aSum: 
			{
				e3102904: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	igDrei: 
	{
		tabelle: 
		{
			lfgErstAbn: 
			{
				e3101801: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			lfgLetztAbn: 
			{
				e3101701: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3101702: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3102301: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3102302: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3102305: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3102303: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3102304: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			igDreiSum: 
			{
				e3102401: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	ums13b: 
	{
		tabelle: 
		{
			e3102205: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3102206: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3102307: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3102308: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3102503: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3102504: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			ums13bSum: 
			{
				e3102601: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	ergAngUms: 
	{
		tabelle: 
		{
			e3105201: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105301: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105101: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105102: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105602: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105702: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105801: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3105901: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3106001: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3106101: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			}
		}
	},
	abzVoSt: 
	{
		tabelle: 
		{
			e3006201: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006301: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006401: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006503: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006502: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006601: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006701: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3006801: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			abzVoStSum: 
			{
				e3006901: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			ergAng: 
			{
				e3007001: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	berVoSt15a: 
	{
		grdstErstmVerw: 
		{
			e3007301: 
			{
				wert: False,
				alias: String
			},
			angGrdst: 
			{
				e3007401: 
				{
					wert: String,
					alias: String
				},
				e3007402: 
				{
					wert: 0001-01-01,
					alias: String
				},
				e3007403: 
				{
					wert: String,
					alias: String
				},
				e3007404: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3007405: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3007406: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		},
		aendVerh: 
		{
			e3007601: 
			{
				wert: False,
				alias: String
			},
			e3008501: 
			{
				wert: False,
				alias: String
			},
			e3008601: 
			{
				wert: False,
				alias: String
			}
		},
		grundAendVerh: 
		{
			e3007801: 
			{
				wert: False,
				alias: String
			},
			e3007802: 
			{
				wert: False,
				alias: String
			},
			e3007803: 
			{
				wert: False,
				alias: String
			},
			nutzAend: 
			{
				e3007901: 
				{
					wert: False,
					alias: String
				},
				e3008001: 
				{
					wert: False,
					alias: String
				},
				e3008202: 
				{
					wert: False,
					alias: String
				},
				e3008401: 
				{
					wert: False,
					alias: String
				},
				e3008402: 
				{
					wert: String,
					alias: String
				}
			}
		},
		voStBerBetr: 
		{
			tabelle: 
			{
				e3008701: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3008702: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3008801: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3008802: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3008803: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3008804: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				voStBerBetrSum: 
				{
					e3008901: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					},
					e3008902: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			}
		}
	},
	berechUSt: 
	{
		tabelle: 
		{
			e3009201: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009401: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009602: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009501: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009502: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009801: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009901: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010001: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010201: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3009701: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010301: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010401: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010501: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010601: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3010602: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			verblUSt: 
			{
				e3011101: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				},
				e3011301: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			},
			zahlErstatt: 
			{
				e3011401: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	un: 
	{
		allg: 
		{
			bank: 
			{
				e3201001: 
				{
					wert: String,
					alias: String
				},
				e3201002: 
				{
					wert: String,
					alias: String
				},
				e3200901: 
				{
					wert: String,
					alias: String
				},
				e3200902: 
				{
					wert: String,
					alias: String
				},
				e3200904: 
				{
					wert: False,
					alias: String
				},
				e3200905: 
				{
					wert: String,
					alias: String
				}
			},
			vollm: 
			{
				e3201301: 
				{
					wert: False,
					alias: String
				},
				e3201401: 
				{
					wert: False,
					alias: String
				},
				e3201501: 
				{
					wert: String,
					alias: String
				},
				e3201601: 
				{
					wert: String,
					alias: String
				},
				e3201302: 
				{
					wert: String,
					alias: String
				},
				e3201303: 
				{
					wert: String,
					alias: String
				},
				e3201304: 
				{
					wert: String,
					alias: String
				},
				e3201403: 
				{
					wert: String,
					alias: String
				},
				e3201404: 
				{
					wert: String,
					alias: String
				},
				e3201503: 
				{
					wert: String,
					alias: String
				},
				e3201504: 
				{
					wert: String,
					alias: String
				},
				kontakt: 
				{
					e3201602: 
					{
						wert: String,
						alias: String
					},
					e3201502: 
					{
						wert: String,
						alias: String
					}
				},
				angUnterschr: 
				{
					e3201701: 
					{
						wert: False,
						alias: String
					}
				}
			}
		},
		voStVerguetBZSt: 
		{
			e3201101: 
			{
				wert: False,
				alias: String
			}
		},
		anrechBetr: 
		{
			e3201902: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3202002: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			},
			e3202102: 
			{
				betrag: 
				{
					wert: 0
				},
				alias: String
			}
		},
		ergAngUms: 
		{
			tabelle: 
			{
				instpflUmsEnt: 
				{
					e3201901: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			}
		}
	},
	fv: 
	{
		aufstAllerVertrUnt: 
		{
			einzs: 
			[
				{
					e3300201: 
					{
						wert: String,
						alias: String
					},
					e3300202: 
					{
						wert: String,
						alias: String
					},
					e3300203: 
					{
						wert: String,
						alias: String
					},
					e3300204: 
					{
						betrag: 
						{
							wert: 0
						},
						alias: String
					}
				}
			],
			sum: 
			{
				e3300301: 
				{
					betrag: 
					{
						wert: 0
					},
					alias: String
				}
			}
		}
	},
	vorgang: 
	{
		wert: NurVeranlagung,
		alias: String
	},
	stNr: 
	{
		wert: String,
		alias: String
	},
	ordnungsbegriff: 
	{
		wert: String,
		alias: String
	},
	id: 
	{
		wert: String,
		alias: String
	},
	idEhefrau: 
	{
		wert: String,
		alias: String
	},
	absName: 
	{
		wert: String,
		alias: String
	},
	absStr: 
	{
		wert: String,
		alias: String
	},
	absPlz: 
	{
		wert: String,
		alias: String
	},
	absOrt: 
	{
		wert: String,
		alias: String
	},
	copyright: 
	{
		wert: String,
		alias: String
	},
	teleNummer: 
	{
		wert: String,
		alias: String
	},
	ordNrArt: 
	{
		wert: S,
		alias: String
	},
	rueckuebermittlung: 
	{
		bescheid: 
		{
			wert: False,
			alias: String
		},
		artRueckuebermittlung: 
		{
			wert: String,
			alias: String
		},
		schluesselRueckuebermittlung: 
		{
			wert: String,
			alias: String
		},
		adresseRueckuebermittlung: 
		{
			wert: String,
			alias: String
		}
	},
	bundesfinanzamtsnummer: String,
	datenLieferant: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	content: String,
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}