Tax Filing Service

<back to all web services

SubmitUmsatzsteuererklaerung2022

SyncUmsatzsteuerJahressteuererklärung2022

A synchronous service to submit an annual VAT return for 2022.

Requires Authentication
The following routes are available for this service:
POST/SubmitUmsatzsteuererklaerung2022A synchronous service to submit an annual VAT return for 2022
import java.math.*;
import java.util.*;
import net.servicestack.client.*;

public class dtos
{

    /**
    * A synchronous service to submit an annual VAT return for 2022.
    */
    @Api(Description="A synchronous service to submit an annual VAT return for 2022.")
    public static class SubmitUmsatzsteuererklaerung2022 extends SubmitUmsatzsteuererklaerung2022Base
    {
        /**
        * Berichtigte Erklärung
        */
        @ApiMember(Description="Berichtigte Erklärung", Name="BerErkl")
        public BerErkl2022 berErkl = null;

        /**
        * A. Allgemeine Angaben.
        */
        @ApiMember(Description="A. Allgemeine Angaben.", Name="Allg")
        public Allg2022 allg = null;

        /**
        * 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 Mitwirk2022 mitwirk = null;

        /**
        * 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 Kleinuntern2022 kleinuntern = null;

        /**
        * C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
        */
        @ApiMember(Description="C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="Umsaetze")
        public Umsaetze2022 umsaetze = null;

        /**
        * D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
        */
        @ApiMember(Description="D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="UmsStfrei")
        public UmsStfrei2022 umsStfrei = null;

        /**
        * E. Innergemeinschaftliche Erwerbe.
        */
        @ApiMember(Description="E. Innergemeinschaftliche Erwerbe.", Name="IgErw")
        public IgErw2022 igErw = null;

        /**
        * 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 Auslag13a2022 auslag13a = null;

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

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

        /**
        * I. Ergänzende Angaben zu Umsätzen.
        */
        @ApiMember(Description="I. Ergänzende Angaben zu Umsätzen.", Name="ErgAngUms")
        public ErgAngUms2022 ergAngUms = null;

        /**
        * J. Abziehbare Vorsteuerbeträge
        */
        @ApiMember(Description="J. Abziehbare Vorsteuerbeträge", Name="AbzVoSt")
        public AbzVoSt2022 abzVoSt = null;

        /**
        * K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)
        */
        @ApiMember(Description="K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)", Name="BerVoSt15a")
        public BerVoSt15a2022 berVoSt15a = null;

        /**
        * L. Berechnung der zu entrichtenden Umsatzsteuer
        */
        @ApiMember(Description="L. Berechnung der zu entrichtenden Umsatzsteuer", Name="BerechUSt")
        public BerechUSt2022 berechUSt = null;

        /**
        * 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")
        public UN2022 un = null;

        /**
        * Anlage FV zur Umsatzsteuererklärung $VZ$
        */
        @ApiMember(Description="Anlage FV zur Umsatzsteuererklärung $VZ$")
        public FV2022 fv = null;

        /**
        * Unterfalllarten für die verschiedenen Verfahren.
        */
        @ApiMember(Description="Unterfalllarten für die verschiedenen Verfahren.")
        public UnterfallartTyp unterfallart = null;

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

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

        /**
        * Ordnungsbegriff
        */
        @ApiMember(Description="Ordnungsbegriff")
        public StringTyp ordnungsbegriff = null;

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

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

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

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

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

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

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

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

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

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

        /**
        * 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 String bundesfinanzamtsnummer = null;

        /**
        * 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 String datenLieferant = null;

        /**
        * Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.
        */
        @ApiMember(Description="Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.", Name="DuplexDruck")
        public Boolean duplexDruck = null;

        /**
        * Name prefix of the generated transfer protocol file.
        */
        @ApiMember(Description="Name prefix of the generated transfer protocol file.", IsRequired=true, Name="ProtocolPrefix")
        public String protocolPrefix = null;

        /**
        * Footer text to be used on the printout (optional).
        */
        @ApiMember(Description="Footer text to be used on the printout (optional).", Name="FussText")
        public String fussText = null;

        /**
        * The authentification certificate.
        */
        @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat")
        public PortalCertificate zertifikat = null;
        
        public BerErkl2022 getBerErkl() { return berErkl; }
        public SubmitUmsatzsteuererklaerung2022 setBerErkl(BerErkl2022 value) { this.berErkl = value; return this; }
        public Allg2022 getAllg() { return allg; }
        public SubmitUmsatzsteuererklaerung2022 setAllg(Allg2022 value) { this.allg = value; return this; }
        public Mitwirk2022 getMitwirk() { return mitwirk; }
        public SubmitUmsatzsteuererklaerung2022 setMitwirk(Mitwirk2022 value) { this.mitwirk = value; return this; }
        public Kleinuntern2022 getKleinuntern() { return kleinuntern; }
        public SubmitUmsatzsteuererklaerung2022 setKleinuntern(Kleinuntern2022 value) { this.kleinuntern = value; return this; }
        public Umsaetze2022 getUmsaetze() { return umsaetze; }
        public SubmitUmsatzsteuererklaerung2022 setUmsaetze(Umsaetze2022 value) { this.umsaetze = value; return this; }
        public UmsStfrei2022 getUmsStfrei() { return umsStfrei; }
        public SubmitUmsatzsteuererklaerung2022 setUmsStfrei(UmsStfrei2022 value) { this.umsStfrei = value; return this; }
        public IgErw2022 getIgErw() { return igErw; }
        public SubmitUmsatzsteuererklaerung2022 setIgErw(IgErw2022 value) { this.igErw = value; return this; }
        public Auslag13a2022 getAuslag13a() { return auslag13a; }
        public SubmitUmsatzsteuererklaerung2022 setAuslag13a(Auslag13a2022 value) { this.auslag13a = value; return this; }
        public IgDrei2022 getIgDrei() { return igDrei; }
        public SubmitUmsatzsteuererklaerung2022 setIgDrei(IgDrei2022 value) { this.igDrei = value; return this; }
        public Ums13b2022 getUms13b() { return ums13b; }
        public SubmitUmsatzsteuererklaerung2022 setUms13b(Ums13b2022 value) { this.ums13b = value; return this; }
        public ErgAngUms2022 getErgAngUms() { return ergAngUms; }
        public SubmitUmsatzsteuererklaerung2022 setErgAngUms(ErgAngUms2022 value) { this.ergAngUms = value; return this; }
        public AbzVoSt2022 getAbzVoSt() { return abzVoSt; }
        public SubmitUmsatzsteuererklaerung2022 setAbzVoSt(AbzVoSt2022 value) { this.abzVoSt = value; return this; }
        public BerVoSt15a2022 getBerVoSt15a() { return berVoSt15a; }
        public SubmitUmsatzsteuererklaerung2022 setBerVoSt15a(BerVoSt15a2022 value) { this.berVoSt15a = value; return this; }
        public BerechUSt2022 getBerechUSt() { return berechUSt; }
        public SubmitUmsatzsteuererklaerung2022 setBerechUSt(BerechUSt2022 value) { this.berechUSt = value; return this; }
        public UN2022 getUn() { return un; }
        public SubmitUmsatzsteuererklaerung2022 setUn(UN2022 value) { this.un = value; return this; }
        public FV2022 getFv() { return fv; }
        public SubmitUmsatzsteuererklaerung2022 setFv(FV2022 value) { this.fv = value; return this; }
        public UnterfallartTyp getUnterfallart() { return unterfallart; }
        public SubmitUmsatzsteuererklaerung2022 setUnterfallart(UnterfallartTyp value) { this.unterfallart = value; return this; }
        public VeranlagungVorgangTyp getVorgang() { return vorgang; }
        public SubmitUmsatzsteuererklaerung2022 setVorgang(VeranlagungVorgangTyp value) { this.vorgang = value; return this; }
        public StringTyp getStNr() { return stNr; }
        public SubmitUmsatzsteuererklaerung2022 setStNr(StringTyp value) { this.stNr = value; return this; }
        public StringTyp getOrdnungsbegriff() { return ordnungsbegriff; }
        public SubmitUmsatzsteuererklaerung2022 setOrdnungsbegriff(StringTyp value) { this.ordnungsbegriff = value; return this; }
        public StringTyp getId() { return id; }
        public SubmitUmsatzsteuererklaerung2022 setId(StringTyp value) { this.id = value; return this; }
        public StringTyp getIdEhefrau() { return idEhefrau; }
        public SubmitUmsatzsteuererklaerung2022 setIdEhefrau(StringTyp value) { this.idEhefrau = value; return this; }
        public StringTyp getAbsName() { return absName; }
        public SubmitUmsatzsteuererklaerung2022 setAbsName(StringTyp value) { this.absName = value; return this; }
        public StringTyp getAbsStr() { return absStr; }
        public SubmitUmsatzsteuererklaerung2022 setAbsStr(StringTyp value) { this.absStr = value; return this; }
        public StringTyp getAbsPlz() { return absPlz; }
        public SubmitUmsatzsteuererklaerung2022 setAbsPlz(StringTyp value) { this.absPlz = value; return this; }
        public StringTyp getAbsOrt() { return absOrt; }
        public SubmitUmsatzsteuererklaerung2022 setAbsOrt(StringTyp value) { this.absOrt = value; return this; }
        public StringTyp getCopyright() { return copyright; }
        public SubmitUmsatzsteuererklaerung2022 setCopyright(StringTyp value) { this.copyright = value; return this; }
        public StringTyp getTeleNummer() { return teleNummer; }
        public SubmitUmsatzsteuererklaerung2022 setTeleNummer(StringTyp value) { this.teleNummer = value; return this; }
        public OrdNrArtTyp getOrdNrArt() { return ordNrArt; }
        public SubmitUmsatzsteuererklaerung2022 setOrdNrArt(OrdNrArtTyp value) { this.ordNrArt = value; return this; }
        public E50Rueckuebermittlung getRueckuebermittlung() { return rueckuebermittlung; }
        public SubmitUmsatzsteuererklaerung2022 setRueckuebermittlung(E50Rueckuebermittlung value) { this.rueckuebermittlung = value; return this; }
        public String getBundesfinanzamtsnummer() { return bundesfinanzamtsnummer; }
        public SubmitUmsatzsteuererklaerung2022 setBundesfinanzamtsnummer(String value) { this.bundesfinanzamtsnummer = value; return this; }
        public String getDatenLieferant() { return datenLieferant; }
        public SubmitUmsatzsteuererklaerung2022 setDatenLieferant(String value) { this.datenLieferant = value; return this; }
        public Boolean isDuplexDruck() { return duplexDruck; }
        public SubmitUmsatzsteuererklaerung2022 setDuplexDruck(Boolean value) { this.duplexDruck = value; return this; }
        public String getProtocolPrefix() { return protocolPrefix; }
        public SubmitUmsatzsteuererklaerung2022 setProtocolPrefix(String value) { this.protocolPrefix = value; return this; }
        public String getFussText() { return fussText; }
        public SubmitUmsatzsteuererklaerung2022 setFussText(String value) { this.fussText = value; return this; }
        public PortalCertificate getZertifikat() { return zertifikat; }
        public SubmitUmsatzsteuererklaerung2022 setZertifikat(PortalCertificate value) { this.zertifikat = value; return this; }
    }

    /**
    * Submits an annual VAT return (Umsatzsteuerjahresserklärung) for 2022.
    */
    @Api(Description="Submits an annual VAT return (Umsatzsteuerjahresserklärung) for 2022.")
    public static class SubmitUmsatzsteuererklaerung2022Base implements IPost, IDruckRequest, IVeschlueselungsRequest
    {
        /**
        * Berichtigte Erklärung
        */
        @ApiMember(Description="Berichtigte Erklärung", Name="BerErkl")
        public BerErkl2022 berErkl = null;

        /**
        * A. Allgemeine Angaben.
        */
        @ApiMember(Description="A. Allgemeine Angaben.", Name="Allg")
        public Allg2022 allg = null;

        /**
        * 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 Mitwirk2022 mitwirk = null;

        /**
        * 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 Kleinuntern2022 kleinuntern = null;

        /**
        * C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
        */
        @ApiMember(Description="C. Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="Umsaetze")
        public Umsaetze2022 umsaetze = null;

        /**
        * D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
        */
        @ApiMember(Description="D. Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.", Name="UmsStfrei")
        public UmsStfrei2022 umsStfrei = null;

        /**
        * E. Innergemeinschaftliche Erwerbe.
        */
        @ApiMember(Description="E. Innergemeinschaftliche Erwerbe.", Name="IgErw")
        public IgErw2022 igErw = null;

        /**
        * 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 Auslag13a2022 auslag13a = null;

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

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

        /**
        * I. Ergänzende Angaben zu Umsätzen.
        */
        @ApiMember(Description="I. Ergänzende Angaben zu Umsätzen.", Name="ErgAngUms")
        public ErgAngUms2022 ergAngUms = null;

        /**
        * J. Abziehbare Vorsteuerbeträge
        */
        @ApiMember(Description="J. Abziehbare Vorsteuerbeträge", Name="AbzVoSt")
        public AbzVoSt2022 abzVoSt = null;

        /**
        * K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)
        */
        @ApiMember(Description="K. Berichtigung des Vorsteuerabzugs (§ 15a UStG)", Name="BerVoSt15a")
        public BerVoSt15a2022 berVoSt15a = null;

        /**
        * L. Berechnung der zu entrichtenden Umsatzsteuer
        */
        @ApiMember(Description="L. Berechnung der zu entrichtenden Umsatzsteuer", Name="BerechUSt")
        public BerechUSt2022 berechUSt = null;

        /**
        * 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")
        public UN2022 un = null;

        /**
        * Anlage FV zur Umsatzsteuererklärung $VZ$
        */
        @ApiMember(Description="Anlage FV zur Umsatzsteuererklärung $VZ$")
        public FV2022 fv = null;

        /**
        * Unterfalllarten für die verschiedenen Verfahren.
        */
        @ApiMember(Description="Unterfalllarten für die verschiedenen Verfahren.")
        public UnterfallartTyp unterfallart = null;

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

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

        /**
        * Ordnungsbegriff
        */
        @ApiMember(Description="Ordnungsbegriff")
        public StringTyp ordnungsbegriff = null;

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

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

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

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

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

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

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

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

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

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

        /**
        * 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 String bundesfinanzamtsnummer = null;

        /**
        * 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 String datenLieferant = null;

        /**
        * Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.
        */
        @ApiMember(Description="Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.", Name="DuplexDruck")
        public Boolean duplexDruck = null;

        /**
        * Name prefix of the generated transfer protocol file.
        */
        @ApiMember(Description="Name prefix of the generated transfer protocol file.", IsRequired=true, Name="ProtocolPrefix")
        public String protocolPrefix = null;

        /**
        * Footer text to be used on the printout (optional).
        */
        @ApiMember(Description="Footer text to be used on the printout (optional).", Name="FussText")
        public String fussText = null;

        /**
        * The authentification certificate.
        */
        @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat")
        public PortalCertificate zertifikat = null;
        
        public BerErkl2022 getBerErkl() { return berErkl; }
        public SubmitUmsatzsteuererklaerung2022Base setBerErkl(BerErkl2022 value) { this.berErkl = value; return this; }
        public Allg2022 getAllg() { return allg; }
        public SubmitUmsatzsteuererklaerung2022Base setAllg(Allg2022 value) { this.allg = value; return this; }
        public Mitwirk2022 getMitwirk() { return mitwirk; }
        public SubmitUmsatzsteuererklaerung2022Base setMitwirk(Mitwirk2022 value) { this.mitwirk = value; return this; }
        public Kleinuntern2022 getKleinuntern() { return kleinuntern; }
        public SubmitUmsatzsteuererklaerung2022Base setKleinuntern(Kleinuntern2022 value) { this.kleinuntern = value; return this; }
        public Umsaetze2022 getUmsaetze() { return umsaetze; }
        public SubmitUmsatzsteuererklaerung2022Base setUmsaetze(Umsaetze2022 value) { this.umsaetze = value; return this; }
        public UmsStfrei2022 getUmsStfrei() { return umsStfrei; }
        public SubmitUmsatzsteuererklaerung2022Base setUmsStfrei(UmsStfrei2022 value) { this.umsStfrei = value; return this; }
        public IgErw2022 getIgErw() { return igErw; }
        public SubmitUmsatzsteuererklaerung2022Base setIgErw(IgErw2022 value) { this.igErw = value; return this; }
        public Auslag13a2022 getAuslag13a() { return auslag13a; }
        public SubmitUmsatzsteuererklaerung2022Base setAuslag13a(Auslag13a2022 value) { this.auslag13a = value; return this; }
        public IgDrei2022 getIgDrei() { return igDrei; }
        public SubmitUmsatzsteuererklaerung2022Base setIgDrei(IgDrei2022 value) { this.igDrei = value; return this; }
        public Ums13b2022 getUms13b() { return ums13b; }
        public SubmitUmsatzsteuererklaerung2022Base setUms13b(Ums13b2022 value) { this.ums13b = value; return this; }
        public ErgAngUms2022 getErgAngUms() { return ergAngUms; }
        public SubmitUmsatzsteuererklaerung2022Base setErgAngUms(ErgAngUms2022 value) { this.ergAngUms = value; return this; }
        public AbzVoSt2022 getAbzVoSt() { return abzVoSt; }
        public SubmitUmsatzsteuererklaerung2022Base setAbzVoSt(AbzVoSt2022 value) { this.abzVoSt = value; return this; }
        public BerVoSt15a2022 getBerVoSt15a() { return berVoSt15a; }
        public SubmitUmsatzsteuererklaerung2022Base setBerVoSt15a(BerVoSt15a2022 value) { this.berVoSt15a = value; return this; }
        public BerechUSt2022 getBerechUSt() { return berechUSt; }
        public SubmitUmsatzsteuererklaerung2022Base setBerechUSt(BerechUSt2022 value) { this.berechUSt = value; return this; }
        public UN2022 getUn() { return un; }
        public SubmitUmsatzsteuererklaerung2022Base setUn(UN2022 value) { this.un = value; return this; }
        public FV2022 getFv() { return fv; }
        public SubmitUmsatzsteuererklaerung2022Base setFv(FV2022 value) { this.fv = value; return this; }
        public UnterfallartTyp getUnterfallart() { return unterfallart; }
        public SubmitUmsatzsteuererklaerung2022Base setUnterfallart(UnterfallartTyp value) { this.unterfallart = value; return this; }
        public VeranlagungVorgangTyp getVorgang() { return vorgang; }
        public SubmitUmsatzsteuererklaerung2022Base setVorgang(VeranlagungVorgangTyp value) { this.vorgang = value; return this; }
        public StringTyp getStNr() { return stNr; }
        public SubmitUmsatzsteuererklaerung2022Base setStNr(StringTyp value) { this.stNr = value; return this; }
        public StringTyp getOrdnungsbegriff() { return ordnungsbegriff; }
        public SubmitUmsatzsteuererklaerung2022Base setOrdnungsbegriff(StringTyp value) { this.ordnungsbegriff = value; return this; }
        public StringTyp getId() { return id; }
        public SubmitUmsatzsteuererklaerung2022Base setId(StringTyp value) { this.id = value; return this; }
        public StringTyp getIdEhefrau() { return idEhefrau; }
        public SubmitUmsatzsteuererklaerung2022Base setIdEhefrau(StringTyp value) { this.idEhefrau = value; return this; }
        public StringTyp getAbsName() { return absName; }
        public SubmitUmsatzsteuererklaerung2022Base setAbsName(StringTyp value) { this.absName = value; return this; }
        public StringTyp getAbsStr() { return absStr; }
        public SubmitUmsatzsteuererklaerung2022Base setAbsStr(StringTyp value) { this.absStr = value; return this; }
        public StringTyp getAbsPlz() { return absPlz; }
        public SubmitUmsatzsteuererklaerung2022Base setAbsPlz(StringTyp value) { this.absPlz = value; return this; }
        public StringTyp getAbsOrt() { return absOrt; }
        public SubmitUmsatzsteuererklaerung2022Base setAbsOrt(StringTyp value) { this.absOrt = value; return this; }
        public StringTyp getCopyright() { return copyright; }
        public SubmitUmsatzsteuererklaerung2022Base setCopyright(StringTyp value) { this.copyright = value; return this; }
        public StringTyp getTeleNummer() { return teleNummer; }
        public SubmitUmsatzsteuererklaerung2022Base setTeleNummer(StringTyp value) { this.teleNummer = value; return this; }
        public OrdNrArtTyp getOrdNrArt() { return ordNrArt; }
        public SubmitUmsatzsteuererklaerung2022Base setOrdNrArt(OrdNrArtTyp value) { this.ordNrArt = value; return this; }
        public E50Rueckuebermittlung getRueckuebermittlung() { return rueckuebermittlung; }
        public SubmitUmsatzsteuererklaerung2022Base setRueckuebermittlung(E50Rueckuebermittlung value) { this.rueckuebermittlung = value; return this; }
        public String getBundesfinanzamtsnummer() { return bundesfinanzamtsnummer; }
        public SubmitUmsatzsteuererklaerung2022Base setBundesfinanzamtsnummer(String value) { this.bundesfinanzamtsnummer = value; return this; }
        public String getDatenLieferant() { return datenLieferant; }
        public SubmitUmsatzsteuererklaerung2022Base setDatenLieferant(String value) { this.datenLieferant = value; return this; }
        public Boolean isDuplexDruck() { return duplexDruck; }
        public SubmitUmsatzsteuererklaerung2022Base setDuplexDruck(Boolean value) { this.duplexDruck = value; return this; }
        public String getProtocolPrefix() { return protocolPrefix; }
        public SubmitUmsatzsteuererklaerung2022Base setProtocolPrefix(String value) { this.protocolPrefix = value; return this; }
        public String getFussText() { return fussText; }
        public SubmitUmsatzsteuererklaerung2022Base setFussText(String value) { this.fussText = value; return this; }
        public PortalCertificate getZertifikat() { return zertifikat; }
        public SubmitUmsatzsteuererklaerung2022Base setZertifikat(PortalCertificate value) { this.zertifikat = value; return this; }
    }

    /**
    * Berichtigte Erklärung
    */
    @Api(Description="Berichtigte Erklärung")
    public static class BerErkl2022
    {
        /**
        * Berichtigte Steuererklärung? Falls ja, bitte eine 'true' eintragen
        */
        @ApiMember(Description="Berichtigte Steuererklärung? Falls ja, bitte eine 'true' eintragen", Name="E3000601")
        public Bool1Typ e3000601 = null;
        
        public Bool1Typ isE3000601() { return e3000601; }
        public BerErkl2022 setE3000601(Bool1Typ value) { this.e3000601 = value; return this; }
    }

    /**
    * 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 static class Bool1Typ extends 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 Boolean wert = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public Boolean isWert() { return wert; }
        public Bool1Typ setWert(Boolean value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public Bool1Typ setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Basisklasse für einen benutzerdefinierten Datentyp
    */
    @Api(Description="Basisklasse für einen benutzerdefinierten Datentyp")
    public static class CustomTypBase implements ICustomTyp
    {
        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public String getAlias() { return alias; }
        public CustomTypBase setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Allgemeine Angaben
    */
    @Api(Description="Allgemeine Angaben")
    public static class Allg2022
    {
        /**
        * Angaben zum Unternehmen
        */
        @ApiMember(Description="Angaben zum Unternehmen", IsRequired=true, Name="Unternehmen")
        @Validate(Validator="NotNull")
        public Unternehmen2022 unternehmen = null;

        /**
        * Im Ausland ansässiger Unternehmer?
        */
        @ApiMember(Description="Im Ausland ansässiger Unternehmer?", Name="ImAuslAnsUnt")
        public ImAuslAnsUnt2022 imAuslAnsUnt = null;

        /**
        * Fiskalvertreter?
        */
        @ApiMember(Description="Fiskalvertreter?", Name="Fiskalvetr")
        public Fiskalvertr2022 fiskalvetr = null;

        /**
        * Dauer der Unternehmereigenschaft (falls nicht vom 1. Januar bis zum 31. Dezember 2022)
        */
        @ApiMember(Description="Dauer der Unternehmereigenschaft (falls nicht vom 1. Januar bis zum 31. Dezember 2022)", Name="DauerUntEig")
        public DauerUntEig2022 dauerUntEig = null;

        /**
        * Besteuerungen der Entgelte
        */
        @ApiMember(Description="Besteuerungen der Entgelte", Name="BestArt")
        public BestArt2022 bestArt = null;

        /**
        * Verrechnungen / Abtretungen
        */
        @ApiMember(Description="Verrechnungen / Abtretungen", Name="Verrech")
        public Verrech2022 verrech = null;

        /**
        * Ergänzende Angaben zur Steuererklärung
        */
        @ApiMember(Description="Ergänzende Angaben zur Steuererklärung", Name="ErgAngErkl")
        public ErgAngErkl2022 ergAngErkl = null;
        
        public Unternehmen2022 getUnternehmen() { return unternehmen; }
        public Allg2022 setUnternehmen(Unternehmen2022 value) { this.unternehmen = value; return this; }
        public ImAuslAnsUnt2022 getImAuslAnsUnt() { return imAuslAnsUnt; }
        public Allg2022 setImAuslAnsUnt(ImAuslAnsUnt2022 value) { this.imAuslAnsUnt = value; return this; }
        public Fiskalvertr2022 getFiskalvetr() { return fiskalvetr; }
        public Allg2022 setFiskalvetr(Fiskalvertr2022 value) { this.fiskalvetr = value; return this; }
        public DauerUntEig2022 getDauerUntEig() { return dauerUntEig; }
        public Allg2022 setDauerUntEig(DauerUntEig2022 value) { this.dauerUntEig = value; return this; }
        public BestArt2022 getBestArt() { return bestArt; }
        public Allg2022 setBestArt(BestArt2022 value) { this.bestArt = value; return this; }
        public Verrech2022 getVerrech() { return verrech; }
        public Allg2022 setVerrech(Verrech2022 value) { this.verrech = value; return this; }
        public ErgAngErkl2022 getErgAngErkl() { return ergAngErkl; }
        public Allg2022 setErgAngErkl(ErgAngErkl2022 value) { this.ergAngErkl = value; return this; }
    }

    /**
    * Angaben zum Unternehmen
    */
    @Api(Description="Angaben zum Unternehmen")
    public static class Unternehmen2022
    {
        /**
        * Name des Unternehmers
        */
        @ApiMember(Description="Name des Unternehmers", IsRequired=true, Name="E3000901")
        public StringTyp e3000901 = null;

        /**
        * gegebenenfalls abweichender Firmenname
        */
        @ApiMember(Description="gegebenenfalls abweichender Firmenname", Name="E3000902")
        public StringTyp e3000902 = null;

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

        /**
        * Adresse oder Postfach
        */
        @ApiMember(Description="Adresse oder Postfach", Name="Adr")
        public UnternehmenAdr2022 adr = null;

        /**
        * Kontakt
        */
        @ApiMember(Description="Kontakt", Name="Kontakt")
        public UnternehmenKontakt2022 kontakt = null;
        
        public StringTyp getE3000901() { return e3000901; }
        public Unternehmen2022 setE3000901(StringTyp value) { this.e3000901 = value; return this; }
        public StringTyp getE3000902() { return e3000902; }
        public Unternehmen2022 setE3000902(StringTyp value) { this.e3000902 = value; return this; }
        public StringTyp getE3001001() { return e3001001; }
        public Unternehmen2022 setE3001001(StringTyp value) { this.e3001001 = value; return this; }
        public UnternehmenAdr2022 getAdr() { return adr; }
        public Unternehmen2022 setAdr(UnternehmenAdr2022 value) { this.adr = value; return this; }
        public UnternehmenKontakt2022 getKontakt() { return kontakt; }
        public Unternehmen2022 setKontakt(UnternehmenKontakt2022 value) { this.kontakt = value; return this; }
    }

    /**
    * Zeichenkettenfeld.
    */
    @Api(Description="Zeichenkettenfeld.")
    public static class StringTyp extends 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 String wert = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public String getWert() { return wert; }
        public StringTyp setWert(String value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public StringTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Adresse oder Postfach eines Unternehmens
    */
    @Api(Description="Adresse oder Postfach eines Unternehmens")
    public static class UnternehmenAdr2022
    {
        /**
        * Straße
        */
        @ApiMember(Description="Straße", IsRequired=true, Name="E3001101")
        @Validate(Validator="NotNull")
        public StringTyp e3001101 = null;

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

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

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

        /**
        * Postleitzahl, Ort
        */
        @ApiMember(Description="Postleitzahl, Ort", Name="E3001201")
        public StringTyp e3001201 = null;

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

        /**
        * Postfach
        */
        @ApiMember(Description="Postfach", Name="E3001404")
        public StringTyp e3001404 = null;
        
        public StringTyp getE3001101() { return e3001101; }
        public UnternehmenAdr2022 setE3001101(StringTyp value) { this.e3001101 = value; return this; }
        public StringTyp getE3001203() { return e3001203; }
        public UnternehmenAdr2022 setE3001203(StringTyp value) { this.e3001203 = value; return this; }
        public StringTyp getE3001204() { return e3001204; }
        public UnternehmenAdr2022 setE3001204(StringTyp value) { this.e3001204 = value; return this; }
        public StringTyp getE3001205() { return e3001205; }
        public UnternehmenAdr2022 setE3001205(StringTyp value) { this.e3001205 = value; return this; }
        public StringTyp getE3001201() { return e3001201; }
        public UnternehmenAdr2022 setE3001201(StringTyp value) { this.e3001201 = value; return this; }
        public StringTyp getE3001403() { return e3001403; }
        public UnternehmenAdr2022 setE3001403(StringTyp value) { this.e3001403 = value; return this; }
        public StringTyp getE3001404() { return e3001404; }
        public UnternehmenAdr2022 setE3001404(StringTyp value) { this.e3001404 = value; return this; }
    }

    /**
    * Kontakt eines Unternehmens
    */
    @Api(Description="Kontakt eines Unternehmens")
    public static class UnternehmenKontakt2022
    {
        /**
        * Telefon
        */
        @ApiMember(Description="Telefon", Name="E3001202")
        public StringTyp e3001202 = null;

        /**
        * E-Mail Adresse
        */
        @ApiMember(Description="E-Mail Adresse", Name="E3001301")
        public StringTyp e3001301 = null;
        
        public StringTyp getE3001202() { return e3001202; }
        public UnternehmenKontakt2022 setE3001202(StringTyp value) { this.e3001202 = value; return this; }
        public StringTyp getE3001301() { return e3001301; }
        public UnternehmenKontakt2022 setE3001301(StringTyp value) { this.e3001301 = value; return this; }
    }

    /**
    * Im Ausland ansässiger Unternehmer
    */
    @Api(Description="Im Ausland ansässiger Unternehmer")
    public static class ImAuslAnsUnt2022
    {
        /**
        * Im Ausland ansässiger Unternehmer (falls ja, bitte eine 1 eintragen? Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage UN.
        */
        @ApiMember(Description="Im Ausland ansässiger Unternehmer (falls ja, bitte eine 1 eintragen? Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage UN.", Name="E3001402")
        public Bool1Typ e3001402 = null;
        
        public Bool1Typ isE3001402() { return e3001402; }
        public ImAuslAnsUnt2022 setE3001402(Bool1Typ value) { this.e3001402 = value; return this; }
    }

    /**
    * Fiskalvertreter
    */
    @Api(Description="Fiskalvertreter")
    public static class Fiskalvertr2022
    {
        /**
        * Fiskalvertreter (falls ja, bitte eine 1 eintragen). Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage FV.
        */
        @ApiMember(Description="Fiskalvertreter (falls ja, bitte eine 1 eintragen). Bitte tätigen Sie in diesem Fall auch Angaben auf der Anlage FV.", Name="E3001801")
        public Bool1Typ e3001801 = null;
        
        public Bool1Typ isE3001801() { return e3001801; }
        public Fiskalvertr2022 setE3001801(Bool1Typ value) { this.e3001801 = value; return this; }
    }

    /**
    * Dauer der Unternehmereigenschaft
    */
    @Api(Description="Dauer der Unternehmereigenschaft")
    public static class DauerUntEig2022
    {
        /**
        * 1. Zeitraum
        */
        @ApiMember(Description="1. Zeitraum", Name="E3001401")
        public ZeitraumTyp e3001401 = null;

        /**
        * 2. Zeitraum
        */
        @ApiMember(Description="2. Zeitraum", Name="E3001501")
        public ZeitraumTyp e3001501 = null;
        
        public ZeitraumTyp getE3001401() { return e3001401; }
        public DauerUntEig2022 setE3001401(ZeitraumTyp value) { this.e3001401 = value; return this; }
        public ZeitraumTyp getE3001501() { return e3001501; }
        public DauerUntEig2022 setE3001501(ZeitraumTyp value) { this.e3001501 = value; return this; }
    }

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

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public ErklaerungZeitraum getWert() { return wert; }
        public ZeitraumTyp setWert(ErklaerungZeitraum value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public ZeitraumTyp setAlias(String value) { this.alias = value; return this; }
    }

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

        /**
        * Das Ende des Datumbereiches.
        */
        @ApiMember(Description="Das Ende des Datumbereiches.", Name="Ende")
        public Date ende = null;
        
        public Date getStart() { return start; }
        public ErklaerungZeitraum setStart(Date value) { this.start = value; return this; }
        public Date getEnde() { return ende; }
        public ErklaerungZeitraum setEnde(Date value) { this.ende = value; return this; }
    }

    /**
    * Besteuerung der Entgelte
    */
    @Api(Description="Besteuerung der Entgelte")
    public static class BestArt2022
    {
        /**
        * Die Steuer wurde berechnet nach
        */
        @ApiMember(Description="Die Steuer wurde berechnet nach", IsRequired=true, Name="E3002203")
        public EntgeltartTyp e3002203 = null;
        
        public EntgeltartTyp getE3002203() { return e3002203; }
        public BestArt2022 setE3002203(EntgeltartTyp value) { this.e3002203 = value; return this; }
    }

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

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public Entgeltart getWert() { return wert; }
        public EntgeltartTyp setWert(Entgeltart value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public EntgeltartTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Art der Entgelte
    */
    @Flags()
    public static enum Entgeltart
    {
        @SerializedName("1") VereinbarteEntgelte(1),
        @SerializedName("16") VereinnahmteEntgelte(16);

        private final int value;
        Entgeltart(final int intValue) { value = intValue; }
        public int getValue() { return value; }
    }

    /**
    * Verrechnung / Abtretung
    */
    @Api(Description="Verrechnung / Abtretung")
    public static class Verrech2022
    {
        /**
        * Verrechnung des Erstattungsbetrages erwünscht / Erstattungsbetrag ist abgetreten?
        */
        @ApiMember(Description="Verrechnung des Erstattungsbetrages erwünscht / Erstattungsbetrag ist abgetreten?", Name="E3001701")
        public Bool1Typ e3001701 = null;
        
        public Bool1Typ isE3001701() { return e3001701; }
        public Verrech2022 setE3001701(Bool1Typ value) { this.e3001701 = value; return this; }
    }

    /**
    * Ergänzende Angaben zur Steuererklärung
    */
    @Api(Description="Ergänzende Angaben zur Steuererklärung")
    public static class ErgAngErkl2022
    {
        /**
        * Ü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 Bool1Typ e3002201 = null;

        /**
        * Ergänzende Angaben zur Steuererklärung
        */
        @ApiMember(Description="Ergänzende Angaben zur Steuererklärung", Name="E3002202")
        public StringTyp e3002202 = null;
        
        public Bool1Typ isE3002201() { return e3002201; }
        public ErgAngErkl2022 setE3002201(Bool1Typ value) { this.e3002201 = value; return this; }
        public StringTyp getE3002202() { return e3002202; }
        public ErgAngErkl2022 setE3002202(StringTyp value) { this.e3002202 = value; return this; }
    }

    /**
    * 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 static class Mitwirk2022
    {
        /**
        * Angaben zu den Kanzleien
        */
        @ApiMember(Description="Angaben zu den Kanzleien", Name="Kanzlei")
        public Kanzlei2022 kanzlei = null;

        /**
        * Angaben zu den Bearbeiter
        */
        @ApiMember(Description="Angaben zu den Bearbeiter", Name="Bearb")
        public Bearb2022 bearb = null;

        /**
        * Adressen der Mitwirkende
        */
        @ApiMember(Description="Adressen der Mitwirkende", Name="Adr")
        public MitwirkAdr2022 adr = null;

        /**
        * Kontakte der Mitwirkende
        */
        @ApiMember(Description="Kontakte der Mitwirkende", Name="Kontakt")
        public MitwirkKontakt2022 kontakt = null;

        /**
        * Mitwirkungen bei der Steuererklärung
        */
        @ApiMember(Description="Mitwirkungen bei der Steuererklärung", Name="MitwirkErkl")
        public MitwirkErkl2022 mitwirkErkl = null;
        
        public Kanzlei2022 getKanzlei() { return kanzlei; }
        public Mitwirk2022 setKanzlei(Kanzlei2022 value) { this.kanzlei = value; return this; }
        public Bearb2022 getBearb() { return bearb; }
        public Mitwirk2022 setBearb(Bearb2022 value) { this.bearb = value; return this; }
        public MitwirkAdr2022 getAdr() { return adr; }
        public Mitwirk2022 setAdr(MitwirkAdr2022 value) { this.adr = value; return this; }
        public MitwirkKontakt2022 getKontakt() { return kontakt; }
        public Mitwirk2022 setKontakt(MitwirkKontakt2022 value) { this.kontakt = value; return this; }
        public MitwirkErkl2022 getMitwirkErkl() { return mitwirkErkl; }
        public Mitwirk2022 setMitwirkErkl(MitwirkErkl2022 value) { this.mitwirkErkl = value; return this; }
    }

    public static class Kanzlei2022
    {
        /**
        * Bearbeiterkennzeichen
        */
        @ApiMember(Description="Bearbeiterkennzeichen", Name="E3002509")
        public StringTyp e3002509 = null;

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

        /**
        * (Feld? wird nicht gedruckt)Mandantennummer für Bescheiddatenabholung
        */
        @ApiMember(Description="(Feld? wird nicht gedruckt)Mandantennummer für Bescheiddatenabholung", Name="E3002507")
        public StringTyp e3002507 = null;
        
        public StringTyp getE3002509() { return e3002509; }
        public Kanzlei2022 setE3002509(StringTyp value) { this.e3002509 = value; return this; }
        public StringTyp getE3002506() { return e3002506; }
        public Kanzlei2022 setE3002506(StringTyp value) { this.e3002506 = value; return this; }
        public StringTyp getE3002507() { return e3002507; }
        public Kanzlei2022 setE3002507(StringTyp value) { this.e3002507 = value; return this; }
    }

    public static class Bearb2022
    {
        /**
        * Name
        */
        @ApiMember(Description="Name", Name="E3002501")
        public StringTyp e3002501 = null;

        /**
        * Vorname
        */
        @ApiMember(Description="Vorname", Name="E3002502")
        public StringTyp e3002502 = null;
        
        public StringTyp getE3002501() { return e3002501; }
        public Bearb2022 setE3002501(StringTyp value) { this.e3002501 = value; return this; }
        public StringTyp getE3002502() { return e3002502; }
        public Bearb2022 setE3002502(StringTyp value) { this.e3002502 = value; return this; }
    }

    public static class MitwirkAdr2022
    {
        /**
        * Straße, Hausnummer
        */
        @ApiMember(Description="Straße, Hausnummer", Name="E3002503")
        public StringTyp e3002503 = null;

        /**
        * Postleitzahl, Wohnort
        */
        @ApiMember(Description="Postleitzahl, Wohnort", Name="E3002504")
        public StringTyp e3002504 = null;
        
        public StringTyp getE3002503() { return e3002503; }
        public MitwirkAdr2022 setE3002503(StringTyp value) { this.e3002503 = value; return this; }
        public StringTyp getE3002504() { return e3002504; }
        public MitwirkAdr2022 setE3002504(StringTyp value) { this.e3002504 = value; return this; }
    }

    public static class MitwirkKontakt2022
    {
        /**
        * Telefon
        */
        @ApiMember(Description="Telefon", Name="E3002505")
        public StringTyp e3002505 = null;

        /**
        * zusätzliche Angaben
        */
        @ApiMember(Description="zusätzliche Angaben", Name="E3002508")
        public StringTyp e3002508 = null;
        
        public StringTyp getE3002505() { return e3002505; }
        public MitwirkKontakt2022 setE3002505(StringTyp value) { this.e3002505 = value; return this; }
        public StringTyp getE3002508() { return e3002508; }
        public MitwirkKontakt2022 setE3002508(StringTyp value) { this.e3002508 = value; return this; }
    }

    public static class MitwirkErkl2022
    {
        /**
        * 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 Bool1Typ e3002602 = null;
        
        public Bool1Typ isE3002602() { return e3002602; }
        public MitwirkErkl2022 setE3002602(Bool1Typ value) { this.e3002602 = value; return this; }
    }

    /**
    * Angaben der Besteuerung von Kleinunternehmer der Umsatzsteuererklärung.
    */
    @Api(Description="Angaben der Besteuerung von Kleinunternehmer der Umsatzsteuererklärung.")
    public static class Kleinuntern2022
    {
        /**
        * Umsatz im Kalenderjahr 2021 (Berechnung nach § 19 Absatz 1 und 3 UStG)
        */
        @ApiMember(Description="Umsatz im Kalenderjahr 2021 (Berechnung nach § 19 Absatz 1 und 3 UStG)", Name="E3002301")
        public GeldBetragOhneCent5DETyp e3002301 = null;

        /**
        * 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="E3002401")
        public GeldBetragOhneCent12DETyp e3002401 = null;
        
        public GeldBetragOhneCent5DETyp getE3002301() { return e3002301; }
        public Kleinuntern2022 setE3002301(GeldBetragOhneCent5DETyp value) { this.e3002301 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3002401() { return e3002401; }
        public Kleinuntern2022 setE3002401(GeldBetragOhneCent12DETyp value) { this.e3002401 = value; return this; }
    }

    /**
    * 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 static class GeldBetragOhneCent5DETyp extends 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 GeldBetragOhneCent5DE betrag = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public GeldBetragOhneCent5DE getBetrag() { return betrag; }
        public GeldBetragOhneCent5DETyp setBetrag(GeldBetragOhneCent5DE value) { this.betrag = value; return this; }
        public String getAlias() { return alias; }
        public GeldBetragOhneCent5DETyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class GeldBetragOhneCent5DE extends GeldBetragOhneCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Integer wert = null;
        
        public Integer getWert() { return wert; }
        public GeldBetragOhneCent5DE setWert(Integer value) { this.wert = value; return this; }
    }

    /**
    * 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 static class GeldBetragOhneCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Integer wert = null;
        
        public Integer getWert() { return wert; }
        public GeldBetragOhneCent setWert(Integer value) { this.wert = value; return this; }
    }

    /**
    * 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 static class GeldBetragOhneCent12DETyp extends 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 GeldBetragOhneCent12DE betrag = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public GeldBetragOhneCent12DE getBetrag() { return betrag; }
        public GeldBetragOhneCent12DETyp setBetrag(GeldBetragOhneCent12DE value) { this.betrag = value; return this; }
        public String getAlias() { return alias; }
        public GeldBetragOhneCent12DETyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class GeldBetragOhneCent12DE extends GrossGeldBetragOhneCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Long wert = null;
        
        public Long getWert() { return wert; }
        public GeldBetragOhneCent12DE setWert(Long value) { this.wert = value; return this; }
    }

    /**
    * 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 static class GrossGeldBetragOhneCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Long wert = null;
        
        public Long getWert() { return wert; }
        public GrossGeldBetragOhneCent setWert(Long value) { this.wert = value; return this; }
    }

    /**
    * Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben
    */
    @Api(Description="Steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben")
    public static class Umsaetze2022
    {
        /**
        * Umsätze zum allgemeinen Steuersatz
        */
        @ApiMember(Description="Umsätze zum allgemeinen Steuersatz", Name="UmsAllg")
        public UmsAllg2022 umsAllg = null;

        /**
        * Umsätze zum ermäßigten Steuersatz
        */
        @ApiMember(Description="Umsätze zum ermäßigten Steuersatz", Name="UmsErm")
        public UmsErm2022 umsErm = null;

        /**
        * Umsätze zu anderen Steuersätzen
        */
        @ApiMember(Description="Umsätze zu anderen Steuersätzen", Name="UmsAnd")
        public UmsAnd2022 umsAnd = null;

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

        /**
        * Steuer infolge Wechsels der Besteuerungsform
        */
        @ApiMember(Description="Steuer infolge Wechsels der Besteuerungsform", Name="WechsBestForm")
        public WechsBestForm2022 wechsBestForm = null;

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

        /**
        * Summe
        */
        @ApiMember(Description="Summe", Name="UmsSum")
        public UmsSum2022 umsSum = null;
        
        public UmsAllg2022 getUmsAllg() { return umsAllg; }
        public Umsaetze2022 setUmsAllg(UmsAllg2022 value) { this.umsAllg = value; return this; }
        public UmsErm2022 getUmsErm() { return umsErm; }
        public Umsaetze2022 setUmsErm(UmsErm2022 value) { this.umsErm = value; return this; }
        public UmsAnd2022 getUmsAnd() { return umsAnd; }
        public Umsaetze2022 setUmsAnd(UmsAnd2022 value) { this.umsAnd = value; return this; }
        public UmsLuf2022 getUmsLuf() { return umsLuf; }
        public Umsaetze2022 setUmsLuf(UmsLuf2022 value) { this.umsLuf = value; return this; }
        public WechsBestForm2022 getWechsBestForm() { return wechsBestForm; }
        public Umsaetze2022 setWechsBestForm(WechsBestForm2022 value) { this.wechsBestForm = value; return this; }
        public NachstStSatzAend2022 getNachstStSatzAend() { return nachstStSatzAend; }
        public Umsaetze2022 setNachstStSatzAend(NachstStSatzAend2022 value) { this.nachstStSatzAend = value; return this; }
        public UmsSum2022 getUmsSum() { return umsSum; }
        public Umsaetze2022 setUmsSum(UmsSum2022 value) { this.umsSum = value; return this; }
    }

    /**
    * Umsätze zum allgemeinen Steuersatz
    */
    @Api(Description="Umsätze zum allgemeinen Steuersatz")
    public static class UmsAllg2022
    {
        /**
        * Lieferungen und sonstige Leistungen zu 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Lieferungen und sonstige Leistungen zu 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003303")
        public GeldBetragOhneCent12DETyp e3003303 = null;

        /**
        * Lieferungen und sonstige Leistungen zu 19 Prozent (Steuer)
        */
        @ApiMember(Description="Lieferungen und sonstige Leistungen zu 19 Prozent (Steuer)", Name="E3003304")
        public GeldBetragMitCent12DETyp e3003304 = null;

        /**
        * Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003405")
        public GeldBetragOhneCent12DETyp e3003405 = null;

        /**
        * Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 19 Prozent (Steuer)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 19 Prozent (Steuer)", Name="E3003406")
        public GeldBetragMitCent12DETyp e3003406 = null;

        /**
        * Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003505")
        public GeldBetragOhneCent12DETyp e3003505 = null;

        /**
        * Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 Prozent (Steuer)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 19 Prozent (Steuer)", Name="E3003506")
        public GeldBetragMitCent12DETyp e3003506 = null;
        
        public GeldBetragOhneCent12DETyp getE3003303() { return e3003303; }
        public UmsAllg2022 setE3003303(GeldBetragOhneCent12DETyp value) { this.e3003303 = value; return this; }
        public GeldBetragMitCent12DETyp getE3003304() { return e3003304; }
        public UmsAllg2022 setE3003304(GeldBetragMitCent12DETyp value) { this.e3003304 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3003405() { return e3003405; }
        public UmsAllg2022 setE3003405(GeldBetragOhneCent12DETyp value) { this.e3003405 = value; return this; }
        public GeldBetragMitCent12DETyp getE3003406() { return e3003406; }
        public UmsAllg2022 setE3003406(GeldBetragMitCent12DETyp value) { this.e3003406 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3003505() { return e3003505; }
        public UmsAllg2022 setE3003505(GeldBetragOhneCent12DETyp value) { this.e3003505 = value; return this; }
        public GeldBetragMitCent12DETyp getE3003506() { return e3003506; }
        public UmsAllg2022 setE3003506(GeldBetragMitCent12DETyp value) { this.e3003506 = value; return this; }
    }

    /**
    * 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 static class GeldBetragMitCent12DETyp extends 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 GeldBetragMitCent12DE betrag = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public GeldBetragMitCent12DE getBetrag() { return betrag; }
        public GeldBetragMitCent12DETyp setBetrag(GeldBetragMitCent12DE value) { this.betrag = value; return this; }
        public String getAlias() { return alias; }
        public GeldBetragMitCent12DETyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class GeldBetragMitCent12DE extends GeldBetragMitCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Double wert = null;
        
        public Double getWert() { return wert; }
        public GeldBetragMitCent12DE setWert(Double value) { this.wert = value; return this; }
    }

    /**
    * 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 static class GeldBetragMitCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Double wert = null;
        
        public Double getWert() { return wert; }
        public GeldBetragMitCent setWert(Double value) { this.wert = value; return this; }
    }

    /**
    * Umsätze zum ermäßigten Steuersatz
    */
    @Api(Description="Umsätze zum ermäßigten Steuersatz")
    public static class UmsErm2022
    {
        /**
        * Lieferungen und sonstige Leistungen zu 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Lieferungen und sonstige Leistungen zu 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3004401")
        public GeldBetragOhneCent12DETyp e3004401 = null;

        /**
        * Lieferungen und sonstige Leistungen zu 7 Prozent (Steuer)
        */
        @ApiMember(Description="Lieferungen und sonstige Leistungen zu 7 Prozent (Steuer)", Name="E3004402")
        public GeldBetragMitCent12DETyp e3004402 = null;

        /**
        * Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003703")
        public GeldBetragOhneCent12DETyp e3003703 = null;

        /**
        * Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 7 Prozent (Steuer)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Lieferungen nach § 3 Absatz 1b UStG zu 7 Prozent (Steuer)", Name="E3003704")
        public GeldBetragMitCent12DETyp e3003704 = null;

        /**
        * Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3003803")
        public GeldBetragOhneCent12DETyp e3003803 = null;

        /**
        * Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 Prozent (Steuer)
        */
        @ApiMember(Description="Unentgeltliche Wertabgaben - Sonstige Leistungen nach § 3 Absatz 9a UStG zu 7 Prozent (Steuer)", Name="E3003804")
        public GeldBetragMitCent12DETyp e3003804 = null;
        
        public GeldBetragOhneCent12DETyp getE3004401() { return e3004401; }
        public UmsErm2022 setE3004401(GeldBetragOhneCent12DETyp value) { this.e3004401 = value; return this; }
        public GeldBetragMitCent12DETyp getE3004402() { return e3004402; }
        public UmsErm2022 setE3004402(GeldBetragMitCent12DETyp value) { this.e3004402 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3003703() { return e3003703; }
        public UmsErm2022 setE3003703(GeldBetragOhneCent12DETyp value) { this.e3003703 = value; return this; }
        public GeldBetragMitCent12DETyp getE3003704() { return e3003704; }
        public UmsErm2022 setE3003704(GeldBetragMitCent12DETyp value) { this.e3003704 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3003803() { return e3003803; }
        public UmsErm2022 setE3003803(GeldBetragOhneCent12DETyp value) { this.e3003803 = value; return this; }
        public GeldBetragMitCent12DETyp getE3003804() { return e3003804; }
        public UmsErm2022 setE3003804(GeldBetragMitCent12DETyp value) { this.e3003804 = value; return this; }
    }

    /**
    * Umsätze zu anderen Steuersätzen
    */
    @Api(Description="Umsätze zu anderen Steuersätzen")
    public static class UmsAnd2022
    {
        /**
        * Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3005001")
        public GeldBetragOhneCent12DETyp e3005001 = null;

        /**
        * Umsätze zu anderen Steuersätzen (Steuer)
        */
        @ApiMember(Description="Umsätze zu anderen Steuersätzen (Steuer)", Name="E3005002")
        public GeldBetragMitCent12DETyp e3005002 = null;
        
        public GeldBetragOhneCent12DETyp getE3005001() { return e3005001; }
        public UmsAnd2022 setE3005001(GeldBetragOhneCent12DETyp value) { this.e3005001 = value; return this; }
        public GeldBetragMitCent12DETyp getE3005002() { return e3005002; }
        public UmsAnd2022 setE3005002(GeldBetragMitCent12DETyp value) { this.e3005002 = value; return this; }
    }

    /**
    * Umsätze land- und forstwirtschaftlicher Betriebe nach § 24 UStG
    */
    @Api(Description="Umsätze land- und forstwirtschaftlicher Betriebe nach § 24 UStG")
    public static class UmsLuf2022
    {
        /**
        * Lieferungen in das übrige Gemeinschaftsgebiet an Abnehmer mit USt-Identifikationsnummer (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Lieferungen in das übrige Gemeinschaftsgebiet an Abnehmer mit USt-Identifikationsnummer (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3005201")
        public GeldBetragOhneCent12DETyp e3005201 = null;

        /**
        * Steuerpflichtige Lieferungen (einschließlich unentgeltlicher Wertabgaben) von Sägewerkserzeugnissen, die in der Anlage 2 zum UStG nicht aufgeführt sind (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Steuerpflichtige Lieferungen (einschließlich unentgeltlicher Wertabgaben) von Sägewerkserzeugnissen, die in der Anlage 2 zum UStG nicht aufgeführt sind (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3005301")
        public GeldBetragOhneCent12DETyp e3005301 = null;

        /**
        * Steuerpflichtige Lieferungen (einschließlich unentgeltlicher Wertabgaben) von Sägewerkserzeugnissen, die in der Anlage 2 zum UStG nicht aufgeführt sind (Steuer)
        */
        @ApiMember(Description="Steuerpflichtige Lieferungen (einschließlich unentgeltlicher Wertabgaben) von Sägewerkserzeugnissen, die in der Anlage 2 zum UStG nicht aufgeführt sind (Steuer)", Name="E3005302")
        public GeldBetragMitCent12DETyp e3005302 = null;

        /**
        * Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) - Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) - Umsätze zu anderen Steuersätzen (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3005701")
        public GeldBetragOhneCent12DETyp e3005701 = null;

        /**
        * Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) - Umsätze zu anderen Steuersätzen (Steuer)
        */
        @ApiMember(Description="Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) - Umsätze zu anderen Steuersätzen (Steuer)", Name="E3005702")
        public GeldBetragMitCent12DETyp e3005702 = null;

        /**
        * Übrige steuerpflichtige Umsätze land- und forstwirtschaftlicher Betriebe, für die keine Steuer zu entrichten ist (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Übrige steuerpflichtige Umsätze land- und forstwirtschaftlicher Betriebe, für die keine Steuer zu entrichten ist (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3005801")
        public GeldBetragOhneCent12DETyp e3005801 = null;

        /**
        * Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) zu 9,5 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) zu 9,5 Prozent (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3005101")
        public GeldBetragOhneCent12DETyp e3005101 = null;

        /**
        * Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) zu 9,5 Prozent (Steuer)
        */
        @ApiMember(Description="Steuerpflichtige Umsätze (einschließlich unentgeltlicher Wertabgaben) von Getränken, die in der Anlage 2 zum UStG nicht aufgeführt sind, sowie von alkoholischen Flüssigkeiten (zum Beispiel Wein) zu 9,5 Prozent (Steuer)", Name="E3005102")
        public GeldBetragMitCent12DETyp e3005102 = null;
        
        public GeldBetragOhneCent12DETyp getE3005201() { return e3005201; }
        public UmsLuf2022 setE3005201(GeldBetragOhneCent12DETyp value) { this.e3005201 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3005301() { return e3005301; }
        public UmsLuf2022 setE3005301(GeldBetragOhneCent12DETyp value) { this.e3005301 = value; return this; }
        public GeldBetragMitCent12DETyp getE3005302() { return e3005302; }
        public UmsLuf2022 setE3005302(GeldBetragMitCent12DETyp value) { this.e3005302 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3005701() { return e3005701; }
        public UmsLuf2022 setE3005701(GeldBetragOhneCent12DETyp value) { this.e3005701 = value; return this; }
        public GeldBetragMitCent12DETyp getE3005702() { return e3005702; }
        public UmsLuf2022 setE3005702(GeldBetragMitCent12DETyp value) { this.e3005702 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3005801() { return e3005801; }
        public UmsLuf2022 setE3005801(GeldBetragOhneCent12DETyp value) { this.e3005801 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3005101() { return e3005101; }
        public UmsLuf2022 setE3005101(GeldBetragOhneCent12DETyp value) { this.e3005101 = value; return this; }
        public GeldBetragMitCent12DETyp getE3005102() { return e3005102; }
        public UmsLuf2022 setE3005102(GeldBetragMitCent12DETyp value) { this.e3005102 = value; return this; }
    }

    /**
    * Steuer infolge Wechsels der Besteuerungsform
    */
    @Api(Description="Steuer infolge Wechsels der Besteuerungsform")
    public static class WechsBestForm2022
    {
        /**
        * 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 PositiverGeldBetragMitCent12DETyp e3102901 = null;
        
        public PositiverGeldBetragMitCent12DETyp getE3102901() { return e3102901; }
        public WechsBestForm2022 setE3102901(PositiverGeldBetragMitCent12DETyp value) { this.e3102901 = value; return this; }
    }

    /**
    * 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 static class PositiverGeldBetragMitCent12DETyp extends 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 PositiverGeldBetragMitCent12DE betrag = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public PositiverGeldBetragMitCent12DE getBetrag() { return betrag; }
        public PositiverGeldBetragMitCent12DETyp setBetrag(PositiverGeldBetragMitCent12DE value) { this.betrag = value; return this; }
        public String getAlias() { return alias; }
        public PositiverGeldBetragMitCent12DETyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class PositiverGeldBetragMitCent12DE extends GeldBetragMitCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Double wert = null;
        
        public Double getWert() { return wert; }
        public PositiverGeldBetragMitCent12DE setWert(Double value) { this.wert = value; return this; }
    }

    /**
    * Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung
    */
    @Api(Description="Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung")
    public static class NachstStSatzAend2022
    {
        /**
        * Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung (Steuer)
        */
        @ApiMember(Description="Nachsteuer auf versteuerte Anzahlungen und ähnlich wegen Steuersatzänderung (Steuer)", Name="E3005901")
        public GeldBetragMitCent12DETyp e3005901 = null;
        
        public GeldBetragMitCent12DETyp getE3005901() { return e3005901; }
        public NachstStSatzAend2022 setE3005901(GeldBetragMitCent12DETyp value) { this.e3005901 = value; return this; }
    }

    /**
    * Summe
    */
    @Api(Description="Summe")
    public static class UmsSum2022
    {
        /**
        * Summe der Steuer (zu übertragen in Zeile 152)
        */
        @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 152)", Name="E3006001")
        public GeldBetragMitCent12DETyp e3006001 = null;
        
        public GeldBetragMitCent12DETyp getE3006001() { return e3006001; }
        public UmsSum2022 setE3006001(GeldBetragMitCent12DETyp value) { this.e3006001 = value; return this; }
    }

    /**
    * Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.
    */
    @Api(Description="Steuerfreie Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben.")
    public static class UmsStfrei2022
    {
        /**
        * Steuerfreie Umsätze mit Vorsteuerabzug
        */
        @ApiMember(Description="Steuerfreie Umsätze mit Vorsteuerabzug", Name="MitVoStAbz")
        public MitVoStAbz2022 mitVoStAbz = null;

        /**
        * Steuerfreie Umsätze ohne Vorsteuerabzug
        */
        @ApiMember(Description="Steuerfreie Umsätze ohne Vorsteuerabzug", Name="OhneVoStAbz")
        public OhneVoStAbz2022 ohneVoStAbz = null;
        
        public MitVoStAbz2022 getMitVoStAbz() { return mitVoStAbz; }
        public UmsStfrei2022 setMitVoStAbz(MitVoStAbz2022 value) { this.mitVoStAbz = value; return this; }
        public OhneVoStAbz2022 getOhneVoStAbz() { return ohneVoStAbz; }
        public UmsStfrei2022 setOhneVoStAbz(OhneVoStAbz2022 value) { this.ohneVoStAbz = value; return this; }
    }

    /**
    * Steuerfreie Umsätze mit Vorsteuerabzug
    */
    @Api(Description="Steuerfreie Umsätze mit Vorsteuerabzug")
    public static class MitVoStAbz2022
    {
        /**
        * 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 IgLfg2022 igLfg = null;

        /**
        * 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 UmsStFreiWeit2022 umsStFreiWeit = null;
        
        public IgLfg2022 getIgLfg() { return igLfg; }
        public MitVoStAbz2022 setIgLfg(IgLfg2022 value) { this.igLfg = value; return this; }
        public UmsStFreiWeit2022 getUmsStFreiWeit() { return umsStFreiWeit; }
        public MitVoStAbz2022 setUmsStFreiWeit(UmsStFreiWeit2022 value) { this.umsStFreiWeit = value; return this; }
    }

    /**
    * Innergemeinschaftliche Lieferungen (§ 4 Nummer 1 Buchstabe b UStG)
    */
    @Api(Description="Innergemeinschaftliche Lieferungen (§ 4 Nummer 1 Buchstabe b UStG)")
    public static class IgLfg2022
    {
        /**
        * an Abnehmer mit USt-Identifikationsnummer (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="an Abnehmer mit USt-Identifikationsnummer (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3103301")
        public GeldBetragOhneCent12DETyp e3103301 = null;

        /**
        * neuer Fahrzeuge an Abnehmer ohne USt-Identifikationsnummer (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="neuer Fahrzeuge an Abnehmer ohne USt-Identifikationsnummer (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3103401")
        public GeldBetragOhneCent12DETyp e3103401 = null;

        /**
        * neuer Fahrzeuge außerhalb eines Unternehmens (§ 2a UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="neuer Fahrzeuge außerhalb eines Unternehmens (§ 2a UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3103501")
        public GeldBetragOhneCent12DETyp e3103501 = null;
        
        public GeldBetragOhneCent12DETyp getE3103301() { return e3103301; }
        public IgLfg2022 setE3103301(GeldBetragOhneCent12DETyp value) { this.e3103301 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3103401() { return e3103401; }
        public IgLfg2022 setE3103401(GeldBetragOhneCent12DETyp value) { this.e3103401 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3103501() { return e3103501; }
        public IgLfg2022 setE3103501(GeldBetragOhneCent12DETyp value) { this.e3103501 = value; return this; }
    }

    /**
    * 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 static class UmsStFreiWeit2022
    {
        /**
        * Ausfuhrlieferungen und Lohnveredelungen an Gegenständen der Ausfuhr (§ 4 Nummer 1 Buchstabe a UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Ausfuhrlieferungen und Lohnveredelungen an Gegenständen der Ausfuhr (§ 4 Nummer 1 Buchstabe a UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3103801")
        public GeldBetragOhneCent12DETyp e3103801 = null;

        /**
        * Umsätze nach § ... UStG:
        */
        @ApiMember(Description="Umsätze nach § ... UStG:", Name="E3103901")
        public StringTyp e3103901 = null;

        /**
        * Umsätze nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Umsätze nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3103902")
        public GeldBetragOhneCent12DETyp e3103902 = null;

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

        /**
        * 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 GeldBetragOhneCent12DETyp e3104101 = null;

        /**
        * Summe der Zeilen 67 bis 70 (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Summe der Zeilen 67 bis 70 (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104201")
        public GeldBetragOhneCent12DETyp e3104201 = null;
        
        public GeldBetragOhneCent12DETyp getE3103801() { return e3103801; }
        public UmsStFreiWeit2022 setE3103801(GeldBetragOhneCent12DETyp value) { this.e3103801 = value; return this; }
        public StringTyp getE3103901() { return e3103901; }
        public UmsStFreiWeit2022 setE3103901(StringTyp value) { this.e3103901 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3103902() { return e3103902; }
        public UmsStFreiWeit2022 setE3103902(GeldBetragOhneCent12DETyp value) { this.e3103902 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3104001() { return e3104001; }
        public UmsStFreiWeit2022 setE3104001(GeldBetragOhneCent12DETyp value) { this.e3104001 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3104101() { return e3104101; }
        public UmsStFreiWeit2022 setE3104101(GeldBetragOhneCent12DETyp value) { this.e3104101 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3104201() { return e3104201; }
        public UmsStFreiWeit2022 setE3104201(GeldBetragOhneCent12DETyp value) { this.e3104201 = value; return this; }
    }

    /**
    * Steuerfreie Umsätze ohne Vorsteuerabzug
    */
    @Api(Description="Steuerfreie Umsätze ohne Vorsteuerabzug")
    public static class OhneVoStAbz2022
    {
        /**
        * 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 NichtGesUms2022 nichtGesUms = null;

        /**
        * 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 GesUms2022 gesUms = null;
        
        public NichtGesUms2022 getNichtGesUms() { return nichtGesUms; }
        public OhneVoStAbz2022 setNichtGesUms(NichtGesUms2022 value) { this.nichtGesUms = value; return this; }
        public GesUms2022 getGesUms() { return gesUms; }
        public OhneVoStAbz2022 setGesUms(GesUms2022 value) { this.gesUms = value; return this; }
    }

    /**
    * 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 static class NichtGesUms2022
    {
        /**
        * nach § 4 Nummer 12 UStG (Vermietung und Verpachtung von Grundstücken und so weiter) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="nach § 4 Nummer 12 UStG (Vermietung und Verpachtung von Grundstücken und so weiter) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104401")
        public GeldBetragOhneCent12DETyp e3104401 = null;

        /**
        * nach § 4 Nummer ... UStG
        */
        @ApiMember(Description="nach § 4 Nummer ... UStG", Name="E3104501")
        public StringTyp e3104501 = null;

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

        /**
        * Summe der Zeilen 73 und 74 (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Summe der Zeilen 73 und 74 (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104601")
        public GeldBetragOhneCent12DETyp e3104601 = null;
        
        public GeldBetragOhneCent12DETyp getE3104401() { return e3104401; }
        public NichtGesUms2022 setE3104401(GeldBetragOhneCent12DETyp value) { this.e3104401 = value; return this; }
        public StringTyp getE3104501() { return e3104501; }
        public NichtGesUms2022 setE3104501(StringTyp value) { this.e3104501 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3104502() { return e3104502; }
        public NichtGesUms2022 setE3104502(GeldBetragOhneCent12DETyp value) { this.e3104502 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3104601() { return e3104601; }
        public NichtGesUms2022 setE3104601(GeldBetragOhneCent12DETyp value) { this.e3104601 = value; return this; }
    }

    public static class GesUms2022
    {
        /**
        * nach § ... UStG
        */
        @ApiMember(Description="nach § ... UStG", Name="E3104901")
        public StringTyp e3104901 = null;

        /**
        * nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="nach § ... UStG (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3104902")
        public GeldBetragOhneCent12DETyp e3104902 = null;
        
        public StringTyp getE3104901() { return e3104901; }
        public GesUms2022 setE3104901(StringTyp value) { this.e3104901 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3104902() { return e3104902; }
        public GesUms2022 setE3104902(GeldBetragOhneCent12DETyp value) { this.e3104902 = value; return this; }
    }

    /**
    * Innergemeinschaftliche Erwerbe
    */
    @Api(Description="Innergemeinschaftliche Erwerbe")
    public static class IgErw2022
    {
        /**
        * Steuerfreie innergemeinschaftliche Erwerbe
        */
        @ApiMember(Description="Steuerfreie innergemeinschaftliche Erwerbe", Name="Stfrei")
        public Stfrei2022 stfrei = null;

        /**
        * Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)
        */
        @ApiMember(Description="Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)", Name="Stpfl")
        public Stpfl2022 stpfl = null;

        /**
        * Summe
        */
        @ApiMember(Description="Summe", Name="IgErwSum")
        public IgErwSum2022 igErwSum = null;
        
        public Stfrei2022 getStfrei() { return stfrei; }
        public IgErw2022 setStfrei(Stfrei2022 value) { this.stfrei = value; return this; }
        public Stpfl2022 getStpfl() { return stpfl; }
        public IgErw2022 setStpfl(Stpfl2022 value) { this.stpfl = value; return this; }
        public IgErwSum2022 getIgErwSum() { return igErwSum; }
        public IgErw2022 setIgErwSum(IgErwSum2022 value) { this.igErwSum = value; return this; }
    }

    public static class Stfrei2022
    {
        /**
        * 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 GeldBetragOhneCent12DETyp e3100901 = null;
        
        public GeldBetragOhneCent12DETyp getE3100901() { return e3100901; }
        public Stfrei2022 setE3100901(GeldBetragOhneCent12DETyp value) { this.e3100901 = value; return this; }
    }

    /**
    * Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)
    */
    @Api(Description="Steuerpflichtige innergemeinschaftliche Erwerbe (§ 1a UStG)")
    public static class Stpfl2022
    {
        /**
        * 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 GeldBetragOhneCent12DETyp e3100902 = null;

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

        /**
        * 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 GeldBetragOhneCent12DETyp e3101301 = null;

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

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

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

        /**
        * 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 GeldBetragOhneCent12DETyp e3101401 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3101402 = null;
        
        public GeldBetragOhneCent12DETyp getE3100902() { return e3100902; }
        public Stpfl2022 setE3100902(GeldBetragOhneCent12DETyp value) { this.e3100902 = value; return this; }
        public GeldBetragMitCent12DETyp getE3100903() { return e3100903; }
        public Stpfl2022 setE3100903(GeldBetragMitCent12DETyp value) { this.e3100903 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3101301() { return e3101301; }
        public Stpfl2022 setE3101301(GeldBetragOhneCent12DETyp value) { this.e3101301 = value; return this; }
        public GeldBetragMitCent12DETyp getE3101302() { return e3101302; }
        public Stpfl2022 setE3101302(GeldBetragMitCent12DETyp value) { this.e3101302 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3101303() { return e3101303; }
        public Stpfl2022 setE3101303(GeldBetragOhneCent12DETyp value) { this.e3101303 = value; return this; }
        public GeldBetragMitCent12DETyp getE3101304() { return e3101304; }
        public Stpfl2022 setE3101304(GeldBetragMitCent12DETyp value) { this.e3101304 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3101401() { return e3101401; }
        public Stpfl2022 setE3101401(GeldBetragOhneCent12DETyp value) { this.e3101401 = value; return this; }
        public GeldBetragMitCent12DETyp getE3101402() { return e3101402; }
        public Stpfl2022 setE3101402(GeldBetragMitCent12DETyp value) { this.e3101402 = value; return this; }
    }

    /**
    * Summe
    */
    @Api(Description="Summe")
    public static class IgErwSum2022
    {
        /**
        * Summe der Steuer (zu übertragen in Zeile 153)
        */
        @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 153)", Name="E3101501")
        public GeldBetragMitCent12DETyp e3101501 = null;
        
        public GeldBetragMitCent12DETyp getE3101501() { return e3101501; }
        public IgErwSum2022 setE3101501(GeldBetragMitCent12DETyp value) { this.e3101501 = value; return this; }
    }

    /**
    * Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG)
    */
    @Api(Description="Steuerschuldner bei Auslagerung (§ 13a Absatz 1 Nummer 6 UStG)")
    public static class Auslag13a2022
    {
        /**
        * 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 GeldBetragOhneCent12DETyp e3102804 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3102805 = null;

        /**
        * Summe der Steuer (zu übertragen in Zeile 154)
        */
        @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 154)", Name="Auslag13aSum")
        public Auslag13aSum2022 auslag13aSum = null;
        
        public GeldBetragOhneCent12DETyp getE3102804() { return e3102804; }
        public Auslag13a2022 setE3102804(GeldBetragOhneCent12DETyp value) { this.e3102804 = value; return this; }
        public GeldBetragMitCent12DETyp getE3102805() { return e3102805; }
        public Auslag13a2022 setE3102805(GeldBetragMitCent12DETyp value) { this.e3102805 = value; return this; }
        public Auslag13aSum2022 getAuslag13aSum() { return auslag13aSum; }
        public Auslag13a2022 setAuslag13aSum(Auslag13aSum2022 value) { this.auslag13aSum = value; return this; }
    }

    /**
    * Summe der Steuer (zu übertragen in Zeile 154)
    */
    @Api(Description="Summe der Steuer (zu übertragen in Zeile 154)")
    public static class Auslag13aSum2022
    {
        /**
        * Summe der Steuer (zu übertragen in Zeile 154)
        */
        @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 154)", Name="E3102904")
        public GeldBetragMitCent12DETyp e3102904 = null;
        
        public GeldBetragMitCent12DETyp getE3102904() { return e3102904; }
        public Auslag13aSum2022 setE3102904(GeldBetragMitCent12DETyp value) { this.e3102904 = value; return this; }
    }

    /**
    * Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG)
    */
    @Api(Description="Innergemeinschaftliche Dreiecksgeschäfte (§ 25b UStG)")
    public static class IgDrei2022
    {
        /**
        * Lieferungen des ersten Abnehmers
        */
        @ApiMember(Description="Lieferungen des ersten Abnehmers", Name="LfgErstAbn")
        public LfgErstAbn2022 lfgErstAbn = null;

        /**
        * 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 LfgLetztAbn2022 lfgLetztAbn = null;

        /**
        * Summe
        */
        @ApiMember(Description="Summe", Name="IgDreiSum")
        public IgDreiSum2022 igDreiSum = null;
        
        public LfgErstAbn2022 getLfgErstAbn() { return lfgErstAbn; }
        public IgDrei2022 setLfgErstAbn(LfgErstAbn2022 value) { this.lfgErstAbn = value; return this; }
        public LfgLetztAbn2022 getLfgLetztAbn() { return lfgLetztAbn; }
        public IgDrei2022 setLfgLetztAbn(LfgLetztAbn2022 value) { this.lfgLetztAbn = value; return this; }
        public IgDreiSum2022 getIgDreiSum() { return igDreiSum; }
        public IgDrei2022 setIgDreiSum(IgDreiSum2022 value) { this.igDreiSum = value; return this; }
    }

    /**
    * Lieferungen des ersten Abnehmers
    */
    @Api(Description="Lieferungen des ersten Abnehmers")
    public static class LfgErstAbn2022
    {
        /**
        * Bemessungsgrundlage ohne Umsatzsteuer (volle EUR)
        */
        @ApiMember(Description="Bemessungsgrundlage ohne Umsatzsteuer (volle EUR)", Name="E3101801")
        public GeldBetragOhneCent12DETyp e3101801 = null;
        
        public GeldBetragOhneCent12DETyp getE3101801() { return e3101801; }
        public LfgErstAbn2022 setE3101801(GeldBetragOhneCent12DETyp value) { this.e3101801 = value; return this; }
    }

    /**
    * Lieferungen, für die der letzte Abnehmer die Umsatzsteuer schuldet
    */
    @Api(Description="Lieferungen, für die der letzte Abnehmer die Umsatzsteuer schuldet")
    public static class LfgLetztAbn2022
    {
        /**
        * 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 GeldBetragOhneCent12DETyp e3101701 = null;

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

        /**
        * 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 GeldBetragOhneCent12DETyp e3102301 = null;

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

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

        /**
        * zu anderen Steuersätzen (Steuer)
        */
        @ApiMember(Description="zu anderen Steuersätzen (Steuer)", Name="E3102304")
        public GeldBetragMitCent12DETyp e3102304 = null;
        
        public GeldBetragOhneCent12DETyp getE3101701() { return e3101701; }
        public LfgLetztAbn2022 setE3101701(GeldBetragOhneCent12DETyp value) { this.e3101701 = value; return this; }
        public GeldBetragMitCent12DETyp getE3101702() { return e3101702; }
        public LfgLetztAbn2022 setE3101702(GeldBetragMitCent12DETyp value) { this.e3101702 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3102301() { return e3102301; }
        public LfgLetztAbn2022 setE3102301(GeldBetragOhneCent12DETyp value) { this.e3102301 = value; return this; }
        public GeldBetragMitCent12DETyp getE3102302() { return e3102302; }
        public LfgLetztAbn2022 setE3102302(GeldBetragMitCent12DETyp value) { this.e3102302 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3102303() { return e3102303; }
        public LfgLetztAbn2022 setE3102303(GeldBetragOhneCent12DETyp value) { this.e3102303 = value; return this; }
        public GeldBetragMitCent12DETyp getE3102304() { return e3102304; }
        public LfgLetztAbn2022 setE3102304(GeldBetragMitCent12DETyp value) { this.e3102304 = value; return this; }
    }

    /**
    * Summe
    */
    @Api(Description="Summe")
    public static class IgDreiSum2022
    {
        /**
        * Summe der Steuer (zu übertragen in Zeile 155)
        */
        @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 155)", Name="E3102401")
        public GeldBetragMitCent12DETyp e3102401 = null;
        
        public GeldBetragMitCent12DETyp getE3102401() { return e3102401; }
        public IgDreiSum2022 setE3102401(GeldBetragMitCent12DETyp value) { this.e3102401 = value; return this; }
    }

    public static class Ums13b2022
    {
        /**
        * Steuerpflichtige sonstige Leistungen eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)
        */
        @ApiMember(Description="Steuerpflichtige sonstige Leistungen eines im übrigen Gemeinschaftsgebiet ansässigen Unternehmers (§ 13b Absatz 1 UStG) (Bemessungsgrundlage ohne Umsatzsteuer, volle EUR)", Name="E3102205")
        public GeldBetragOhneCent12DETyp e3102205 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3102206 = null;

        /**
        * 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 GeldBetragOhneCent12DETyp e3102307 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3102308 = null;

        /**
        * 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 GeldBetragOhneCent12DETyp e3102503 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3102504 = null;

        /**
        * Summe
        */
        @ApiMember(Description="Summe", Name="Ums13bSum")
        public Ums13bSum2022 ums13bSum = null;
        
        public GeldBetragOhneCent12DETyp getE3102205() { return e3102205; }
        public Ums13b2022 setE3102205(GeldBetragOhneCent12DETyp value) { this.e3102205 = value; return this; }
        public GeldBetragMitCent12DETyp getE3102206() { return e3102206; }
        public Ums13b2022 setE3102206(GeldBetragMitCent12DETyp value) { this.e3102206 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3102307() { return e3102307; }
        public Ums13b2022 setE3102307(GeldBetragOhneCent12DETyp value) { this.e3102307 = value; return this; }
        public GeldBetragMitCent12DETyp getE3102308() { return e3102308; }
        public Ums13b2022 setE3102308(GeldBetragMitCent12DETyp value) { this.e3102308 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3102503() { return e3102503; }
        public Ums13b2022 setE3102503(GeldBetragOhneCent12DETyp value) { this.e3102503 = value; return this; }
        public GeldBetragMitCent12DETyp getE3102504() { return e3102504; }
        public Ums13b2022 setE3102504(GeldBetragMitCent12DETyp value) { this.e3102504 = value; return this; }
        public Ums13bSum2022 getUms13bSum() { return ums13bSum; }
        public Ums13b2022 setUms13bSum(Ums13bSum2022 value) { this.ums13bSum = value; return this; }
    }

    /**
    * Summe der Steuer (zu übertragen in Zeile 156)
    */
    @Api(Description="Summe der Steuer (zu übertragen in Zeile 156)")
    public static class Ums13bSum2022
    {
        /**
        * Summe der Steuer (zu übertragen in Zeile 156)
        */
        @ApiMember(Description="Summe der Steuer (zu übertragen in Zeile 156)", Name="E3102601")
        public GeldBetragMitCent12DETyp e3102601 = null;
        
        public GeldBetragMitCent12DETyp getE3102601() { return e3102601; }
        public Ums13bSum2022 setE3102601(GeldBetragMitCent12DETyp value) { this.e3102601 = value; return this; }
    }

    /**
    * Ergänzende Angaben zu Umsätzen
    */
    @Api(Description="Ergänzende Angaben zu Umsätzen")
    public static class ErgAngUms2022
    {
        /**
        * Umsätze, die auf Grund eines Verzichts auf Steuerbefreiung (§ 9 UStG) als steuerpflichtig behandelt worden sind (Betrag volle EUR)
        */
        @ApiMember(Description="Umsätze, die auf Grund eines Verzichts auf Steuerbefreiung (§ 9 UStG) als steuerpflichtig behandelt worden sind (Betrag volle EUR)", Name="E3105201")
        public GeldBetragOhneCent12DETyp e3105201 = null;

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

        /**
        * 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 GeldBetragOhneCent12DETyp e3105101 = null;

        /**
        * 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 GeldBetragOhneCent12DETyp e3105102 = null;

        /**
        * 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 GeldBetragOhneCent12DETyp e3105602 = null;

        /**
        * 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 GeldBetragOhneCent12DETyp e3105702 = null;

        /**
        * Ü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 GeldBetragOhneCent12DETyp e3105801 = null;

        /**
        * In den Zeilen 109, 111 und 112 enthaltene Umsätze, die nach § 15 Absatz 2 und 3 UStG den Vorsteuerabzug ausschließen (Betrag volle EUR)
        */
        @ApiMember(Description="In den Zeilen 109, 111 und 112 enthaltene Umsätze, die nach § 15 Absatz 2 und 3 UStG den Vorsteuerabzug ausschließen (Betrag volle EUR)", Name="E3105901")
        public GeldBetragOhneCent12DETyp e3105901 = null;

        /**
        * 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 GeldBetragOhneCent12DETyp e3106001 = null;

        /**
        * 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 PositiverGeldBetragOhneCent12DETyp e3106101 = null;
        
        public GeldBetragOhneCent12DETyp getE3105201() { return e3105201; }
        public ErgAngUms2022 setE3105201(GeldBetragOhneCent12DETyp value) { this.e3105201 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105301() { return e3105301; }
        public ErgAngUms2022 setE3105301(GeldBetragOhneCent12DETyp value) { this.e3105301 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105101() { return e3105101; }
        public ErgAngUms2022 setE3105101(GeldBetragOhneCent12DETyp value) { this.e3105101 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105102() { return e3105102; }
        public ErgAngUms2022 setE3105102(GeldBetragOhneCent12DETyp value) { this.e3105102 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105602() { return e3105602; }
        public ErgAngUms2022 setE3105602(GeldBetragOhneCent12DETyp value) { this.e3105602 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105702() { return e3105702; }
        public ErgAngUms2022 setE3105702(GeldBetragOhneCent12DETyp value) { this.e3105702 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105801() { return e3105801; }
        public ErgAngUms2022 setE3105801(GeldBetragOhneCent12DETyp value) { this.e3105801 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3105901() { return e3105901; }
        public ErgAngUms2022 setE3105901(GeldBetragOhneCent12DETyp value) { this.e3105901 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3106001() { return e3106001; }
        public ErgAngUms2022 setE3106001(GeldBetragOhneCent12DETyp value) { this.e3106001 = value; return this; }
        public PositiverGeldBetragOhneCent12DETyp getE3106101() { return e3106101; }
        public ErgAngUms2022 setE3106101(PositiverGeldBetragOhneCent12DETyp value) { this.e3106101 = value; return this; }
    }

    /**
    * 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 static class PositiverGeldBetragOhneCent12DETyp extends 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 PositiverGeldBetragOhneCent12DE betrag = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public PositiverGeldBetragOhneCent12DE getBetrag() { return betrag; }
        public PositiverGeldBetragOhneCent12DETyp setBetrag(PositiverGeldBetragOhneCent12DE value) { this.betrag = value; return this; }
        public String getAlias() { return alias; }
        public PositiverGeldBetragOhneCent12DETyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class PositiverGeldBetragOhneCent12DE extends GrossGeldBetragOhneCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Long wert = null;
        
        public Long getWert() { return wert; }
        public PositiverGeldBetragOhneCent12DE setWert(Long value) { this.wert = value; return this; }
    }

    /**
    * Abziehbare Vorsteuerbeträge
    */
    @Api(Description="Abziehbare Vorsteuerbeträge")
    public static class AbzVoSt2022
    {
        /**
        * 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 GeldBetragMitCent12DETyp e3006201 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006301 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006401 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006503 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006502 = null;

        /**
        * Vorsteuerbeträge, die nach den allgemeinen Durchschnittssätzen berechnet sind (§ 23 UStG)
        */
        @ApiMember(Description="Vorsteuerbeträge, die nach den allgemeinen Durchschnittssätzen berechnet sind (§ 23 UStG)", Name="E3006501")
        public GeldBetragMitCent12DETyp e3006501 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006601 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006701 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3006801 = null;

        /**
        * Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)
        */
        @ApiMember(Description="Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)", Name="AbzVoStSum")
        public AbzVoStSum2022 abzVoStSum = null;

        /**
        * Ergänzende Angabe
        */
        @ApiMember(Description="Ergänzende Angabe", Name="AbzVoStSum")
        public ErgAng2022 ergAng = null;
        
        public GeldBetragMitCent12DETyp getE3006201() { return e3006201; }
        public AbzVoSt2022 setE3006201(GeldBetragMitCent12DETyp value) { this.e3006201 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006301() { return e3006301; }
        public AbzVoSt2022 setE3006301(GeldBetragMitCent12DETyp value) { this.e3006301 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006401() { return e3006401; }
        public AbzVoSt2022 setE3006401(GeldBetragMitCent12DETyp value) { this.e3006401 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006503() { return e3006503; }
        public AbzVoSt2022 setE3006503(GeldBetragMitCent12DETyp value) { this.e3006503 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006502() { return e3006502; }
        public AbzVoSt2022 setE3006502(GeldBetragMitCent12DETyp value) { this.e3006502 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006501() { return e3006501; }
        public AbzVoSt2022 setE3006501(GeldBetragMitCent12DETyp value) { this.e3006501 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006601() { return e3006601; }
        public AbzVoSt2022 setE3006601(GeldBetragMitCent12DETyp value) { this.e3006601 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006701() { return e3006701; }
        public AbzVoSt2022 setE3006701(GeldBetragMitCent12DETyp value) { this.e3006701 = value; return this; }
        public GeldBetragMitCent12DETyp getE3006801() { return e3006801; }
        public AbzVoSt2022 setE3006801(GeldBetragMitCent12DETyp value) { this.e3006801 = value; return this; }
        public AbzVoStSum2022 getAbzVoStSum() { return abzVoStSum; }
        public AbzVoSt2022 setAbzVoStSum(AbzVoStSum2022 value) { this.abzVoStSum = value; return this; }
        public ErgAng2022 getErgAng() { return ergAng; }
        public AbzVoSt2022 setErgAng(ErgAng2022 value) { this.ergAng = value; return this; }
    }

    /**
    * Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)
    */
    @Api(Description="Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)")
    public static class AbzVoStSum2022
    {
        /**
        * Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)
        */
        @ApiMember(Description="Summe der Vorsteuerbeträge (zu übertragen in Zeile 158)", Name="E3006901")
        public GeldBetragMitCent12DETyp e3006901 = null;
        
        public GeldBetragMitCent12DETyp getE3006901() { return e3006901; }
        public AbzVoStSum2022 setE3006901(GeldBetragMitCent12DETyp value) { this.e3006901 = value; return this; }
    }

    public static class ErgAng2022
    {
        /**
        * Minderung der abziehbaren Vorsteuerbeträge nach § 17 Absatz 1 Satz 2 in Verbindung mit Absatz 2 Nummer 1 Satz 1 UStG (in den Zeilen 122, 127 bis 129 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 122, 127 bis 129 enthalten)", Name="E3007001")
        public PositiverGeldBetragMitCent12DETyp e3007001 = null;
        
        public PositiverGeldBetragMitCent12DETyp getE3007001() { return e3007001; }
        public ErgAng2022 setE3007001(PositiverGeldBetragMitCent12DETyp value) { this.e3007001 = value; return this; }
    }

    /**
    * Berichtigung des Vorsteuerabzugs (§ 15a UStG).
    */
    @Api(Description="Berichtigung des Vorsteuerabzugs (§ 15a UStG).")
    public static class BerVoSt15a2022
    {
        /**
        * Sind im Kalenderjahr 2022 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 2022 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden?", Name="GrdstErstmVerw")
        public GrdstErstmVerw2022 grdstErstmVerw = null;

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

        /**
        * 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 GrundAendVerh2022 grundAendVerh = null;

        /**
        * Nutzungsänderung
        */
        @ApiMember(Description="Nutzungsänderung", Name="VoStBerBetr")
        public VoStBerBetr2022 voStBerBetr = null;
        
        public GrdstErstmVerw2022 getGrdstErstmVerw() { return grdstErstmVerw; }
        public BerVoSt15a2022 setGrdstErstmVerw(GrdstErstmVerw2022 value) { this.grdstErstmVerw = value; return this; }
        public AendVerh2022 getAendVerh() { return aendVerh; }
        public BerVoSt15a2022 setAendVerh(AendVerh2022 value) { this.aendVerh = value; return this; }
        public GrundAendVerh2022 getGrundAendVerh() { return grundAendVerh; }
        public BerVoSt15a2022 setGrundAendVerh(GrundAendVerh2022 value) { this.grundAendVerh = value; return this; }
        public VoStBerBetr2022 getVoStBerBetr() { return voStBerBetr; }
        public BerVoSt15a2022 setVoStBerBetr(VoStBerBetr2022 value) { this.voStBerBetr = value; return this; }
    }

    /**
    * Sind im Kalenderjahr 2022 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden?
    */
    @Api(Description="Sind im Kalenderjahr 2022 Grundstücke, Grundstücksteile, Gebäude oder Gebäudeteile, für die Vorsteuer abgezogen worden ist, erstmals tatsächlich verwendet worden?")
    public static class GrdstErstmVerw2022
    {
        /**
        * Falls ja, bitte eine 1 eintragen
        */
        @ApiMember(Description="Falls ja, bitte eine 1 eintragen", Name="E3007301")
        public Bool1Typ e3007301 = null;

        /**
        * Angaben zum Grundstück oder Gebäude.
        */
        @ApiMember(Description="Angaben zum Grundstück oder Gebäude.", Name="AngGrdst")
        public AngGrdst2022 angGrdst = null;
        
        public Bool1Typ isE3007301() { return e3007301; }
        public GrdstErstmVerw2022 setE3007301(Bool1Typ value) { this.e3007301 = value; return this; }
        public AngGrdst2022 getAngGrdst() { return angGrdst; }
        public GrdstErstmVerw2022 setAngGrdst(AngGrdst2022 value) { this.angGrdst = value; return this; }
    }

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

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

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

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

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

        /**
        * in den Vorjahren - Investitionsphase - bereits abgezogene Vorsteuer
        */
        @ApiMember(Description="in den Vorjahren - Investitionsphase - bereits abgezogene Vorsteuer", Name="E3007406")
        public GeldBetragOhneCent12DETyp e3007406 = null;
        
        public StringTyp getE3007401() { return e3007401; }
        public AngGrdst2022 setE3007401(StringTyp value) { this.e3007401 = value; return this; }
        public DatumUhrzeitTyp getE3007402() { return e3007402; }
        public AngGrdst2022 setE3007402(DatumUhrzeitTyp value) { this.e3007402 = value; return this; }
        public StringTyp getE3007403() { return e3007403; }
        public AngGrdst2022 setE3007403(StringTyp value) { this.e3007403 = value; return this; }
        public PositiverGeldBetragMitCent13DETyp getE3007404() { return e3007404; }
        public AngGrdst2022 setE3007404(PositiverGeldBetragMitCent13DETyp value) { this.e3007404 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3007405() { return e3007405; }
        public AngGrdst2022 setE3007405(GeldBetragOhneCent12DETyp value) { this.e3007405 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3007406() { return e3007406; }
        public AngGrdst2022 setE3007406(GeldBetragOhneCent12DETyp value) { this.e3007406 = value; return this; }
    }

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

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public Date getWert() { return wert; }
        public DatumUhrzeitTyp setWert(Date value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public DatumUhrzeitTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class PositiverGeldBetragMitCent13DETyp extends 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 PositiverGeldBetragMitCent13DE betrag = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public PositiverGeldBetragMitCent13DE getBetrag() { return betrag; }
        public PositiverGeldBetragMitCent13DETyp setBetrag(PositiverGeldBetragMitCent13DE value) { this.betrag = value; return this; }
        public String getAlias() { return alias; }
        public PositiverGeldBetragMitCent13DETyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * 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 static class PositiverGeldBetragMitCent13DE extends GeldBetragMitCent
    {
        /**
        * The intrinsic currency value.
        */
        @ApiMember(Description="The intrinsic currency value.")
        public Double wert = null;
        
        public Double getWert() { return wert; }
        public PositiverGeldBetragMitCent13DE setWert(Double value) { this.wert = value; return this; }
    }

    /**
    * Haben sich im Jahr 2022 die für den ursprünglichen Vorsteuerabzug maßgebenden Verhältnisse geändert bei.
    */
    @Api(Description="Haben sich im Jahr 2022 die für den ursprünglichen Vorsteuerabzug maßgebenden Verhältnisse geändert bei.")
    public static class AendVerh2022
    {
        /**
        * 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 Bool1Typ e3007601 = null;

        /**
        * 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 Bool1Typ e3008501 = null;

        /**
        * 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 Bool1Typ e3008601 = null;
        
        public Bool1Typ isE3007601() { return e3007601; }
        public AendVerh2022 setE3007601(Bool1Typ value) { this.e3007601 = value; return this; }
        public Bool1Typ isE3008501() { return e3008501; }
        public AendVerh2022 setE3008501(Bool1Typ value) { this.e3008501 = value; return this; }
        public Bool1Typ isE3008601() { return e3008601; }
        public AendVerh2022 setE3008601(Bool1Typ value) { this.e3008601 = value; return this; }
    }

    /**
    * 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 static class GrundAendVerh2022
    {
        /**
        * Veräußerung
        */
        @ApiMember(Description="Veräußerung", Name="E3007801")
        public BoolXTyp e3007801 = null;

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

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

        /**
        * Nutzungsänderungen
        */
        @ApiMember(Description="Nutzungsänderungen", Name="NutzAend")
        public NutzAend2022 nutzAend = null;
        
        public BoolXTyp isE3007801() { return e3007801; }
        public GrundAendVerh2022 setE3007801(BoolXTyp value) { this.e3007801 = value; return this; }
        public BoolXTyp isE3007802() { return e3007802; }
        public GrundAendVerh2022 setE3007802(BoolXTyp value) { this.e3007802 = value; return this; }
        public BoolXTyp isE3007803() { return e3007803; }
        public GrundAendVerh2022 setE3007803(BoolXTyp value) { this.e3007803 = value; return this; }
        public NutzAend2022 getNutzAend() { return nutzAend; }
        public GrundAendVerh2022 setNutzAend(NutzAend2022 value) { this.nutzAend = value; return this; }
    }

    /**
    * 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 static class BoolXTyp extends 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 Boolean wert = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public Boolean isWert() { return wert; }
        public BoolXTyp setWert(Boolean value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public BoolXTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Nutzungsänderung.
    */
    @Api(Description="Nutzungsänderung.")
    public static class NutzAend2022
    {
        /**
        * Nutzungsänderung, und zwar
        */
        @ApiMember(Description="Nutzungsänderung, und zwar", Name="E3007901")
        public BoolXTyp e3007901 = null;

        /**
        * Ü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 BoolXTyp e3008001 = null;

        /**
        * 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 BoolXTyp e3008202 = null;

        /**
        * 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 BoolXTyp e3008401 = null;

        /**
        * Begründung
        */
        @ApiMember(Description="Begründung", Name="E3008402")
        public StringTyp e3008402 = null;
        
        public BoolXTyp isE3007901() { return e3007901; }
        public NutzAend2022 setE3007901(BoolXTyp value) { this.e3007901 = value; return this; }
        public BoolXTyp isE3008001() { return e3008001; }
        public NutzAend2022 setE3008001(BoolXTyp value) { this.e3008001 = value; return this; }
        public BoolXTyp isE3008202() { return e3008202; }
        public NutzAend2022 setE3008202(BoolXTyp value) { this.e3008202 = value; return this; }
        public BoolXTyp isE3008401() { return e3008401; }
        public NutzAend2022 setE3008401(BoolXTyp value) { this.e3008401 = value; return this; }
        public StringTyp getE3008402() { return e3008402; }
        public NutzAend2022 setE3008402(StringTyp value) { this.e3008402 = value; return this; }
    }

    /**
    * Vorsteuerberichtigungsbeträge.
    */
    @Api(Description="Vorsteuerberichtigungsbeträge.")
    public static class VoStBerBetr2022
    {
        /**
        * zu 1. Grundstücke und so weiter, § 15a Absatz 1 Satz 2 UStG (nachträglich abziehbar)
        */
        @ApiMember(Description="zu 1. Grundstücke und so weiter, § 15a Absatz 1 Satz 2 UStG (nachträglich abziehbar)", Name="E3008701")
        public PositiverGeldBetragMitCent12DETyp e3008701 = null;

        /**
        * zu 1. Grundstücke und so weiter, § 15a Absatz 1 Satz 2 UStG (zurückzuzahlen)
        */
        @ApiMember(Description="zu 1. Grundstücke und so weiter, § 15a Absatz 1 Satz 2 UStG (zurückzuzahlen)", Name="E3008702")
        public PositiverGeldBetragMitCent12DETyp e3008702 = null;

        /**
        * zu 2. andere Wirtschaftsgüter und so weiter, § 15a Absatz 1 Satz 1 UStG (nachträglich abziehbar)
        */
        @ApiMember(Description="zu 2. andere Wirtschaftsgüter und so weiter, § 15a Absatz 1 Satz 1 UStG (nachträglich abziehbar)", Name="E3008801")
        public PositiverGeldBetragMitCent12DETyp e3008801 = null;

        /**
        * zu 2. andere Wirtschaftsgüter und so weiter, § 15a Absatz 1 Satz 1 UStG (zurückzuzahlen)
        */
        @ApiMember(Description="zu 2. andere Wirtschaftsgüter und so weiter, § 15a Absatz 1 Satz 1 UStG (zurückzuzahlen)", Name="E3008802")
        public PositiverGeldBetragMitCent12DETyp e3008802 = null;

        /**
        * zu 3. Wirtschaftsgüter und so weiter, § 15a Absatz 2 UStG (nachträglich abziehbar)
        */
        @ApiMember(Description="zu 3. Wirtschaftsgüter und so weiter, § 15a Absatz 2 UStG (nachträglich abziehbar)", Name="E3008803")
        public PositiverGeldBetragMitCent12DETyp e3008803 = null;

        /**
        * zu 3. Wirtschaftsgüter und so weiter, § 15a Absatz 2 UStG (zurückzuzahlen)
        */
        @ApiMember(Description="zu 3. Wirtschaftsgüter und so weiter, § 15a Absatz 2 UStG (zurückzuzahlen)", Name="E3008804")
        public PositiverGeldBetragMitCent12DETyp e3008804 = null;

        /**
        * Summe
        */
        @ApiMember(Description="Summe", Name="VoStBerBetrSum")
        public VoStBerBetrSum2022 voStBerBetrSum = null;
        
        public PositiverGeldBetragMitCent12DETyp getE3008701() { return e3008701; }
        public VoStBerBetr2022 setE3008701(PositiverGeldBetragMitCent12DETyp value) { this.e3008701 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3008702() { return e3008702; }
        public VoStBerBetr2022 setE3008702(PositiverGeldBetragMitCent12DETyp value) { this.e3008702 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3008801() { return e3008801; }
        public VoStBerBetr2022 setE3008801(PositiverGeldBetragMitCent12DETyp value) { this.e3008801 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3008802() { return e3008802; }
        public VoStBerBetr2022 setE3008802(PositiverGeldBetragMitCent12DETyp value) { this.e3008802 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3008803() { return e3008803; }
        public VoStBerBetr2022 setE3008803(PositiverGeldBetragMitCent12DETyp value) { this.e3008803 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3008804() { return e3008804; }
        public VoStBerBetr2022 setE3008804(PositiverGeldBetragMitCent12DETyp value) { this.e3008804 = value; return this; }
        public VoStBerBetrSum2022 getVoStBerBetrSum() { return voStBerBetrSum; }
        public VoStBerBetr2022 setVoStBerBetrSum(VoStBerBetrSum2022 value) { this.voStBerBetrSum = value; return this; }
    }

    /**
    * Summe
    */
    @Api(Description="Summe")
    public static class VoStBerBetrSum2022
    {
        /**
        * Summe nachträglich abziehbar (zu übertragen in Zeile 159)
        */
        @ApiMember(Description="Summe nachträglich abziehbar (zu übertragen in Zeile 159)", Name="E3008901")
        public PositiverGeldBetragMitCent12DETyp e3008901 = null;

        /**
        * Summe zurückzuzahlen (zu übertragen in Zeile 161)
        */
        @ApiMember(Description="Summe zurückzuzahlen (zu übertragen in Zeile 161)", Name="E3008902")
        public PositiverGeldBetragMitCent12DETyp e3008902 = null;
        
        public PositiverGeldBetragMitCent12DETyp getE3008901() { return e3008901; }
        public VoStBerBetrSum2022 setE3008901(PositiverGeldBetragMitCent12DETyp value) { this.e3008901 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3008902() { return e3008902; }
        public VoStBerBetrSum2022 setE3008902(PositiverGeldBetragMitCent12DETyp value) { this.e3008902 = value; return this; }
    }

    /**
    * Berechnung der zu entrichtenden Umsatzsteuer.
    */
    @Api(Description="Berechnung der zu entrichtenden Umsatzsteuer.")
    public static class BerechUSt2022
    {
        /**
        * Umsatzsteuer auf steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben (aus Zeile 60)
        */
        @ApiMember(Description="Umsatzsteuer auf steuerpflichtige Lieferungen, sonstige Leistungen und unentgeltliche Wertabgaben (aus Zeile 60)", Name="E3009201")
        public GeldBetragMitCent12DETyp e3009201 = null;

        /**
        * Umsatzsteuer auf innergemeinschaftliche Erwerbe (aus Zeile 86)
        */
        @ApiMember(Description="Umsatzsteuer auf innergemeinschaftliche Erwerbe (aus Zeile 86)", Name="E3009401")
        public GeldBetragMitCent12DETyp e3009401 = null;

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

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

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

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

        /**
        * Abziehbare Vorsteuerbeträge (aus Zeile 131)
        */
        @ApiMember(Description="Abziehbare Vorsteuerbeträge (aus Zeile 131)", Name="E3009901")
        public GeldBetragMitCent12DETyp e3009901 = null;

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

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

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

        /**
        * 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 GeldBetragMitCent12DETyp e3010301 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3010401 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3010501 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3010601 = null;

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

        /**
        * Verbleibende Umsatzsteuer / Verbleibender Überschuss
        */
        @ApiMember(Description="Verbleibende Umsatzsteuer / Verbleibender Überschuss", Name="VerblUSt")
        public VerblUSt2022 verblUSt = null;

        /**
        * Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -
        */
        @ApiMember(Description="Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -", Name="ZahlErstatt")
        public ZahlErstatt2022 zahlErstatt = null;
        
        public GeldBetragMitCent12DETyp getE3009201() { return e3009201; }
        public BerechUSt2022 setE3009201(GeldBetragMitCent12DETyp value) { this.e3009201 = value; return this; }
        public GeldBetragMitCent12DETyp getE3009401() { return e3009401; }
        public BerechUSt2022 setE3009401(GeldBetragMitCent12DETyp value) { this.e3009401 = value; return this; }
        public GeldBetragMitCent12DETyp getE3009602() { return e3009602; }
        public BerechUSt2022 setE3009602(GeldBetragMitCent12DETyp value) { this.e3009602 = value; return this; }
        public GeldBetragMitCent12DETyp getE3009501() { return e3009501; }
        public BerechUSt2022 setE3009501(GeldBetragMitCent12DETyp value) { this.e3009501 = value; return this; }
        public GeldBetragMitCent12DETyp getE3009502() { return e3009502; }
        public BerechUSt2022 setE3009502(GeldBetragMitCent12DETyp value) { this.e3009502 = value; return this; }
        public GeldBetragMitCent12DETyp getE3009801() { return e3009801; }
        public BerechUSt2022 setE3009801(GeldBetragMitCent12DETyp value) { this.e3009801 = value; return this; }
        public GeldBetragMitCent12DETyp getE3009901() { return e3009901; }
        public BerechUSt2022 setE3009901(GeldBetragMitCent12DETyp value) { this.e3009901 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3010001() { return e3010001; }
        public BerechUSt2022 setE3010001(PositiverGeldBetragMitCent12DETyp value) { this.e3010001 = value; return this; }
        public GeldBetragMitCent12DETyp getE3010201() { return e3010201; }
        public BerechUSt2022 setE3010201(GeldBetragMitCent12DETyp value) { this.e3010201 = value; return this; }
        public PositiverGeldBetragMitCent12DETyp getE3009701() { return e3009701; }
        public BerechUSt2022 setE3009701(PositiverGeldBetragMitCent12DETyp value) { this.e3009701 = value; return this; }
        public GeldBetragMitCent12DETyp getE3010301() { return e3010301; }
        public BerechUSt2022 setE3010301(GeldBetragMitCent12DETyp value) { this.e3010301 = value; return this; }
        public GeldBetragMitCent12DETyp getE3010401() { return e3010401; }
        public BerechUSt2022 setE3010401(GeldBetragMitCent12DETyp value) { this.e3010401 = value; return this; }
        public GeldBetragMitCent12DETyp getE3010501() { return e3010501; }
        public BerechUSt2022 setE3010501(GeldBetragMitCent12DETyp value) { this.e3010501 = value; return this; }
        public GeldBetragMitCent12DETyp getE3010601() { return e3010601; }
        public BerechUSt2022 setE3010601(GeldBetragMitCent12DETyp value) { this.e3010601 = value; return this; }
        public GeldBetragMitCent12DETyp getE3010602() { return e3010602; }
        public BerechUSt2022 setE3010602(GeldBetragMitCent12DETyp value) { this.e3010602 = value; return this; }
        public VerblUSt2022 getVerblUSt() { return verblUSt; }
        public BerechUSt2022 setVerblUSt(VerblUSt2022 value) { this.verblUSt = value; return this; }
        public ZahlErstatt2022 getZahlErstatt() { return zahlErstatt; }
        public BerechUSt2022 setZahlErstatt(ZahlErstatt2022 value) { this.zahlErstatt = value; return this; }
    }

    /**
    * Verbleibende Umsatzsteuer / Verbleibender Überschuss.
    */
    @Api(Description="Verbleibende Umsatzsteuer / Verbleibender Überschuss.")
    public static class VerblUSt2022
    {
        /**
        * 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 GeldBetragMitCent12DETyp e3011101 = null;

        /**
        * Vorauszahlungssoll 2022 (einschließlich Sondervorauszahlung)
        */
        @ApiMember(Description="Vorauszahlungssoll 2022 (einschließlich Sondervorauszahlung)", IsRequired=true, Name="E3011301")
        @Validate(Validator="NotNull")
        public GeldBetragMitCent12DETyp e3011301 = null;
        
        public GeldBetragMitCent12DETyp getE3011101() { return e3011101; }
        public VerblUSt2022 setE3011101(GeldBetragMitCent12DETyp value) { this.e3011101 = value; return this; }
        public GeldBetragMitCent12DETyp getE3011301() { return e3011301; }
        public VerblUSt2022 setE3011301(GeldBetragMitCent12DETyp value) { this.e3011301 = value; return this; }
    }

    /**
    * Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -
    */
    @Api(Description="Noch an die Finanzkasse zu entrichten - Abschlusszahlung / Erstattungsanspruch -")
    public static class ZahlErstatt2022
    {
        /**
        * 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 GeldBetragMitCent12DETyp e3011401 = null;
        
        public GeldBetragMitCent12DETyp getE3011401() { return e3011401; }
        public ZahlErstatt2022 setE3011401(GeldBetragMitCent12DETyp value) { this.e3011401 = value; return this; }
    }

    /**
    * 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 static class UN2022
    {
        /**
        * A. Allgemeine Angaben
        */
        @ApiMember(Description="A. Allgemeine Angaben", Name="Allg")
        public UnAllg2022 allg = null;

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

        /**
        * C. Anrechenbare Beträge
        */
        @ApiMember(Description="C. Anrechenbare Beträge", Name="AnrechBetr")
        public AnrechBetr2022 anrechBetr = null;

        /**
        * D. Ergänzende Angaben zu Umsätzen
        */
        @ApiMember(Description="D. Ergänzende Angaben zu Umsätzen", Name="ErgAngUms")
        public UnErgAngUms2022 ergAngUms = null;
        
        public UnAllg2022 getAllg() { return allg; }
        public UN2022 setAllg(UnAllg2022 value) { this.allg = value; return this; }
        public VoStVerguetBZSt2022 getVoStVerguetBZSt() { return voStVerguetBZSt; }
        public UN2022 setVoStVerguetBZSt(VoStVerguetBZSt2022 value) { this.voStVerguetBZSt = value; return this; }
        public AnrechBetr2022 getAnrechBetr() { return anrechBetr; }
        public UN2022 setAnrechBetr(AnrechBetr2022 value) { this.anrechBetr = value; return this; }
        public UnErgAngUms2022 getErgAngUms() { return ergAngUms; }
        public UN2022 setErgAngUms(UnErgAngUms2022 value) { this.ergAngUms = value; return this; }
    }

    /**
    * Allgemeine Angaben.
    */
    @Api(Description="Allgemeine Angaben.")
    public static class UnAllg2022
    {
        /**
        * Bankverbindung
        */
        @ApiMember(Description="Bankverbindung", Name="Bank")
        public Bank2022 bank = null;

        /**
        * Bevollmächtigter/Empfangsbevollmächtigter
        */
        @ApiMember(Description="Bevollmächtigter/Empfangsbevollmächtigter", Name="Vollm")
        public Vollm2022 vollm = null;
        
        public Bank2022 getBank() { return bank; }
        public UnAllg2022 setBank(Bank2022 value) { this.bank = value; return this; }
        public Vollm2022 getVollm() { return vollm; }
        public UnAllg2022 setVollm(Vollm2022 value) { this.vollm = value; return this; }
    }

    /**
    * Bankverbindung.
    */
    @Api(Description="Bankverbindung.")
    public static class Bank2022
    {
        /**
        * IBAN
        */
        @ApiMember(Description="IBAN", Name="E3201001")
        public StringTyp e3201001 = null;

        /**
        * 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 StringTyp e3201002 = null;

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

        /**
        * 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 StringTyp e3200902 = null;

        /**
        * Kontoinhaber ist der Unternehmer laut den allgemeinen Angaben auf Vordruck USt2A
        */
        @ApiMember(Description="Kontoinhaber ist der Unternehmer laut den allgemeinen Angaben auf Vordruck USt2A", Name="E3200904")
        public BoolXTyp e3200904 = null;

        /**
        * Name des Kontoinhabers
        */
        @ApiMember(Description="Name des Kontoinhabers", Name="E3200905")
        public StringTyp e3200905 = null;
        
        public StringTyp getE3201001() { return e3201001; }
        public Bank2022 setE3201001(StringTyp value) { this.e3201001 = value; return this; }
        public StringTyp getE3201002() { return e3201002; }
        public Bank2022 setE3201002(StringTyp value) { this.e3201002 = value; return this; }
        public StringTyp getE3200901() { return e3200901; }
        public Bank2022 setE3200901(StringTyp value) { this.e3200901 = value; return this; }
        public StringTyp getE3200902() { return e3200902; }
        public Bank2022 setE3200902(StringTyp value) { this.e3200902 = value; return this; }
        public BoolXTyp isE3200904() { return e3200904; }
        public Bank2022 setE3200904(BoolXTyp value) { this.e3200904 = value; return this; }
        public StringTyp getE3200905() { return e3200905; }
        public Bank2022 setE3200905(StringTyp value) { this.e3200905 = value; return this; }
    }

    /**
    * Bevollmächtigter/Empfangsbevollmächtigter.
    */
    @Api(Description="Bevollmächtigter/Empfangsbevollmächtigter.")
    public static class Vollm2022
    {
        /**
        * 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 BoolXTyp e3201301 = null;

        /**
        * 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 BoolXTyp e3201401 = null;

        /**
        * Name
        */
        @ApiMember(Description="Name", Name="E3201501")
        public StringTyp e3201501 = null;

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

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

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

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

        /**
        * Postleitzahl, Ort
        */
        @ApiMember(Description="Postleitzahl, Ort", Name="E3201402")
        public StringTyp e3201402 = null;

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

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

        /**
        * Telefon
        */
        @ApiMember(Description="Telefon", Name="E3201602")
        public StringTyp e3201602 = null;

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

        /**
        * Angaben zur Unterschrift
        */
        @ApiMember(Description="Angaben zur Unterschrift", Name="AngUnterschr")
        public AngUnterschr2022 angUnterschr = null;
        
        public BoolXTyp isE3201301() { return e3201301; }
        public Vollm2022 setE3201301(BoolXTyp value) { this.e3201301 = value; return this; }
        public BoolXTyp isE3201401() { return e3201401; }
        public Vollm2022 setE3201401(BoolXTyp value) { this.e3201401 = value; return this; }
        public StringTyp getE3201501() { return e3201501; }
        public Vollm2022 setE3201501(StringTyp value) { this.e3201501 = value; return this; }
        public StringTyp getE3201601() { return e3201601; }
        public Vollm2022 setE3201601(StringTyp value) { this.e3201601 = value; return this; }
        public StringTyp getE3201302() { return e3201302; }
        public Vollm2022 setE3201302(StringTyp value) { this.e3201302 = value; return this; }
        public StringTyp getE3201303() { return e3201303; }
        public Vollm2022 setE3201303(StringTyp value) { this.e3201303 = value; return this; }
        public StringTyp getE3201304() { return e3201304; }
        public Vollm2022 setE3201304(StringTyp value) { this.e3201304 = value; return this; }
        public StringTyp getE3201402() { return e3201402; }
        public Vollm2022 setE3201402(StringTyp value) { this.e3201402 = value; return this; }
        public StringTyp getE3201503() { return e3201503; }
        public Vollm2022 setE3201503(StringTyp value) { this.e3201503 = value; return this; }
        public StringTyp getE3201504() { return e3201504; }
        public Vollm2022 setE3201504(StringTyp value) { this.e3201504 = value; return this; }
        public StringTyp getE3201602() { return e3201602; }
        public Vollm2022 setE3201602(StringTyp value) { this.e3201602 = value; return this; }
        public StringTyp getE3201502() { return e3201502; }
        public Vollm2022 setE3201502(StringTyp value) { this.e3201502 = value; return this; }
        public AngUnterschr2022 getAngUnterschr() { return angUnterschr; }
        public Vollm2022 setAngUnterschr(AngUnterschr2022 value) { this.angUnterschr = value; return this; }
    }

    /**
    * Angaben zur Unterschrift.
    */
    @Api(Description="Angaben zur Unterschrift.")
    public static class AngUnterschr2022
    {
        /**
        * 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 BoolXTyp e3201701 = null;
        
        public BoolXTyp isE3201701() { return e3201701; }
        public AngUnterschr2022 setE3201701(BoolXTyp value) { this.e3201701 = value; return this; }
    }

    /**
    * Vorsteuer-Vergütungsverfahren beim Bundeszentralamt für Steuern.
    */
    @Api(Description="Vorsteuer-Vergütungsverfahren beim Bundeszentralamt für Steuern.")
    public static class VoStVerguetBZSt2022
    {
        /**
        * Ist für das Kalenderjahr 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 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 Bool12Typ e3201101 = null;
        
        public Bool12Typ isE3201101() { return e3201101; }
        public VoStVerguetBZSt2022 setE3201101(Bool12Typ value) { this.e3201101 = value; return this; }
    }

    /**
    * 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 static class Bool12Typ extends 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 Boolean wert = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public Boolean isWert() { return wert; }
        public Bool12Typ setWert(Boolean value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public Bool12Typ setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * C. Anrechenbare Beträge.
    */
    @Api(Description="C. Anrechenbare Beträge.")
    public static class AnrechBetr2022
    {
        /**
        * 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 GeldBetragMitCent12DETyp e3201902 = null;

        /**
        * 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 GeldBetragMitCent12DETyp e3202002 = null;

        /**
        * Summe (zu übertragen in Zeile 166 der Steuererklärung)
        */
        @ApiMember(Description="Summe (zu übertragen in Zeile 166 der Steuererklärung)", Name="E3202102")
        public GeldBetragMitCent12DETyp e3202102 = null;
        
        public GeldBetragMitCent12DETyp getE3201902() { return e3201902; }
        public AnrechBetr2022 setE3201902(GeldBetragMitCent12DETyp value) { this.e3201902 = value; return this; }
        public GeldBetragMitCent12DETyp getE3202002() { return e3202002; }
        public AnrechBetr2022 setE3202002(GeldBetragMitCent12DETyp value) { this.e3202002 = value; return this; }
        public GeldBetragMitCent12DETyp getE3202102() { return e3202102; }
        public AnrechBetr2022 setE3202102(GeldBetragMitCent12DETyp value) { this.e3202102 = value; return this; }
    }

    /**
    * Ergänzende Angaben zu Umsätzen.
    */
    @Api(Description="Ergänzende Angaben zu Umsätzen.")
    public static class UnErgAngUms2022
    {
        /**
        * In den steuerpflichtigen Umsätzen enthaltene Umsätze
        */
        @ApiMember(Description="In den steuerpflichtigen Umsätzen enthaltene Umsätze", Name="InstpflUmsEnt")
        public InstpflUmsEnt2022 instpflUmsEnt = null;
        
        public InstpflUmsEnt2022 getInstpflUmsEnt() { return instpflUmsEnt; }
        public UnErgAngUms2022 setInstpflUmsEnt(InstpflUmsEnt2022 value) { this.instpflUmsEnt = value; return this; }
    }

    /**
    * In den steuerpflichtigen Umsätzen enthaltene Umsätze.
    */
    @Api(Description="In den steuerpflichtigen Umsätzen enthaltene Umsätze.")
    public static class InstpflUmsEnt2022
    {
        /**
        * 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 GeldBetragOhneCent12DETyp e3201901 = null;
        
        public GeldBetragOhneCent12DETyp getE3201901() { return e3201901; }
        public InstpflUmsEnt2022 setE3201901(GeldBetragOhneCent12DETyp value) { this.e3201901 = value; return this; }
    }

    /**
    * Anlage FV zur Umsatzsteuererklärung 2022
    */
    @Api(Description="Anlage FV zur Umsatzsteuererklärung 2022")
    public static class FV2022
    {
        /**
        * Aufstellung aller vertretenen Unternehmer
        */
        @ApiMember(Description="Aufstellung aller vertretenen Unternehmer", Name="AufstAllerVertrUnt")
        public AufstAllerVertrUnt2022 aufstAllerVertrUnt = null;
        
        public AufstAllerVertrUnt2022 getAufstAllerVertrUnt() { return aufstAllerVertrUnt; }
        public FV2022 setAufstAllerVertrUnt(AufstAllerVertrUnt2022 value) { this.aufstAllerVertrUnt = value; return this; }
    }

    /**
    * Aufstellung aller vertretenen Unternehmer
    */
    @Api(Description="Aufstellung aller vertretenen Unternehmer")
    public static class AufstAllerVertrUnt2022
    {
        /**
        * Die vertretenen Unternehmer
        */
        @ApiMember(Description="Die vertretenen Unternehmer", Name="Einzs")
        public ArrayList<Einz2022> einzs = null;

        /**
        * Die Summe
        */
        @ApiMember(Description="Die Summe", Name="Sum")
        public AufstAllerVertrUntSum2022 sum = null;
        
        public ArrayList<Einz2022> getEinzs() { return einzs; }
        public AufstAllerVertrUnt2022 setEinzs(ArrayList<Einz2022> value) { this.einzs = value; return this; }
        public AufstAllerVertrUntSum2022 getSum() { return sum; }
        public AufstAllerVertrUnt2022 setSum(AufstAllerVertrUntSum2022 value) { this.sum = value; return this; }
    }

    /**
    * Einzelner vertretene Unternehmer
    */
    @Api(Description="Einzelner vertretene Unternehmer")
    public static class Einz2022
    {
        /**
        * Name des vertretenen Unternehmers
        */
        @ApiMember(Description="Name des vertretenen Unternehmers", Name="E3300201")
        public StringTyp e3300201 = null;

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

        /**
        * Umsatzsteuer-Identifikationsnummer des vertretenen Unternehmers
        */
        @ApiMember(Description="Umsatzsteuer-Identifikationsnummer des vertretenen Unternehmers", Name="E3300203")
        public StringTyp e3300203 = null;

        /**
        * Summe der jeweiligen Bemessungsgrundlagen in EUR
        */
        @ApiMember(Description="Summe der jeweiligen Bemessungsgrundlagen in EUR", Name="E3300204")
        public GeldBetragOhneCent12DETyp e3300204 = null;
        
        public StringTyp getE3300201() { return e3300201; }
        public Einz2022 setE3300201(StringTyp value) { this.e3300201 = value; return this; }
        public StringTyp getE3300202() { return e3300202; }
        public Einz2022 setE3300202(StringTyp value) { this.e3300202 = value; return this; }
        public StringTyp getE3300203() { return e3300203; }
        public Einz2022 setE3300203(StringTyp value) { this.e3300203 = value; return this; }
        public GeldBetragOhneCent12DETyp getE3300204() { return e3300204; }
        public Einz2022 setE3300204(GeldBetragOhneCent12DETyp value) { this.e3300204 = value; return this; }
    }

    /**
    * Summe
    */
    @Api(Description="Summe")
    public static class AufstAllerVertrUntSum2022
    {
        /**
        *  Summe aller Bemessungsgrundlagen in EUR
        */
        @ApiMember(Description=" Summe aller Bemessungsgrundlagen in EUR", Name="E3300301")
        public GeldBetragOhneCent12DETyp e3300301 = null;
        
        public GeldBetragOhneCent12DETyp getE3300301() { return e3300301; }
        public AufstAllerVertrUntSum2022 setE3300301(GeldBetragOhneCent12DETyp value) { this.e3300301 = value; return this; }
    }

    /**
    * Datentyp, welches die UnterfallArt bestimmter Datenarten darstellt.
    */
    @Api(Description="Datentyp, welches die UnterfallArt bestimmter Datenarten darstellt.")
    public static class UnterfallartTyp extends CustomTypBase
    {
        /**
        * Wert des Datentyps.
        */
        @ApiMember(Description="Wert des Datentyps.", IsRequired=true, Name="Wert")
        public Unterfallart wert = null;

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public Unterfallart getWert() { return wert; }
        public UnterfallartTyp setWert(Unterfallart value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public UnterfallartTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Stellt eine Unterfallart bestimmter Datenarten dar.
    */
    public static enum Unterfallart
    {
        UfA10(10),
        UfA12(12),
        UfA13(13),
        UfA20(20),
        UfA21(21),
        UfA30(30),
        UfA31(31),
        UfA32(32),
        UfA33(33),
        UfA39(39),
        UfA50(50),
        UfA57(57),
        UfA58(58),
        UfA64(64),
        UfA76(76),
        UfA77(77),
        UfA88(88),
        UfA90(90),
        UfA95(95),
        UfA97(97),
        Keine(98);

        private final int value;
        Unterfallart(final int intValue) { value = intValue; }
        public int getValue() { return value; }
    }

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

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public VeranlagungVorgang getWert() { return wert; }
        public VeranlagungVorgangTyp setWert(VeranlagungVorgang value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public VeranlagungVorgangTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Stellt den Vorgang bei einer Veranlagung dar.
    */
    public static enum VeranlagungVorgang
    {
        NurVeranlagung(1),
        VeranlagungMitVorauszahlung(4);

        private final int value;
        VeranlagungVorgang(final int intValue) { value = intValue; }
        public int getValue() { return value; }
    }

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

        /**
        * Identifizierung der Zeile / Typ im Fremdprogramm.
        */
        @ApiMember(Description="Identifizierung der Zeile / Typ im Fremdprogramm.", Name="Alias")
        public String alias = null;
        
        public OrdNrArt getWert() { return wert; }
        public OrdNrArtTyp setWert(OrdNrArt value) { this.wert = value; return this; }
        public String getAlias() { return alias; }
        public OrdNrArtTyp setAlias(String value) { this.alias = value; return this; }
    }

    /**
    * Stellt die Art der Ordnungsnummer dar.
    */
    public static enum OrdNrArt
    {
        S,
        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 static class E50Rueckuebermittlung
    {
        /**
        * Wird die elektronische Bereitstellung der Bescheiddaten gewünscht?
        */
        @ApiMember(Description="Wird die elektronische Bereitstellung der Bescheiddaten gewünscht?")
        public Bool12Typ bescheid = null;

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

        /**
        * 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 StringTyp schluesselRueckuebermittlung = null;

        /**
        * 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 StringTyp adresseRueckuebermittlung = null;
        
        public Bool12Typ isBescheid() { return bescheid; }
        public E50Rueckuebermittlung setBescheid(Bool12Typ value) { this.bescheid = value; return this; }
        public StringTyp getArtRueckuebermittlung() { return artRueckuebermittlung; }
        public E50Rueckuebermittlung setArtRueckuebermittlung(StringTyp value) { this.artRueckuebermittlung = value; return this; }
        public StringTyp getSchluesselRueckuebermittlung() { return schluesselRueckuebermittlung; }
        public E50Rueckuebermittlung setSchluesselRueckuebermittlung(StringTyp value) { this.schluesselRueckuebermittlung = value; return this; }
        public StringTyp getAdresseRueckuebermittlung() { return adresseRueckuebermittlung; }
        public E50Rueckuebermittlung setAdresseRueckuebermittlung(StringTyp value) { this.adresseRueckuebermittlung = value; return this; }
    }

    /**
    * Represents a portal certificate that is protected by a password.
    */
    @Api(Description="Represents a portal certificate that is protected by a password.")
    public static class PortalCertificate extends FileBase implements ISecuredCertificate, IHasIndex
    {
        /**
        * The unique identifier of the certificate.
        */
        @ApiMember(Description="The unique identifier of the certificate.")
        public UUID id = null;

        /**
        * The position of the certificate element in an indexed collection of certificates.
        */
        @ApiMember(Description="The position of the certificate element in an indexed collection of certificates.")
        public Integer index = null;

        /**
        * The password to protect the certificate from unauthorized access.
        */
        @StringLength(255)
        @ApiMember(Description="The password to protect the certificate from unauthorized access.")
        public String pin = null;

        /**
        * The description of the certificate.
        */
        @StringLength(2147483647)
        @ApiMember(Description="The description of the certificate.")
        public String description = null;

        /**
        * Tags that can be used to label or identify the certificate.
        */
        @ApiMember(Description="Tags that can be used to label or identify the certificate.")
        public ArrayList<String> tags = null;

        /**
        * Gets or sets the file name of the certificate.
        */
        @ApiMember(Description="Gets or sets the file name of the certificate.")
        public String name = null;

        /**
        * The raw data content of the file.
        */
        @ApiMember(Description="The raw data content of the file.", Name="Content")
        public byte[] content = null;
        
        public UUID getId() { return id; }
        public PortalCertificate setId(UUID value) { this.id = value; return this; }
        public Integer getIndex() { return index; }
        public PortalCertificate setIndex(Integer value) { this.index = value; return this; }
        public String getPin() { return pin; }
        public PortalCertificate setPin(String value) { this.pin = value; return this; }
        public String getDescription() { return description; }
        public PortalCertificate setDescription(String value) { this.description = value; return this; }
        public ArrayList<String> getTags() { return tags; }
        public PortalCertificate setTags(ArrayList<String> value) { this.tags = value; return this; }
        public String getName() { return name; }
        public PortalCertificate setName(String value) { this.name = value; return this; }
        public byte[] getContent() { return content; }
        public PortalCertificate setContent(byte[] value) { this.content = value; return this; }
    }

    /**
    * Represents a base class for a file with raw data.
    */
    @Api(Description="Represents a base class for a file with raw data.")
    public static class FileBase
    {
        /**
        * The raw data content of the file.
        */
        @ApiMember(Description="The raw data content of the file.", Name="Content")
        public byte[] content = null;
        
        public byte[] getContent() { return content; }
        public FileBase setContent(byte[] value) { this.content = value; return this; }
    }

    /**
    * A type that encapsulates the return values from the ERiC API function that processes tax data.
    */
    @Api(Description="A type that encapsulates the return values from the ERiC API function that processes tax data.")
    public static class BearbeiteVorgangResponse extends EricFehlerCodeResponse
    {
        /**
        * The return value of the process.
        */
        @ApiMember(Description="The return value of the process.")
        public EricBearbeiteVorgang rueckgabe = null;

        /**
        * The server response of the process.
        */
        @ApiMember(Description="The server response of the process.")
        public Elster serverantwort = null;

        /**
        * If available, the PDF-based files to represent generated transfer prototocols.
        */
        @ApiMember(Description="If available, the PDF-based files to represent generated transfer prototocols.")
        public ArrayList<BinaryFile> transferProtocols = null;

        /**
        * The status code that the ERiC API function returns.
        */
        @ApiMember(Description="The status code that the ERiC API function returns.", Name="StatusCode")
        public EricFehlerCode statusCode = null;

        /**
        * The status message that the ERiC API function returns.
        */
        @ApiMember(Description="The status message that the ERiC API function returns.", Name="StatusText")
        public String statusText = null;

        /**
        * The unique identifier of the response.
        */
        @ApiMember(Description="The unique identifier of the response.", Name="Id")
        public String id = null;

        /**
        * The position of the response element in an indexed collection.
        */
        @ApiMember(Description="The position of the response element in an indexed collection.", Name="Index")
        public Integer index = null;

        /**
        * Metadata that contains structured error information on the service response.
        */
        @ApiMember(Description="Metadata that contains structured error information on the service response.", Name="ResponseStatus")
        public ResponseStatus responseStatus = null;
        
        public EricBearbeiteVorgang getRueckgabe() { return rueckgabe; }
        public BearbeiteVorgangResponse setRueckgabe(EricBearbeiteVorgang value) { this.rueckgabe = value; return this; }
        public Elster getServerantwort() { return serverantwort; }
        public BearbeiteVorgangResponse setServerantwort(Elster value) { this.serverantwort = value; return this; }
        public ArrayList<BinaryFile> getTransferProtocols() { return transferProtocols; }
        public BearbeiteVorgangResponse setTransferProtocols(ArrayList<BinaryFile> value) { this.transferProtocols = value; return this; }
        public EricFehlerCode getStatusCode() { return statusCode; }
        public BearbeiteVorgangResponse setStatusCode(EricFehlerCode value) { this.statusCode = value; return this; }
        public String getStatusText() { return statusText; }
        public BearbeiteVorgangResponse setStatusText(String value) { this.statusText = value; return this; }
        public String getId() { return id; }
        public BearbeiteVorgangResponse setId(String value) { this.id = value; return this; }
        public Integer getIndex() { return index; }
        public BearbeiteVorgangResponse setIndex(Integer value) { this.index = value; return this; }
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public BearbeiteVorgangResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
    }

    /**
    * Represent a base response that encapsulate any ERiC API function return value.
    */
    @Api(Description="Represent a base response that encapsulate any ERiC API function return value.")
    public static class EricFehlerCodeResponse extends ServiceReponseBase
    {
        /**
        * The status code that the ERiC API function returns.
        */
        @ApiMember(Description="The status code that the ERiC API function returns.", Name="StatusCode")
        public EricFehlerCode statusCode = null;

        /**
        * The status message that the ERiC API function returns.
        */
        @ApiMember(Description="The status message that the ERiC API function returns.", Name="StatusText")
        public String statusText = null;

        /**
        * The unique identifier of the response.
        */
        @ApiMember(Description="The unique identifier of the response.", Name="Id")
        public String id = null;

        /**
        * The position of the response element in an indexed collection.
        */
        @ApiMember(Description="The position of the response element in an indexed collection.", Name="Index")
        public Integer index = null;

        /**
        * Metadata that contains structured error information on the service response.
        */
        @ApiMember(Description="Metadata that contains structured error information on the service response.", Name="ResponseStatus")
        public ResponseStatus responseStatus = null;
        
        public EricFehlerCode getStatusCode() { return statusCode; }
        public EricFehlerCodeResponse setStatusCode(EricFehlerCode value) { this.statusCode = value; return this; }
        public String getStatusText() { return statusText; }
        public EricFehlerCodeResponse setStatusText(String value) { this.statusText = value; return this; }
        public String getId() { return id; }
        public EricFehlerCodeResponse setId(String value) { this.id = value; return this; }
        public Integer getIndex() { return index; }
        public EricFehlerCodeResponse setIndex(Integer value) { this.index = value; return this; }
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public EricFehlerCodeResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
    }

    /**
    * Specifies a service response from an ERiC service operation.
    */
    @Api(Description="Specifies a service response from an ERiC service operation.")
    public static class ServiceReponseBase implements IHasIndex
    {
        /**
        * The unique identifier of the response.
        */
        @ApiMember(Description="The unique identifier of the response.", Name="Id")
        public String id = null;

        /**
        * The position of the response element in an indexed collection.
        */
        @ApiMember(Description="The position of the response element in an indexed collection.", Name="Index")
        public Integer index = null;

        /**
        * Metadata that contains structured error information on the service response.
        */
        @ApiMember(Description="Metadata that contains structured error information on the service response.", Name="ResponseStatus")
        public ResponseStatus responseStatus = null;
        
        public String getId() { return id; }
        public ServiceReponseBase setId(String value) { this.id = value; return this; }
        public Integer getIndex() { return index; }
        public ServiceReponseBase setIndex(Integer value) { this.index = value; return this; }
        public ResponseStatus getResponseStatus() { return responseStatus; }
        public ServiceReponseBase setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
    }

    /**
    * Enumeration of ERiC API error codes.
    */
    public static enum EricFehlerCode
    {
        EricOk(0),
        EricGlobalUnknown(610001001),
        EricGlobalPruefFehler(610001002),
        EricGlobalHinweise(610001003),
        EricGlobalFehlermeldungNichtVorhanden(610001007),
        EricGlobalKeineDatenVorhanden(610001008),
        EricGlobalNichtGenuegendArbeitsspeicher(610001013),
        EricGlobalDateiNichtGefunden(610001014),
        EricGlobalHerstellerIdNichtErlaubt(610001016),
        EricGlobalIllegalState(610001017),
        EricGlobalFunktionNichtErlaubt(610001018),
        EricGlobalEchtfallNichtErlaubt(610001019),
        EricGlobalNoVersandInBetaVersion(610001020),
        EricGlobalTestmerkerUngueltig(610001025),
        EricGlobalDatensatzZuGross(610001026),
        EricGlobalVerschluesselungsParameterNichtErlaubt(610001027),
        EricGlobalNurPortalzertifikatErlaubt(610001028),
        EricGlobalAbrufcodeNichtErlaubt(610001029),
        EricGlobalErrorXmlCreate(610001030),
        EricGlobalTextpuffergroesseFix(610001031),
        EricGlobalInternerFehler(610001032),
        EricGlobalArithmetikfehler(610001033),
        EricGlobalSteuernummerUngueltig(610001034),
        EricGlobalSteuernummerFalscheLaenge(610001035),
        EricGlobalSteuernummerNichtNumerisch(610001036),
        EricGlobalLandesnummerUnbekannt(610001037),
        EricGlobalBufanrUnbekannt(610001038),
        EricGlobalLandesnummerBufanr(610001039),
        EricGlobalPufferZugriffskonflikt(610001040),
        EricGlobalPufferUeberlauf(610001041),
        EricGlobalDatenartversionUnbekannt(610001042),
        EricGlobalDatenartversionXmlInkonsistent(610001044),
        EricGlobalCommondataNichtVerfuegbar(610001045),
        EricGlobalLogException(610001046),
        EricGlobalTransportschluesselNichtErlaubt(610001047),
        EricGlobalOeffentlicherSchluesselUngueltig(610001048),
        EricGlobalTransportschluesselTypFalsch(610001049),
        EricGlobalPufferUngleicherInstanz(610001050),
        EricGlobalVorsatzUngueltig(610001051),
        EricGlobalDateizugriffVerweigert(610001053),
        EricGlobalUngueltigeInstanz(610001080),
        EricGlobalNichtInitialisiert(610001081),
        EricGlobalMehrfacheInitialisierung(610001082),
        EricGlobalFehlerInitialisierung(610001083),
        EricGlobalUnknownParameterError(610001102),
        EricGlobalCheckCorruptedNds(610001108),
        EricGlobalVerschluesselungsParameterNichtAngegeben(610001206),
        EricGlobalSendFlagMehrAlsEines(610001209),
        EricGlobalUngueltigeFlagKombination(610001218),
        EricGlobalErsteSeiteDruckNichtUnterstuetzt(610001220),
        EricGlobalUngueltigerParameter(610001222),
        EricGlobalDruckFuerVerfahrenNichtErlaubt(610001224),
        EricGlobalVersandArtNichtUnterstuetzt(610001225),
        EricGlobalUngueltigeParameterVersion(610001226),
        EricGlobalTransferhandle(610001227),
        EricGlobalPlugininitialisierung(610001228),
        EricGlobalInkompatibleVersionen(610001229),
        EricGlobalVerschluesselungsverfahrenNichtUnterstuetzt(610001230),
        EricGlobalMehrfachaufrufeNichtUnterstuetzt(610001231),
        EricGlobalUtiCountryNotSupported(610001404),
        EricGlobalIbanFormalerFehler(610001501),
        EricGlobalIbanLaendercodeFehler(610001502),
        EricGlobalIbanLandesformatFehler(610001503),
        EricGlobalIbanPruefzifferFehler(610001504),
        EricGlobalBicFormalerFehler(610001510),
        EricGlobalBicLaendercodeFehler(610001511),
        EricGlobalZulassungsnummerZuLang(610001519),
        EricGlobalIdnummerUngueltig(610001525),
        EricGlobalNullParameter(610001526),
        EricGlobalEwazUngueltig(610001527),
        EricGlobalEwazLandeskuerzelUnbekannt(610001528),
        EricGlobalUpdateNecessary(610001851),
        EricGlobalEinstellungNameUngueltig(610001860),
        EricGlobalEinstellungWertUngueltig(610001861),
        EricGlobalErrDekodieren(610001862),
        EricGlobalFunktionNichtUnterstuetzt(610001863),
        EricGlobalNutzdatenticketsNichtEindeutig(610001865),
        EricGlobalNutzdatenheaderversionenUneinheitlich(610001866),
        EricGlobalBundeslaenderUneinheitlich(610001867),
        EricGlobalZeitraeumeUneinheitlich(610001868),
        EricGlobalNutzdatenheaderEmpfaengerNichtKorrekt(610001869),
        EricTransferComError(610101200),
        EricTransferVorgangNichtUnterstuetzt(610101201),
        EricTransferErrXmlTheader(610101210),
        EricTransferErrParam(610101251),
        EricTransferErrDatenteilendnotfound(610101253),
        EricTransferErrBegindatenlieferant(610101255),
        EricTransferErrEnddatenlieferant(610101256),
        EricTransferErrBegintransportschluessel(610101257),
        EricTransferErrEndtransportschluessel(610101258),
        EricTransferErrBegindatengroesse(610101259),
        EricTransferErrEnddatengroesse(610101260),
        EricTransferErrSend(610101271),
        EricTransferErrNotencrypted(610101274),
        EricTransferErrProxyconnect(610101276),
        EricTransferErrConnectserver(610101278),
        EricTransferErrNoresponse(610101279),
        EricTransferErrProxyauth(610101280),
        EricTransferErrSendInit(610101282),
        EricTransferErrTimeout(610101283),
        EricTransferErrProxyportInvalid(610101284),
        EricTransferErrOther(610101291),
        EricTransferErrXmlNheader(610101292),
        EricTransferErrXmlEncoding(610101293),
        EricTransferErrEndsiguser(610101294),
        EricTransferErrXmltagNichtGefunden(610101295),
        EricTransferErrDatenteilfehler(610101297),
        EricTransferEidZertifikatfehler(610101500),
        EricTransferEidKeinkonto(610101510),
        EricTransferEidIdnrnichteindeutig(610101511),
        EricTransferEidServerfehler(610101512),
        EricTransferEidKeinclient(610101520),
        EricTransferEidClientfehler(610101521),
        EricTransferEidFehlendefelder(610101522),
        EricTransferEidIdentifikationabgebrochen(610101523),
        EricTransferEidNpablockiert(610101524),
        EricCryptErrorCreateKey(610201016),
        EricCryptEInvalidHandle(610201101),
        EricCryptEMaxSession(610201102),
        EricCryptEBusy(610201103),
        EricCryptEOutOfMem(610201104),
        EricCryptEPsePath(610201105),
        EricCryptEPinWrong(610201106),
        EricCryptEPinLocked(610201107),
        EricCryptEP7Read(610201108),
        EricCryptEP7Decode(610201109),
        EricCryptEP7Recipient(610201110),
        EricCryptEP12Read(610201111),
        EricCryptEP12Decode(610201112),
        EricCryptEP12SigKey(610201113),
        EricCryptEP12EncKey(610201114),
        EricCryptEP11SigKey(610201115),
        EricCryptEP11EncKey(610201116),
        EricCryptEXmlParse(610201117),
        EricCryptEXmlSigAdd(610201118),
        EricCryptEXmlSigTag(610201119),
        EricCryptEXmlSigSign(610201120),
        EricCryptEEncodeUnknown(610201121),
        EricCryptEEncodeError(610201122),
        EricCryptEXmlInit(610201123),
        EricCryptEEncrypt(610201124),
        EricCryptEDecrypt(610201125),
        EricCryptEP11SlotEmpty(610201126),
        EricCryptENoSigEncKey(610201127),
        EricCryptELoadDll(610201128),
        EricCryptENoService(610201129),
        EricCryptEEsiclException(610201130),
        EricCryptETokenTypeMismatch(610201144),
        EricCryptEP12Create(610201146),
        EricCryptEVerifyCertChain(610201147),
        EricCryptEP11EngineLoaded(610201148),
        EricCryptEUserCancel(610201149),
        EricCryptZertifikat(610201200),
        EricCryptSignatur(610201201),
        EricCryptNichtUnterstuetztesPseFormat(610201203),
        EricCryptPinBenoetigt(610201205),
        EricCryptPinStaerkeNichtAusreichend(610201206),
        EricCryptEIntern(610201208),
        EricCryptZertifikatspfadKeinVerzeichnis(610201209),
        EricCryptZertifikatsdateiExistiertBereits(610201210),
        EricCryptPinEnthaeltUngueltigeZeichen(610201211),
        EricCryptEInvalidParamAbc(610201212),
        EricCryptCorrupted(610201213),
        EricCryptEidkarteNichtUnterstuetzt(610201214),
        EricCryptEScSlotEmpty(610201215),
        EricCryptEScNoApplet(610201216),
        EricCryptEScSession(610201217),
        EricCryptEP11NoSigCert(610201218),
        EricCryptEP11InitFailed(610201219),
        EricCryptEP11NoEncCert(610201220),
        EricCryptEP12NoSigCert(610201221),
        EricCryptEP12NoEncCert(610201222),
        EricCryptEScEncKey(610201223),
        EricCryptEScNoSigCert(610201224),
        EricCryptEScNoEncCert(610201225),
        EricCryptEScInitFailed(610201226),
        EricCryptEScSigKey(610201227),
        EricIoFehler(610301001),
        EricIoDateiInkorrekt(610301005),
        EricIoParseFehler(610301006),
        EricIoNdsGenerierungFehlgeschlagen(610301007),
        EricIoMasterdatenserviceNichtVerfuegbar(610301010),
        EricIoSteuerzeichenImNds(610301014),
        EricIoVersionsinformationenNichtGefunden(610301031),
        EricIoFalschesVerfahren(610301104),
        EricIoReaderMehrfacheSteuerfaelle(610301105),
        EricIoReaderUnerwarteteElemente(610301106),
        EricIoReaderFormaleFehler(610301107),
        EricIoReaderFalschesEncoding(610301108),
        EricIoReaderMehrfacheNutzdatenElemente(610301109),
        EricIoReaderMehrfacheNutzdatenblockElemente(610301110),
        EricIoUnbekannteDatenart(610301111),
        EricIoReaderUntersachbereichUngueltig(610301114),
        EricIoReaderZuVieleNutzdatenblockElemente(610301115),
        EricIoReaderSteuerzeichenImTransferheader(610301150),
        EricIoReaderSteuerzeichenImNutzdatenheader(610301151),
        EricIoReaderSteuerzeichenInDenNutzdaten(610301152),
        EricIoReaderZuVieleAnhaenge(610301190),
        EricIoReaderAnhangZuGross(610301191),
        EricIoReaderAnhaengeZuGross(610301192),
        EricIoReaderSchemaValidierungsfehler(610301200),
        EricIoReaderUnbekannteXmlEntity(610301201),
        EricIoDatenteilnotfound(610301252),
        EricIoDatenteilendnotfound(610301253),
        EricIoUebergabeparameterFehlerhaft(610301300),
        EricIoUngueltigeUtF8Sequenz(610301400),
        EricIoUngueltigeZeichenInParameter(610301401),
        EricPrintInternerFehler(610501001),
        EricPrintDruckvorlageNichtGefunden(610501002),
        EricPrintUngueltigerDateiPfad(610501004),
        EricPrintInitialisierungFehlerhaft(610501007),
        EricPrintAusgabezielUnbekannt(610501008),
        EricPrintAbbruchDruckvorbereitung(610501009),
        EricPrintAbbruchGenerierung(610501010),
        EricPrintSteuerfallNichtUnterstuetzt(610501011),
        EricPrintFusstextZuLang(610501012);

        private final int value;
        EricFehlerCode(final int intValue) { value = intValue; }
        public int getValue() { return value; }
    }

    /**
    * Represents a structure that contains the first output of the ERiC tax data submission process.
    */
    @Api(Description="Represents a structure that contains the first output of the ERiC tax data submission process.")
    public static class EricBearbeiteVorgang
    {
        /**
        * Information from the successful processing a tax declaration.
        */
        @ApiMember(Description="Information from the successful processing a tax declaration.")
        public Erfolg erfolg = null;

        /**
        * Gets or sets information on all data deliveries, including deliveries that have not been confirmed by the server.
        */
        @ApiMember(Description="Gets or sets information on all data deliveries, including deliveries that have not been confirmed by the server.")
        public Transfers transfers = null;

        /**
        * Error rules that result from the processing of a tax declaration.
        */
        @ApiMember(Description="Error rules that result from the processing of a tax declaration.")
        public ArrayList<FehlerRegelpruefung> fehlerRegelpruefungen = null;

        /**
        * Hints that result the processing of a tax declaration.
        */
        @ApiMember(Description="Hints that result the processing of a tax declaration.")
        public ArrayList<Hinweis> hinweise = null;
        
        public Erfolg getErfolg() { return erfolg; }
        public EricBearbeiteVorgang setErfolg(Erfolg value) { this.erfolg = value; return this; }
        public Transfers getTransfers() { return transfers; }
        public EricBearbeiteVorgang setTransfers(Transfers value) { this.transfers = value; return this; }
        public ArrayList<FehlerRegelpruefung> getFehlerRegelpruefungen() { return fehlerRegelpruefungen; }
        public EricBearbeiteVorgang setFehlerRegelpruefungen(ArrayList<FehlerRegelpruefung> value) { this.fehlerRegelpruefungen = value; return this; }
        public ArrayList<Hinweis> getHinweise() { return hinweise; }
        public EricBearbeiteVorgang setHinweise(ArrayList<Hinweis> value) { this.hinweise = value; return this; }
    }

    /**
    * Represents information returned from a successful tax declaration process.
    */
    @Api(Description="Represents information returned from a successful tax declaration process.")
    public static class Erfolg
    {
        /**
        * The generated tele-number for the successful tax declaration process.
        */
        @ApiMember(Description="The generated tele-number for the successful tax declaration process.")
        public ArrayList<String> telenummer = null;

        /**
        * The classification key for the successful tax declaration process.
        */
        @ApiMember(Description="The classification key for the successful tax declaration process.")
        public ArrayList<String> ordnungsbegriffe = null;
        
        public ArrayList<String> getTelenummer() { return telenummer; }
        public Erfolg setTelenummer(ArrayList<String> value) { this.telenummer = value; return this; }
        public ArrayList<String> getOrdnungsbegriffe() { return ordnungsbegriffe; }
        public Erfolg setOrdnungsbegriffe(ArrayList<String> value) { this.ordnungsbegriffe = value; return this; }
    }

    /**
    * Represents information on all data deliveries, including deliveries that have not been confirmed by the server. For more information, see the ERiC developer manual in the 'TransferTicket' section.
    */
    @Api(Description="Represents information on all data deliveries, including deliveries that have not been confirmed by the server. For more information, see the ERiC developer manual in the 'TransferTicket' section.")
    public static class Transfers
    {
        /**
        * Contains information on all data deliveries, including deliveries that have not been confirmed by the server.
        */
        @ApiMember(Description="Contains information on all data deliveries, including deliveries that have not been confirmed by the server.")
        public ArrayList<Transfer> transferList = null;
        
        public ArrayList<Transfer> getTransferList() { return transferList; }
        public Transfers setTransferList(ArrayList<Transfer> value) { this.transferList = value; return this; }
    }

    /**
    * Represents information on the delivery.
    */
    @Api(Description="Represents information on the delivery.")
    public static class Transfer
    {
        /**
        * The ticket of the transfer.
        */
        @ApiMember(Description="The ticket of the transfer.")
        public String transferTicket = null;
        
        public String getTransferTicket() { return transferTicket; }
        public Transfer setTransferTicket(String value) { this.transferTicket = value; return this; }
    }

    /**
    * Represents information on an ERiC reference.
    */
    @Api(Description="Represents information on an ERiC reference.")
    public static class FehlerRegelpruefung
    {
        /**
        * The user data ticket of the reference.
        */
        @ApiMember(Description="The user data ticket of the reference.")
        public String nutzdatenticket = null;

        /**
        * The field identifier of the reference.
        */
        @ApiMember(Description="The field identifier of the reference.")
        public String feldidentifikator = null;

        /**
        * The multi-line index of the reference.
        */
        @ApiMember(Description="The multi-line index of the reference.")
        public String mehrfachzeilenindex = null;

        /**
        * The delivery number form of the reference.
        */
        @ApiMember(Description="The delivery number form of the reference.")
        public String lfdNrVordruck = null;

        /**
        * Indicates the line number of the error field mentioned in the form.
        */
        @ApiMember(Description="Indicates the line number of the error field mentioned in the form.")
        public String vordruckZeilennummer = null;

        /**
        * Specifies the value of one or more index fields that identify the context of error messages.
        */
        @ApiMember(Description="Specifies the value of one or more index fields that identify the context of error messages.")
        public ArrayList<SemantischerIndex> semantischeIndexes = null;

        /**
        * The sub-subject-area of the reference.
        */
        @ApiMember(Description="The sub-subject-area of the reference.")
        public String untersachbereich = null;

        /**
        * The private identification number of the reference.
        */
        @ApiMember(Description="The private identification number of the reference.")
        public String privateKennnummer = null;

        /**
        * The name of the rule that applies to the reference.
        */
        @ApiMember(Description="The name of the rule that applies to the reference.")
        public String regelName = null;

        /**
        * The technical error identifier of the reference.
        */
        @ApiMember(Description="The technical error identifier of the reference.")
        public String fachlicheFehlerId = null;

        /**
        * The textual details of the reference.
        */
        @ApiMember(Description="The textual details of the reference.")
        public String text = null;
        
        public String getNutzdatenticket() { return nutzdatenticket; }
        public FehlerRegelpruefung setNutzdatenticket(String value) { this.nutzdatenticket = value; return this; }
        public String getFeldidentifikator() { return feldidentifikator; }
        public FehlerRegelpruefung setFeldidentifikator(String value) { this.feldidentifikator = value; return this; }
        public String getMehrfachzeilenindex() { return mehrfachzeilenindex; }
        public FehlerRegelpruefung setMehrfachzeilenindex(String value) { this.mehrfachzeilenindex = value; return this; }
        public String getLfdNrVordruck() { return lfdNrVordruck; }
        public FehlerRegelpruefung setLfdNrVordruck(String value) { this.lfdNrVordruck = value; return this; }
        public String getVordruckZeilennummer() { return vordruckZeilennummer; }
        public FehlerRegelpruefung setVordruckZeilennummer(String value) { this.vordruckZeilennummer = value; return this; }
        public ArrayList<SemantischerIndex> getSemantischeIndexes() { return semantischeIndexes; }
        public FehlerRegelpruefung setSemantischeIndexes(ArrayList<SemantischerIndex> value) { this.semantischeIndexes = value; return this; }
        public String getUntersachbereich() { return untersachbereich; }
        public FehlerRegelpruefung setUntersachbereich(String value) { this.untersachbereich = value; return this; }
        public String getPrivateKennnummer() { return privateKennnummer; }
        public FehlerRegelpruefung setPrivateKennnummer(String value) { this.privateKennnummer = value; return this; }
        public String getRegelName() { return regelName; }
        public FehlerRegelpruefung setRegelName(String value) { this.regelName = value; return this; }
        public String getFachlicheFehlerId() { return fachlicheFehlerId; }
        public FehlerRegelpruefung setFachlicheFehlerId(String value) { this.fachlicheFehlerId = value; return this; }
        public String getText() { return text; }
        public FehlerRegelpruefung setText(String value) { this.text = value; return this; }
    }

    /**
    * Represents value of an index field, which identfies the context about an error message.
    */
    @Api(Description="Represents value of an index field, which identfies the context about an error message.")
    public static class SemantischerIndex
    {
        /**
        * The name of the index field.
        */
        @ApiMember(Description="The name of the index field.")
        public String name = null;

        /**
        * The value of the index field.
        */
        @ApiMember(Description="The value of the index field.")
        public String value = null;
        
        public String getName() { return name; }
        public SemantischerIndex setName(String value) { this.name = value; return this; }
        public String getValue() { return value; }
        public SemantischerIndex setValue(String value) { this.value = value; return this; }
    }

    public static class Hinweis
    {
        /**
        * The user data ticket of the reference.
        */
        @ApiMember(Description="The user data ticket of the reference.")
        public String nutzdatenticket = null;

        /**
        * The field identifier of the reference.
        */
        @ApiMember(Description="The field identifier of the reference.")
        public String feldidentifikator = null;

        /**
        * The multi-line index of the reference.
        */
        @ApiMember(Description="The multi-line index of the reference.")
        public String mehrfachzeilenindex = null;

        /**
        * The delivery number form of the reference.
        */
        @ApiMember(Description="The delivery number form of the reference.")
        public String lfdNrVordruck = null;

        /**
        * Indicates the line number of the error field mentioned in the form.
        */
        @ApiMember(Description="Indicates the line number of the error field mentioned in the form.")
        public String vordruckZeilennummer = null;

        /**
        * Specifies the value of one or more index fields that identify the context of error messages.
        */
        @ApiMember(Description="Specifies the value of one or more index fields that identify the context of error messages.")
        public ArrayList<SemantischerIndex> semantischeIndexes = null;

        /**
        * The sub-subject-area of the reference.
        */
        @ApiMember(Description="The sub-subject-area of the reference.")
        public String untersachbereich = null;

        /**
        * The private identification number of the reference.
        */
        @ApiMember(Description="The private identification number of the reference.")
        public String privateKennnummer = null;

        /**
        * The name of the rule that applies to the reference.
        */
        @ApiMember(Description="The name of the rule that applies to the reference.")
        public String regelName = null;

        /**
        * The technical note identifier of the reference.
        */
        @ApiMember(Description="The technical note identifier of the reference.")
        public String fachlicheHinweisId = null;

        /**
        * The textual details of the reference.
        */
        @ApiMember(Description="The textual details of the reference.")
        public String text = null;
        
        public String getNutzdatenticket() { return nutzdatenticket; }
        public Hinweis setNutzdatenticket(String value) { this.nutzdatenticket = value; return this; }
        public String getFeldidentifikator() { return feldidentifikator; }
        public Hinweis setFeldidentifikator(String value) { this.feldidentifikator = value; return this; }
        public String getMehrfachzeilenindex() { return mehrfachzeilenindex; }
        public Hinweis setMehrfachzeilenindex(String value) { this.mehrfachzeilenindex = value; return this; }
        public String getLfdNrVordruck() { return lfdNrVordruck; }
        public Hinweis setLfdNrVordruck(String value) { this.lfdNrVordruck = value; return this; }
        public String getVordruckZeilennummer() { return vordruckZeilennummer; }
        public Hinweis setVordruckZeilennummer(String value) { this.vordruckZeilennummer = value; return this; }
        public ArrayList<SemantischerIndex> getSemantischeIndexes() { return semantischeIndexes; }
        public Hinweis setSemantischeIndexes(ArrayList<SemantischerIndex> value) { this.semantischeIndexes = value; return this; }
        public String getUntersachbereich() { return untersachbereich; }
        public Hinweis setUntersachbereich(String value) { this.untersachbereich = value; return this; }
        public String getPrivateKennnummer() { return privateKennnummer; }
        public Hinweis setPrivateKennnummer(String value) { this.privateKennnummer = value; return this; }
        public String getRegelName() { return regelName; }
        public Hinweis setRegelName(String value) { this.regelName = value; return this; }
        public String getFachlicheHinweisId() { return fachlicheHinweisId; }
        public Hinweis setFachlicheHinweisId(String value) { this.fachlicheHinweisId = value; return this; }
        public String getText() { return text; }
        public Hinweis setText(String value) { this.text = value; return this; }
    }

    /**
    * Represents an ELSTER document.
    */
    @Api(Description="Represents an ELSTER document.")
    public static class Elster
    {
        /**
        * The transfer header part of the ELSTER document.
        */
        @ApiMember(Description="The transfer header part of the ELSTER document.", IsRequired=true)
        public TransferHeader transferHeader = null;

        /**
        * The data (facts) part of the ELSTER document.
        */
        @ApiMember(Description="The data (facts) part of the ELSTER document.")
        public DatenTeil datenTeil = null;
        
        public TransferHeader getTransferHeader() { return transferHeader; }
        public Elster setTransferHeader(TransferHeader value) { this.transferHeader = value; return this; }
        public DatenTeil getDatenTeil() { return datenTeil; }
        public Elster setDatenTeil(DatenTeil value) { this.datenTeil = value; return this; }
    }

    /**
    * Represents the transfer header part of an ELSTER document.
    */
    @Api(Description="Represents the transfer header part of an ELSTER document.")
    public static class TransferHeader
    {
        /**
        * The version of the transfer header.
        */
        @ApiMember(Description="The version of the transfer header.", IsRequired=true)
        public String version = null;

        /**
        * The tax operation used in the ELSTER process.
        */
        @ApiMember(Description="The tax operation used in the ELSTER process.", IsRequired=true)
        public Verfahren verfahren = null;

        /**
        * The tax data type of the ELSTER process.
        */
        @ApiMember(Description="The tax data type of the ELSTER process.", IsRequired=true)
        public Datenart datenArt = null;

        /**
        * The authentification procedure of the ELSTER process.
        */
        @ApiMember(Description="The authentification procedure of the ELSTER process.", IsRequired=true)
        public Vorgang vorgang = null;

        /**
        * The ticket identifier after a successful ELSTER process.
        */
        @ApiMember(Description="The ticket identifier after a successful ELSTER process.")
        public String transferTicket = null;

        /**
        * The flag that indicates whether the tax declaration or filing is a test case. For production purposes, this value should not be set.
        */
        @ApiMember(Description="The flag that indicates whether the tax declaration or filing is a test case. For production purposes, this value should not be set.")
        public Testmerker testmerker = null;

        /**
        * The signature and associated information on the compressed, encrypted, base64-encoded content of the the data part of a tax declaration / statement.
        */
        @ApiMember(Description="The signature and associated information on the compressed, encrypted, base64-encoded content of the the data part of a tax declaration / statement.")
        public SigUser sigUser = null;

        /**
        * The receiving ELSTER server.
        */
        @ApiMember(Description="The receiving ELSTER server.")
        public Empfaenger empfaenger = null;

        /**
        * The identifier of the software manufacturer, through whose software the tax declaration is filed.
        */
        @ApiMember(Description="The identifier of the software manufacturer, through whose software the tax declaration is filed.", IsRequired=true)
        public String herstellerID = null;

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

        /**
        * The date of receipt of the tax data.
        */
        @ApiMember(Description="The date of receipt of the tax data.")
        public Date eingangsDatum = null;

        /**
        * The encryption data required for authenticated transmission of tax data.
        */
        @ApiMember(Description="The encryption data required for authenticated transmission of tax data.")
        public Datei datei = null;

        /**
        * The return code of the transfer header and is included in the response XML of the ELSTER server. The value should never be set by the data provider.
        */
        @ApiMember(Description="The return code of the transfer header and is included in the response XML of the ELSTER server. The value should never be set by the data provider.")
        public RC rc = null;

        /**
        * The details of the software that submits the tax data.
        */
        @ApiMember(Description="The details of the software that submits the tax data.")
        public String versionClient = null;

        /**
        * Data extensions to the transfer header.
        */
        @ApiMember(Description="Data extensions to the transfer header.")
        public Zusatz zusatz = null;
        
        public String getVersion() { return version; }
        public TransferHeader setVersion(String value) { this.version = value; return this; }
        public Verfahren getVerfahren() { return verfahren; }
        public TransferHeader setVerfahren(Verfahren value) { this.verfahren = value; return this; }
        public Datenart getDatenArt() { return datenArt; }
        public TransferHeader setDatenArt(Datenart value) { this.datenArt = value; return this; }
        public Vorgang getVorgang() { return vorgang; }
        public TransferHeader setVorgang(Vorgang value) { this.vorgang = value; return this; }
        public String getTransferTicket() { return transferTicket; }
        public TransferHeader setTransferTicket(String value) { this.transferTicket = value; return this; }
        public Testmerker getTestmerker() { return testmerker; }
        public TransferHeader setTestmerker(Testmerker value) { this.testmerker = value; return this; }
        public SigUser getSigUser() { return sigUser; }
        public TransferHeader setSigUser(SigUser value) { this.sigUser = value; return this; }
        public Empfaenger getEmpfaenger() { return empfaenger; }
        public TransferHeader setEmpfaenger(Empfaenger value) { this.empfaenger = value; return this; }
        public String getHerstellerID() { return herstellerID; }
        public TransferHeader setHerstellerID(String value) { this.herstellerID = value; return this; }
        public String getDatenLieferant() { return datenLieferant; }
        public TransferHeader setDatenLieferant(String value) { this.datenLieferant = value; return this; }
        public Date getEingangsDatum() { return eingangsDatum; }
        public TransferHeader setEingangsDatum(Date value) { this.eingangsDatum = value; return this; }
        public Datei getDatei() { return datei; }
        public TransferHeader setDatei(Datei value) { this.datei = value; return this; }
        public RC getRc() { return rc; }
        public TransferHeader setRc(RC value) { this.rc = value; return this; }
        public String getVersionClient() { return versionClient; }
        public TransferHeader setVersionClient(String value) { this.versionClient = value; return this; }
        public Zusatz getZusatz() { return zusatz; }
        public TransferHeader setZusatz(Zusatz value) { this.zusatz = value; return this; }
    }

    /**
    * Auflistung der gültigen Verfahren
    */
    public static enum Verfahren
    {
        ElsterAnmeldung,
        ElsterBereitstellung,
        ElsterBilanz,
        ElsterBRM,
        ElsterBRMOrg,
        ElsterDatenabholung,
        ElsterErklaerung,
        ElsterExtern,
        ElsterFSE,
        ElsterKapESt,
        ElsterKMV,
        ElsterKontoabfrage,
        ElsterLavendel,
        ElsterLohn,
        ElsterLohn2,
        ElsterNachricht,
        ElsterSignatur,
        ElsterVollmachtDB;
    }

    /**
    * Auflistung aller gültigen Datenarten.
    */
    public static enum Datenart
    {
        Anlage34a,
        AnpassungVorauszahlung,
        AntragUStVerguetung4a,
        AbrufcodeAntrag,
        AenderungAdresse,
        AbrufcodeStorno,
        AbrufvollmachtAnlage,
        AbrufvollmachtUpdate,
        AenderungBankverbindung,
        AntraegeRechteLoeschen,
        AntraegeUndRechte,
        Aufzeichnung146a,
        BetPG,
        Bilanz,
        Belegnachreichung,
        BsbMitteilung,
        BzSt2,
        C19Mitteilung,
        DUeAbmelden,
        DUeAnmelden,
        DUeUmmelden,
        Einspruch,
        EinspruchNachtrag,
        EinspruchRuecknahme,
        ELeVAntragELStAM,
        ELeVErmaessigung,
        ELeVGetrenntlebend,
        ELeVSteuerklassenwechsel,
        ELeVWiederaufnahmeEhe,
        EpAntwort,
        EpBescheid,
        EpMitteilung,
        EpKurzmitteilung,
        ElsterErklaerungDaten,
        ElsterKMVDaten,
        ElsterLohn2Daten,
        ElsterLohnDaten,
        ElsterVaStDaten,
        ElsterDIVADaten,
        ElsterDIVDaten,
        ElsterEPBescheidDaten,
        ElsterEPMitteilungDaten,
        EpStBescheidAbholung,
        EpStMitteilungAbholung,
        Erbschaftsteuer,
        ESt,
        EStbeschraenkt,
        Euer,
        EUn,
        Fein,
        ForschungZulAntrag,
        KStAntragOptionPersG,
        FlhMitteilung,
        FreistellungKapitalertraegeBV,
        Fristverlaengerung,
        FsEVerein,
        Gewerbemeldung,
        GdbMitteilung,
        Gewinnermittlung13aEStG,
        GewSt,
        GewStZ,
        GrundsteuerBW,
        GrundsteuerBY,
        GrundsteuerHE,
        GrundsteuerHH,
        GrundsteuerNI,
        Grundsteuerwert,
        InvStG56Abs5,
        InvStG51Feststellung,
        KapEStA,
        KapEStInvStG,
        KapG,
        KapGAus,
        KkvMitteilung,
        Kontoabfrage,
        Kontoinformation,
        KSt,
        KStZ,
        KttAnmeldungHH,
        KttAnzeigeHH,
        Lohnersatzleistung,
        LohnersatzMitteilung,
        LStA,
        LStB,
        LStHVVMAnlage,
        LStHVVMUpdate,
        OghMitteilung,
        VermoegenswirksameLeistung,
        VmWiderruf,
        VollmachtDetails,
        VNoVMVRegistrierung,
        VNoVMVUpdate,
        VNoVMVLoeschung,
        VollfAAnlage,
        VollfAUpdate,
        VMoVMVStBAnlage,
        VMoVMVStBUpdate,
        VMoVMVFreischaltung,
        VagMitteilung,
        DivaDatenBZSt,
        DivaEinwilligungAnlageBRM,
        DivaEinwilligungFreisch,
        DivaEinwilligungUpdateBRM,
        DivaWiderrufBRM,
        DivaErgebnisliste,
        LStHVDivaAdresseBRM,
        VmErgebnisListeVNSicht,
        PersG,
        PostfachAnfrage,
        PostfachStatus,
        ProtokollAnforderung,
        Registrierung,
        Schenkungsteuer,
        SonstigeNachrichten,
        SpezRechtAntrag,
        SpezRechtFreischaltung,
        SpezRechtListe,
        SpezRechtStorno,
        SpezRechtTeilnahme,
        StAb50a,
        Statusabfrage,
        UnentgeltlicheDepotuebertragung,
        UenstAnmeldungBE,
        UenstAnzeigeBE,
        USt,
        UStVA,
        UStDV,
        UStSV,
        VgnAnmeldungHB,
        VgnAnmeldungBE,
        VgnAnmeldungHH,
        VgnAnzeigeHH,
        WtbAnmeldungHB,
        Zmdo,
        ElsterVollmachtDaten,
        MitteilungAbholung;
    }

    /**
    * Hauptinformation ob die Daten authentifiziert wurden (send-Auth) oder nicht (send-NoSig)
    */
    public static enum Vorgang
    {
        SendAuth,
        SendAuthPart,
        SendNoSig,
        SendNoSigPart;
    }

    /**
    * Kennzeichnung der Datenlieferung ob es sich um einen Testfall handelt, gilt fuer die gesamte Datenlieferung. Ein Echtfall enthält dieses Element nicht. Ein Testfall muss mit einem Testmerker versehen werden, damit er nicht wie ein Echtfall verarbeitet wird. Handelt es sich um Daten, die nur zum Testen des Frontends versendet wurden, müssen sie nicht mehr weiter verarbeitet werden.
    */
    public static enum Testmerker
    {
        TM010000001(10000001),
        TM080000001(80000001),
        TM160000001(160000001),
        TM160000002(160000002),
        TM220000000(220000000),
        TM220002000(220002000),
        TM230000001(230000001),
        TM240000000(240000000),
        TM370000001(370000001),
        TM520000000(520000000),
        TM700000001(700000001),
        TM700000004(700000004);

        private final int value;
        Testmerker(final int intValue) { value = intValue; }
        public int getValue() { return value; }
    }

    /**
    * Represents the signature and associated information of the compressed, encrypted, base64-encoded content of the data part of the tax declaration/statement.
    */
    @Api(Description="Represents the signature and associated information of the compressed, encrypted, base64-encoded content of the data part of the tax declaration/statement.")
    public static class SigUser
    {
        /**
        * The content of the data. Currently supported: Raw XML (text), XElement or IXmlSerializable
        */
        @ApiMember(Description="The content of the data. Currently supported: Raw XML (text), XElement or IXmlSerializable")
        public Object inhalt = null;
        
        public Object getInhalt() { return inhalt; }
        public SigUser setInhalt(Object value) { this.inhalt = value; return this; }
    }

    /**
    * Represents a receiver of tax data.
    */
    @Api(Description="Represents a receiver of tax data.")
    public static class Empfaenger
    {
        /**
        * The identifier of the receiver.
        */
        @ApiMember(Description="The identifier of the receiver.")
        public String id = null;

        /**
        * The destination of the receiver.
        */
        @ApiMember(Description="The destination of the receiver.")
        public Bundesland ziel = null;
        
        public String getId() { return id; }
        public Empfaenger setId(String value) { this.id = value; return this; }
        public Bundesland getZiel() { return ziel; }
        public Empfaenger setZiel(Bundesland value) { this.ziel = value; return this; }
    }

    /**
    * Einheitliche Abkürzungen fuer die Bundesländer bzw. alternative Empfänger
    */
    public static enum Bundesland
    {
        Bw,
        By,
        Be,
        Bb,
        Hb,
        Hh,
        He,
        Mv,
        Ni,
        Nw,
        Rp,
        Sl,
        Sn,
        St,
        Sh,
        Th,
        Ec,
        Bf,
        Cs,
        Cd,
        Cm,
        Cn,
        Ds,
        Op,
        Tk,
        Zf;
    }

    /**
    * Represents information on the encryption of tax data.
    */
    @Api(Description="Represents information on the encryption of tax data.")
    public static class Datei
    {
        /**
        * The type of data encryption used.
        */
        @ApiMember(Description="The type of data encryption used.")
        public Verschluesselungsart verschluesselung = null;

        /**
        * The type of data compression used.
        */
        @ApiMember(Description="The type of data compression used.")
        public Kompression kompression = null;

        /**
        * The transport key used in the encryption.
        */
        @ApiMember(Description="The transport key used in the encryption.")
        public String transportSchluessel = null;

        /**
        * [Documentation unavailable]
        */
        @ApiMember(Description="[Documentation unavailable]")
        public Erstellung erstellung = null;
        
        public Verschluesselungsart getVerschluesselung() { return verschluesselung; }
        public Datei setVerschluesselung(Verschluesselungsart value) { this.verschluesselung = value; return this; }
        public Kompression getKompression() { return kompression; }
        public Datei setKompression(Kompression value) { this.kompression = value; return this; }
        public String getTransportSchluessel() { return transportSchluessel; }
        public Datei setTransportSchluessel(String value) { this.transportSchluessel = value; return this; }
        public Erstellung getErstellung() { return erstellung; }
        public Datei setErstellung(Erstellung value) { this.erstellung = value; return this; }
    }

    /**
    * Protokoll der Verschluesselung. Es kann vorkommen, dass verschieden Verschluesselungsarten eingesetzt werden, eine Unterscheidung ist hier nötig, um das richtige Entschluesselungstool anzusteuern. Mit welcher Verschluesselungsart wurden die Inhalte von den Elementen 'DatenLieferant' und ggf. 'SigUser' im TransferHeader und dem Element 'DatenTeil' verschluesselt
    */
    public static enum Verschluesselungsart
    {
        Pkcs7v15,
        Pkcs7v15enveloped,
        NoBasE64,
        CmsEncryptedData,
        CmsEnvelopedData,
        EnvelopedDataRsaOaepAes128GZipB64;
    }

    /**
    * Mit welcher Kompression wurden die Inhalte von den Elementen DatenLieferant und ggf. SigUser im TransferHeader und dem Element DatenTeil komprimiert.
    */
    public static enum Kompression
    {
        Gzip,
        NoBasE64;
    }

    /**
    * [Documentation unavailable]
    */
    @Api(Description="[Documentation unavailable]")
    public static class Erstellung
    {
        /**
        * [Documentation unavailable]
        */
        @ApiMember(Description="[Documentation unavailable]")
        public EricTyp eric = null;
        
        public EricTyp getEric() { return eric; }
        public Erstellung setEric(EricTyp value) { this.eric = value; return this; }
    }

    /**
    * [Documentation unavailable]
    */
    @Api(Description="[Documentation unavailable]")
    public static class EricTyp
    {
        /**
        * The content of the data. Currently supported: Raw XML (text), XmlElement, XElement or IXmlSerializable
        */
        @ApiMember(Description="The content of the data. Currently supported: Raw XML (text), XmlElement, XElement or IXmlSerializable")
        public Object inhalt = null;
        
        public Object getInhalt() { return inhalt; }
        public EricTyp setInhalt(Object value) { this.inhalt = value; return this; }
    }

    /**
    * Represents an ERiC return code.
    */
    @Api(Description="Represents an ERiC return code.")
    public static class RC
    {
        /**
        * The return value of the return code.
        */
        @ApiMember(Description="The return value of the return code.")
        public Rueckgabe rueckgabe = null;

        /**
        * The internal value of the return code.
        */
        @ApiMember(Description="The internal value of the return code.")
        public Stack stack = null;
        
        public Rueckgabe getRueckgabe() { return rueckgabe; }
        public RC setRueckgabe(Rueckgabe value) { this.rueckgabe = value; return this; }
        public Stack getStack() { return stack; }
        public RC setStack(Stack value) { this.stack = value; return this; }
    }

    /**
    * Represents an external error stack.
    */
    @Api(Description="Represents an external error stack.")
    public static class Rueckgabe
    {
        /**
        * The external error code. Either a zero (0) if no external errors occurred; otherwise an error number.
        */
        @ApiMember(Description="The external error code. Either a zero (0) if no external errors occurred; otherwise an error number.")
        public String code = null;

        /**
        * The external error message.
        */
        @ApiMember(Description="The external error message.")
        public String text = null;
        
        public String getCode() { return code; }
        public Rueckgabe setCode(String value) { this.code = value; return this; }
        public String getText() { return text; }
        public Rueckgabe setText(String value) { this.text = value; return this; }
    }

    /**
    * Represents an internal error stack.
    */
    @Api(Description="Represents an internal error stack.")
    public static class Stack
    {
        /**
        * The internal error code. Either a zero (0) if no internal errors occurred; otherwise an error number.
        */
        @ApiMember(Description="The internal error code. Either a zero (0) if no internal errors occurred; otherwise an error number.")
        public String code = null;

        /**
        * The external error message.
        */
        @ApiMember(Description="The external error message.")
        public String text = null;
        
        public String getCode() { return code; }
        public Stack setCode(String value) { this.code = value; return this; }
        public String getText() { return text; }
        public Stack setText(String value) { this.text = value; return this; }
    }

    /**
    * Represents an ERiC extension.
    */
    @Api(Description="Represents an ERiC extension.")
    public static class Zusatz
    {
        /**
        * The user-customizable items for the extension. Data providers can use these items for their own extensions/information.
        */
        @ApiMember(Description="The user-customizable items for the extension. Data providers can use these items for their own extensions/information.")
        public ArrayList<String> infos = null;

        /**
        * The ELSTER items for the extension. They can be included in the response XML from the ELSTER server, if special information must be returned to the user after data submission. For example, for authenticated submission, information about impending certificate expiration etc. It must not be supplied by the data provider (even when empty).
        */
        @ApiMember(Description="The ELSTER items for the extension. They can be included in the response XML from the ELSTER server, if special information must be returned to the user after data submission. For example, for authenticated submission, information about impending certificate expiration etc. It must not be supplied by the data provider (even when empty).")
        public ArrayList<String> elsterInfos = null;
        
        public ArrayList<String> getInfos() { return infos; }
        public Zusatz setInfos(ArrayList<String> value) { this.infos = value; return this; }
        public ArrayList<String> getElsterInfos() { return elsterInfos; }
        public Zusatz setElsterInfos(ArrayList<String> value) { this.elsterInfos = value; return this; }
    }

    /**
    * Represents the data part of an ELSTER document.
    */
    @Api(Description="Represents the data part of an ELSTER document.")
    public static class DatenTeil
    {
        /**
        * The blocks of tax data of the ELSTER document.
        */
        @ApiMember(Description="The blocks of tax data of the ELSTER document.", IsRequired=true)
        public ArrayList<Nutzdatenblock> nutzdatenbloecke = null;
        
        public ArrayList<Nutzdatenblock> getNutzdatenbloecke() { return nutzdatenbloecke; }
        public DatenTeil setNutzdatenbloecke(ArrayList<Nutzdatenblock> value) { this.nutzdatenbloecke = value; return this; }
    }

    /**
    * Represents a block of tax data.
    */
    @Api(Description="Represents a block of tax data.")
    public static class Nutzdatenblock
    {
        /**
        * The header part of the block.
        */
        @ApiMember(Description="The header part of the block.", IsRequired=true)
        public NutzdatenHeader nutzdatenHeader = null;

        /**
        * The data part of the block.
        */
        @ApiMember(Description="The data part of the block.", IsRequired=true)
        public Nutzdaten nutzdaten = null;
        
        public NutzdatenHeader getNutzdatenHeader() { return nutzdatenHeader; }
        public Nutzdatenblock setNutzdatenHeader(NutzdatenHeader value) { this.nutzdatenHeader = value; return this; }
        public Nutzdaten getNutzdaten() { return nutzdaten; }
        public Nutzdatenblock setNutzdaten(Nutzdaten value) { this.nutzdaten = value; return this; }
    }

    /**
    * Represents the header of a tax data.
    */
    @Api(Description="Represents the header of a tax data.")
    public static class NutzdatenHeader
    {
        /**
        * The version of the header.
        */
        @ApiMember(Description="The version of the header.", IsRequired=true)
        public String version = null;

        /**
        * The ticket identifier of the header.
        */
        @ApiMember(Description="The ticket identifier of the header.", IsRequired=true)
        public String nutzdatenTicket = null;

        /**
        * The receiver of the header.
        */
        @ApiMember(Description="The receiver of the header.", IsRequired=true)
        public NDHEmpfaenger empfaenger = null;

        /**
        * The software manufacturer, through whose software the tax declaration or filing is submitted.
        */
        @ApiMember(Description="The software manufacturer, through whose software the tax declaration or filing is submitted.", IsRequired=true)
        public Hersteller hersteller = null;

        /**
        * The details of the data provider (e.g. taxpayer, tax consulant or firm), who produced the tax data and it must not necessarily be the same person declared in the TransferHeader section.
        */
        @ApiMember(Description="The details of the data provider (e.g. taxpayer, tax consulant or firm), who produced the tax data and it must not necessarily be the same person declared in the TransferHeader section.")
        public String datenLieferant = null;

        /**
        * The return code of the header.
        */
        @ApiMember(Description="The return code of the header.")
        public RC rc = null;

        /**
        * The data extensions of the header.
        */
        @ApiMember(Description="The data extensions of the header.")
        public Zusatz zusatz = null;
        
        public String getVersion() { return version; }
        public NutzdatenHeader setVersion(String value) { this.version = value; return this; }
        public String getNutzdatenTicket() { return nutzdatenTicket; }
        public NutzdatenHeader setNutzdatenTicket(String value) { this.nutzdatenTicket = value; return this; }
        public NDHEmpfaenger getEmpfaenger() { return empfaenger; }
        public NutzdatenHeader setEmpfaenger(NDHEmpfaenger value) { this.empfaenger = value; return this; }
        public Hersteller getHersteller() { return hersteller; }
        public NutzdatenHeader setHersteller(Hersteller value) { this.hersteller = value; return this; }
        public String getDatenLieferant() { return datenLieferant; }
        public NutzdatenHeader setDatenLieferant(String value) { this.datenLieferant = value; return this; }
        public RC getRc() { return rc; }
        public NutzdatenHeader setRc(RC value) { this.rc = value; return this; }
        public Zusatz getZusatz() { return zusatz; }
        public NutzdatenHeader setZusatz(Zusatz value) { this.zusatz = value; return this; }
    }

    /**
    * Represents a receiver of tax data.
    */
    @Api(Description="Represents a receiver of tax data.")
    public static class NDHEmpfaenger
    {
        /**
        * The identifier of the receiver.
        */
        @ApiMember(Description="The identifier of the receiver.")
        public EmpfaengerID id = null;

        /**
        * The value of the receiver.
        */
        @ApiMember(Description="The value of the receiver.")
        public String value = null;
        
        public EmpfaengerID getId() { return id; }
        public NDHEmpfaenger setId(EmpfaengerID value) { this.id = value; return this; }
        public String getValue() { return value; }
        public NDHEmpfaenger setValue(String value) { this.value = value; return this; }
    }

    /**
    * Represents a receriver ID
    */
    public static enum EmpfaengerID
    {
        L,
        F;
    }

    /**
    * Represents a manufacturer/vendor of tax software.
    */
    @Api(Description="Represents a manufacturer/vendor of tax software.")
    public static class Hersteller
    {
        /**
        * The product name of the tax software produced by the manufacturer.
        */
        @ApiMember(Description="The product name of the tax software produced by the manufacturer.")
        public String produktName = null;

        /**
        * The product version of the tax software produced by the manufacturer.
        */
        @ApiMember(Description="The product version of the tax software produced by the manufacturer.")
        public String produktVersion = null;
        
        public String getProduktName() { return produktName; }
        public Hersteller setProduktName(String value) { this.produktName = value; return this; }
        public String getProduktVersion() { return produktVersion; }
        public Hersteller setProduktVersion(String value) { this.produktVersion = value; return this; }
    }

    /**
    * Represents an encapsulation of tax data content.
    */
    @Api(Description="Represents an encapsulation of tax data content.")
    public static class Nutzdaten
    {
        /**
        * The content of the tax data. This varies by tax declaration. Currently supported formats: Raw XML (text), XElement, and IXmlSerializable
        */
        @ApiMember(Description="The content of the tax data. This varies by tax declaration. Currently supported formats: Raw XML (text), XElement, and IXmlSerializable", IsRequired=true)
        public Object inhalt = null;
        
        public Object getInhalt() { return inhalt; }
        public Nutzdaten setInhalt(Object value) { this.inhalt = value; return this; }
    }

    /**
    * Represents a file that contains raw data content in bytes
    */
    @Api(Description="Represents a file that contains raw data content in bytes")
    public static class BinaryFile extends FileBase
    {
        /**
        * The attributes of the file.
        */
        @ApiMember(Description="The attributes of the file.", Name="Metadata")
        public FileMetadata metadata = null;

        /**
        * The name of the file without information on its directory path.
        */
        @ApiMember(Description="The name of the file without information on its directory path.", Name="Name")
        public String name = null;

        /**
        * The raw data content of the file.
        */
        @ApiMember(Description="The raw data content of the file.", Name="Content")
        public byte[] content = null;
        
        public FileMetadata getMetadata() { return metadata; }
        public BinaryFile setMetadata(FileMetadata value) { this.metadata = value; return this; }
        public String getName() { return name; }
        public BinaryFile setName(String value) { this.name = value; return this; }
        public byte[] getContent() { return content; }
        public BinaryFile setContent(byte[] value) { this.content = value; return this; }
    }

    /**
    * Represents information about a file or directory.
    */
    @Api(Description="Represents information about a file or directory.")
    public static class FileMetadata implements IFileMetadata
    {
        /**
        * The name of the file.For files, gets the name of the file.For directories, gets the name of the last directory in the hierarchy if a hierarchy exists; otherwise, the name of the directory.
        */
        @ApiMember(Description="The name of the file.\nFor files, gets the name of the file.\nFor directories, gets the name of the last directory in the hierarchy if a hierarchy exists; otherwise, the name of the directory.", Name="Name")
        public String name = null;

        /**
        * The full path of the directory or file.
        */
        @ApiMember(Description="The full path of the directory or file.", Name="FullName")
        public String fullName = null;

        /**
        * The time the current file or directory was last accessed.
        */
        @ApiMember(Description="The time the current file or directory was last accessed.", Name="LastAccessTime")
        public Date lastAccessTime = null;

        /**
        * The name of the file.
        */
        @ApiMember(Description="The name of the file.", Name="LastAccessTimeUtc")
        public Date lastAccessTimeUtc = null;

        /**
        * The time when the current file or directory was last written to.
        */
        @ApiMember(Description="The time when the current file or directory was last written to.", Name="LastAccessTime")
        public Date lastWriteTime = null;

        /**
        * The time, in coordinated universal time (UTC), when the current file or directory was last written to.
        */
        @ApiMember(Description="The time, in coordinated universal time (UTC), when the current file or directory was last written to.", Name="LastWriteTimeUtc")
        public Date lastWriteTimeUtc = null;

        /**
        * The size, in bytes, of the current file.
        */
        @ApiMember(Description="The size, in bytes, of the current file.", Name="Length")
        public Long length = null;

        /**
        * The size, in bytes, of the current file.
        */
        @ApiMember(Description="The size, in bytes, of the current file.", Name="UserId")
        public Integer userId = null;

        /**
        * The file group id.
        */
        @ApiMember(Description="The file group id.", Name="GroupId")
        public Integer groupId = null;

        /**
        * A value that indicates whether the others can read from this file.
        */
        @ApiMember(Description="A value that indicates whether the others can read from this file.", Name="OthersCanRead")
        public Boolean othersCanRead = null;

        /**
        * A value that indicates whether the group members can execute this file.
        */
        @ApiMember(Description="A value that indicates whether the group members can execute this file.", Name="GroupCanExecute")
        public Boolean groupCanExecute = null;

        /**
        * A value that indicates whether the group members can write into this file.
        */
        @ApiMember(Description="A value that indicates whether the group members can write into this file.", Name="GroupCanWrite")
        public Boolean groupCanWrite = null;

        /**
        * A value that indicates whether the group members can read from this file.
        */
        @ApiMember(Description="A value that indicates whether the group members can read from this file.", Name="GroupCanRead")
        public Boolean groupCanRead = null;

        /**
        * A value that indicates whether the owner can execute this file.
        */
        @ApiMember(Description="A value that indicates whether the owner can execute this file.", Name="OwnerCanExecute")
        public Boolean ownerCanExecute = null;

        /**
        * A value that indicates whether the owner can write into this file.
        */
        @ApiMember(Description="A value that indicates whether the owner can write into this file.", Name="OwnerCanWrite")
        public Boolean ownerCanWrite = null;

        /**
        * A value that indicates whether the owner can read from this file.
        */
        @ApiMember(Description="A value that indicates whether the owner can read from this file.", Name="OthersCanRead")
        public Boolean ownerCanRead = null;

        /**
        * A value that indicates whether others can read from this file.
        */
        @ApiMember(Description="A value that indicates whether others can read from this file.", Name="OthersCanExecute")
        public Boolean othersCanExecute = null;

        /**
        * A value that indicates whether others can write into this file.
        */
        @ApiMember(Description="A value that indicates whether others can write into this file.", Name="OthersCanWrite")
        public Boolean othersCanWrite = null;

        /**
        * Extensions to the file attributes.
        */
        @ApiMember(Description="Extensions to the file attributes.", Name="Extensions")
        public HashMap<String,String> extensions = null;
        
        public String getName() { return name; }
        public FileMetadata setName(String value) { this.name = value; return this; }
        public String getFullName() { return fullName; }
        public FileMetadata setFullName(String value) { this.fullName = value; return this; }
        public Date getLastAccessTime() { return lastAccessTime; }
        public FileMetadata setLastAccessTime(Date value) { this.lastAccessTime = value; return this; }
        public Date getLastAccessTimeUtc() { return lastAccessTimeUtc; }
        public FileMetadata setLastAccessTimeUtc(Date value) { this.lastAccessTimeUtc = value; return this; }
        public Date getLastWriteTime() { return lastWriteTime; }
        public FileMetadata setLastWriteTime(Date value) { this.lastWriteTime = value; return this; }
        public Date getLastWriteTimeUtc() { return lastWriteTimeUtc; }
        public FileMetadata setLastWriteTimeUtc(Date value) { this.lastWriteTimeUtc = value; return this; }
        public Long getLength() { return length; }
        public FileMetadata setLength(Long value) { this.length = value; return this; }
        public Integer getUserId() { return userId; }
        public FileMetadata setUserId(Integer value) { this.userId = value; return this; }
        public Integer getGroupId() { return groupId; }
        public FileMetadata setGroupId(Integer value) { this.groupId = value; return this; }
        public Boolean isOthersCanRead() { return othersCanRead; }
        public FileMetadata setOthersCanRead(Boolean value) { this.othersCanRead = value; return this; }
        public Boolean isGroupCanExecute() { return groupCanExecute; }
        public FileMetadata setGroupCanExecute(Boolean value) { this.groupCanExecute = value; return this; }
        public Boolean isGroupCanWrite() { return groupCanWrite; }
        public FileMetadata setGroupCanWrite(Boolean value) { this.groupCanWrite = value; return this; }
        public Boolean isGroupCanRead() { return groupCanRead; }
        public FileMetadata setGroupCanRead(Boolean value) { this.groupCanRead = value; return this; }
        public Boolean isOwnerCanExecute() { return ownerCanExecute; }
        public FileMetadata setOwnerCanExecute(Boolean value) { this.ownerCanExecute = value; return this; }
        public Boolean isOwnerCanWrite() { return ownerCanWrite; }
        public FileMetadata setOwnerCanWrite(Boolean value) { this.ownerCanWrite = value; return this; }
        public Boolean isOwnerCanRead() { return ownerCanRead; }
        public FileMetadata setOwnerCanRead(Boolean value) { this.ownerCanRead = value; return this; }
        public Boolean isOthersCanExecute() { return othersCanExecute; }
        public FileMetadata setOthersCanExecute(Boolean value) { this.othersCanExecute = value; return this; }
        public Boolean isOthersCanWrite() { return othersCanWrite; }
        public FileMetadata setOthersCanWrite(Boolean value) { this.othersCanWrite = value; return this; }
        public HashMap<String,String> getExtensions() { return extensions; }
        public FileMetadata setExtensions(HashMap<String,String> value) { this.extensions = value; return this; }
    }

}

Java SubmitUmsatzsteuererklaerung2022 DTOs

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

HTTP + OTHER

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

POST /SubmitUmsatzsteuererklaerung2022 HTTP/1.1 
Host: taxfiling.pwc.de 
Accept: text/jsonl
Content-Type: text/jsonl
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"},"e3001201":{"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":"\/Date(-62135596800000-0000)\/","ende":"\/Date(-62135596800000-0000)\/"},"alias":"String"},"e3001501":{"wert":{"start":"\/Date(-62135596800000-0000)\/","ende":"\/Date(-62135596800000-0000)\/"},"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":{"e3002301":{"betrag":{"wert":0},"alias":"String"},"e3002401":{"betrag":{"wert":0},"alias":"String"}},"umsaetze":{"umsAllg":{"e3003303":{"betrag":{"wert":0},"alias":"String"},"e3003304":{"betrag":{"wert":0},"alias":"String"},"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"},"e3003703":{"betrag":{"wert":0},"alias":"String"},"e3003704":{"betrag":{"wert":0},"alias":"String"},"e3003803":{"betrag":{"wert":0},"alias":"String"},"e3003804":{"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"},"e3005301":{"betrag":{"wert":0},"alias":"String"},"e3005302":{"betrag":{"wert":0},"alias":"String"},"e3005701":{"betrag":{"wert":0},"alias":"String"},"e3005702":{"betrag":{"wert":0},"alias":"String"},"e3005801":{"betrag":{"wert":0},"alias":"String"},"e3005101":{"betrag":{"wert":0},"alias":"String"},"e3005102":{"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":{"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":{"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"},"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":{"e3102804":{"betrag":{"wert":0},"alias":"String"},"e3102805":{"betrag":{"wert":0},"alias":"String"},"auslag13aSum":{"e3102904":{"betrag":{"wert":0},"alias":"String"}}},"igDrei":{"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"},"e3102303":{"betrag":{"wert":0},"alias":"String"},"e3102304":{"betrag":{"wert":0},"alias":"String"}},"igDreiSum":{"e3102401":{"betrag":{"wert":0},"alias":"String"}}},"ums13b":{"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":{"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":{"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"},"e3006501":{"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":"\/Date(-62135596800000-0000)\/","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":{"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":{"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"},"e3201402":{"wert":"String","alias":"String"},"e3201503":{"wert":"String","alias":"String"},"e3201504":{"wert":"String","alias":"String"},"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":{"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"}}}},"unterfallart":{"wert":"UFA10","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","duplexDruck":false,"protocolPrefix":"String","fussText":"String","zertifikat":{"id":"00000000000000000000000000000000","index":0,"pin":"String","description":"String","tags":["String"],"name":"String","content":"AA=="}}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"rueckgabe":{"erfolg":{"telenummer":["String"],"ordnungsbegriffe":["String"]},"transfers":{"transferList":[{"transferTicket":"String"}]},"fehlerRegelpruefungen":[{"nutzdatenticket":"String","feldidentifikator":"String","mehrfachzeilenindex":"String","lfdNrVordruck":"String","vordruckZeilennummer":"String","semantischeIndexes":[{"name":"String","value":"String"}],"untersachbereich":"String","privateKennnummer":"String","regelName":"String","fachlicheFehlerId":"String","text":"String"}],"hinweise":[{"nutzdatenticket":"String","feldidentifikator":"String","mehrfachzeilenindex":"String","lfdNrVordruck":"String","vordruckZeilennummer":"String","semantischeIndexes":[{"name":"String","value":"String"}],"untersachbereich":"String","privateKennnummer":"String","regelName":"String","fachlicheHinweisId":"String","text":"String"}]},"serverantwort":{"transferHeader":{"version":"String","verfahren":"ElsterAnmeldung","datenArt":"34a","vorgang":"send-Auth","transferTicket":"String","testmerker":"0","sigUser":{"inhalt":{}},"empfaenger":{"id":"String","ziel":"BW"},"herstellerID":"String","datenLieferant":"String","eingangsDatum":"\/Date(-62135596800000-0000)\/","datei":{"verschluesselung":"PKCS#7v1.5","kompression":"GZIP","transportSchluessel":"String","erstellung":{"eric":{"inhalt":{}}}},"rc":{"rueckgabe":{"code":"String","text":"String"},"stack":{"code":"String","text":"String"}},"versionClient":"String","zusatz":{"infos":["String"],"elsterInfos":["String"]}},"datenTeil":{"nutzdatenbloecke":[{"nutzdatenHeader":{"version":"String","nutzdatenTicket":"String","empfaenger":{"id":"L","value":"String"},"hersteller":{"produktName":"String","produktVersion":"String"},"datenLieferant":"String","rc":{"rueckgabe":{"code":"String","text":"String"},"stack":{"code":"String","text":"String"}},"zusatz":{"infos":["String"],"elsterInfos":["String"]}},"nutzdaten":{"inhalt":{}}}]}},"transferProtocols":[{"metadata":{"name":"String","fullName":"String","lastAccessTime":"\/Date(-62135596800000-0000)\/","lastAccessTimeUtc":"\/Date(-62135596800000-0000)\/","lastWriteTime":"\/Date(-62135596800000-0000)\/","lastWriteTimeUtc":"\/Date(-62135596800000-0000)\/","length":0,"userId":0,"groupId":0,"othersCanRead":false,"groupCanExecute":false,"groupCanWrite":false,"groupCanRead":false,"ownerCanExecute":false,"ownerCanWrite":false,"ownerCanRead":false,"othersCanExecute":false,"othersCanWrite":false,"extensions":{"String":"String"}},"name":"String","content":"AA=="}],"statusCode":"ERIC_OK","statusText":"String","id":"String","index":0,"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}