Report Filing Service

<back to all web services

FormatReport

FormatReportSync

Represents a request to format the header of a single report.

Requires Authentication
The following routes are available for this service:
POST/sync/elma/reports/format
"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 FormatReportBase {
    /** @param {{report?:Report,credential?:ElmaCredential}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {Report}
     * @description The report to format. */
    report;
    /**
     * @type {ElmaCredential}
     * @description Provides credential information to the header. */
    credential;
}
export class FormatResponse {
    /** @param {{id?:string,xml?:string,responseStatus?:ResponseStatus}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The unique identifier of the report that was processed. */
    id;
    /**
     * @type {string}
     * @description The formatted XML-based report content. */
    xml;
    /**
     * @type {ResponseStatus}
     * @description The status of the formatting operation. */
    responseStatus;
}
export class FormatReport extends FormatReportBase {
    /** @param {{report?:Report,credential?:ElmaCredential,report?:Report,credential?:ElmaCredential}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /**
     * @type {Report}
     * @description The report to format. */
    report;
    /**
     * @type {ElmaCredential}
     * @description Provides credential information to the header. */
    credential;
}

JavaScript FormatReport DTOs

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

HTTP + CSV

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

POST /sync/elma/reports/format HTTP/1.1 
Host: reportfiling.staging.pwc.de 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"report":{"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: text/csv
Content-Length: length

{"id":"String","xml":"String","responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}