POST | /async/datenabholungen/protokolle/17/verarbeitungsprotokoll |
---|
"use strict";
export class FileBase {
/** @param {{content?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The raw data content of the file. */
content;
}
export class PortalCertificate extends FileBase {
/** @param {{id?:string,index?:number,pin?:string,description?:string,tags?:string[],name?:string,content?:string,content?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description The unique identifier of the certificate. */
id;
/**
* @type {number}
* @description The position of the certificate element in an indexed collection of certificates. */
index;
/**
* @type {?string}
* @description The password to protect the certificate from unauthorized access. */
pin;
/**
* @type {?string}
* @description The description of the certificate. */
description;
/**
* @type {string[]}
* @description Tags that can be used to label or identify the certificate. */
tags;
/**
* @type {?string}
* @description Gets or sets the file name of the certificate. */
name;
/**
* @type {string}
* @description The raw data content of the file. */
content;
}
export class ProtokollRequestBase {
/** @param {{zertifikat?:PortalCertificate}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {PortalCertificate}
* @description The authentification certificate. */
zertifikat;
}
/** @typedef {'direkt'|'link'|'sammellink'} */
export var Uebertragungsweg;
(function (Uebertragungsweg) {
Uebertragungsweg["direkt"] = "direkt"
Uebertragungsweg["link"] = "link"
Uebertragungsweg["sammellink"] = "sammellink"
})(Uebertragungsweg || (Uebertragungsweg = {}));
export class Datenpaket {
/** @param {{value?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description Encoded (compressed and encrypted) requested data record */
value;
}
export class Download {
/** @param {{url?:string,benutzer?:string,passwort?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description The link to the data on the web server. */
url;
/**
* @type {?string}
* @description The user name for the web server. */
benutzer;
/**
* @type {?string}
* @description Password for the web server. */
passwort;
}
export class Abholung {
/** @param {{id?:string,idnr?:string,veranlagungsjahr?:number,uebertragungsweg?:Uebertragungsweg,encoding?:string,mandantennummer?:string,steuernummer?:string,bescheiddatum?:string,datenpaket?:Datenpaket,download?:Download}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description The identifier of the data record. */
id;
/**
* @type {?string}
* @description The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. */
idnr;
/**
* @type {?number}
* @description The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. */
veranlagungsjahr;
/**
* @type {?Uebertragungsweg}
* @description The transmission path used. */
uebertragungsweg;
/**
* @type {?string}
* @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. */
encoding;
/**
* @type {?string}
* @description The client number; only applicable to the tax type 'ElsterDIVADaten'. */
mandantennummer;
/**
* @type {?string}
* @description The tax number; only applicable to the tax type 'ElsterDIVADaten'. */
steuernummer;
/**
* @type {?string}
* @description The asessment date; only applicable to the tax type 'ElsterDIVADaten'. */
bescheiddatum;
/**
* @type {?Datenpaket}
* @description Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. */
datenpaket;
/**
* @type {?Download}
* @description Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. */
download;
}
/** @typedef {'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'} */
export var Steuerart;
(function (Steuerart) {
Steuerart["ESB"] = "ESB"
Steuerart["GSB"] = "GSB"
Steuerart["USB"] = "USB"
Steuerart["EPBescheid"] = "EPBescheid"
Steuerart["EPMitteilung"] = "EPMitteilung"
Steuerart["Gewerbesteuerbescheid"] = "Gewerbesteuerbescheid"
Steuerart["Gewerbesteuermitteilung"] = "Gewerbesteuermitteilung"
Steuerart["GEWMB"] = "GEWMB"
Steuerart["DIVAAnzeigeEinerLotterie"] = "DIVAAnzeigeEinerLotterie"
Steuerart["DIVABescheid"] = "DIVABescheid"
Steuerart["DivaBescheidESt"] = "DivaBescheidESt"
Steuerart["DIVABuchmachersteuer"] = "DIVABuchmachersteuer"
Steuerart["DIVALotteriesteuerEinmal"] = "DIVALotteriesteuerEinmal"
Steuerart["DIVALotteriesteuerMehr"] = "DIVALotteriesteuerMehr"
Steuerart["DIVASportwettensteuer"] = "DIVASportwettensteuer"
Steuerart["DIVATotalisator"] = "DIVATotalisator"
Steuerart["OZGBescheid"] = "OZGBescheid"
Steuerart["VerbindlicheAuskunft"] = "VerbindlicheAuskunft"
Steuerart["VerbindlicheZusage"] = "VerbindlicheZusage"
Steuerart["DivaSonstigerVA"] = "DivaSonstigerVA"
Steuerart["DivaBescheidErbSt"] = "DivaBescheidErbSt"
Steuerart["DivaBescheidFEIN"] = "DivaBescheidFEIN"
Steuerart["DivaBescheidGewSt"] = "DivaBescheidGewSt"
Steuerart["DivaBescheidKSt"] = "DivaBescheidKSt"
Steuerart["DivaBescheidUSt"] = "DivaBescheidUSt"
Steuerart["DivaBescheidSchenkSt"] = "DivaBescheidSchenkSt"
Steuerart["DIVATroncabgabe"] = "DIVATroncabgabe"
Steuerart["DIVAVirtuelleAutomatenStB"] = "DIVAVirtuelleAutomatenStB"
Steuerart["DIVAOnlinePokerStB"] = "DIVAOnlinePokerStB"
Steuerart["LStHVVMRM"] = "LStHVVMRM"
Steuerart["EinlagenrueckgewaehrVA"] = "EinlagenrueckgewaehrVA"
Steuerart["FTTMeldungVA"] = "FTTMeldungVA"
Steuerart["StatusInvStGVA"] = "StatusInvStGVA"
Steuerart["UStVEUVA"] = "UStVEUVA"
Steuerart["VERSVA"] = "VERSVA"
Steuerart["AltZertVA"] = "AltZertVA"
Steuerart["KapEStEntlastungVA"] = "KapEStEntlastungVA"
Steuerart["PostUDLVA"] = "PostUDLVA"
Steuerart["StAb50aVA"] = "StAb50aVA"
Steuerart["StAbEntlastungVA"] = "StAbEntlastungVA"
Steuerart["KassenangelegenheitenVA"] = "KassenangelegenheitenVA"
Steuerart["KStOptVA"] = "KStOptVA"
Steuerart["SteueroasenabwehrVA"] = "SteueroasenabwehrVA"
Steuerart["KDBVollmachtRM"] = "KDBVollmachtRM"
Steuerart["STBKE"] = "STBKE"
Steuerart["VDBKDBRueckmeldungLief"] = "VDBKDBRueckmeldungLief"
Steuerart["AnhangRueckmeldung"] = "AnhangRueckmeldung"
Steuerart["DivaEinwilligungRM"] = "DivaEinwilligungRM"
Steuerart["GlueckspielF"] = "GlueckspielF"
Steuerart["OZGMitteilung"] = "OZGMitteilung"
Steuerart["VerbindlicheAuskunftInfoF"] = "VerbindlicheAuskunftInfoF"
Steuerart["ELOProtokoll"] = "ELOProtokoll"
})(Steuerart || (Steuerart = {}));
/** @typedef {'text'|'base64'} */
export var Coding;
(function (Coding) {
Coding["text"] = "text"
Coding["base64"] = "base64"
})(Coding || (Coding = {}));
export class Meta17 {
/** @param {{name?:string,coding?:Coding,value?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description The type of metadata, e.g. datei [file] */
name;
/**
* @type {?Coding}
* @description The encoding of the metadata (text or base64) */
coding;
/**
* @type {?string}
* @description The content of the metadata */
value;
}
export class MetaInfoMaps17 {
constructor(init) { Object.assign(this, init) }
}
export class MetaInformationen17 {
/** @param {{meta?:Meta17[],metaInfoMaps?:MetaInfoMaps17}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {Meta17[]}
* @description List of metadata. */
meta;
/**
* @type {?MetaInfoMaps17}
* @description List of meta infomation maps. */
metaInfoMaps;
}
export class Anhaenge17 {
constructor(init) { Object.assign(this, init) }
}
export class Abholung17 extends Abholung {
/** @param {{steuerart?:Steuerart,metaInformationen?:MetaInformationen17,bereitstellungsticket?:string,anhaenge?:Anhaenge17,id?:string,idnr?:string,veranlagungsjahr?:number,uebertragungsweg?:Uebertragungsweg,encoding?:string,mandantennummer?:string,steuernummer?:string,bescheiddatum?:string,datenpaket?:Datenpaket,download?:Download,id?:string,idnr?:string,veranlagungsjahr?:number,uebertragungsweg?:Uebertragungsweg,encoding?:string,mandantennummer?:string,steuernummer?:string,bescheiddatum?:string,datenpaket?:Datenpaket,download?:Download}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?Steuerart}
* @description The tax type (e.g. ESB) of the data record. */
steuerart;
/**
* @type {?MetaInformationen17}
* @description The meta information of the identifier. */
metaInformationen;
/**
* @type {?string}
* @description Die Transfertickets der Datensaetze. Es duerfen max. 100 Bereitstellungstickets in einem Request angegeben werden. */
bereitstellungsticket;
/**
* @type {?Anhaenge17}
* @description The attachments of the data records. */
anhaenge;
/**
* @type {?string}
* @description The identifier of the data record. */
id;
/**
* @type {?string}
* @description The ID number of the receipt owner. This attribute is only required for the tax type 'ElsterVaStDaten'. */
idnr;
/**
* @type {?number}
* @description The assessment year (YYYY) of the receipt. This attribute is only required for the tax type 'ElsterVaStDaten'. */
veranlagungsjahr;
/**
* @type {?Uebertragungsweg}
* @description The transmission path used. */
uebertragungsweg;
/**
* @type {?string}
* @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. */
encoding;
/**
* @type {?string}
* @description The client number; only applicable to the tax type 'ElsterDIVADaten'. */
mandantennummer;
/**
* @type {?string}
* @description The tax number; only applicable to the tax type 'ElsterDIVADaten'. */
steuernummer;
/**
* @type {?string}
* @description The asessment date; only applicable to the tax type 'ElsterDIVADaten'. */
bescheiddatum;
/**
* @type {?Datenpaket}
* @description Das Datenpaket angeforderter Datensaetze. Nur bei der Direktsendung ueber das ERiClet. */
datenpaket;
/**
* @type {?Download}
* @description Download requested data records. Ensure the second payload data block is empty for bulk retrieval operations. */
download;
}
export class ProtokollRequestBase17 extends ProtokollRequestBase {
/** @param {{bescheid?:Abholung17,zertifikat?:PortalCertificate,zertifikat?:PortalCertificate}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?Abholung17}
* @description The tax assessement, whose processing records shall be obtained. */
bescheid;
/**
* @type {PortalCertificate}
* @description The authentification certificate. */
zertifikat;
}
export class ServiceReponseBase {
/** @param {{id?:string,index?:number,responseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The unique identifier of the response. */
id;
/**
* @type {number}
* @description The position of the response element in an indexed collection. */
index;
/**
* @type {?ResponseStatus}
* @description Metadata that contains structured error information on the service response. */
responseStatus;
}
export class NdSFehler06 {
/** @param {{lfdNr?:string,kmId?:string,ordnungsMerkmal?:string,fehlerNummer?:number,fehlerText?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description Die laufende Nummer des fehlerhaften Datensatzes in einem Nutzdatenblock. */
lfdNr;
/**
* @type {?string}
* @description Bei der kmId handelt es sich um die durch den Verfasser vorgegebene KmId des Nutzdatensatzes. */
kmId;
/**
* @type {?string}
* @description Die durch den Verfasser vorgegebene bundesweit eindeutige Identifikation des Nutzdatensatzes (z.B. bei LStB, Lohnersatzleistungen). */
ordnungsMerkmal;
/**
* @type {?number}
* @description Es wird die vom Elstersystem für diesen Fehler vergebene Fehlernummer i.d.R. eine 9-stellige Nummer zurückgemeldet. */
fehlerNummer;
/**
* @type {?string}
* @description Es wird der vom Elstersystem für diesen Fehler vergebene Fehlertext zurückgemeldet. */
fehlerText;
}
export class Nutzdatenblock06 {
/** @param {{nutzdatenTicket?:string,code?:number,text?:string,verarbeiteteNds?:number,nichtverarbeiteteNds?:number,ndSFehler?:NdSFehler06[]}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description Über das Nutzdatenticket im Verarbeitungsprotokoll wird der Nutzdatenblock aus der Datenlieferung referenziert. */
nutzdatenTicket;
/**
* @type {?number}
* @description Der Statuscode zum Nutzdatenblock. */
code;
/**
* @type {?string}
* @description Der Statustext zum Nutzdatenblock. */
text;
/**
* @type {?number}
* @description Anzahl der Verarbeiteten Nutzdatensätze. */
verarbeiteteNds;
/**
* @type {?number}
* @description Anzahl der nichtverarbeiteten Nutzdatensätze. */
nichtverarbeiteteNds;
/**
* @type {NdSFehler06[]}
* @description Der Datenteil des Protokolls. */
ndSFehler;
}
export class DatenTeil06 {
/** @param {{transferTicket?:string,code?:number,text?:string,nutzdatenbloecke?:Nutzdatenblock06[]}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?string}
* @description Das Transferticket der Datenlieferung. */
transferTicket;
/**
* @type {?number}
* @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). */
code;
/**
* @type {?string}
* @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. */
text;
/**
* @type {Nutzdatenblock06[]}
* @description Der Datenteil des Protokolls. */
nutzdatenbloecke;
}
export class Protokoll06 {
/** @param {{version?:number,zeitStempel?:string,datenTeil?:DatenTeil06}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?number}
* @description Version des Protokolls. */
version;
/**
* @type {?string}
* @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. */
zeitStempel;
/**
* @type {?DatenTeil06}
* @description Der Datenteil des Protokolls. */
datenTeil;
}
export class ProtokollResponse extends ServiceReponseBase {
/** @param {{protokoll?:Protokoll06,id?:string,index?:number,responseStatus?:ResponseStatus,id?:string,index?:number,responseStatus?:ResponseStatus}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?Protokoll06}
* @description The processing record of a tax statement. */
protokoll;
/**
* @type {string}
* @description The unique identifier of the response. */
id;
/**
* @type {number}
* @description The position of the response element in an indexed collection. */
index;
/**
* @type {?ResponseStatus}
* @description Metadata that contains structured error information on the service response. */
responseStatus;
}
export class ProtokollRequest17Async extends ProtokollRequestBase17 {
/** @param {{bescheid?:Abholung17,zertifikat?:PortalCertificate,bescheid?:Abholung17,zertifikat?:PortalCertificate,zertifikat?:PortalCertificate}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?Abholung17}
* @description The tax assessement, whose processing records shall be obtained. */
bescheid;
/**
* @type {PortalCertificate}
* @description The authentification certificate. */
zertifikat;
}
JavaScript ProtokollRequest17Async DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /async/datenabholungen/protokolle/17/verarbeitungsprotokoll HTTP/1.1
Host: taxfiling.pwc.de
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<ProtokollRequest17Async xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/PwC.xEric.Core.Services.Contracts.Datenabholungen.Requests.Protokolle">
<Zertifikat xmlns:d2p1="http://schemas.datacontract.org/2004/07/PwC.xEric.Core.Domain.Concretes.Models">
<Content xmlns="http://schemas.datacontract.org/2004/07/PwC.DigitalHub.Utilities.IO.Core.Contracts.Models">AA==</Content>
<d2p1:Description>String</d2p1:Description>
<d2p1:Id>00000000-0000-0000-0000-000000000000</d2p1:Id>
<d2p1:Index>0</d2p1:Index>
<d2p1:Name>String</d2p1:Name>
<d2p1:Pin>String</d2p1:Pin>
<d2p1:Tags xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:string>String</d3p1:string>
</d2p1:Tags>
</Zertifikat>
<Bescheid id="String" idnr="String" veranlagungsjahr="0" uebertragungsweg="direkt" encoding="String" bereitstellungsticket="String">
<MetaInformationen>
<Meta art="String" coding="text">String</Meta>
<MetaInfoMaps>
<MetaInfoMap typ="String">
<Meta art="String" coding="text">String</Meta>
</MetaInfoMap>
</MetaInfoMaps>
</MetaInformationen>
<Datenpaket>String</Datenpaket>
<Download>
<Url>String</Url>
<Benutzer>String</Benutzer>
<Passwort>String</Passwort>
</Download>
<Anhaenge version="0">
<Anhang>
<Dateibezeichnung>String</Dateibezeichnung>
<Dateityp>String</Dateityp>
<Dateiinhalt>String</Dateiinhalt>
<MetadatumAnhang>
<SchluesselAnhang DateibezeichnungID="String" DateibezeichnungKurz="String">String</SchluesselAnhang>
<WertAnhang DateibezeichnungID="String" DateibezeichnungKurz="String">String</WertAnhang>
</MetadatumAnhang>
</Anhang>
</Anhaenge>
</Bescheid>
</ProtokollRequest17Async>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <ProtokollResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/PwC.xEric.Core.Services.Contracts.Datenabholungen.Responses"> <Id xmlns="http://schemas.datacontract.org/2004/07/PwC.xEric.Core.Services.Contracts.Responses">String</Id> <Index xmlns="http://schemas.datacontract.org/2004/07/PwC.xEric.Core.Services.Contracts.Responses">0</Index> <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types" xmlns="http://schemas.datacontract.org/2004/07/PwC.xEric.Core.Services.Contracts.Responses"> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:Message>String</d2p1:Message> <d2p1:StackTrace>String</d2p1:StackTrace> <d2p1:Errors> <d2p1:ResponseError> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:FieldName>String</d2p1:FieldName> <d2p1:Message>String</d2p1:Message> <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </d2p1:Meta> </d2p1:ResponseError> </d2p1:Errors> <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </d2p1:Meta> </ResponseStatus> <Protokoll version="0" xmlns="http://www.elsterfachmethodik.de/protokollverfahren/version6/XMLSchema"> <ZeitStempel>00010101000000</ZeitStempel> <DatenTeil transferTicket="String" code="0" text="String"> <Nutzdatenblock nutzdatenTicket="String" code="0" text="String" verarbeiteteNdS="0" nichtverarbeiteteNdS="0"> <NdSFehler lfdNr="String" kmId="String" ordnungsMerkmal="String" fehlerNummer="0" fehlerText="String" /> </Nutzdatenblock> </DatenTeil> </Protokoll> </ProtokollResponse>