(* Options: Date: 2024-11-26 03:29:40 Version: 8.12 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://taxfiling.staging.pwc.de //GlobalNamespace: //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //ExportValueTypes: False IncludeTypes: ProtokollRequest17.* //ExcludeTypes: //InitializeCollections: True //AddNamespaces: *) namespace PwC.DigitalHub.Utilities.IO.Core.Contracts.Models open System open System.Collections open System.Collections.Generic open System.Runtime.Serialization open ServiceStack open ServiceStack.DataAnnotations open System.Net /// ///Represents a base class for a file with raw data. /// [] [] type FileBase() = /// ///The raw data content of the file. /// [] member val Content:Byte[] = [||] with get,set /// ///Represents a portal certificate that is protected by a password. /// [] [] type PortalCertificate() = inherit FileBase() /// ///The unique identifier of the certificate. /// [] member val Id:Guid = new Guid() with get,set /// ///The position of the certificate element in an indexed collection of certificates. /// [] member val Index:Int32 = new Int32() with get,set /// ///The password to protect the certificate from unauthorized access. /// [] [] member val Pin:String = null with get,set /// ///The description of the certificate. /// [] [] member val Description:String = null with get,set /// ///Tags that can be used to label or identify the certificate. /// [] member val Tags:ResizeArray = new ResizeArray() with get,set /// ///Gets or sets the file name of the certificate. /// [] member val Name:String = null with get,set /// ///The raw data content of the file. /// [] member val Content:Byte[] = [||] with get,set /// ///Represents the transmission path. /// type Uebertragungsweg = | direkt = 0 | link = 1 | sammellink = 2 /// ///The data packet from the retrieval operation. /// [] [] type Datenpaket() = /// ///Encoded (compressed and encrypted) requested data record /// [] member val Value:String = null with get,set /// ///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. /// [] [] type Download() = /// ///The link to the data on the web server. /// [] member val Url:String = null with get,set /// ///The user name for the web server. /// [] member val Benutzer:String = null with get,set /// ///Password for the web server. /// [] member val Passwort:String = null with get,set /// ///Represents the request to retrieve tax assessments by means of a specfied ID. /// [] [] type Abholung() = /// ///The identifier of the data record. /// [] member val Id:String = null with get,set /// ///The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. /// [] member val Idnr:String = null with get,set /// ///The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. /// [] member val Veranlagungsjahr:Nullable = new Nullable() with get,set /// ///The transmission path used. /// [] member val Uebertragungsweg:Nullable = new Nullable() with get,set /// ///The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING. /// [] member val Encoding:String = null with get,set /// ///The client number; only applicable to the tax type 'ElsterDIVADaten'. /// [] member val Mandantennummer:String = null with get,set /// ///The tax number; only applicable to the tax type 'ElsterDIVADaten'. /// [] member val Steuernummer:String = null with get,set /// ///The asessment date; only applicable to the tax type 'ElsterDIVADaten'. /// [] member val Bescheiddatum:Nullable = new Nullable() with get,set /// ///Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. /// [] member val Datenpaket:Datenpaket = null with get,set /// ///Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. /// [] member val Download:Download = null with get,set /// ///Represents the various tax types for the retrieval of data. /// type Steuerart = | ESB = 0 | GSB = 1 | USB = 2 | EPBescheid = 3 | EPMitteilung = 4 | Gewerbesteuerbescheid = 5 | Gewerbesteuermitteilung = 6 | GEWMB = 7 | DIVAAnzeigeEinerLotterie = 8 | DIVABescheid = 9 | DivaBescheidESt = 10 | DIVABuchmachersteuer = 11 | DIVALotteriesteuerEinmal = 12 | DIVALotteriesteuerMehr = 13 | DIVASportwettensteuer = 14 | DIVATotalisator = 15 | OZGBescheid = 16 | VerbindlicheAuskunft = 17 | VerbindlicheZusage = 18 | DivaSonstigerVA = 19 | DivaBescheidErbSt = 20 | DivaBescheidFEIN = 21 | DivaBescheidGewSt = 22 | DivaBescheidKSt = 23 | DivaBescheidUSt = 24 | DivaBescheidSchenkSt = 25 | DIVATroncabgabe = 26 | DIVAVirtuelleAutomatenStB = 27 | DIVAOnlinePokerStB = 28 | LStHVVMRM = 29 | EinlagenrueckgewaehrVA = 30 | FTTMeldungVA = 31 | StatusInvStGVA = 32 | UStVEUVA = 33 | VERSVA = 34 | AltZertVA = 35 | KapEStEntlastungVA = 36 | PostUDLVA = 37 | StAb50aVA = 38 | StAbEntlastungVA = 39 | KassenangelegenheitenVA = 40 | KStOptVA = 41 | SteueroasenabwehrVA = 42 | KDBVollmachtRM = 43 | STBKE = 44 | VDBKDBRueckmeldungLief = 45 | AnhangRueckmeldung = 46 | DivaEinwilligungRM = 47 | GlueckspielF = 48 | OZGMitteilung = 49 | VerbindlicheAuskunftInfoF = 50 | ELOProtokoll = 51 /// ///Specifies the encoding of the metadata. /// type Coding = | text = 0 | base64 = 1 /// ///Represents the metadata of a data record. /// [] [] type Meta17() = /// ///The type of metadata, e.g. datei [file] /// [] member val Name:String = null with get,set /// ///The encoding of the metadata (text or base64) /// [] member val Coding:Nullable = new Nullable() with get,set /// ///The content of the metadata /// [] member val Value:String = null with get,set /// ///Represents a list of meta information maps. /// [] type MetaInfoMaps17() = class end /// ///Represents meta information. /// [] [] type MetaInformationen17() = /// ///List of metadata. /// [] member val Meta:ResizeArray = new ResizeArray() with get,set /// ///List of meta infomation maps. /// [] member val MetaInfoMaps:MetaInfoMaps17 = null with get,set /// ///Represents a list of attachments. /// [] type Anhaenge17() = class end /// ///Represents a request to retrieve data records by means of one or more IDs. /// [] [] type Abholung17() = inherit Abholung() /// ///The tax type (e.g. ESB) of the data record. /// [] member val Steuerart:Nullable = new Nullable() with get,set /// ///The meta information of the identifier. /// [] member val MetaInformationen:MetaInformationen17 = null with get,set /// ///Die Transfertickets der Datensaetze. Es duerfen max. 100 Bereitstellungstickets in einem Request angegeben werden. /// [] member val Bereitstellungsticket:String = null with get,set /// ///The attachments of the data records. /// [] member val Anhaenge:Anhaenge17 = null with get,set /// ///The identifier of the data record. /// [] member val Id:String = null with get,set /// ///The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. /// [] member val Idnr:String = null with get,set /// ///The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. /// [] member val Veranlagungsjahr:Nullable = new Nullable() with get,set /// ///The transmission path used. /// [] member val Uebertragungsweg:Nullable = new Nullable() with get,set /// ///The character encoding of the data record (e.g. ISO-8859-15). The exception is the data type ElsterVaStDaten, here we submit KEIN ENCODING. /// [] member val Encoding:String = null with get,set /// ///The client number; only applicable to the tax type 'ElsterDIVADaten'. /// [] member val Mandantennummer:String = null with get,set /// ///The tax number; only applicable to the tax type 'ElsterDIVADaten'. /// [] member val Steuernummer:String = null with get,set /// ///The asessment date; only applicable to the tax type 'ElsterDIVADaten'. /// [] member val Bescheiddatum:Nullable = new Nullable() with get,set /// ///Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. /// [] member val Datenpaket:Datenpaket = null with get,set /// ///Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. /// [] member val Download:Download = null with get,set /// ///Represents a base service request to retrieve processing records from a specified tax assessement. /// [] [] type ProtokollRequestBase() = interface IPost /// ///The authentification certificate. /// [] member val Zertifikat:PortalCertificate = null with get,set /// ///Represents a base service request to retrieve logs about a specified tax assessement. /// [] [] type ProtokollRequestBase17() = inherit ProtokollRequestBase() /// ///The tax assessement, whose processing records shall be obtained. /// [] member val Bescheid:Abholung17 = null with get,set /// ///The authentification certificate. /// [] member val Zertifikat:PortalCertificate = null with get,set [] type IHasIndex = abstract Index:Int32 with get,set /// ///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) /// [] [] type NdSFehler06() = /// ///Die laufende Nummer des fehlerhaften Datensatzes in einem Nutzdatenblock. /// [] member val LfdNr:String = null with get,set /// ///Bei der kmId handelt es sich um die durch den Verfasser vorgegebene KmId des Nutzdatensatzes. /// [] member val KmId:String = null with get,set /// ///Die durch den Verfasser vorgegebene bundesweit eindeutige Identifikation des Nutzdatensatzes (z.B. bei LStB, Lohnersatzleistungen). /// [] member val OrdnungsMerkmal:String = null with get,set /// ///Es wird die vom Elstersystem für diesen Fehler vergebene Fehlernummer i.d.R. eine 9-stellige Nummer zurückgemeldet. /// [] member val FehlerNummer:Nullable = new Nullable() with get,set /// ///Es wird der vom Elstersystem für diesen Fehler vergebene Fehlertext zurückgemeldet. /// [] member val FehlerText:String = null with get,set /// ///Stellt ein Element eines Nutztdatenblockes dar. /// [] [] type Nutzdatenblock06() = /// ///Über das Nutzdatenticket im Verarbeitungsprotokoll wird der Nutzdatenblock aus der Datenlieferung referenziert. /// [] member val NutzdatenTicket:String = null with get,set /// ///Der Statuscode zum Nutzdatenblock. /// [] member val Code:Nullable = new Nullable() with get,set /// ///Der Statustext zum Nutzdatenblock. /// [] member val Text:String = null with get,set /// ///Anzahl der Verarbeiteten Nutzdatensätze. /// [] member val VerarbeiteteNds:Nullable = new Nullable() with get,set /// ///Anzahl der nichtverarbeiteten Nutzdatensätze. /// [] member val NichtverarbeiteteNds:Nullable = new Nullable() with get,set /// ///Der Datenteil des Protokolls. /// [] member val NdSFehler:ResizeArray = new ResizeArray() with get,set /// ///Stellt den Datenteil eines Protokolls dar. /// [] [] type DatenTeil06() = /// ///Das Transferticket der Datenlieferung. /// [] member val TransferTicket:String = null with get,set /// ///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). /// [] member val Code:Nullable = new Nullable() with get,set /// ///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. /// [] member val Text:String = null with get,set /// ///Der Datenteil des Protokolls. /// [] member val Nutzdatenbloecke:ResizeArray = new ResizeArray() with get,set /// ///Das Verarbeitungsprotokoll einer Datenabholungsprozesses. /// [] [] type Protokoll06() = /// ///Version des Protokolls. /// [] member val Version:Nullable = new Nullable() with get,set /// ///Der Zeitstempel der Protokoll-Aufbereitung. Es wird der Zeitstempel der serverseitigen Verarbeitung der Protokollanfrage zurück übermittelt. Das String-Format des ZeitStempels lautet: JJJJMMTThhmmss. /// [] member val ZeitStempel:Nullable = new Nullable() with get,set /// ///Der Datenteil des Protokolls. /// [] member val DatenTeil:DatenTeil06 = null with get,set /// ///Specifies a service response from an ERiC service operation. /// [] [] type ServiceReponseBase() = /// ///The unique identifier of the response. /// [] member val Id:String = null with get,set /// ///The position of the response element in an indexed collection. /// [] member val Index:Int32 = new Int32() with get,set /// ///Metadata that contains structured error information on the service response. /// [] member val ResponseStatus:ResponseStatus = null with get,set [] type ISecuredCertificate = abstract Pin:String with get,set /// ///Represents a type that encapulates the processing records of a tax statement. /// [] [] type ProtokollResponse() = inherit ServiceReponseBase() /// ///The processing record of a tax statement. /// [] member val Protokoll:Protokoll06 = null with get,set /// ///The unique identifier of the response. /// [] member val Id:String = null with get,set /// ///The position of the response element in an indexed collection. /// [] member val Index:Int32 = new Int32() with get,set /// ///Metadata that contains structured error information on the service response. /// [] member val ResponseStatus:ResponseStatus = null with get,set /// ///Represents the service request to retrieve logs about a specified tax assessement. /// [] [] [] type ProtokollRequest17() = inherit ProtokollRequestBase17() interface IReturn /// ///The tax assessement, whose processing records shall be obtained. /// [] member val Bescheid:Abholung17 = null with get,set /// ///The authentification certificate. /// [] member val Zertifikat:PortalCertificate = null with get,set