/* Options: Date: 2024-04-28 08:00:59 Version: 8.12 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://taxfiling.pwc.de //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: BatchProtokollRequest17.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* /** * Represents the service request to retrieve logs about tax statements. */ @Route(Path="/datenabholungen/protokolle/17/verarbeitungsprotokoll/batch", Verbs="POST") @Api(Description="Represents the service request to retrieve logs about tax statements.") open class BatchProtokollRequest17 : BatchProtokollRequestBase17(), IReturn> { /** * The tax assessements, whose processing records shall be obtained. */ @ApiMember(Description="The tax assessements, whose processing records shall be obtained.", Name="Bescheide") var bescheide:ArrayList = ArrayList() /** * The authentification certificate. */ @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat") var zertifikat:PortalCertificate? = null companion object { private val responseType = object : TypeToken>(){}.type } override fun getResponseType(): Any? = BatchProtokollRequest17.responseType } /** * Represents a portal certificate that is protected by a password. */ @Api(Description="Represents a portal certificate that is protected by a password.") open class PortalCertificate : FileBase(), ISecuredCertificate, IHasIndex { /** * The unique identifier of the certificate. */ @ApiMember(Description="The unique identifier of the certificate.") var id:UUID? = 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.") var index:Int? = null /** * The password to protect the certificate from unauthorized access. */ @StringLength(255) @ApiMember(Description="The password to protect the certificate from unauthorized access.") var pin:String? = null /** * The description of the certificate. */ @StringLength(2147483647) @ApiMember(Description="The description of the certificate.") var description:String? = 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.") var tags:ArrayList = ArrayList() /** * Gets or sets the file name of the certificate. */ @ApiMember(Description="Gets or sets the file name of the certificate.") var name:String? = null /** * The raw data content of the file. */ @ApiMember(Description="The raw data content of the file.", Name="Content") var content:ByteArray? = null } /** * Represents a request to retrieve data records by means of one or more IDs. */ @Api(Description="Represents a request to retrieve data records by means of one or more IDs.") open class Abholung17 : Abholung() { /** * The tax type (e.g. ESB) of the data record. */ @ApiMember(Description="The tax type (e.g. ESB) of the data record.") var steuerart:Steuerart? = null /** * The meta information of the identifier. */ @ApiMember(Description="The meta information of the identifier.") var metaInformationen:MetaInformationen17? = null /** * Die Transfertickets der Datensaetze. Es duerfen max. 100 Bereitstellungstickets in einem Request angegeben werden. */ @ApiMember(Description="Die Transfertickets der Datensaetze. Es duerfen max. 100 Bereitstellungstickets in einem Request angegeben werden.") var bereitstellungsticket:String? = null /** * The attachments of the data records. */ @ApiMember(Description="The attachments of the data records.") var anhaenge:Anhaenge17? = null /** * The identifier of the data record. */ @ApiMember(Description="The identifier of the data record.") var id:String? = null /** * The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. */ @ApiMember(Description="The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'.") var idnr:String? = null /** * The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. */ @ApiMember(Description="The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'.") var veranlagungsjahr:Int? = null /** * The transmission path used. */ @ApiMember(Description="The transmission path used.") var uebertragungsweg:Uebertragungsweg? = null /** * The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING. */ @ApiMember(Description="The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING.") var encoding:String? = null /** * The client number; only applicable to the tax type 'ElsterDIVADaten'. */ @ApiMember(Description="The client number; only applicable to the tax type 'ElsterDIVADaten'.") var mandantennummer:String? = null /** * The tax number; only applicable to the tax type 'ElsterDIVADaten'. */ @ApiMember(Description="The tax number; only applicable to the tax type 'ElsterDIVADaten'.") var steuernummer:String? = null /** * The asessment date; only applicable to the tax type 'ElsterDIVADaten'. */ @ApiMember(Description="The asessment date; only applicable to the tax type 'ElsterDIVADaten'.") var bescheiddatum:Date? = null /** * Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. */ @ApiMember(Description="Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet.") var datenpaket:Datenpaket? = null /** * Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. */ @ApiMember(Description="Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations.") var download:Download? = null } /** * Represents a base service request to retrieve processing records from specified tax statements. Applicable to version 17.. */ @Api(Description="Represents a base service request to retrieve processing records from specified tax statements. Applicable to version 17..") open class BatchProtokollRequestBase17 : BatchProtokollRequestBase() { /** * The tax assessements, whose processing records shall be obtained. */ @ApiMember(Description="The tax assessements, whose processing records shall be obtained.", Name="Bescheide") var bescheide:ArrayList = ArrayList() /** * The authentification certificate. */ @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat") var zertifikat:PortalCertificate? = null } open interface IHasIndex { var index:Int? } /** * Das Verarbeitungsprotokoll einer Datenabholungsprozesses. */ @Api(Description="Das Verarbeitungsprotokoll einer Datenabholungsprozesses.") open class Protokoll06 { /** * Version des Protokolls. */ @ApiMember(Description="Version des Protokolls.", Name="Version") var version:Int? = null /** * Der Zeitstempel der Protokoll-Aufbereitung. Es wird der Zeitstempel der serverseitigen Verarbeitung der Protokollanfrage zurück übermittelt. Das String-Format des ZeitStempels lautet: JJJJMMTThhmmss. */ @ApiMember(Description="Der Zeitstempel der Protokoll-Aufbereitung. Es wird der Zeitstempel der serverseitigen Verarbeitung der Protokollanfrage zurück übermittelt. Das String-Format des ZeitStempels lautet: JJJJMMTThhmmss.", Name="ZeitStempel") var zeitStempel:Date? = null /** * Der Datenteil des Protokolls. */ @ApiMember(Description="Der Datenteil des Protokolls.", Name="DatenTeil") var datenTeil:DatenTeil06? = null } /** * Specifies a service response from an ERiC service operation. */ @Api(Description="Specifies a service response from an ERiC service operation.") open class ServiceReponseBase : IHasIndex { /** * The unique identifier of the response. */ @ApiMember(Description="The unique identifier of the response.", Name="Id") var id:String? = 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") var index:Int? = 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") var responseStatus:ResponseStatus? = null } /** * Represents a base class for a file with raw data. */ @Api(Description="Represents a base class for a file with raw data.") open class FileBase { /** * The raw data content of the file. */ @ApiMember(Description="The raw data content of the file.", Name="Content") var content:ByteArray? = null } open interface ISecuredCertificate { var pin:String? } /** * Represents the various tax types for the retrieval of data. */ enum class Steuerart { Esb, Gsb, Usb, EpBescheid, EpMitteilung, Gewerbesteuerbescheid, Gewerbesteuermitteilung, Gewmb, DivaAnzeigeEinerLotterie, DivaBescheid, DivaBescheidESt, DivaBuchmachersteuer, DivaLotteriesteuerEinmal, DivaLotteriesteuerMehr, DivaSportwettensteuer, DivaTotalisator, OzgBescheid, VerbindlicheAuskunft, VerbindlicheZusage, DivaSonstigerVA, DivaBescheidErbSt, DivaBescheidFEIN, DivaBescheidGewSt, DivaBescheidKSt, DivaBescheidUSt, DivaBescheidSchenkSt, DivaTroncabgabe, DivaVirtuelleAutomatenStB, DivaOnlinePokerStB, LStHVVMRM, EinlagenrueckgewaehrVA, FttMeldungVA, StatusInvStGVA, UStVEUVA, Versva, AltZertVA, KapEStEntlastungVA, PostUDLVA, StAb50aVA, StAbEntlastungVA, KassenangelegenheitenVA, KStOptVA, SteueroasenabwehrVA, KdbVollmachtRM, Stbke, VdbkdbRueckmeldungLief, AnhangRueckmeldung, DivaEinwilligungRM, GlueckspielF, OzgMitteilung, VerbindlicheAuskunftInfoF, EloProtokoll, } /** * Represents meta information. */ @Api(Description="Represents meta information.") open class MetaInformationen17 { /** * List of metadata. */ @ApiMember(Description="List of metadata.") var meta:ArrayList = ArrayList() /** * List of meta infomation maps. */ @ApiMember(Description="List of meta infomation maps.") var metaInfoMaps:MetaInfoMaps17? = null } /** * Represents a list of attachments. */ open class Anhaenge17 { } /** * Represents the transmission path. */ enum class Uebertragungsweg { Direkt, Link, Sammellink, } /** * The data packet from the retrieval operation. */ @Api(Description="The data packet from the retrieval operation.") open class Datenpaket { /** * Encoded (compressed and encrypted) requested data record */ @ApiMember(Description="Encoded (compressed and encrypted) requested data record") var value:String? = null } /** * Represents the download of requested records. The downloaded content from the web server takes place: a) with https b) on port 443 c) on datenabholung1.elster.de or datenabholung2.elster.de. The HTTP Basic Authentication mechanism according to RFC 2617 is used for authentication. */ @Api(Description="Represents the download of requested records. The downloaded content from the web server takes place: a) with https b) on port 443 c) on datenabholung1.elster.de or datenabholung2.elster.de. The HTTP Basic Authentication mechanism according to RFC 2617 is used for authentication.") open class Download { /** * The link to the data on the web server. */ @ApiMember(Description="The link to the data on the web server.") var url:String? = null /** * The user name for the web server. */ @ApiMember(Description="The user name for the web server.") var benutzer:String? = null /** * Password for the web server. */ @ApiMember(Description="Password for the web server.") var passwort:String? = null } /** * Represents the request to retrieve tax assessments by means of a specfied ID. */ @Api(Description="Represents the request to retrieve tax assessments by means of a specfied ID.") open class Abholung { /** * The identifier of the data record. */ @ApiMember(Description="The identifier of the data record.") var id:String? = null /** * The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. */ @ApiMember(Description="The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'.") var idnr:String? = null /** * The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. */ @ApiMember(Description="The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'.") var veranlagungsjahr:Int? = null /** * The transmission path used. */ @ApiMember(Description="The transmission path used.") var uebertragungsweg:Uebertragungsweg? = null /** * The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING. */ @ApiMember(Description="The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING.") var encoding:String? = null /** * The client number; only applicable to the tax type 'ElsterDIVADaten'. */ @ApiMember(Description="The client number; only applicable to the tax type 'ElsterDIVADaten'.") var mandantennummer:String? = null /** * The tax number; only applicable to the tax type 'ElsterDIVADaten'. */ @ApiMember(Description="The tax number; only applicable to the tax type 'ElsterDIVADaten'.") var steuernummer:String? = null /** * The asessment date; only applicable to the tax type 'ElsterDIVADaten'. */ @ApiMember(Description="The asessment date; only applicable to the tax type 'ElsterDIVADaten'.") var bescheiddatum:Date? = null /** * Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. */ @ApiMember(Description="Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet.") var datenpaket:Datenpaket? = null /** * Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. */ @ApiMember(Description="Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations.") var download:Download? = null } /** * Represents a base service request to retrieve processing records from specified tax statements. */ @Api(Description="Represents a base service request to retrieve processing records from specified tax statements.") open class BatchProtokollRequestBase : IPost { /** * The authentification certificate. */ @ApiMember(Description="The authentification certificate.", IsRequired=true, Name="Zertifikat") var zertifikat:PortalCertificate? = null } /** * Stellt den Datenteil eines Protokolls dar. */ @Api(Description="Stellt den Datenteil eines Protokolls dar.") open class DatenTeil06 { /** * Das Transferticket der Datenlieferung. */ @ApiMember(Description="Das Transferticket der Datenlieferung.") var transferTicket:String? = null /** * Der Statuscode zur gesamten Datenlieferung. 0 (Datenlieferung ok - Alle Datensätze konnten verarbeitet werden). 1 (Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden). 2 (Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft). 3 (Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant). */ @ApiMember(Description="Der Statuscode zur gesamten Datenlieferung. 0 (Datenlieferung ok - Alle Datensätze konnten verarbeitet werden). 1 (Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden). 2 (Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft). 3 (Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant).") var code:Int? = null /** * Der Datenteil des Protokolls.Datenlieferung ok - Alle Datensätze konnten verarbeitet werden. Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden. Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft. 3Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant. */ @ApiMember(Description="Der Datenteil des Protokolls.Datenlieferung ok - Alle Datensätze konnten verarbeitet werden. Es sind Fehler aufgetreten - die Nutzdatenblöcke konnten nur teilweise verarbeitet werden. Datenlieferung konnte gar nicht verarbeitet werden - alle Nutzdatenblöcke fehlerhaft. 3Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll noch mal zu einen späteren Zeitpunkt an; für Onlinebetrieb relevant.") var text:String? = null /** * Der Datenteil des Protokolls. */ @ApiMember(Description="Der Datenteil des Protokolls.") var nutzdatenbloecke:ArrayList = ArrayList() } /** * Represents the metadata of a data record. */ @Api(Description="Represents the metadata of a data record.") open class Meta17 { /** * The type of metadata, e.g. datei [file] */ @ApiMember(Description="The type of metadata, e.g. datei [file]") var name:String? = null /** * The encoding of the metadata (text or base64) */ @ApiMember(Description="The encoding of the metadata (text or base64)") var coding:Coding? = null /** * The content of the metadata */ @ApiMember(Description="The content of the metadata") var value:String? = null } /** * Represents a list of meta information maps. */ open class MetaInfoMaps17 { } /** * Stellt ein Element eines Nutztdatenblockes dar. */ @Api(Description="Stellt ein Element eines Nutztdatenblockes dar.") open class Nutzdatenblock06 { /** * Über das Nutzdatenticket im Verarbeitungsprotokoll wird der Nutzdatenblock aus der Datenlieferung referenziert. */ @ApiMember(Description="Über das Nutzdatenticket im Verarbeitungsprotokoll wird der Nutzdatenblock aus der Datenlieferung referenziert.") var nutzdatenTicket:String? = null /** * Der Statuscode zum Nutzdatenblock. */ @ApiMember(Description="Der Statuscode zum Nutzdatenblock.") var code:Int? = null /** * Der Statustext zum Nutzdatenblock. */ @ApiMember(Description="Der Statustext zum Nutzdatenblock.") var text:String? = null /** * Anzahl der Verarbeiteten Nutzdatensätze. */ @ApiMember(Description="Anzahl der Verarbeiteten Nutzdatensätze.") var verarbeiteteNds:Long? = null /** * Anzahl der nichtverarbeiteten Nutzdatensätze. */ @ApiMember(Description="Anzahl der nichtverarbeiteten Nutzdatensätze.") var nichtverarbeiteteNds:Long? = null /** * Der Datenteil des Protokolls. */ @ApiMember(Description="Der Datenteil des Protokolls.") var ndSFehler:ArrayList = ArrayList() } /** * Specifies the encoding of the metadata. */ enum class Coding { Text, Base64, } /** * Stellt einen Nutzdatensatz-Fehler dar. Dabei besteht der Fehler aus: - einer laufenden Nummer(Attribut zum NdSFehler)- der KmId (Attribut zum NdSFehler) und/oder dem ordnungsMerkmal (Attribut zum NdSFehler)- einem Fehlernummer (Attribut zum NdSFehler)- einem Fehlertext (Inhalt des Tag NdSFehler) */ @Api(Description="Stellt einen Nutzdatensatz-Fehler dar. Dabei besteht der Fehler aus: - einer laufenden Nummer(Attribut zum NdSFehler)- der KmId (Attribut zum NdSFehler) und/oder dem ordnungsMerkmal (Attribut zum NdSFehler)- einem Fehlernummer (Attribut zum NdSFehler)- einem Fehlertext (Inhalt des Tag NdSFehler)") open class NdSFehler06 { /** * Die laufende Nummer des fehlerhaften Datensatzes in einem Nutzdatenblock. */ @ApiMember(Description="Die laufende Nummer des fehlerhaften Datensatzes in einem Nutzdatenblock.", Name="LfdNr") var lfdNr:String? = null /** * Bei der kmId handelt es sich um die durch den Verfasser vorgegebene KmId des Nutzdatensatzes. */ @ApiMember(Description="Bei der kmId handelt es sich um die durch den Verfasser vorgegebene KmId des Nutzdatensatzes.", Name="KmId") var kmId:String? = null /** * Die durch den Verfasser vorgegebene bundesweit eindeutige Identifikation des Nutzdatensatzes (z.B. bei LStB, Lohnersatzleistungen). */ @ApiMember(Description="Die durch den Verfasser vorgegebene bundesweit eindeutige Identifikation des Nutzdatensatzes (z.B. bei LStB, Lohnersatzleistungen).", Name="OrdnungsMerkmal") var ordnungsMerkmal:String? = null /** * Es wird die vom Elstersystem für diesen Fehler vergebene Fehlernummer i.d.R. eine 9-stellige Nummer zurückgemeldet. */ @ApiMember(Description="Es wird die vom Elstersystem für diesen Fehler vergebene Fehlernummer i.d.R. eine 9-stellige Nummer zurückgemeldet.", Name="FehlerNummer") var fehlerNummer:Long? = null /** * Es wird der vom Elstersystem für diesen Fehler vergebene Fehlertext zurückgemeldet. */ @ApiMember(Description="Es wird der vom Elstersystem für diesen Fehler vergebene Fehlertext zurückgemeldet.", Name="FehlerText") var fehlerText:String? = null } /** * Represents a type that encapulates the processing records of a tax statement. */ @Api(Description="Represents a type that encapulates the processing records of a tax statement.") open class ProtokollResponse : ServiceReponseBase() { /** * The processing record of a tax statement. */ @ApiMember(Description="The processing record of a tax statement.", Name="Protokoll") var protokoll:Protokoll06? = null /** * The unique identifier of the response. */ @ApiMember(Description="The unique identifier of the response.", Name="Id") var id:String? = 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") var index:Int? = 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") var responseStatus:ResponseStatus? = null }