Report Filing Service

<back to all web services

BatchRecallReportsAsync

RecallReportsBatchAsync

Represents a request to recall reports from the ELMA server before it is processed in an asynchronous operation.

Requires Authentication
The following routes are available for this service:
POST/async/elma/reports/batch/recall
"use strict";
/** @typedef {'CC'|'CS'|'DC'|'FC'|'FS'|'FA'|'KM'} */
export var Verfahren;
(function (Verfahren) {
    Verfahren["CC"] = "CC"
    Verfahren["CS"] = "CS"
    Verfahren["DC"] = "DC"
    Verfahren["FC"] = "FC"
    Verfahren["FS"] = "FS"
    Verfahren["FA"] = "FA"
    Verfahren["KM"] = "KM"
})(Verfahren || (Verfahren = {}));
export class SearchCriteria {
    /** @param {{name?:string,designation?:Verfahren}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description Full or partial name of the item (report or protocol) to search. */
    name;
    /**
     * @type {?Verfahren}
     * @description TThe ELMA product designation. */
    designation;
}
export class PemCertificate {
    /** @param {{id?:string,content?:string,description?:string,tags?:string[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The unique identifier (e.g. the file name) of the certificate. */
    id;
    /**
     * @type {string}
     * @description The PEM-encoded content of the certificate. */
    content;
    /**
     * @type {string}
     * @description The description of the certificate. */
    description;
    /**
     * @type {string[]}
     * @description Tags to label or identify the certificate. */
    tags;
}
export class ElmaCredential {
    /** @param {{id?:string,certificate?:PemCertificate,authSteuernummer?:string,accountId?:string,password?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The unique identifier of this instance.  This identifer is only relevant in the context of data storage and retrieval. */
    id;
    /**
     * @type {PemCertificate}
     * @description The security certificate to authenticate the user and grant access to the ELMA server.  This certificate is generated from the BZSt-issued *.pfx BOP certificate. More details on BOP (BZSt-Online Portal - https://www.elster.de/bportal/start) */
    certificate;
    /**
     * @type {string}
     * @description The BZSt (Bundeszentralamt für Steuern) - tax number of the user. 11-character text field that may only consist of two capital letters and 9 digits (0-9).  The fiscal authority BZSt provides this number during registration at the BOP (BZSt-Online Portal - https://www.elster.de/bportal/start).  The number is available in the private area of the BOP user account under "My BOP" under the "Registration Information" */
    authSteuernummer;
    /**
     * @type {string}
     * @description The account identifier of a BZSt-Online Portal (BOP) user. 10-character text field that may only contain numbers (0-9). */
    accountId;
    /**
     * @type {string}
     * @description The password to protect the certificate from unauthorized access. */
    password;
}
export class BatchRecallReportsBase {
    /** @param {{searchCriteria?:SearchCriteria,credential?:ElmaCredential,stagingEnabled?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {SearchCriteria}
     * @description The parameters to search or filter on reports. */
    searchCriteria;
    /**
     * @type {ElmaCredential}
     * @description The credential to gain access on the ELMA server. */
    credential;
    /**
     * @type {?boolean}
     * @description Should operations be staged on the ELMA server? true: operations are executed on the Test ELMA server. false: operations are executed on the Live (Production) ELMA server. */
    stagingEnabled;
}
export class Report {
    /** @param {{id?:string,data?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The conventional ELMA file name of the report.  The format of the ELMA formula is as follows:  m5_<pb>_<BZSt-Nr>_<AccountID>_<DateiId>.xml  where:  m5 is a constant for all reporting types.  pb is a constant that represents the ELMA product designation e.g. CC, DC, FC etc.  BZSt-Nr is the 11-character BZSt (Bundeszentralamt für Steuern) - tax number of the ELMA user e.g. bz123456789  AccountID is the 10-digit account identifier of the BZSt-Online Portal (BOP) user e.g. 1234567890  DateiId is the 1 - 12 character internal short name for the data file. */
    id;
    /**
     * @type {string}
     * @description The XML-content of the report. */
    data;
}
export class RecallResponse {
    /** @param {{reports?:Report[],responseStatus?:ResponseStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {Report[]}
     * @description The recalled reports. */
    reports;
    /**
     * @type {ResponseStatus}
     * @description The status of the recall operation. */
    responseStatus;
}
export class BatchRecallReportsAsync extends BatchRecallReportsBase {
    /** @param {{searchCriteria?:SearchCriteria,credential?:ElmaCredential,stagingEnabled?:boolean,searchCriteria?:SearchCriteria,credential?:ElmaCredential,stagingEnabled?:boolean}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {SearchCriteria}
     * @description The parameters to search or filter on reports. */
    searchCriteria;
    /**
     * @type {ElmaCredential}
     * @description The credential to gain access on the ELMA server. */
    credential;
    /**
     * @type {?boolean}
     * @description Should operations be staged on the ELMA server? true: operations are executed on the Test ELMA server. false: operations are executed on the Live (Production) ELMA server. */
    stagingEnabled;
}

JavaScript BatchRecallReportsAsync 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 /async/elma/reports/batch/recall HTTP/1.1 
Host: reportfiling.staging.pwc.de 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	searchCriteria: 
	{
		name: String,
		designation: CC
	},
	credential: 
	{
		id: String_String,
		certificate: 
		{
			id: String,
			content: String,
			description: String,
			tags: 
			[
				String
			]
		},
		authSteuernummer: String,
		accountId: String,
		password: String
	},
	stagingEnabled: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	reports: 
	[
		{
			id: String,
			data: String
		}
	],
	responseStatus: 
	{
		errorCode: String,
		message: String,
		stackTrace: String,
		errors: 
		[
			{
				errorCode: String,
				fieldName: String,
				message: String,
				meta: 
				{
					String: String
				}
			}
		],
		meta: 
		{
			String: String
		}
	}
}