Con il DocumentType AuditLog, è ora possibile registrare eventi non transazionali (ad esempio, accessi degli utenti o l’apertura del cassetto della cassa) e farli firmare tramite l’endpoint standard, proprio come le normali ricevute.
1. Nuovo tipo di documento (DocumentType)
L’ DocumentType enum ora include la seguente opzione per la registrazione di eventi verificabili:
- AuditLog (1002)
2. Nuove proprietà nel modello del documento
Quando si imposta il documentType su AuditLog, è necessario utilizzare le seguenti nuove proprietà nell’ Document :
| Proprietà | Tipo | Descrizione |
|---|---|---|
| AuditLogEntryType | Enum LogEntryType | (Obbligatorio) Definisce il tipo di evento di audit. Un elenco completo è disponibile nella sezione successiva. |
| importo | decimale? | (Facoltativo) Valore monetario associato alla voce di registro, ad esempio l’importo di una discrepanza di cassa. |
| identificatore | string | (Facoltativo) Una stringa aggiuntiva a scopo identificativo o per fornire ulteriori informazioni contestuali, ad esempio per indicare quale cassetto della cassa sia stato aperto. |
3. Eventi disponibili AuditLogEntryTypes
Eventi relativi ai documenti
- documentReprintOther
- documentSuspend
- documentResume
- documentTrainingModeOn
- documentModalitàFormazioneDisattivata
- documentoTipoVendite
- documentoTipoReso
- documentoTipoProforma
- Tipo di documento: Consegna
- Tipo di documento: Formazione
- tipo_documento_Prelievo
- Tipo di documento: Pagamento
- tipo_documento_versamento
- tipo_documento_saldo_iniziale
- tipo_documento_ricevuta_nulla
- tipo_documento_fattura
- tipoDocumentoAltro
- tipoDocumentoAnnullato
- tipoDocumentoOrdineALungoTermine
- tipoDocumentoConfermaPagamento
- tipoDocumentoOrdineCliente
- tipoDocumentoInventario
- tipoDocumentoAcquisto
- documentoRistampaOrdineALungoTermine
- documentoRistampaConfermaPagamento
- documentoStampaRicevuta
- Ristampa fattura
- duplicato della ricevuta
- documentoDuplicatoFattura
- documentoAnnullamentoOrdineA Lungo Termine
- tracciare un ordine a lungo termine non stampato
- documentoAnnullamentoRiga
- documentoAnnullamentoRiga
- documentoAnnullareDocumento
- aggiornamento pagamento documento
- aggiornamento documento ordine a lungo termine
- aggiornamentoRigaDocumento
- aggiornamentoTabellaDocumento
Eventi hardware e utente
- apertura cassetto
- chiusura cassetto
- stampante non disponibile
- stampante disponibile
- userLogin
- userLogout
- modifica dei privilegi di accesso
Eventi relativi alle applicazioni e al sistema
- avvio dell'applicazione
- spegnimento dell'applicazione
- aggiornamento dell'applicazione
- aggiornamentoMinoreDell'applicazione
- aggiornamento del middleware fiscale dell'applicazione
- modalità di emergenza dell'applicazione attivata
- disattivazione della modalità di emergenza dell'applicazione
- Inizializzazione dell'applicazione
- applicazioneAggiungi postazione di lavoro
- applicazioneElimina postazione di lavoro
- modalitàOfflineAttiva
- applicazioneModalitàOfflineDisattivata
Eventi relativi ai dati anagrafici e all’integrità dei dati
- Modifica del prezzo di un elemento dei dati anagrafici
- ricercaPrezzoElementoDatiAnagrafici
- Aggiornamento dell'azienda per un elemento dei dati anagrafici
- trasferimento di proprietà
- dataIntegrityBackupDatabase
- ripristino integrità dati del database
- integrità-dei-dati-eliminazione-database
- integrità-dei-dati-eliminazione-registro-eventi
- integrità dei dati – recupero dati
- integritàDatiInoltroDati
- dataIntegrityConsolidamentoCompletato
- Errore di integrità dei dati
- Modifica sequenza dati
- Errore nella sequenza dei dati
- importazione dati esterni
- Esportazione dati contabili
- esportazione dati generica
Eventi fiscali e di rendicontazione
- giorno di chiusura del periodo fiscale
- Mese di chiusura del periodo fiscale
- Anno di chiusura del periodo fiscale
- giorno di chiusura del rendiconto fiscale
- Relazione fiscale - Relazione dell'utente
- errore-fiscale-ricevuto-dalle-autorità
- Anno di archiviazione fiscale
- Archivio fiscale intermedio
- Esportazione del giornale contabile
- chiave di aggiornamento della firma fiscale
- revisione contabile
- trasferimento del file di audit fiscale
Generale
- altro (tipo generico per eventi non inclusi nell’elenco)
4. Invio di un documento AuditLog
I documenti AuditLog vengono inviati allo stesso endpoint di tutti gli altri documenti transazionali:
POST /api/v1/transactions/storeDocument
Esempio di JSON payload
{
"ModelVersion": "1.6.1",
"UniqueClientId": "2a296a14-f644-4f3f-9ea2-d3f00a3b587c",
"UniqueCashRegisterId": "005-006",
"FiscalModuleVersion": "1.10.2.0",
"FiscalCountryModuleVersion": "1.0.21",
"SoftwareName": "x x x",
"AdditionalFields": {},
"AutomaticVatCalculation": 0,
"AuditLogEntryType": "userLogin",
"DocumentGuid": "a1a1a1a1-b2b2-c3c3-d4d4-e5e5e5e5e5e5",
"DocumentId": "AUD-LOGIN-001",
"CreateDate": "2025-08-08T12:59:10+02:00",
"BookDate": "2025-08-08T12:59:10+02:00",
"DocumentNumber": "AUD-LOGIN-001",
"IsTraining": true,
"DocumentType": "[1002] = AuditLog",
"User": {
"Id": "Armir A",
"Caption": "Armir A"
},
"AllocationGroups": [],
"PositionCount": 0,
"FiscalDocumentNumber": 8,
"FiscalDocumentRevision": 1,
"FiscalDocumentStartTime": 1754657874,
"Positions": [],
"Payments": [],
"AdditionalHeader": [],
"AdditionalFooter": [],
"FiscalAdditionalFields": {}
}Esempio di risposta
La risposta contiene i dati di fiscalizzazione relativi al Paese specifico, come illustrato nell’esempio seguente per la Germania, che include i dettagli relativi al TSE (Technical Security Equipment).
{
"FiscalCountry": "[0] = Germany",
"FiscalisationDocumentNumber": 8,
"FiscalDocumentNumber": "8",
"FiscalDocumentStartTime": 1754657874,
"ProcessStartTime": 0,
"ErrorDescription": null,
"CashRegisterId": "005-006",
"Signature": "wn0cwKYhCes0dy4gEfjB7aAQF+iHXsyX3E6u9bBsJtJZTMtOoJ4IMDUYNJzZyykmZdrEMiT3YqtBvG7J/3sNzw==",
"UserMessage": null,
"PrintMessage": "***Test***",
"RequestTime": "2025-08-08T12:58:47.310674+00:00",
"RequestCompletionTime": "2025-08-08T12:58:47.6602076+00:00",
"QrCode": "V0;005-006;SonstigerVorgang;AVSonstige;8;78;2025-08-08T12:57:54.000Z;2025-08-08T12:58:46.000Z;ecdsa-plain-SHA256;unixTime;wn0cwKYhCes0dy4gEfjB7aAQF+iHXsyX3E6u9bBsJtJZTMtOoJ4IMDUYNJzZyykmZdrEMiT3YqtBvG7J/3sNzw==;BFG6opUQnbSdHq76J8py+zy5iw9zeCdwgRkhQJIkDKz38NrDiAiFvNwKf4NRRyzyRXGZB1vuFmqWJLr+gi6GKIg=",
"PrintingFields": {
"NOT IMPLEMENTED": "NOT IMPLEMENTED"
},
"AdditionalFields": {
"QrCodeDataString": "V0;005-006;SonstigerVorgang;AVSonstige;8;78;2025-08-08T12:57:54.000Z;2025-08-08T12:58:46.000Z;ecdsa-plain-SHA256;unixTime;wn0cwKYhCes0dy4gEfjB7aAQF+iHXsyX3E6u9bBsJtJZTMtOoJ4IMDUYNJzZyykmZdrEMiT3YqtBvG7J/3sNzw==;BFG6opUQnbSdHq76J8py+zy5iw9zeCdwgRkhQJIkDKz38NrDiAiFvNwKf4NRRyzyRXGZB1vuFmqWJLr+gi6GKIg=",
"TransactionStartTime": 1754657874,
"TransactionEndTime": 1754657926,
"ProcessData": "AVSonstige",
"ProcessType": "SonstigerVorgang",
"TseSerial": "2b56a7b994fdb3be51f973b311db0a4494d88dc2d63efdc8fb6c2f1f3df1b696",
"TseTimeFormat": "unixTime",
"TseHashAlgorithm": "ecdsa-plain-SHA256",
"TsePublicKey": "BFG6opUQnbSdHq76J8py+zy5iw9zeCdwgRkhQJIkDKz38NrDiAiFvNwKf4NRRyzyRXGZB1vuFmqWJLr+gi6GKIg=",
"TseSignatureCounter": 78,
"TseCertificate": "MIID0jCCA1mgAwIBAgIRAOxMaXsnzvjB/LzUZ7EN3ogwCgYIKoZIzj0EAwMwVTELMAkGA1UEBhMCQVQxFTATBgNVBAoTDGZpc2thbHkgR21iSDEjMCEGA1UEAxMaVEVTVC1GSVNLQUxZLVRTRS1TVUItQ0EtMDExCjAIBgNVBAUTATEwHhcNMjUwNjI3MDAwMjM0WhcNMzMwNjI3MjM1OTU5WjCB2TELMAkGA1UEBhMCQVQxFTATBgNVBAoTDGZpc2thbHkgR21iSDFOMEwGA1UEAwxFVEVTVC1CU0ktRFNaLUNDLTExNTNfQlNJLURTWi1DQy0xMTMwX0M0RjlFNkVDNkUxRTRENjg5NTlDNjFEREFDNjU0QTdDMUkwRwYDVQQFE0AyYjU2YTdiOTk0ZmRiM2JlNTFmOTczYjMxMWRiMGE0NDk0ZDg4ZGMyZDYzZWZkYzhmYjZjMmYxZjNkZjFiNjk2MRgwFgYDVQQuEw9CU0ktRFNaLUNDLTExNTMwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARRuqKVEJ20nR6u+ifKcvs8uYsPc3gncIEZIUCSJAys9/Daw4gIhbzcCn+DUUcs8kVxmQdb7hZqliS6/oIuhiiIo4IBgzCCAX8wDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAU4lSqfYaZDlZy+rtN24iJKVDaxzYwRAYIKwYBBQUHAQEEODA2MDQGCCsGAQUFBzAChihodHRwczovL2thc3NlbnNpY2h2LXRlc3QtcGtpLmZpc2thbHkuY29tMF4GA1UdHwRXMFUwU6BRoE+GTWh0dHA6Ly9rYXNzZW5zaWNodi10ZXN0LXBraS5maXNrYWx5LmNvbS9jcmw/aXNzdWVyPVRFU1QtRklTS0FMWS1UU0UtU1VCLUNBLTAxMEcGA1UdEgRAMD6BEm9mZmljZUBmaXNrYWx5LmNvbYYoaHR0cHM6Ly9rYXNzZW5zaWNodi10ZXN0LXBraS5maXNrYWx5LmNvbTBPBgNVHSAESDBGMEQGCisGAQQBg7YgAQMwNjA0BggrBgEFBQcCARYoaHR0cHM6Ly9rYXNzZW5zaWNodi10ZXN0LXBraS5maXNrYWx5LmNvbTAKBggqhkjOPQQDAwNnADBkAjAanoJFOYfYD6PN8k2WfLLiskBHuGiYKkLrTJWlvwzLpMU+7UeZT85eizm5BLo6OWwCMBsv+mErzb9grV/kHJsu9tJcIqhWXJSdKabAc4J6mTtiCFMSUikJgwO9NTpTdd1KEg==",
"FiscalDocumentRevision": 2
}
}
Questo articolo è stato tradotto automaticamente.
Commenti
0 commenti
Accedi per aggiungere un commento.