Tax Filing Service

<back to all web services

CreateUmsatzsteuerdauerfristverlaengerung2024Xml

SyncUmsatzsteuerDauerfristverlängerung2024

A synchronous service to create XML content that represents the VAT long-term extension (Umsatzsteuer-Dauerfristverlängerung) for 2024.

Requires Authentication
The following routes are available for this service:
POST/CreateUmsatzsteuerdauerfristverlaengerung2024XmlA synchronous service to create xml content that represents the VAT long-term extension (Umsatzsteuer-Dauerfristverlängerung) for 2024
"use strict";
export class DatenLieferant {
    /** @param {{name?:string,strasse?:string,plz?:string,ort?:string,telefon?:string,email?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description Der Name des Datenlieferants. */
    name;
    /**
     * @type {string}
     * @description Der Straßenname des Datenlieferants. */
    strasse;
    /**
     * @type {string}
     * @description Die Postleitzahl des Datenlieferants. */
    plz;
    /**
     * @type {string}
     * @description Der Ort des Datenlieferants. */
    ort;
    /**
     * @type {?string}
     * @description Die Telefonnummer (optional) des Datenlieferants. */
    telefon;
    /**
     * @type {?string}
     * @description Die Email-Adresse (optional) des Datenlieferant. */
    email;
}
export class Berater {
    /** @param {{bezeichnung?:string,name?:string,vorname?:string,namensvorsatz?:string,namenszusatz?:string,str?:string,hausnummer?:string,hNrZusatz?:string,anschriftenZusatz?:string,ort?:string,plz?:string,auslandsPLZ?:string,land?:string,postfachOrt?:string,postfach?:string,postfachPLZ?:string,gkplz?:string,telefon?:string,email?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {?string}
     * @description Der Bezeichnung (optional) des Beraters (normalerweise der Name des Beraters Unternehmen). */
    bezeichnung;
    /**
     * @type {?string}
     * @description Der Name (optional) des Beraters. */
    name;
    /**
     * @type {?string}
     * @description Der Vorname (optional) des Beraters. */
    vorname;
    /**
     * @type {?string}
     * @description Der Namenvorsatz (optional) des Beraters. */
    namensvorsatz;
    /**
     * @type {?string}
     * @description Der Namenzusatz (optional) des Beraters. */
    namenszusatz;
    /**
     * @type {?string}
     * @description Der Straßenname (optional) des Beraters. */
    str;
    /**
     * @type {?string}
     * @description Die Hausnummer (optional) des Beraters. */
    hausnummer;
    /**
     * @type {?string}
     * @description Der Hausnummernzusatz (optional) des Beraters. */
    hNrZusatz;
    /**
     * @type {?string}
     * @description Der Anschriftenzusatz (optional) des Beraters. */
    anschriftenZusatz;
    /**
     * @type {?string}
     * @description Der Ort (optional) des Beraters. */
    ort;
    /**
     * @type {?string}
     * @description Die Postleitzahl (optional) des Beraters. */
    plz;
    /**
     * @type {?string}
     * @description Die Auslandspostleitzahl (optional) des Beraters. */
    auslandsPLZ;
    /**
     * @type {?string}
     * @description Der Ländername (falls Anschrift im Ausland) des Beraters - optional. 
Der Ländername des Beraters kann mit 1-20 alphanumerischen Zeichen geliefert werden. */
    land;
    /**
     * @type {?string}
     * @description Der Ort des Postfaches (optional) des Beraters. */
    postfachOrt;
    /**
     * @type {?string}
     * @description Das Postfach (optional) des Beraters. */
    postfach;
    /**
     * @type {?string}
     * @description Die Postleitzahl (optional) des Beraters. */
    postfachPLZ;
    /**
     * @type {?string}
     * @description Die Großkundenpostleitzahl (optional) des Beraters. */
    gkplz;
    /**
     * @type {?string}
     * @description Die Telefonnummer (optional) des Beraters. */
    telefon;
    /**
     * @type {?string}
     * @description Die Emailadresse (optional) des Beraters. */
    email;
}
export class Mandant {
    /** @param {{name?:string,vorname?:string,mandantenNr?:string,bearbeiterkennzeichen?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {?string}
     * @description Der Name (optional) des Mandanten. */
    name;
    /**
     * @type {?string}
     * @description Der Vorname (optional) des Mandanten. */
    vorname;
    /**
     * @type {?string}
     * @description Die Mandantennummer (optional) des Mandanten. */
    mandantenNr;
    /**
     * @type {?string}
     * @description Das Bearbeiterkennzeichen (optional) des Mandanten. */
    bearbeiterkennzeichen;
}
export class Unternehmer {
    /** @param {{bezeichnung?:string,name?:string,vorname?:string,namensvorsatz?:string,namenszusatz?:string,str?:string,hausnummer?:string,hNrZusatz?:string,anschriftenZusatz?:string,ort?:string,plz?:string,auslandsPLZ?:string,land?:string,postfachOrt?:string,postfach?:string,postfachPLZ?:string,gkplz?:string,telefon?:string,email?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {?string}
     * @description Der Bezeichnung (optional) des Unternehmers (normalerweise der Name des Unternehmers Unternehmen). */
    bezeichnung;
    /**
     * @type {?string}
     * @description Der Name (optional) des Unternehmers. */
    name;
    /**
     * @type {?string}
     * @description Der Vorname (optional) des Unternehmers. */
    vorname;
    /**
     * @type {?string}
     * @description Der Namenvorsatz (optional) des Unternehmers. */
    namensvorsatz;
    /**
     * @type {?string}
     * @description Der Namenzusatz (optional) des Unternehmers. */
    namenszusatz;
    /**
     * @type {?string}
     * @description Der Straßenname (optional) des Unternehmers. */
    str;
    /**
     * @type {?string}
     * @description Die Hausnummer (optional) des Unternehmers. */
    hausnummer;
    /**
     * @type {?string}
     * @description Der Hausnummernzusatz (optional) des Unternehmers. */
    hNrZusatz;
    /**
     * @type {?string}
     * @description Der Anschriftenzusatz (optional) des Unternehmers. */
    anschriftenZusatz;
    /**
     * @type {?string}
     * @description Der Ort (optional) des Unternehmers. */
    ort;
    /**
     * @type {?string}
     * @description Die Postleitzahl (optional) des Unternehmers. */
    plz;
    /**
     * @type {?string}
     * @description Die Auslandspostleitzahl (optional) des Unternehmers. */
    auslandsPLZ;
    /**
     * @type {?string}
     * @description Der Ländername (falls Anschrift im Ausland) des Unternehmers - optional. 
Der Ländername des Unternehmers kann mit 1-20 alphanumerischen Zeichen geliefert werden. */
    land;
    /**
     * @type {?string}
     * @description Der Ort des Postfaches (optional) des Unternehmers. */
    postfachOrt;
    /**
     * @type {?string}
     * @description Das Postfach (optional) des Unternehmers. */
    postfach;
    /**
     * @type {?string}
     * @description Die Postleitzahl (optional) des Unternehmers. */
    postfachPLZ;
    /**
     * @type {?string}
     * @description Die Großkundenpostleitzahl (optional) des Unternehmers. */
    gkplz;
    /**
     * @type {?string}
     * @description Die Telefonnummer (optional) des Unternehmers. */
    telefon;
    /**
     * @type {?string}
     * @description Die Emailadresse (optional) des Unternehmers. */
    email;
}
export class EOP {
    /** @param {{transferausgabe?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    transferausgabe;
}
export class CreateUmsatzsteueranmeldung2024XmlBase {
    /** @param {{datenLieferant?:DatenLieferant,erstellungsdatum?:string,berater?:Berater,mandant?:Mandant,unternehmer?:Unternehmer,bundesfinanzamtsnummer?:string,eop?:EOP}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {DatenLieferant}
     * @description Natürliche Person, welche die Software bedient, bzw. in deren Namen die Software bedient wird, um die Daten zu übersenden (Natural person who operates the software or under whose name the software is operated in order to transmit the data). */
    datenLieferant;
    /**
     * @type {string}
     * @description Das Datum der Erstellung (Date of creation). */
    erstellungsdatum;
    /**
     * @type {?Berater}
     * @description Der Steuerberater, der den Steuerfall bearbeitet und abgibt (The tax adviser who processes and submits the tax case). */
    berater;
    /**
     * @type {?Mandant}
     * @description Der Mandant, für den der Steuerfall bearbeitet wird (The client for which the tax case is being processed). */
    mandant;
    /**
     * @type {?Unternehmer}
     * @description Der natürliche oder jüritische Person, der den Steuerfall bearbeitet und abgibt (The natural or legal person who processes and submits the tax case). */
    unternehmer;
    /**
     * @type {string}
     * @description Die vierstellige Bundesfinanzamtsnummer des empfangenden Finanzamtes (The four-digit federal tax office number of the receiving tax office). */
    bundesfinanzamtsnummer;
    /**
     * @type {?EOP}
     * @description Die Anbindung zum ELSTER Online Portal (EOP). */
    eop;
}
export class Kz09 {
    /** @param {{herstellerId?:number,beraterName?:string,berufsbezeichnung?:string,beraterTelNrVorwahl?:string,beraterTelNrAnschluss?:string,mandantName?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {number}
     * @description Die Bezeichnung des Softwareherstellers (Pflicht), über dessen Software die Steuererklärung oder (Vor)anmeldung abgegeben wird. Die Bezeichnung muss 5-stellig sein. */
    herstellerId;
    /**
     * @type {?string}
     * @description Der Name des Beraters, welcher die Steuererklärung oder (Vor)anmeldung abgegeben wird. Das Name des Beraters kann von 0- bis 85-stellig sein. */
    beraterName;
    /**
     * @type {?string}
     * @description Die Berufbezeichnung des Beraters. Die Berufbezeichnung des Beraterskann von 0- bis 85-stellig sein. */
    berufsbezeichnung;
    /**
     * @type {?string}
     * @description Die Telefonnummervorwahl des Beraters. Die Telefonnummervorwahl des Beraters kann von 0- bis 85-stellig sein. */
    beraterTelNrVorwahl;
    /**
     * @type {?string}
     * @description Der Telefonnummeranschluss des Beraters. Der Telefonnummeranschluss des Beraters kann von 0- bis 85-stellig sein. */
    beraterTelNrAnschluss;
    /**
     * @type {?string}
     * @description Der Name des Mandanten. Der Name des Mandanten kann von 0- bis 85-stellig sein. */
    mandantName;
}
export class Ganzzahl {
    /** @param {{wert?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {number}
     * @description The intrinsic integer value. */
    wert;
}
export class Ganzzahl1EN extends Ganzzahl {
    /** @param {{wert?:number,wert?:number}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {number}
     * @description The intrinsic integer value. */
    wert;
}
export class Dauerfristverlaengerung2024 {
    /** @param {{jahr?:number,steuernummer?:string,kz09?:Kz09,kz23?:Ganzzahl1EN,kz23_Begruendung?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {number}
     * @description Das Jahr der Veranlagung. */
    jahr;
    /**
     * @type {string}
     * @description Steuernummer. */
    steuernummer;
    /**
     * @type {Kz09}
     * @description Fünfstellige HerstellerID (Pflichtangabe wenn der zugehörige Kontext angegeben wird). */
    kz09;
    /**
     * @type {?Ganzzahl1EN}
     * @description Über die Angaben in der Steueranmeldung hinaus sind weitere oder abweichende Angaben oder Sachverhalte zu berücksichtigen. */
    kz23;
    /**
     * @type {?string}
     * @description Ergänzende Angaben zur Steueranmeldung */
    kz23_Begruendung;
}
export class CreateUmsatzsteuerdauerfristverlaengerung2024XmlBase extends CreateUmsatzsteueranmeldung2024XmlBase {
    /** @param {{dauerfristverlaengerung?:Dauerfristverlaengerung2024,datenLieferant?:DatenLieferant,erstellungsdatum?:string,berater?:Berater,mandant?:Mandant,unternehmer?:Unternehmer,bundesfinanzamtsnummer?:string,eop?:EOP,datenLieferant?:DatenLieferant,erstellungsdatum?:string,berater?:Berater,mandant?:Mandant,unternehmer?:Unternehmer,bundesfinanzamtsnummer?:string,eop?:EOP}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {Dauerfristverlaengerung2024}
     * @description The VAT long-term extension. */
    dauerfristverlaengerung;
    /**
     * @type {DatenLieferant}
     * @description Natürliche Person, welche die Software bedient, bzw. in deren Namen die Software bedient wird, um die Daten zu übersenden (Natural person who operates the software or under whose name the software is operated in order to transmit the data). */
    datenLieferant;
    /**
     * @type {string}
     * @description Das Datum der Erstellung (Date of creation). */
    erstellungsdatum;
    /**
     * @type {?Berater}
     * @description Der Steuerberater, der den Steuerfall bearbeitet und abgibt (The tax adviser who processes and submits the tax case). */
    berater;
    /**
     * @type {?Mandant}
     * @description Der Mandant, für den der Steuerfall bearbeitet wird (The client for which the tax case is being processed). */
    mandant;
    /**
     * @type {?Unternehmer}
     * @description Der natürliche oder jüritische Person, der den Steuerfall bearbeitet und abgibt (The natural or legal person who processes and submits the tax case). */
    unternehmer;
    /**
     * @type {string}
     * @description Die vierstellige Bundesfinanzamtsnummer des empfangenden Finanzamtes (The four-digit federal tax office number of the receiving tax office). */
    bundesfinanzamtsnummer;
    /**
     * @type {?EOP}
     * @description Die Anbindung zum ELSTER Online Portal (EOP). */
    eop;
}
export class XmlResponse {
    /** @param {{content?:string,responseStatus?:ResponseStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {?string}
     * @description The XML-based content of the response. */
    content;
    /**
     * @type {?ResponseStatus}
     * @description Metadata that contains structured error information on the XML response. */
    responseStatus;
}
export class CreateUmsatzsteuerdauerfristverlaengerung2024Xml extends CreateUmsatzsteuerdauerfristverlaengerung2024XmlBase {
    /** @param {{dauerfristverlaengerung?:Dauerfristverlaengerung2024,datenLieferant?:DatenLieferant,erstellungsdatum?:string,berater?:Berater,mandant?:Mandant,unternehmer?:Unternehmer,bundesfinanzamtsnummer?:string,eop?:EOP,dauerfristverlaengerung?:Dauerfristverlaengerung2024,datenLieferant?:DatenLieferant,erstellungsdatum?:string,berater?:Berater,mandant?:Mandant,unternehmer?:Unternehmer,bundesfinanzamtsnummer?:string,eop?:EOP,datenLieferant?:DatenLieferant,erstellungsdatum?:string,berater?:Berater,mandant?:Mandant,unternehmer?:Unternehmer,bundesfinanzamtsnummer?:string,eop?:EOP}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {Dauerfristverlaengerung2024}
     * @description The VAT long-term extension. */
    dauerfristverlaengerung;
    /**
     * @type {DatenLieferant}
     * @description Natürliche Person, welche die Software bedient, bzw. in deren Namen die Software bedient wird, um die Daten zu übersenden (Natural person who operates the software or under whose name the software is operated in order to transmit the data). */
    datenLieferant;
    /**
     * @type {string}
     * @description Das Datum der Erstellung (Date of creation). */
    erstellungsdatum;
    /**
     * @type {?Berater}
     * @description Der Steuerberater, der den Steuerfall bearbeitet und abgibt (The tax adviser who processes and submits the tax case). */
    berater;
    /**
     * @type {?Mandant}
     * @description Der Mandant, für den der Steuerfall bearbeitet wird (The client for which the tax case is being processed). */
    mandant;
    /**
     * @type {?Unternehmer}
     * @description Der natürliche oder jüritische Person, der den Steuerfall bearbeitet und abgibt (The natural or legal person who processes and submits the tax case). */
    unternehmer;
    /**
     * @type {string}
     * @description Die vierstellige Bundesfinanzamtsnummer des empfangenden Finanzamtes (The four-digit federal tax office number of the receiving tax office). */
    bundesfinanzamtsnummer;
    /**
     * @type {?EOP}
     * @description Die Anbindung zum ELSTER Online Portal (EOP). */
    eop;
}

JavaScript CreateUmsatzsteuerdauerfristverlaengerung2024Xml DTOs

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

HTTP + JSV

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

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

{
	dauerfristverlaengerung: 
	{
		jahr: 0,
		steuernummer: String,
		kz09: 
		{
			herstellerId: 0,
			beraterName: String,
			berufsbezeichnung: String,
			beraterTelNrVorwahl: String,
			beraterTelNrAnschluss: String,
			mandantName: String
		},
		kz23: 
		{
			wert: 0
		},
		kz23_Begruendung: String
	},
	datenLieferant: 
	{
		name: String,
		strasse: String,
		plz: String,
		ort: String,
		telefon: String,
		email: String
	},
	erstellungsdatum: 0001-01-01,
	berater: 
	{
		bezeichnung: String,
		name: String,
		vorname: String,
		namensvorsatz: String,
		namenszusatz: String,
		str: String,
		hausnummer: String,
		hNrZusatz: String,
		anschriftenZusatz: String,
		ort: String,
		plz: String,
		auslandsPLZ: String,
		land: String,
		postfachOrt: String,
		postfach: String,
		postfachPLZ: String,
		gkplz: String,
		telefon: String,
		email: String
	},
	mandant: 
	{
		name: String,
		vorname: String,
		mandantenNr: String,
		bearbeiterkennzeichen: String
	},
	unternehmer: 
	{
		bezeichnung: String,
		name: String,
		vorname: String,
		namensvorsatz: String,
		namenszusatz: String,
		str: String,
		hausnummer: String,
		hNrZusatz: String,
		anschriftenZusatz: String,
		ort: String,
		plz: String,
		auslandsPLZ: String,
		land: String,
		postfachOrt: String,
		postfach: String,
		postfachPLZ: String,
		gkplz: String,
		telefon: String,
		email: String
	},
	bundesfinanzamtsnummer: String,
	eop: 
	{
		transferausgabe: String
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

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