Skip to content

Commit

Permalink
Merge branch 'christain-rogobete-ft.Middleware'
Browse files Browse the repository at this point in the history
  • Loading branch information
TSchmiedlechner committed Apr 27, 2020
2 parents c5f666c + c6dabb6 commit 4fa7670
Show file tree
Hide file tree
Showing 31 changed files with 99 additions and 99 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
_Welcome to the open source documentation of the fiskaltrust interface!_

The technical specification of the data interface described in this document provides information regarding the following areas:
1. Access to the fiskaltrust.Service
1. Access to the fiskaltrust.Middleware
2. Integration into the receipt based cash register workflow
3. The data structure
4. Function structure of the interface
5. Types of communication with fiskaltrust.Service
5. Types of communication with fiskaltrust.Middleware
6. Operating categories
Interface specification is provided by fiskaltrust.Interface nuget package, which can be found at https://www.nuget.org/packages/fiskaltrust.interface

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This chapter describes the cash register integration in accordance with the Aust

### Receipt Creation Process

This chapter describes the general process of creating receipts with fiskaltrust.Service and its workflow, in accordance with the Austrian law.
This chapter describes the general process of creating receipts with fiskaltrust.Middleware and its workflow, in accordance with the Austrian law.

#### The fiskaltrust.SecurityMechanism

Expand All @@ -24,15 +24,15 @@ The regular workflow of the fiskaltrust.SecurityMechanism in the Austrian market

#### Workflow - regular operation

The following diagram illustrates the regular creation of a receipt with fiskaltrust.Service in accordance with the Austrian law.
The following diagram illustrates the regular creation of a receipt with fiskaltrust.Middleware in accordance with the Austrian law.

![](./images/13.png)

<span id="_Toc527986814" class="anchor"></span>*Illustration 13. Workflow - regular operation (AT - RKSVO)*

#### Workflow - special receipts

The following diagram illustrates the creation of a special receipt with fiskaltrust.Service in accordance with the Austrian law.
The following diagram illustrates the creation of a special receipt with fiskaltrust.Middleware in accordance with the Austrian law.

![](./images/14.png)

Expand Down Expand Up @@ -64,7 +64,7 @@ The following diagram illustrates the workflow of a failure of the fiskaltrust.S

![](./images/19.png)

<span id="_Toc527986819" class="anchor"></span>*Illustration 19. Workflow - failure of the fiskaltrust.Service (recover after more than 48 hours) (AT - RKSVO)*
<span id="_Toc527986819" class="anchor"></span>*Illustration 19. Workflow - failure of the fiskaltrust.Middleware (recover after more than 48 hours) (AT - RKSVO)*

### Receipt for special functions

Expand Down
Binary file modified doc/appendix-at-rksv/cash-register-integration/images/12.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/appendix-at-rksv/cash-register-integration/images/18.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/appendix-at-rksv/cash-register-integration/images/19.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion doc/appendix-at-rksv/communication/communication.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## Communication

This chapter expands on the descriptions of the ways to communicate with the fiskaltrust.Service covered in the Chapter ["Communication"](../../general/communication/communication.md) of the General Part, with country specific information applicable to the Austrian market.
This chapter expands on the descriptions of the ways to communicate with the fiskaltrust.Middleware covered in the Chapter ["Communication"](../../general/communication/communication.md) of the General Part, with country specific information applicable to the Austrian market.

### WCF Web Service

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ This chapter expands on the descriptions of the function structures covered in t

#### Echo Function

In case of the Austrian product SignaturCloud, there is a special condition when the Echo-Function is called with null as a Message, which forces to reinitialize the fiskaltrust.Queue at service side.
In case of the Austrian product SignaturCloud, there is a special condition when the Echo-Function is called with null as a Message, which forces to reinitialize the fiskaltrust.Queue in the fiskaltrust.Middleware.

#### Sign Function

Expand All @@ -28,7 +28,7 @@ The CurrentDateTime is provided in the `yyyyMMddhhmmssfff` format.

### IATSSCD Interface

This interface is applicable only for the Austrian market and enables direct communication with the signature creation device for own purposes: it can be used for testing if the service is running ("Echo" call), for getting the certificate ("Certificate" call), or signing autonomously ("Sign" call).
This interface is applicable only for the Austrian market and enables direct communication with the signature creation device for own purposes: it can be used for testing if the fiskaltrust.Middleware is running ("Echo" call), for getting the certificate ("Certificate" call), or signing autonomously ("Sign" call).

#### ZDA Indicator Request

Expand Down
4 changes: 2 additions & 2 deletions doc/appendix-at-rksv/operation-modes/operation-modes.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## Operation Modes

### Components of the fiskaltrust.Service
### Components of the fiskaltrust.Middleware

#### ASP.<span></span>net 5/Core Web App

Expand All @@ -14,7 +14,7 @@ This application is the bridge between the queue nutshell and fiskaltrust.Signat

In Austria it is mandatory to have an unmodifiable smartcard (write once read many) which must store the issued certificate containing the POS operator data. This smartcard must be read from a reader, which must be connected to the machine of the POS system via: internal device, connected external device, network connected device, or web service.

### Configuration of the fiskaltrust.Service
### Configuration of the fiskaltrust.Middleware

#### Online Portal

Expand Down
10 changes: 5 additions & 5 deletions doc/appendix-at-rksv/reference-tables/reference-tables.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ The table below describes supported statuses for the ftState field in accordance

The country specific code, is made of the country’s code value following the ISO-3166-1-ALPHA-2 standard, converted from ASCII into hex. For Austria (AT) this is `0x4154`, which results in `0x4154000000000000` as the value for the "ready" status.

| **Value** | **Description** | **Service-Version** |
| **Value** | **Description** | **Middleware-Version** |
|----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|
| `0x4154000000000001` | "out of service"<br />No RKSV signatures are generated or sent back. No RKSV-DEP is written, as nothing is being signed. The E131-DEP records requests and responses. | 1.0 |
| `0x4154000000000002` | "SSCD temporary out of service"<br />For at least one receipt, it was not possible to receive the signature from an allocated SSCD. Thus, the security mechanism has been put into "signature creation device out of service" mode. Regardless of whether an allocated SSCD is available again or not, the mode remains in place until, via zero receipt, all previous receipts can be signed. If this mode is activated, an out of service signature, in accordance with the RKSV, is generated and sent back. | 1.0 |
Expand All @@ -27,7 +27,7 @@ The ftReceiptCase indicates the receipt type and defines how it should be proces

For Austria (AT) the country code is `0x4154`. Thus, the value for an unknown ftReceiptCase in Austria is `0x4154000000000000`.

| **Value** | **Description** | **Service- Version** |
| **Value** | **Description** | **Middleware- Version** |
|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------|
| `0x4154000000000000` | "unknown type of receipt for AT"<br />This receipt is processed like a cash transaction with RKSV requirement. | 1.0- |
| `0x4154000000000001` | "Cash transaction with RKSV requirement for AT"<br />The fiskaltrust decision tree is being run through, and, if needed, the signature process is started and the cumulative counter adjusted respectively.<br />An example for a signature being needed, is an "other service" which is paid for with a "credit card".<br />An example for a case where no signature is needed, is a receipt with only "no own sales" on it which has been paid for by "credit card". | |
Expand All @@ -53,7 +53,7 @@ For Austria (AT) the country code is `0x4154`. Thus, the value for an unknown ft

This table expands on the values provided in the table ["Type of Receipt: ftReceiptCaseFlag"](../../general/reference-tables/reference-tables.md#t-type-of-receipt-ftreceiptcaseflag-64) of with values applicable to the Austrian market.

| Value | Description | Service-Version |
| Value | Description | Middleware-Version |
|----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|
| `0x0000000000010000` | "out of service"<br />The transferred receipt contains data which has been created during an outage of the security mechanism. The original receipts are available in handwritten or digital format and must now be transferred and subsequently consolidated and signed via zero receipt. In order to decide whether it is a temporary or permanent (more than 48 hours) outage of the security mechanism (for example in case of theft), the "oldest" or the receipt with the earliest date/time value of all retrieved receipts is used. This can be necessary for example after a power or server outage. | 0- |
| `0x0000000000020000` | "training receipt"<br />Requests with this type of receipt are annotated with the reference "TRA" in the signature block. Instead of the encrypted cumulative sales counter, the BASE64 encrypted value of the TRA string is entered. The sales counter is, in accordance with the RKSV, not adjusted. | 0- |
Expand All @@ -70,7 +70,7 @@ This table expands on the values provided in the table ["Type of Receipt: ftRece

This table expands on the values provided in the table ["Type of Service: ftChargeItemCase"](../../general/reference-tables/reference-tables.md#t-type-of-service-ftchargeitemcase) with values applicable to the Austrian market.

| **Value** | **Description** | **Service-Version** |
| **Value** | **Description** | **Middleware-Version** |
|----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------|
| `0x4154000000000000` | "unknown type of service for AT"<br />With help of the VAT-rates table saved within fiskaltrust.SecurityMechanisms, an allocation to normal /discounted-1 /discounted-2/zero is attempted. | 0- |
| `0x4154000000000001` | "undefined type of service for AT discounted-1"<br />(as of 1.7.2016, this is calculated with 10%). | 0- |
Expand Down Expand Up @@ -115,7 +115,7 @@ This table expands on the values provided in the table ["Type of Service: ftChar

This table expands on the values provided in the table ["Type of Payment: ftPayItemCase"](../../general/reference-tables/reference-tables.md#t-type-of-payment-ftpayitemcase-90) with values applicable to the Austrian market.

| **Value** | **Description** | **Service-Version** |
| **Value** | **Description** | **Middleware-Version** |
|----------------------|-----------------------------------------------------------------------------------------------------------------------------------|---------------------|
| `0x4154000000000000` | "default value"<br />unknown payment type: automatic processing through the fiskaltrust.SecurityMechanisms settings is attempted. | 0- |
| `0x4154000000000000` | "unknown payment type for AT"<br />This is handled like a cash payment in national currency. | 0- |
Expand Down

0 comments on commit 4fa7670

Please sign in to comment.