Report Filing Service

<back to all web services

BatchSignReportsAsync

SignReportsBatchAsync

Represents a request to sign a batch of reports in an asynchronous operation.

Requires Authentication
The following routes are available for this service:
POST/async/elma/reports/batch/sign
"use strict";
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 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 BatchSignReportsBase {
    /** @param {{reports?:Report[],credential?:ElmaCredential}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {Report[]}
     * @description The reports to sign. */
    reports;
    /**
     * @type {ElmaCredential}
     * @description The credential to gain access on the ELMA server. */
    credential;
}
export class BatchSignReportsAsync extends BatchSignReportsBase {
    /** @param {{reports?:Report[],credential?:ElmaCredential,reports?:Report[],credential?:ElmaCredential}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {Report[]}
     * @description The reports to sign. */
    reports;
    /**
     * @type {ElmaCredential}
     * @description The credential to gain access on the ELMA server. */
    credential;
}

JavaScript BatchSignReportsAsync 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 /async/elma/reports/batch/sign HTTP/1.1 
Host: reportfiling.staging.pwc.de 
Accept: application/x-msgpack
Content-Type: application/x-msgpack
Content-Length: length

{"reports":[{"id":"String","data":"String"}],"credential":{"id":"String_String","certificate":{"id":"String","content":"String","description":"String","tags":["String"]},"authSteuernummer":"String","accountId":"String","password":"String"}}
HTTP/1.1 200 OK
Content-Type: application/x-msgpack
Content-Length: length

[{"report":{"id":"String","data":"String"},"signature":{"id":"String","data":"AA=="},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}]