U ovom odjeljku naučit ćete kako fiskalni sustav generira offline potpis (kvar TSE uređaja) i koja se podaci u tom slučaju vraćaju od strane FiscalClienta.
Ponekad komunikacija s TSE / TSS-om vrati poruku o pogrešci (kvar hardvera, cloud-TSE se ne može povezati s cloud-CSP-om, ...). U tom slučaju nastavite proces na blagajni kao i obično, fiskalni sustav automatski stvara offline potpise i brine se o automatskom ponovnom potpisivanju računa čim TSE / TSS ponovno bude dostupan.
Postoji nekoliko mogućnosti na koje fiskalni sustav mora reagirati u slučaju pogreške TSE-a:
- neuspjeh TSE-a samo pri izradi dokumenta
- neuspjeh TSE-a samo pri pohrani dokumenta/otkazivanju dokumenta
- tse kvar pri izradi dokumenta i pohrani/otkazivanju dokumenta
U svim slučajevima fiskalni sustav obrađuje pogrešku TSE za POS sustav i potrebno je podržati samo različiti fiskalni odgovor.
Neuspjeh TSE pri izradi dokumenta
U ovom slučaju samo je otvaranje transakcije na TSE-u (createDocument) neuspjelo.
Fiskalni sustav vraća poseban fiskalni odgovor:
{
"FiscalCountry":0,
"FiscalisationDocumentNumber": -99,
"FiscalisationDocumentRevision":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",
"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":"Tse not connected."
}
}
Postupak za POS sustav je isti kao i obično. Samo pošaljite spremljene vrijednosti fiskalnog odgovora (s brojem fiskalnog dokumenta za pogrešku TSE veze) pri pohrani dokumenta. Sam fiskalni sustav brine o automatskom stvaranju transakcije prije pohrane dokumenta (potpisivanja) i odgovorit će uobičajenim fiskalnim odgovorom pri pohrani dokumenta.
Tse pogreška pri pohrani/otkazivanju dokumenta
U tom slučaju fiskalni sustav će vratiti odgovor o neuspjehu:
{
"FiscalCountry":0,
"FiscalisationDocumentNumber":0,
"FiscalisationDocumentRevision":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",
"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":"Tse not connected."
}
}
Na kraju TSE pogreške, fiskalni sustav automatski ponovno potpisuje sve račune generirane i pohranjene tijekom prekida. POS sustav u tom trenutku ne mora ništa poduzeti.
Tse pogreška pri createDocument i storeDocument/cancelDocument
U slučaju ovih TSE pogrešaka, postupak slanja podataka fiskalnom sustavu ostaje isti, POS softver nije potrebno prilagođavati ovoj situaciji, jedino je fiskalni odgovor drugačiji od uobičajenog odgovora za potpisivanje.
{
"FiscalCountry":0,
"FiscalisationDocumentNumber":0,
"FiscalisationDocumentRevision":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",
"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":"Tse not connected."
}
}
Po završetku kvara TSE-a, fiskalni sustav automatski ponovno potpisuje sve račune generirane i pohranjene tijekom prekida. POS sustav u tom trenutku ne mora ništa poduzeti.
Ovaj je članak automatski preveden.
Komentari
0 komentara
Molimo Prijavite se kako bi ostavili komentar.