У овом одељку ћете научити како фискални систем генерише офлајн потпис (неуспех TSE уређаја) и која се података у том случају враћају преко FiscalClient.
Понекад комуникација са TSE / TSS враћа поруку о грешци (неисправност хардвера, cloud-tse се не може повезати са cloud-csp, ...). У том случају касир наставља са радом као и обично, фискални систем аутоматски генерише офлајн потписе и брине се о аутоматском поновном потписивању потврде чим TSE / TSS поново буде доступан.
Постоји неколико могућности како фискални систем треба да реагује на квар TSE уређаја:
- неуспех TSE само при createDocument
- неуспех TSE само при storeDocument/cancelDocument
- tse неуспех при createDocument и storeDocument/cancelDocument
У свим случајевима фискални систем обрађује грешку TSE за POS систем и потребно је подржати само различити фискални одговор.
Неуспех TSE при креирању документа
У овом случају је само отварање трансакције на TSE-у (createDocument) неуспело.
Фискални систем враћа посебан фискални одговор:
{
"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,
}
}Процес за POS систем је исти као и обично. Само пошаљите сачуване вредности фискалног одговора ("FiscalDocumentNumber": "-99", "FiscalDocumentStartTime": {као што је враћено}, "FiscalDocumentRevision": 0) приликом storeDocument. Сам фискални систем се брине о аутоматском креирању трансакције пре складиштења документа (потписивања) и одговориће уобичајеним фискалним одговором приликом storeDocument.
Tse неуспех при storeDocument/cancelDocument
У овом случају фискални систем ће вратити фискални одговор са грешком:
{
"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,
}
}На крају TSE неуспеха, фискални систем аутоматски поново потписује све рачуне генерисане и сачуване током прекида. POS систем у овом тренутку не мора ништа да ради.
Tse неуспех при createDocument и storeDocument/cancelDocument
У случају ових TSE грешака, поступак слања података пореском систему остаје исти, ПОС софтвер не мора да се прилагођава овој ситуацији, разлика је само у пореском одговору у односу на уобичајени одговор за потпис.
{
"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,
}
}На крају квара TSE, фискални систем аутоматски поново потписује све рачуне генерисане и сачуване током прекида. POS систем у овом тренутку не мора ништа да ради.
Овај чланак је аутоматски преведен.
Komentari
Komentara: 0
Molimo prijavi se da biste komentarisali.