POST | /CreateZm2023XmlAsync |
---|
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
/**
* An asynchronous service to create xml content that represents a recapitulative tax declaration for 2023.
*/
@Api(Description="An asynchronous service to create xml content that represents a recapitulative tax declaration for 2023.")
open class CreateZm2023XmlAsync : CreateZm2023XmlBase()
{
}
/**
* Create XML content that represents a recapitulative tax declaration for 2023.
*/
@Api(Description="Create XML content that represents a recapitulative tax declaration for 2023.")
open class CreateZm2023XmlBase : IPost
{
/**
* Inländische Umsatzsteuer-Identifikationsnummer des Meldenden bestehend aus dem Länderkürzel 'DE' gefolgt von exakt 9 Ziffern.
*/
@ApiMember(Description="Inländische Umsatzsteuer-Identifikationsnummer des Meldenden bestehend aus dem Länderkürzel 'DE' gefolgt von exakt 9 Ziffern.", IsRequired=true)
open var knri:String? = null
/**
* Angaben zum Unternehmer
*/
@ApiMember(Description="Angaben zum Unternehmer", IsRequired=true)
open var anschrift:Anschrift? = null
/**
* Allgemeine Daten
*/
@ApiMember(Description="Allgemeine Daten", IsRequired=true)
open var zmZeilen:ZmZeilen? = 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)
open var datenLieferant:String? = null
}
/**
* Angaben zum Unternehmen
*/
@Api(Description="Angaben zum Unternehmen")
open class Anschrift
{
/**
* Der Name des Unternehmers.
*/
@ApiMember(Description="Der Name des Unternehmers.", IsRequired=true, Name="Name")
open var name:String? = null
/**
* Der Adresszusatz des Unternehmers.
*/
@ApiMember(Description="Der Adresszusatz des Unternehmers.", Name="Adresszusatz")
open var adresszusatz:String? = null
/**
* Der Straßenname des Unternehmers.
*/
@ApiMember(Description="Der Straßenname des Unternehmers.", IsRequired=true, Name="Strasse")
open var strasse:String? = null
/**
* Die Hausnummer des Unternehmers.
*/
@ApiMember(Description="Die Hausnummer des Unternehmers.", Name="Hausnr")
open var hausnr:String? = null
/**
* Der Hausnummerzusatz des Unternehmers.
*/
@ApiMember(Description="Der Hausnummerzusatz des Unternehmers.", Name="Hausnrzusatz")
open var hausnrzusatz:String? = null
/**
* Der Ort des Unternehmers.
*/
@ApiMember(Description="Der Ort des Unternehmers.", IsRequired=true, Name="Ort")
open var ort:String? = null
/**
* Die Postleitzahl des Unternehmers.
*/
@ApiMember(Description="Die Postleitzahl des Unternehmers.", Name="PLZ")
open var plz:String? = null
/**
* Übermittlung des ISO-3166-Alpha-2-Codes des Staates von Unternehmer.
*/
@ApiMember(Description="Übermittlung des ISO-3166-Alpha-2-Codes des Staates von Unternehmer.", IsRequired=true, Name="Staat")
open var staat:String? = null
/**
* Die Telefonummer des Unternehmers.
*/
@ApiMember(Description="Die Telefonummer des Unternehmers.", Name="Telefon")
open var telefon:String? = null
}
/**
* Allgemeine Daten
*/
@Api(Description="Allgemeine Daten")
open class ZmZeilen
{
/**
* Währung
*/
@ApiMember(Description="Währung", IsRequired=true, Name="Waehrung")
open var waehrung:Waehrung? = null
/**
* Berichtigte Meldung
*/
@ApiMember(Description="Berichtigte Meldung", IsRequired=true, Name="Meldeart")
open var meldeart:Meldeart? = null
/**
* Die in § 18a Absatz 1 Satz 2 UStG enthaltene Regelung nehme ich nicht in Anspruch. Ich gebe die Zusammenfassende Meldung künftig monatlich ab. Diese Anzeige bindet mich bis zum Zeitpunkt des Widerrufs, mindestens aber für die Dauer von 12 Kalendermonaten.
*/
@ApiMember(Description="Die in § 18a Absatz 1 Satz 2 UStG enthaltene Regelung nehme ich nicht in Anspruch. Ich gebe die Zusammenfassende Meldung künftig monatlich ab. Diese Anzeige bindet mich bis zum Zeitpunkt des Widerrufs, mindestens aber für die Dauer von 12 Kalendermonaten.", IsRequired=true, Name="Meldeart")
open var anzeige:Boolean? = null
/**
* Widerruf meiner Anzeige nach § 18a Absatz 1 UStG
*/
@ApiMember(Description="Widerruf meiner Anzeige nach § 18a Absatz 1 UStG", IsRequired=true, Name="Widerruf")
open var widerruf:Boolean? = null
/**
* Meldungszeitraum
*/
@ApiMember(Description="Meldungszeitraum", IsRequired=true, Name="Mzr")
open var mzr:Mzr? = null
/**
* Meldungen der Warenlieferungen
*/
@ApiMember(Description="Meldungen der Warenlieferungen", IsRequired=true, Name="Zeilen")
open var zeilen:ArrayList<Zeile> = ArrayList<Zeile>()
}
/**
* Die Art der Währung
*/
enum class Waehrung
{
Ungueltig,
Eur,
}
/**
* Art der Meldung
*/
enum class Meldeart(val value:Int)
{
Nein(10),
Ja(11),
}
/**
* Meldungszeitraum
*/
@Api(Description="Meldungszeitraum")
open class Mzr
{
/**
* Quartal
*/
@ApiMember(Description="Quartal", IsRequired=true, Name="Quart")
open var quart:Quart? = null
/**
* Die 4-stellige Jahreszahl, welche die Veranlagungszeitraum darstellt.
*/
@ApiMember(Description="Die 4-stellige Jahreszahl, welche die Veranlagungszeitraum darstellt.", IsRequired=true)
open var jahr:Int? = null
}
/**
* Die Art des Quartals
*/
enum class Quart(val value:Int)
{
Q1(1),
Q2(2),
Q3(3),
Q4(4),
Jm(5),
M11(11),
M12(12),
M13(13),
M14(14),
M21(21),
M22(22),
M23(23),
M24(24),
M25(25),
M26(26),
M27(27),
M28(28),
M29(29),
M30(30),
M31(31),
M32(32),
}
/**
* Meldung der Warenlieferungen
*/
@Api(Description="Meldung der Warenlieferungen")
open class Zeile
{
/**
* Umsatzart
*/
@ApiMember(Description="Umsatzart", IsRequired=true, Name="Umsatzart")
open var umsatzart:Umsatzart? = null
/**
* Umsatzsteuer-Identifikationsnummer des Erwerbers / Unternehmers in einem anderen Mitgliedstaat
*/
@ApiMember(Description="Umsatzsteuer-Identifikationsnummer des Erwerbers / Unternehmers in einem anderen Mitgliedstaat", IsRequired=true, Name="Knre")
open var knre:String? = null
/**
* Summe (Euro)
*/
@ApiMember(Description="Summe (Euro)", IsRequired=true, Name="Betrag")
open var betrag:GeldBetragOhneCent11EN? = null
}
/**
* Die Art des Umsatzes.
*/
enum class Umsatzart
{
D,
L,
S,
}
/**
* Represents an amount of money without cents whose value has a maximum length of 11 digits. That is, 1 to 11 digits. Minus sign allowed.
*/
@Api(Description="Represents an amount of money without cents whose value has a maximum length of 11 digits. That is, 1 to 11 digits. Minus sign allowed.")
open class GeldBetragOhneCent11EN : GrossGeldBetragOhneCent()
{
}
/**
* 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")
open class GrossGeldBetragOhneCent
{
/**
* The intrinsic currency value.
*/
@ApiMember(Description="The intrinsic currency value.")
open var wert:Long? = null
}
/**
* Represents the response from a service that generates XML content.
*/
@Api(Description="Represents the response from a service that generates XML content.")
open class XmlResponse : ServiceReponseBase()
{
/**
* The XML-based content of the response.
*/
@ApiMember(Description="The XML-based content of the response.")
open var content:String? = null
}
/**
* Specifies a service response from an ERiC service operation.
*/
@Api(Description="Specifies a service response from an ERiC service operation.")
open class ServiceReponseBase
{
/**
* The unique identifier of the response.
*/
@ApiMember(Description="The unique identifier of the response.")
open 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.")
open 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.")
open var responseStatus:ResponseStatus? = null
}
Kotlin CreateZm2023XmlAsync DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /CreateZm2023XmlAsync HTTP/1.1
Host: taxfiling.staging.pwc.de
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"knri":"String","anschrift":{"name":"String","adresszusatz":"String","strasse":"String","hausnr":"String","hausnrzusatz":"String","ort":"String","plz":"String","staat":"String","telefon":"String"},"zmZeilen":{"waehrung":"UNGUELTIG","meldeart":"Nein","anzeige":false,"widerruf":false,"mzr":{"quart":"Q1","jahr":0},"zeilen":[{"umsatzart":"D","knre":"String","betrag":{"wert":0}}]},"datenLieferant":"String"}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"content":"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"}}}