Tax Filing Service

<back to all web services

BatchValidiereUndHoleDruckvorschau

SyncBearbeiteVorgangValidiereDruckeBatch

A synchronous service to validate batch of tax data and preview its protocol printout.

Requires Authentication
The following routes are available for this service:
POST/BatchValidiereUndHoleDruckvorschauA synchronous service to validate batch of tax data and preview its protocol printout.
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports PwC.xEric.Core.Services.Contracts.Requests
Imports PwC.xEric.Core.Domain.Concretes.Models

Namespace Global

    Namespace PwC.xEric.Core.Domain.Concretes.Models

        '''<Summary>
        '''Represents a structure that encapsulates a tax declaration.
        '''</Summary>
        <Api(Description:="Represents a structure that encapsulates a tax declaration.")>
        Public Partial Class TaxData
            '''<Summary>
            '''The unique identifier of the tax data.
            '''</Summary>
            <ApiMember(Description:="The unique identifier of the tax data.", IsRequired:=true)>
            Public Overridable Property Id As String

            '''<Summary>
            '''The XML-based tax declaration.
            '''</Summary>
            <ApiMember(Description:="The XML-based tax declaration.", IsRequired:=true)>
            Public Overridable Property Content As String
        End Class
    End Namespace

    Namespace PwC.xEric.Core.Services.Contracts.Requests

        '''<Summary>
        '''A base service to process a batch of tax data.
        '''</Summary>
        <Api(Description:="A base service to process a batch of tax data.")>
        Public Partial Class BatchBearbeiteVorgangBase
            Implements IPost
            Public Sub New()
                Data = New List(Of TaxData)
            End Sub

            '''<Summary>
            '''The batch of tax data to process.
            '''</Summary>
            <ApiMember(Description:="The batch of tax data to process.", Name:="Data")>
            Public Overridable Property Data As List(Of TaxData)
        End Class

        '''<Summary>
        '''A synchronous service to validate batch of tax data and preview its protocol printout.
        '''</Summary>
        <Api(Description:="A synchronous service to validate batch of tax data and preview its protocol printout.")>
        Public Partial Class BatchValidiereUndHoleDruckvorschau
            Inherits BatchValidiereUndHoleDruckvorschauBase
            Public Sub New()
                Data = New List(Of TaxData)
            End Sub

            '''<Summary>
            '''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.
            '''</Summary>
            <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")>
            Public Overridable Property DuplexDruck As Nullable(Of Boolean)

            '''<Summary>
            '''Name prefix of the generated transfer protocol file.
            '''</Summary>
            <ApiMember(Description:="Name prefix of the generated transfer protocol file.", Name:="ProtocolPrefix")>
            Public Overridable Property ProtocolPrefix As String

            '''<Summary>
            '''Footer text to be used on the printout (optional).
            '''</Summary>
            <ApiMember(Description:="Footer text to be used on the printout (optional).", Name:="FussText")>
            Public Overridable Property FussText As String

            '''<Summary>
            '''The batch of tax data to process.
            '''</Summary>
            <ApiMember(Description:="The batch of tax data to process.", Name:="Data")>
            Public Overridable Property Data As List(Of TaxData)
        End Class

        '''<Summary>
        '''A base service to validate batch of tax data and preview its protocol printout.
        '''</Summary>
        <Api(Description:="A base service to validate batch of tax data and preview its protocol printout.")>
        Public Partial Class BatchValidiereUndHoleDruckvorschauBase
            Inherits BatchBearbeiteVorgangBase
            Implements IDruckRequest
            Public Sub New()
                Data = New List(Of TaxData)
            End Sub

            '''<Summary>
            '''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.
            '''</Summary>
            <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")>
            Public Overridable Property DuplexDruck As Nullable(Of Boolean)

            '''<Summary>
            '''Name prefix of the generated transfer protocol file.
            '''</Summary>
            <ApiMember(Description:="Name prefix of the generated transfer protocol file.", Name:="ProtocolPrefix")>
            Public Overridable Property ProtocolPrefix As String

            '''<Summary>
            '''Footer text to be used on the printout (optional).
            '''</Summary>
            <ApiMember(Description:="Footer text to be used on the printout (optional).", Name:="FussText")>
            Public Overridable Property FussText As String

            '''<Summary>
            '''The batch of tax data to process.
            '''</Summary>
            <ApiMember(Description:="The batch of tax data to process.", Name:="Data")>
            Public Overridable Property Data As List(Of TaxData)
        End Class
    End Namespace
End Namespace

VB.NET BatchValidiereUndHoleDruckvorschau 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 /BatchValidiereUndHoleDruckvorschau HTTP/1.1 
Host: taxfiling.pwc.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	duplexDruck: False,
	protocolPrefix: String,
	fussText: String,
	data: 
	[
		{
			id: String,
			content: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
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: 0001-01-01,
				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: 0001-01-01,
					lastAccessTimeUtc: 0001-01-01,
					lastWriteTime: 0001-01-01,
					lastWriteTimeUtc: 0001-01-01,
					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
			}
		}
	}
]