Download OpenAPI specification:Download
This API provides a variety of different functionalities for POS systems and is the central entry point to the fiskaltrust.Middleware. It can be used to fiscalize (or sign) receipts, execute payments via different payment providers, digitally print receipts (e.g. via the Receipt Bundle), and to export data from the Middleware.
While the POSSystem API was designed to be easily usable via HTTP calls and JSON the call patterns follow a processual principle. We believe that by giving POS Systems a way to handle core processes in a stateful way as if they are a statemachine, that we can always ensure that the processes run as frictionless as possible. Each call that is handled by the POS System API is safe to be replayed and idempotent.
The POSSystem API can only be used with the access data of a CashBox. These credentials can be found on the fiskaltrust.Portal in the CashBox Configuration page.You will need both CashBoxId and AccessToken to use this API.
This API uses semantic versioning, meaning only major version changes contain breaking changes. Non-breaking changes (like returning additional data without changing the original model) will not increase the major version.
Headers:
x-operation-id: The operation id is meant to be a idempotency key that let's the caller of the API endpoints safely retry calls. In case of timeouts, network interruptions this gives the ability to safely retry the process. While the request on the server side is still in progress calling the endpoint again with the same operation id does return a 422 Unprocessable Content. As soon as the request is finished whatever the initial request has finished with will be returned to the caller whenever the endpoint is called with the same body and the same operation-id.
e.g. Calling /sign with x-operation-id ea4279ee-8684-412f-b8eb-32b5dea52811. The operation fails with a timeout. The caller handles the exception by performing the exact same operation again. The backend notices that this operation-id has been used in another transaction already and checks the state. If the state is finished it returnes the original response body
This method can be used to perform a basic health and communcation check. It is also used for reseting the Middleware Instance (echo(null)
| x-operation-id required | any (x-operation-id) Example: af60144d-5c1b-4b56-9706-1e80c9ed1705 operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal #TODO |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
{ }{ }{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
{ }{- "ftJourneyID": "00000000-0000-0000-0000-000000000000",
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}execute a journey update call end-to-end
| JourneyId required | string <uuid> |
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| X-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
{ }{- "status": 100,
- "title": "string",
- "detail": "string",
- "instance": "string",
- "code": "string",
- "errors": [
- {
- "detail": "string",
- "pointer": "string",
- "parameter": "string",
- "header": "string",
- "code": "string"
}
]
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}close ongoing journey
| JourneyId required | string <uuid> |
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| X-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| x-journey-id | any (x-journey-id) identifies ongoing cart journey #TODO |
{ }{ }{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| x-journey-id | any (x-journey-id) identifies ongoing cart journey #TODO |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}This method can be used to sign different types of receipts according to local fiscalization regulations. After signing the receipt according to the fiscal law, this method synchronously returns the data that need to be printed onto the receipt. The format of the receipt request is documented in the Middleware API docs, and the exact behavior of the method is determined by the cases sent within the properties (e.g. ftReceiptCase, ftChargeItemCase and ftPayItemCase.
| x-operation-id required | any (x-operation-id) Example: 00000000-0000-0000-0000-000000000000 operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal #TODO |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| x-journey-id | any (x-journey-id) identifies ongoing cart journey #TODO |
| cbTerminalID | string <= 1023 characters Default: "undefined" The unique identification of the input-station/terminal within a cash-register/pos-system identified by |
| cbReceiptReference required | string <= 1023 characters Default: "undefined" Reference number send by the cash register. This value must be a unique string/receipt number related to the calling cash register. This string/receipt number is a unique primary key of the dataset of the cash register. |
| cbReceiptMoment required | string <date-time> moment at which the receipt was create by the cash register, must be provided in UTC. |
required | Array of objects (ChargeItem) list of line items related to services and products |
required | Array of objects (PayItem) list of line items related to payments |
| ftCashBoxID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the cash register |
| ftPosSystemID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the used software of the cash register |
| ftReceiptCase | integer <uint64> Default: 0 Type of business according to fiskaltrust reference. for detailed definition goto https://docs.fiskaltrust.eu !TODO! this is relevant for fiskaltrust middleware processing and is a country specific mapping. as fallback when not specified, a cash register business case at the point-of-sale is used. |
(string or null) or object optional gives additional details for defined type of business related to fiskaltrust reference. for detailed definition goto https://docs.fiskaltrust.eu !TODO! | |
| ftQueueID | string or null <uuid> Default: null optional routing instruction to identify a specific queue behind a load balancer or in other usecases |
| cbPreviousReceiptReference | string or null <= 1023 characters Default: null optional Reference |
(integer or null) or (number or null) Default: null optional total receipt amount, including value added taxes (=gross receipt amount) given to avoid calculation and rounding differences. systems which are using net amounts as central calculation should alsways use this property. if not provided, the sum of | |
(string or null) or object Default: null optional Identification of the user, who creates the receipt. | |
(string or null) or object Default: null optional Identification of the area/section/field, in which the receipt is created. e.g. Table number of a restaurant business; a department of a commercial establishment; the vehicle of a taxi company | |
(string or null) or object Default: null optional Identification of the consumer, for whom the receipt is created. e.g. Email address, phone number, personal tax number | |
(string or null) or object Default: null optional Settlement identification where this receipt will be added. e.g. shift number or day of operation | |
| Currency | string (CurrencyEnum) Default: "EUR" Enum: "EUR" "CHF" "CZK" "HUF" "BAM" "DKK" "RON" "NOK" "PLN" "RSD" "SEK" "UAH" "USD" "AED" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BOV" "BRL" "BSD" "BTN" "BWP" "BYN" "BZD" "CAD" "CDF" "CHE" "CHW" "CLF" "CLP" "CNY" "COP" "COU" "CRC" "CUP" "CVE" "DJF" "DOP" "DZD" "EGP" "ERN" "ETB" "FJD" "FKP" "GBP" "GEL" "GHS" "GIP" "GMD" "GNF" "GTQ" "GYD" "HKD" "HNL" "HTG" "IDR" "ILS" "INR" "IQD" "IRR" "ISK" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LYD" "MAD" "MDL" "MGA" "MKD" "MMK" "MNT" "MOP" "MRU" "MUR" "MVR" "MWK" "MXN" "MXV" "MYR" "MZN" "NAD" "NGN" "NIO" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PYG" "QAR" "RUB" "RWF" "SAR" "SBD" "SCR" "SDG" "SGD" "SHP" "SLE" "SLL" "SOS" "SRD" "SSP" "STN" "SVC" "SYP" "SZL" "THB" "TJS" "TMT" "TND" "TOP" "TRY" "TTD" "TWD" "TZS" "UGX" "USN" "UYI" "UYU" "UYW" "UZS" "VED" "VES" "VND" "VUV" "WST" "XAF" "XAG" "XAU" "XBA" "XBB" "XBC" "XBD" "XCD" "XDR" "XOF" "XPD" "XPF" "XPT" "XSU" "XTS" "XUA" "XXX" "YER" "ZAR" "ZMW" "ZWL" used as currency code for money numbers. along ISO 4217 (https://en.wikipedia.org/wiki/ISO_4217) |
| DecimalPrecisionMultiplier | integer <int32> (DecimalPrecisionMultiplierEnum) Default: 1 Enum: 1 100 10000 1000000 100000000 is used as multiplier for decimal numbers. when value 1 is used, revlevant numbers are interpreted as floating-point numbers. for all other values, relevant numbers are interpreted as integer and need to be devided by the Multiplier to get the decimal representation. |
long description cbTerminalId comes from Header ftReceiptCase fallback to 0xCCCC_2000_0000_0000 ftChargeItemCase fallback to 0xCCCC_2000_0000_0000 ftPayItemCase fallback to 0xCCCC_20000_0000_0000 with line breaks
{- "cbReceiptReference": "1234",
- "cbReceiptMoment": "2023-11-24T15:22:07Z",
- "cbChargeItems": [
- {
- "Quantity": 1,
- "Description": "Beer 0.3l",
- "Amount": 4.6,
- "VATRate": 20
}, - {
- "Quantity": 1,
- "Description": "Coffee",
- "Amount": 3.6,
- "VATRate": 20
}
], - "cbPayItems": [
- {
- "Description": "Cash",
- "Amount": 7.2
}
]
}{- "ftQueueID": "00000000-0000-0000-0000-000000000000",
- "ftQueueItemID": "00000000-0000-0000-0000-000000000000",
- "ftQueueRow": 0,
- "ftCashBoxIdentification": "undefined",
- "ftReceiptIdentification": "ft0#",
- "ftReceiptMoment": "2020-06-29T17:45:40.505Z",
- "ftSignatures": [
- {
- "ftSignatureItemID": null,
- "ftSignatureFormat": 0,
- "ftSignatureType": 0,
- "Caption": null,
- "Data": "string"
}
], - "ftState": 0,
- "ftStateData": "string",
- "ftCashBoxID": "00000000-0000-0000-0000-000000000000",
- "cbTerminalID": "undefined",
- "cbReceiptReference": "undefined",
- "ftReceiptHeader": [
- "string"
], - "ftChargeItems": [
- {
- "ftChargeItemID": null,
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "VATRate": 0,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "VATAmount": null,
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "ProductGroup": null,
- "ProductNumber": null,
- "ProductBarcode": null,
- "Unit": null,
- "UnitQuantity": null,
- "UnitPrice": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
], - "ftChargeLines": [
- "string"
], - "ftPayItems": [
- {
- "ftPayItemID": null,
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "MoneyGroup": null,
- "MoneyNumber": null,
- "MoneyBarcode": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
], - "ftPayLines": [
- "string"
], - "ftReceiptFooter": [
- "string"
]
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}execute a issue call end-to-end
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal #TODO |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| x-journey-id | any (x-journey-id) identifies ongoing cart journey #TODO |
required | object (ReceiptRequest_1) The cash register transfers the data of an entire receipt request to the fiskaltrust.Middleware using the ReceiptRequest data structure. |
required | object (ReceiptResponse_1) The fiskaltrust.Middleware sends back the processed data to the cash register through the receipt response. |
{- "ReceiptRequest": {
- "ftCashBoxID": "string",
- "ftQueueID": "string",
- "ftPosSystemId": "string",
- "cbTerminalID": "string",
- "cbReceiptReference": "string",
- "cbReceiptMoment": "2019-08-24T14:15:22Z",
- "cbChargeItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "vatRate": 0.1,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "vatAmount": 0.1,
- "accountNumber": "string",
- "costCenter": "string",
- "productGroup": "string",
- "productNumber": "string",
- "productBarcode": "string",
- "unit": "string",
- "unitQuantity": 0.1,
- "unitPrice": 0.1,
- "moment": "2019-08-24T14:15:22Z"
}
], - "cbPayItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "accountNumber": "string",
- "costCenter": "string",
- "moneyGroup": "string",
- "moneyNumber": "string",
- "moment": "2019-08-24T14:15:22Z"
}
], - "ftReceiptCase": 0,
- "ftReceiptCaseData": "string",
- "cbReceiptAmount": 0.1,
- "cbUser": "string",
- "cbArea": "string",
- "cbCustomer": "string",
- "cbSettlement": "string",
- "cbPreviousReceiptReference": "string"
}, - "ReceiptResponse": {
- "ftCashBoxID": "string",
- "ftQueueID": "string",
- "ftQueueItemID": "string",
- "ftQueueRow": 0,
- "cbTerminalID": "string",
- "cbReceiptReference": "string",
- "ftCashBoxIdentification": "string",
- "ftReceiptIdentification": "string",
- "ftReceiptMoment": "2019-08-24T14:15:22Z",
- "ftReceiptHeader": [
- "string"
], - "ftChargeItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "vatRate": 0.1,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "vatAmount": 0.1,
- "accountNumber": "string",
- "costCenter": "string",
- "productGroup": "string",
- "productNumber": "string",
- "productBarcode": "string",
- "unit": "string",
- "unitQuantity": 0.1,
- "unitPrice": 0.1,
- "moment": "2019-08-24T14:15:22Z"
}
], - "ftChargeLines": [
- "string"
], - "ftPayItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "accountNumber": "string",
- "costCenter": "string",
- "moneyGroup": "string",
- "moneyNumber": "string",
- "moment": "2019-08-24T14:15:22Z"
}
], - "ftPayLines": [
- "string"
], - "ftSignatures": [
- {
- "ftSignatureFormat": 0,
- "ftSignatureType": 0,
- "caption": "string",
- "data": "string"
}
], - "ftReceiptFooter": [
- "string"
], - "ftState": 0,
- "ftStateData": "string"
}
}{- "ftQueueID": "fb6ee7af-f98e-4d5a-891b-ff24d7313836",
- "ftQueueItemID": "92273d5f-5d3a-4415-bfc8-f7895ceaecf6",
- "DocumentContentType": "string"
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get content of an issued receipt in requested format, without updateing the submitted state
| QueueId required | string <uuid> |
| QueueItemId required | string <uuid> |
execute a update call end-to-end
| QueueId required | string <uuid> |
| QueueItemId required | string <uuid> |
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| X-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| Action required | string (IssueUpdateActionEnum) |
{- "Action": "accept"
}{- "status": 100,
- "title": "string",
- "detail": "string",
- "instance": "string",
- "code": "string",
- "errors": [
- {
- "detail": "string",
- "pointer": "string",
- "parameter": "string",
- "header": "string",
- "code": "string"
}
]
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get image of qr code for digital receipt url
| QueueId required | string <uuid> |
| QueueItemId required | string <uuid> |
{- "status": 100,
- "title": "string",
- "detail": "string",
- "instance": "string",
- "code": "string",
- "errors": [
- {
- "detail": "string",
- "pointer": "string",
- "parameter": "string",
- "header": "string",
- "code": "string"
}
]
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| x-journey-id | any (x-journey-id) identifies ongoing cart journey #TODO |
| Protocol required | string (PaymentProtocolEnum) Default: "use_auto" Enum: "use_first" "use_all" "use_auto" "use_none" "bluecode" "hobex_zvt" "hobex_restapi" "hobex_softpos_posit" "gp_softpos_gptom" "gp_mpas" "gp_zvt" "payone_softpos_wpi" "payone_serverapi" "payone_fistdata" "worldline_wpi_1_3" "worldline_wpi_2" a list of supported protocols use_first can be used to use first detected payment protocol for the specific cashboxid/terminalid combination use_all triggers all available payment protocols for the specific cashboxid/terminalid combination and uses first successfull use_auto triggers a automaticaly selected, single payment protocol, best match for given PayItemCase use_none asks the customer, to select one |
| Action required | string (PaymentActionEnum) Enum: "payment" "cancel" "refund" "pre_authorization" "other" a list of supported actions not each protocol supports each action |
required | object (PayItem) represents a item related to a payment |
| AcceptUnderPayment | boolean Default: false |
| AcceptOverPayment | boolean Default: true |
| cbTerminalID | string <= 1023 characters Default: "undefined" The unique identification of the input-station/terminal within a cash-register/pos-system identified by |
| ftCashBoxID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the cash register |
| ftPosSystemID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the used software of the cash register |
request a payment amount is EUR 1.50 chooses a payment-device assigned to cbTerminalId by itself
{- "Action": "payment",
- "Protocol": "use_auto",
- "cbPayItem": {
- "Description": "Card",
- "Amount": 1.5
}, - "cbTerminalId": 1
}{- "Protocol": "use_first",
- "ftQueueID": "00000000-0000-0000-0000-000000000000",
- "ftPayItems": [
- {
- "ftPayItemID": null,
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "MoneyGroup": null,
- "MoneyNumber": null,
- "MoneyBarcode": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
]
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| x-journey-id | any (x-journey-id) identifies ongoing cart journey #TODO |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}gets a single entry of a specific
| StorageType required | string (StorageTypeEnum) Enum: "OperationItem" "OperationStateJournal" "PayItem" "ChargeItem" "QueueItem" "IssueItem" "ActionJournal" "ReceiptJournal" |
| Id required | string <uuid> |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "Method": "string",
- "Path": "string",
- "Header": { },
- "Request": { },
- "Response": { },
- "LastState": "done",
- "StorageType": "OperationItem"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in PaymentRequest, if given |
{ }{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in PaymentRequest, if given |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get state of pay request
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
[- {
- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string",
- "PayItemID": null
}
]| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
{- "ftJourneyID": "00000000-0000-0000-0000-000000000000",
}TBD
| JourneyId required | string <uuid> |
| Timeout | number <int> Default: 15 |
{ }| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in PaymentRequest, if given |
{ }{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in PaymentRequest, if given |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get state of pay request
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
[- {
- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string",
- "PayItemID": null
}
]| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
{ }| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in PaymentRequest, if given |
| Protocol required | string (PaymentProtocolEnum) Default: "use_auto" Enum: "use_first" "use_all" "use_auto" "use_none" "bluecode" "hobex_zvt" "hobex_restapi" "hobex_softpos_posit" "gp_softpos_gptom" "gp_mpas" "gp_zvt" "payone_softpos_wpi" "payone_serverapi" "payone_fistdata" "worldline_wpi_1_3" "worldline_wpi_2" a list of supported protocols use_first can be used to use first detected payment protocol for the specific cashboxid/terminalid combination use_all triggers all available payment protocols for the specific cashboxid/terminalid combination and uses first successfull use_auto triggers a automaticaly selected, single payment protocol, best match for given PayItemCase use_none asks the customer, to select one |
| Action required | string (PaymentActionEnum) Enum: "payment" "cancel" "refund" "pre_authorization" "other" a list of supported actions not each protocol supports each action |
required | object (PayItem) represents a item related to a payment |
| AcceptUnderPayment | boolean Default: false |
| AcceptOverPayment | boolean Default: true |
| cbTerminalID | string <= 1023 characters Default: "undefined" The unique identification of the input-station/terminal within a cash-register/pos-system identified by |
| ftCashBoxID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the cash register |
| ftPosSystemID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the used software of the cash register |
request a payment amount is EUR 1.50 chooses a payment-device assigned to cbTerminalId by itself
{- "Action": "payment",
- "Protocol": "use_auto",
- "cbPayItem": {
- "Description": "Card",
- "Amount": 1.5
}, - "cbTerminalId": 1
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in PaymentRequest, if given |
{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get state of pay request
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
[- {
- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string",
- "PayItemID": null
}
]| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
response to PayRequestHobexPaymentMinimum_1
{- "Protocol": "hobex_restapi",
- "ftQueueId": "00000000-0000-0000-0000-xxxxxxxxxxxx",
- "ftPayItems": [
- {
- "ftPayItemId": "00000000-0000-0000-0000-xxxxxxxxxxxx",
- "Description": "Card",
- "Amount": 1.5,
- "ftPayItemCase": 14757170079003050000,
- "ftPayItemCaseData": {
- "Receipt": [
- "Line1",
- "Line2",
- "Line3",
- "Line4"
], - "Provider": {
- "Protocol": "hobex_restapi",
- "Action": "payment",
- "ProtocolRequest": {
- "transaction": {
- "transactionType": 1,
- "transactionId": "20181009140821075",
- "tid": "3510224",
- "currency": "EUR",
- "reference": "123",
- "amount": 1.5,
- "language": "DE"
}
}, - "ProtocolResponse": {
- "transactionId": "20181009140821075",
- "originalTransactionId": "",
- "tid": "3510224",
- "receipt": "632030",
- "approvalCode": "00884601",
- "reference": "123",
- "transactionDate": "2018-10-09T14:07:00.9436463+02:00",
- "cardNumber": "XXXXXXXXXXXX5401",
- "cardExpiry": "1220",
- "brand": "Maestro",
- "cardIssuer": "MAESTRO",
- "transactionType": "SELL",
- "currency": "EUR",
- "amount": 1.5,
- "responseCode": "0",
- "responseText": "OK",
- "cvm": 3
}
}
}, - "Moment": "2020-06-29T17:45:40.505Z"
}
]
}starts a sign request
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
| cbTerminalID | string <= 1023 characters Default: "undefined" The unique identification of the input-station/terminal within a cash-register/pos-system identified by |
| cbReceiptReference required | string <= 1023 characters Default: "undefined" Reference number send by the cash register. This value must be a unique string/receipt number related to the calling cash register. This string/receipt number is a unique primary key of the dataset of the cash register. |
| cbReceiptMoment required | string <date-time> moment at which the receipt was create by the cash register, must be provided in UTC. |
required | Array of objects (ChargeItem) list of line items related to services and products |
required | Array of objects (PayItem) list of line items related to payments |
| ftCashBoxID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the cash register |
| ftPosSystemID | string <uuid> Default: "00000000-0000-0000-0000-000000000000" identification of the used software of the cash register |
| ftReceiptCase | integer <uint64> Default: 0 Type of business according to fiskaltrust reference. for detailed definition goto https://docs.fiskaltrust.eu !TODO! this is relevant for fiskaltrust middleware processing and is a country specific mapping. as fallback when not specified, a cash register business case at the point-of-sale is used. |
(string or null) or object optional gives additional details for defined type of business related to fiskaltrust reference. for detailed definition goto https://docs.fiskaltrust.eu !TODO! | |
| ftQueueID | string or null <uuid> Default: null optional routing instruction to identify a specific queue behind a load balancer or in other usecases |
| cbPreviousReceiptReference | string or null <= 1023 characters Default: null optional Reference |
(integer or null) or (number or null) Default: null optional total receipt amount, including value added taxes (=gross receipt amount) given to avoid calculation and rounding differences. systems which are using net amounts as central calculation should alsways use this property. if not provided, the sum of | |
(string or null) or object Default: null optional Identification of the user, who creates the receipt. | |
(string or null) or object Default: null optional Identification of the area/section/field, in which the receipt is created. e.g. Table number of a restaurant business; a department of a commercial establishment; the vehicle of a taxi company | |
(string or null) or object Default: null optional Identification of the consumer, for whom the receipt is created. e.g. Email address, phone number, personal tax number | |
(string or null) or object Default: null optional Settlement identification where this receipt will be added. e.g. shift number or day of operation | |
| Currency | string (CurrencyEnum) Default: "EUR" Enum: "EUR" "CHF" "CZK" "HUF" "BAM" "DKK" "RON" "NOK" "PLN" "RSD" "SEK" "UAH" "USD" "AED" "AFN" "ALL" "AMD" "ANG" "AOA" "ARS" "AUD" "AWG" "AZN" "BBD" "BDT" "BGN" "BHD" "BIF" "BMD" "BND" "BOB" "BOV" "BRL" "BSD" "BTN" "BWP" "BYN" "BZD" "CAD" "CDF" "CHE" "CHW" "CLF" "CLP" "CNY" "COP" "COU" "CRC" "CUP" "CVE" "DJF" "DOP" "DZD" "EGP" "ERN" "ETB" "FJD" "FKP" "GBP" "GEL" "GHS" "GIP" "GMD" "GNF" "GTQ" "GYD" "HKD" "HNL" "HTG" "IDR" "ILS" "INR" "IQD" "IRR" "ISK" "JMD" "JOD" "JPY" "KES" "KGS" "KHR" "KMF" "KPW" "KRW" "KWD" "KYD" "KZT" "LAK" "LBP" "LKR" "LRD" "LSL" "LYD" "MAD" "MDL" "MGA" "MKD" "MMK" "MNT" "MOP" "MRU" "MUR" "MVR" "MWK" "MXN" "MXV" "MYR" "MZN" "NAD" "NGN" "NIO" "NPR" "NZD" "OMR" "PAB" "PEN" "PGK" "PHP" "PKR" "PYG" "QAR" "RUB" "RWF" "SAR" "SBD" "SCR" "SDG" "SGD" "SHP" "SLE" "SLL" "SOS" "SRD" "SSP" "STN" "SVC" "SYP" "SZL" "THB" "TJS" "TMT" "TND" "TOP" "TRY" "TTD" "TWD" "TZS" "UGX" "USN" "UYI" "UYU" "UYW" "UZS" "VED" "VES" "VND" "VUV" "WST" "XAF" "XAG" "XAU" "XBA" "XBB" "XBC" "XBD" "XCD" "XDR" "XOF" "XPD" "XPF" "XPT" "XSU" "XTS" "XUA" "XXX" "YER" "ZAR" "ZMW" "ZWL" used as currency code for money numbers. along ISO 4217 (https://en.wikipedia.org/wiki/ISO_4217) |
| DecimalPrecisionMultiplier | integer <int32> (DecimalPrecisionMultiplierEnum) Default: 1 Enum: 1 100 10000 1000000 100000000 is used as multiplier for decimal numbers. when value 1 is used, revlevant numbers are interpreted as floating-point numbers. for all other values, relevant numbers are interpreted as integer and need to be devided by the Multiplier to get the decimal representation. |
{- "cbTerminalID": "undefined",
- "cbReceiptReference": "undefined",
- "cbReceiptMoment": "2020-06-29T17:45:40.505Z",
- "cbChargeItems": [
- {
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "VATRate": 0,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "VATAmount": null,
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "ProductGroup": null,
- "ProductNumber": null,
- "ProductBarcode": null,
- "Unit": null,
- "UnitQuantity": null,
- "UnitPrice": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
], - "cbPayItems": [
- {
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "MoneyGroup": null,
- "MoneyNumber": null,
- "MoneyBarcode": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
], - "ftCashBoxID": "00000000-0000-0000-0000-000000000000",
- "ftPosSystemID": "00000000-0000-0000-0000-000000000000",
- "ftReceiptCase": 0,
- "ftReceiptCaseData": "string",
- "ftQueueID": null,
- "cbPreviousReceiptReference": null,
- "cbReceiptAmount": null,
- "cbUser": null,
- "cbArea": null,
- "cbCustomer": null,
- "cbSettlement": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}{- "status": 100,
- "title": "string",
- "detail": "string",
- "instance": "string",
- "code": "string",
- "errors": [
- {
- "detail": "string",
- "pointer": "string",
- "parameter": "string",
- "header": "string",
- "code": "string"
}
]
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get state of sign request
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
[- {
- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string",
- "QueueItemID": null
}
]get result of sign request and purges it from queue
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
{- "ftQueueID": "00000000-0000-0000-0000-000000000000",
- "ftQueueItemID": "00000000-0000-0000-0000-000000000000",
- "ftQueueRow": 0,
- "ftCashBoxIdentification": "undefined",
- "ftReceiptIdentification": "ft0#",
- "ftReceiptMoment": "2020-06-29T17:45:40.505Z",
- "ftSignatures": [
- {
- "ftSignatureItemID": null,
- "ftSignatureFormat": 0,
- "ftSignatureType": 0,
- "Caption": null,
- "Data": "string"
}
], - "ftState": 0,
- "ftStateData": "string",
- "ftCashBoxID": "00000000-0000-0000-0000-000000000000",
- "cbTerminalID": "undefined",
- "cbReceiptReference": "undefined",
- "ftReceiptHeader": [
- "string"
], - "ftChargeItems": [
- {
- "ftChargeItemID": null,
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "VATRate": 0,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "VATAmount": null,
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "ProductGroup": null,
- "ProductNumber": null,
- "ProductBarcode": null,
- "Unit": null,
- "UnitQuantity": null,
- "UnitPrice": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
], - "ftChargeLines": [
- "string"
], - "ftPayItems": [
- {
- "ftPayItemID": null,
- "Quantity": 1,
- "Description": null,
- "Amount": 0,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "Moment": "2020-06-29T17:45:40.505Z",
- "Position": 0,
- "AccountNumber": null,
- "CostCenter": null,
- "MoneyGroup": null,
- "MoneyNumber": null,
- "MoneyBarcode": null,
- "Currency": "EUR",
- "DecimalPrecisionMultiplier": 1
}
], - "ftPayLines": [
- "string"
], - "ftReceiptFooter": [
- "string"
]
}execute a issue call end-to-end publish a digital receipt
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-possystem-id | any (x-possystem-id) identifies the calling possystem #TODO |
required | object (ReceiptRequest_1) The cash register transfers the data of an entire receipt request to the fiskaltrust.Middleware using the ReceiptRequest data structure. |
required | object (ReceiptResponse_1) The fiskaltrust.Middleware sends back the processed data to the cash register through the receipt response. |
{- "ReceiptRequest": {
- "ftCashBoxID": "string",
- "ftQueueID": "string",
- "ftPosSystemId": "string",
- "cbTerminalID": "string",
- "cbReceiptReference": "string",
- "cbReceiptMoment": "2019-08-24T14:15:22Z",
- "cbChargeItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "vatRate": 0.1,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "vatAmount": 0.1,
- "accountNumber": "string",
- "costCenter": "string",
- "productGroup": "string",
- "productNumber": "string",
- "productBarcode": "string",
- "unit": "string",
- "unitQuantity": 0.1,
- "unitPrice": 0.1,
- "moment": "2019-08-24T14:15:22Z"
}
], - "cbPayItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "accountNumber": "string",
- "costCenter": "string",
- "moneyGroup": "string",
- "moneyNumber": "string",
- "moment": "2019-08-24T14:15:22Z"
}
], - "ftReceiptCase": 0,
- "ftReceiptCaseData": "string",
- "cbReceiptAmount": 0.1,
- "cbUser": "string",
- "cbArea": "string",
- "cbCustomer": "string",
- "cbSettlement": "string",
- "cbPreviousReceiptReference": "string"
}, - "ReceiptResponse": {
- "ftCashBoxID": "string",
- "ftQueueID": "string",
- "ftQueueItemID": "string",
- "ftQueueRow": 0,
- "cbTerminalID": "string",
- "cbReceiptReference": "string",
- "ftCashBoxIdentification": "string",
- "ftReceiptIdentification": "string",
- "ftReceiptMoment": "2019-08-24T14:15:22Z",
- "ftReceiptHeader": [
- "string"
], - "ftChargeItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "vatRate": 0.1,
- "ftChargeItemCase": 0,
- "ftChargeItemCaseData": "string",
- "vatAmount": 0.1,
- "accountNumber": "string",
- "costCenter": "string",
- "productGroup": "string",
- "productNumber": "string",
- "productBarcode": "string",
- "unit": "string",
- "unitQuantity": 0.1,
- "unitPrice": 0.1,
- "moment": "2019-08-24T14:15:22Z"
}
], - "ftChargeLines": [
- "string"
], - "ftPayItems": [
- {
- "position": 0,
- "quantity": 0.1,
- "description": "string",
- "amount": 0.1,
- "ftPayItemCase": 0,
- "ftPayItemCaseData": "string",
- "accountNumber": "string",
- "costCenter": "string",
- "moneyGroup": "string",
- "moneyNumber": "string",
- "moment": "2019-08-24T14:15:22Z"
}
], - "ftPayLines": [
- "string"
], - "ftSignatures": [
- {
- "ftSignatureFormat": 0,
- "ftSignatureType": 0,
- "caption": "string",
- "data": "string"
}
], - "ftReceiptFooter": [
- "string"
], - "ftState": 0,
- "ftStateData": "string"
}
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}execute a issue call end-to-end
| QueueId required | string <uuid> |
| QueueItemId required | string <uuid> |
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-operation-callback-finalized | any (x-operation-callback-finalized) single callback setting for current operation, executed once the operation is in final state, |
| x-operation-callback-state | any (x-operation-callback-state) single state callback setting for current operation, executed each time when a status change occures |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| Action required | string (IssueUpdateActionEnum) |
{- "Action": "accept"
}{- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string"
}get state of sign request
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) terminal identification |
[- {
- "OperationID": "5df88c20-350a-4721-80c0-dbff74de4240",
- "QueueID": null,
- "State": "done",
- "StateMessage": null,
- "StateData": "string",
- "QueueItemID": null
}
]get result of issue request and purges it from queue/processor
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
{- "ftQueueID": "fb6ee7af-f98e-4d5a-891b-ff24d7313836",
- "ftQueueItemID": "92273d5f-5d3a-4415-bfc8-f7895ceaecf6",
- "DocumentContentType": "string"
}TBD
| QueueId required | string <uuid> |
| QueueItemId required | string <uuid> |
| Timeout | number <int> Default: 15 |
{ }TBD TEST
| QueueId required | string <uuid> |
| QueueItemId required | string <uuid> |
| Timeout | number <int> Default: 15 |
{ }| QueueId required | string <uuid> |
| StorageType required | string (StorageTypeEnum) Enum: "OperationItem" "OperationStateJournal" "PayItem" "ChargeItem" "QueueItem" "IssueItem" "ActionJournal" "ReceiptJournal" |
| Id required | string <uuid> |
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| QueueId required | string <uuid> |
| StorageType required | string (StorageTypeEnum) Enum: "OperationItem" "OperationStateJournal" "PayItem" "ChargeItem" "QueueItem" "IssueItem" "ActionJournal" "ReceiptJournal" |
| x-operation-id required | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
| x-operation-id | any (x-operation-id) operation identification, for implementation of idempotnency, to detect multiple calls for same operations related to communicatio issues or communication network switch. calls or messages with same OperationId schould end up in only one action. |
| x-operation-lifetime | any (x-operation-lifetime) operation lifetime, in ms Lifetime of the operation/message to be accepted by the receiver in ms. Timeout=NAK, Timeout happens after Lifetime+BusSLA. |
| x-terminal-id | any (x-terminal-id) identifies the terminal and overwrites also TerminalId in ReceiptRequest, if given |
use to get credentials for initial setup
| Pin | string <= 1023 characters |
{- "Pin": "string"
}{- "CashBoxID": "604a88e9-9153-4ab6-9da8-5c8e2b6a2f6b",
- "AccessToken": "string"
}