Ebben a szakaszban megismerheti, hogyan generál a pénzügyi rendszer offline aláírást (a TSE-eszköz meghibásodása esetén), és milyen adatokat ad vissza ebben az esetben a FiscalClient.
Előfordulhat, hogy a TSE/TSS-szel való kommunikáció során hibaüzenet érkezik (hardverhiba, a cloud-tse nem tud csatlakozni a cloud-csp-hez, stb.). Ebben az esetben folytassa a pénztári folyamatot a szokásos módon; a pénzügyi rendszer automatikusan létrehozza az offline aláírásokat, és gondoskodik a nyugta automatikus újbóli aláírásáról, amint a TSE/TSS újra elérhetővé válik.
Számos lehetőség áll a pénzügyi rendszer rendelkezésére a TSE meghibásodására való reagáláshoz:
- a TSE-meghibásodás csak a createDocument művelet során következik be
- TSE-hiba kizárólag a storeDocument/cancelDocument művelet során
- TSE-hiba a createDocument és a storeDocument/cancelDocument műveletek során
Minden esetben a pénzügyi rendszer kezeli a TSE-meghibásodást a POS-rendszer számára, és csak a különböző pénzügyi válaszokat kell támogatni.
TSE-hiba a createDocument műveletnél
Ebben az esetben csak a tranzakció megnyitása a TSE-n sikertelen (createDocument).
A pénzügyi rendszer egy speciális pénzügyi választ ad vissza:
{
"FiscalCountry": 0,
"FiscalDocumentNumber": "-99",
"FiscalDocumentStartTime": 0,
"ProcessStartTime": 0,
"ErrorDescription": "Tse connection error.",
"CashRegisterId":"3656-1",
"Signature": "",
"UserMessage": null,
"PrintMessage": "",
"RequestTime": "2021-09-07T07:07:09.5139728+02:00",
"RequestCompletionTime": "2021-09-07T07:07:09.7981746+02:00",
"QrCode": "",
"RetailForceReceiptId": "0wxyz0001",
"AdditionalFields":
{
"QrCodeDataString": "", -- empty
"TransactionStartTime": 0, -- zero
"TransactionEndTime": 1630991229,
"ProcessData": "", -- empty
"ProcessType": "Kassenbeleg-V1",
"TseSerial": "7eeda69cb6fa8e78970150675ad03716fad85394447d6947d7a863b6cb6e5b3c",
"TseTimeFormat": "unixTime",
"TseHashAlgorithm": "ecdsa-plain-SHA256",
"TsePublicKey": "", -- empty
"TseSignatureCounter": 0, -- zero
"TseCertificate": "...", -- certificate data
"FiscalDocumentRevision": 0,
}
}A POS-rendszer számára a folyamat a szokásos módon zajlik. Egyszerűen küldje el a fiscalResponse tárolt értékeit („fiscalDocumentNumber”: „-99”, „fiscalDocumentStartTime”: {ahogyan visszaadódott}, „fiscalDocumentRevision”: 0) a storeDocument művelet során. A pénzügyi rendszer maga gondoskodik a tranzakció automatikus létrehozásáról a dokumentum tárolása (aláírása) előtt, és a storeDocument művelet során szokásos pénzügyi válasszal fog válaszolni.
TSE tse storeDocument/cancelDocument műveletnél
Ebben az esetben a fiskális rendszer hibaüzenetet küld vissza:
{
"FiscalCountry": 0,
"FiscalDocumentNumber": "0",
"FiscalDocumentStartTime": 0,
"ProcessStartTime": 0,
"ErrorDescription": "Tse connection error.",
"CashRegisterId": "3656-1",
"Signature": "Tse not connected.",
"UserMessage": "Tse not connected.",
"PrintMessage": "TSE ausgefallen.",
"RequestTime": "2021-09-07T07:07:09.5139728+02:00",
"RequestCompletionTime ":"2021-09-07T07:07:09.7981746+02:00",
"QrCode": "",
"RetailForceReceiptId": "0wxyz0001",
"AdditionalFields":
{
"QrCodeDataString": "", -- empty
"TransactionStartTime": 0, -- zero
"TransactionEndTime": 1630991229,
"ProcessData": "", -- empty
"ProcessType": "Kassenbeleg-V1",
"TseSerial": "7eeda69cb6fa8e78970150675ad03716fad85394447d6947d7a863b6cb6e5b3c",
"TseTimeFormat": "unixTime",
"TseHashAlgorithm": "ecdsa-plain-SHA256",
"TsePublicKey": "", -- empty
"TseSignatureCounter": 0, -- zero
"TseCertificate": "...", -- certificate data
"FiscalDocumentRevision": 0,
}
}A TSE-meghibásodás végén a pénzügyi rendszer automatikusan újra aláírja az üzemszünet alatt generált és tárolt összes nyugtát. A POS-rendszernek ebben a szakaszban nem kell semmit tennie.
TSE-hiba a createDocument és a storeDocument/cancelDocument műveleteknél
Ezekben a TSE-meghibásodások esetén az adatoknak a pénzügyi rendszerbe történő elküldésének folyamata változatlan marad, a POS-szoftvert nem kell ehhez a helyzethez igazítani, csupán a pénzügyi válasz különbözik a szokásos aláírási választól.
{
"FiscalCountry": 0,
"FiscalDocumentNumber": "0",
"FiscalDocumentStartTime": 0,
"ProcessStartTime": 0,
"ErrorDescription": "Tse connection error.",
"CashRegisterId": "3656-1",
"Signature": "Tse not connected.",
"UserMessage": "Tse not connected.",
"PrintMessage": "TSE ausgefallen.",
"RequestTime": "2021-09-07T07:07:09.5139728+02:00",
"RequestCompletionTime": "2021-09-07T07:07:09.7981746+02:00",
"QrCode": "",
"RetailForceReceiptId": "0wxyz0001",
"AdditionalFields":
{
"QrCodeDataString": "", -- empty
"TransactionStartTime": 0, -- zero
"TransactionEndTime": 1630991229,
"ProcessData": "", -- empty
"ProcessType": "Kassenbeleg-V1",
"TseSerial": "7eeda69cb6fa8e78970150675ad03716fad85394447d6947d7a863b6cb6e5b3c",
"TseTimeFormat": "unixTime",
"TseHashAlgorithm": "ecdsa-plain-SHA256",
"TsePublicKey": "", -- empty
"TseSignatureCounter": 0, -- zero
"TseCertificate": "...", -- certificate data
"FiscalDocumentRevision": 0,
}
}A TSE-meghibásodás végén a pénzügyi rendszer automatikusan újra aláírja az üzemszünet alatt generált és tárolt összes nyugtát. A POS-rendszernek ebben a szakaszban semmit sem kell tennie.
Ezt a cikket automatikusan lefordították.
Hozzászólások
0 hozzászólás
Hozzászólások írásához jelentkezzen be.