Tax Filing Service

<back to all web services

BatchValidiereUndHoleDruckvorschauAsync

AsyncBearbeiteVorgangValidiereDruckeBatch

An asynchronous service to validate batch of tax data and preview its protocol printout.

Requires Authentication
The following routes are available for this service:
POST/BatchValidiereUndHoleDruckvorschauAsyncAn asynchronous service to validate batch of tax data and preview its protocol printout.
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

/**
* Represents a structure that encapsulates a tax declaration.
*/
// @Api(Description="Represents a structure that encapsulates a tax declaration.")
class TaxData implements IConvertible
{
    /**
    * The unique identifier of the tax data.
    */
    // @ApiMember(Description="The unique identifier of the tax data.", IsRequired=true)
    String? id;

    /**
    * The XML-based tax declaration.
    */
    // @ApiMember(Description="The XML-based tax declaration.", IsRequired=true)
    String? content;

    TaxData({this.id,this.content});
    TaxData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        content = json['content'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'content': content
    };

    getTypeName() => "TaxData";
    TypeContext? context = _ctx;
}

/**
* A base service to process a batch of tax data.
*/
// @Api(Description="A base service to process a batch of tax data.")
abstract class BatchBearbeiteVorgangBase implements IPost
{
    /**
    * The batch of tax data to process.
    */
    // @ApiMember(Description="The batch of tax data to process.", Name="Data")
    List<TaxData>? data;

    BatchBearbeiteVorgangBase({this.data});
    BatchBearbeiteVorgangBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        data = JsonConverters.fromJson(json['data'],'List<TaxData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'data': JsonConverters.toJson(data,'List<TaxData>',context!)
    };

    getTypeName() => "BatchBearbeiteVorgangBase";
    TypeContext? context = _ctx;
}

/**
* A base service to validate batch of tax data and preview its protocol printout.
*/
// @Api(Description="A base service to validate batch of tax data and preview its protocol printout.")
abstract class BatchValidiereUndHoleDruckvorschauBase extends BatchBearbeiteVorgangBase implements IDruckRequest
{
    /**
    * Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.
    */
    // @ApiMember(Description="Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.", Name="DuplexDruck")
    bool? duplexDruck;

    /**
    * Name prefix of the generated transfer protocol file.
    */
    // @ApiMember(Description="Name prefix of the generated transfer protocol file.", Name="ProtocolPrefix")
    String? protocolPrefix;

    /**
    * Footer text to be used on the printout (optional).
    */
    // @ApiMember(Description="Footer text to be used on the printout (optional).", Name="FussText")
    String? fussText;

    /**
    * The batch of tax data to process.
    */
    // @ApiMember(Description="The batch of tax data to process.", Name="Data")
    List<TaxData>? data;

    BatchValidiereUndHoleDruckvorschauBase({this.duplexDruck,this.protocolPrefix,this.fussText,this.data});
    BatchValidiereUndHoleDruckvorschauBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        duplexDruck = json['duplexDruck'];
        protocolPrefix = json['protocolPrefix'];
        fussText = json['fussText'];
        data = JsonConverters.fromJson(json['data'],'List<TaxData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'duplexDruck': duplexDruck,
        'protocolPrefix': protocolPrefix,
        'fussText': fussText,
        'data': JsonConverters.toJson(data,'List<TaxData>',context!)
    });

    getTypeName() => "BatchValidiereUndHoleDruckvorschauBase";
    TypeContext? context = _ctx;
}

/**
* An asynchronous service to validate batch of tax data and preview its protocol printout.
*/
// @Api(Description="An asynchronous service to validate batch of tax data and preview its protocol printout.")
class BatchValidiereUndHoleDruckvorschauAsync extends BatchValidiereUndHoleDruckvorschauBase implements IConvertible
{
    /**
    * Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.
    */
    // @ApiMember(Description="Should the PDF file be prepared for a double-sided printout with a margin for punching?.  True: The straight sides are indented to the left for a stitching margin for punching. False: There is no indentation of the straight sides. The created PDF is only intended for printing pages page by page.", Name="DuplexDruck")
    bool? duplexDruck;

    /**
    * Name prefix of the generated transfer protocol file.
    */
    // @ApiMember(Description="Name prefix of the generated transfer protocol file.", Name="ProtocolPrefix")
    String? protocolPrefix;

    /**
    * Footer text to be used on the printout (optional).
    */
    // @ApiMember(Description="Footer text to be used on the printout (optional).", Name="FussText")
    String? fussText;

    /**
    * The batch of tax data to process.
    */
    // @ApiMember(Description="The batch of tax data to process.", Name="Data")
    List<TaxData>? data;

    BatchValidiereUndHoleDruckvorschauAsync({this.duplexDruck,this.protocolPrefix,this.fussText,this.data});
    BatchValidiereUndHoleDruckvorschauAsync.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        duplexDruck = json['duplexDruck'];
        protocolPrefix = json['protocolPrefix'];
        fussText = json['fussText'];
        data = JsonConverters.fromJson(json['data'],'List<TaxData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'duplexDruck': duplexDruck,
        'protocolPrefix': protocolPrefix,
        'fussText': fussText,
        'data': JsonConverters.toJson(data,'List<TaxData>',context!)
    });

    getTypeName() => "BatchValidiereUndHoleDruckvorschauAsync";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'taxfiling.pwc.de', types: <String, TypeInfo> {
    'TaxData': TypeInfo(TypeOf.Class, create:() => TaxData()),
    'BatchBearbeiteVorgangBase': TypeInfo(TypeOf.AbstractClass),
    'List<TaxData>': TypeInfo(TypeOf.Class, create:() => <TaxData>[]),
    'BatchValidiereUndHoleDruckvorschauBase': TypeInfo(TypeOf.AbstractClass),
    'BatchValidiereUndHoleDruckvorschauAsync': TypeInfo(TypeOf.Class, create:() => BatchValidiereUndHoleDruckvorschauAsync()),
});

Dart BatchValidiereUndHoleDruckvorschauAsync DTOs

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

HTTP + X-MSGPACK

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

POST /BatchValidiereUndHoleDruckvorschauAsync HTTP/1.1 
Host: taxfiling.pwc.de 
Accept: application/x-msgpack
Content-Type: application/x-msgpack
Content-Length: length

{"duplexDruck":false,"protocolPrefix":"String","fussText":"String","data":[{"id":"String","content":"String"}]}
HTTP/1.1 200 OK
Content-Type: application/x-msgpack
Content-Length: length

[{"rueckgabe":{"erfolg":{"telenummer":["String"],"ordnungsbegriffe":["String"]},"transfers":{"transferList":[{"transferTicket":"String"}]},"fehlerRegelpruefungen":[{"nutzdatenticket":"String","feldidentifikator":"String","mehrfachzeilenindex":"String","lfdNrVordruck":"String","vordruckZeilennummer":"String","semantischeIndexes":[{"name":"String","value":"String"}],"untersachbereich":"String","privateKennnummer":"String","regelName":"String","fachlicheFehlerId":"String","text":"String"}],"hinweise":[{"nutzdatenticket":"String","feldidentifikator":"String","mehrfachzeilenindex":"String","lfdNrVordruck":"String","vordruckZeilennummer":"String","semantischeIndexes":[{"name":"String","value":"String"}],"untersachbereich":"String","privateKennnummer":"String","regelName":"String","fachlicheHinweisId":"String","text":"String"}]},"serverantwort":{"transferHeader":{"version":"String","verfahren":"ElsterAnmeldung","datenArt":"34a","vorgang":"send-Auth","transferTicket":"String","testmerker":"0","sigUser":{"inhalt":{}},"empfaenger":{"id":"String","ziel":"BW"},"herstellerID":"String","datenLieferant":"String","eingangsDatum":"\/Date(-62135596800000-0000)\/","datei":{"verschluesselung":"PKCS#7v1.5","kompression":"GZIP","transportSchluessel":"String","erstellung":{"eric":{"inhalt":{}}}},"rc":{"rueckgabe":{"code":"String","text":"String"},"stack":{"code":"String","text":"String"}},"versionClient":"String","zusatz":{"infos":["String"],"elsterInfos":["String"]}},"datenTeil":{"nutzdatenbloecke":[{"nutzdatenHeader":{"version":"String","nutzdatenTicket":"String","empfaenger":{"id":"L","value":"String"},"hersteller":{"produktName":"String","produktVersion":"String"},"datenLieferant":"String","rc":{"rueckgabe":{"code":"String","text":"String"},"stack":{"code":"String","text":"String"}},"zusatz":{"infos":["String"],"elsterInfos":["String"]}},"nutzdaten":{"inhalt":{}}}]}},"transferProtocols":[{"metadata":{"name":"String","fullName":"String","lastAccessTime":"\/Date(-62135596800000-0000)\/","lastAccessTimeUtc":"\/Date(-62135596800000-0000)\/","lastWriteTime":"\/Date(-62135596800000-0000)\/","lastWriteTimeUtc":"\/Date(-62135596800000-0000)\/","length":0,"userId":0,"groupId":0,"othersCanRead":false,"groupCanExecute":false,"groupCanWrite":false,"groupCanRead":false,"ownerCanExecute":false,"ownerCanWrite":false,"ownerCanRead":false,"othersCanExecute":false,"othersCanWrite":false,"extensions":{"String":"String"}},"name":"String","content":"AA=="}],"statusCode":"ERIC_OK","statusText":"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"}}}]