In questo articolo imparerete come interrogare le diverse proprietà dei paesi e anche come individuarle nel RetailForce Cloud. Alla fine dell’articolo troverete una spiegazione dei diversi elementi delle fiscalCountryProperties.
Al fine di illustrare le implementazioni necessarie per la vostra implementazione, sono state create le proprietà relative ai paesi (fiscalCountryProperties). Queste indicano quali parti dell’interfaccia complessiva devono essere implementate come minimo per ciascun paese.
Le proprietà del Paese sono disponibili a partire dalla versione V1.2.12 (ad eccezione del client, a partire dalla V1.2.13).
Interrogazione delle proprietà relative ai paesi nel Cloud
È possibile accedere alle proprietà dei paesi nel Portale Cloud al seguente link:
https://portal.retailforce.cloud/information/fiscal-country
Per accedere alle fiscalCountryProperties, è necessario aver effettuato l’accesso al portale.
Interrogazione delle proprietà nazionali sul client
È inoltre possibile interrogare le proprietà dei paesi tramite il programma. Ciò consente di reagire alle diverse proprietà dei paesi all’interno del programma di cassa.
Esempio: un tipo di documento non è consentito in un determinato paese e pertanto non è supportato.
Interrogazione tramite implementazione diretta (nuget)
Per interrogare tutte le proprietà nazionali esistenti di tutti i paesi, è possibile richiamare il seguente metodo:
List<IFiscalCountryProperties> TrustedFiscalModul.GetFiscalCountryPropertiesList()Interrogazione tramite client
Servizio REST
Nel servizio REST sono disponibili due endpoint per interrogare le proprietà relative ai paesi:
GET /api/v1/information/countryPropertiesQuesto metodo può essere utilizzato per interrogare le proprietà relative a un determinato paese.
/api/v1/information/client/{clientId}/countryPropertiesQuesto metodo può essere utilizzato per interrogare le proprietà relative a un client.
Client del servizio fiscale
Nel client del servizio fiscale (.NET Standard 2.0 e .NET Framework 2) sono disponibili i seguenti metodi per interrogare le proprietà relative al Paese.
FiscalCountryProperties GetFiscalCountryProperties(FiscalCountry fiscalCountry)Questo metodo può essere utilizzato per interrogare le proprietà relative a un determinato paese.
FiscalCountryProperties GetFiscalCountryProperties(Guid clientId)Questo metodo può essere utilizzato per interrogare le proprietà relative a un paese per un client.
fiscalCountryProperties – Descrizione
Le proprietà fiscalCountryProperties contengono dati di natura puramente informativa, nonché informazioni rilevanti ai fini dell’implementazione.
I dati informativi sono contrassegnati con la dicitura «INFO» nella colonna «Tipo». I dati di cui occorre tenere conto durante l’implementazione sono contrassegnati con la dicitura «RFI» (rilevanti per l’implementazione).
| fiscalCountryProperties | Tipo |
Descrizione |
| fiscalCountry | INFO |
indica il Paese corrispondente. Eseguendo una query GET su /api/v1/information/client/{clientId}/countryProperties per recuperare le fiscalCountryProperties, viene restituito il paese assegnato al cliente specifico. |
| countryModuleVersion | INFO |
Versione attuale del Trusted Fiscal Country Module all’interno del middleware (rilevante per i paesi in cui una specifica versione del software deve essere certificata; ad esempio, la Francia). |
| certificationType | INFO |
Specifica se, in un determinato Paese, è richiesta la certificazione di un componente di fiscalizzazione oppure quali elementi devono essere certificati. "mandatory" - La certificazione del sistema a monte (ad es. il registratore di cassa) è obbligatoria. In questo caso, il registratore di cassa deve essere sottoposto a un processo di certificazione o di approvazione. "miniPOS" – La certificazione è obbligatoria, ma è soddisfatta da una componente già certificata che può essere integrata nel RetailForce Middleware. "notNecessary" - Non è richiesta alcuna certificazione del sistema a monte. |
| fiscalLineInterface | RFI |
"true" - Nel rispettivo Paese, i dati devono essere inviati riga per riga, ad esempio a una stampante fiscale.
"false" - Interfaccia basata su documenti (nessuna stampa riga per riga).
|
| fiscalisationType | INFO |
Specifica il tipo di fiscalizzazione. "fiscalPrinter" - La fiscalizzazione si basa su una stampante fiscale certificata o su un sistema di registratore di cassa fiscale certificato.
"online" - Fiscalizzazione tramite i sistemi online delle autorità fiscali locali.
"signature" - Fiscalizzazione mediante la firma dei dati dello scontrino utilizzando un certificato digitale memorizzato nel servizio di fiscalizzazione.
"signatureWithOnline" - Fiscalizzazione mediante generazione di firme e trasmissione dei dati in tempo reale alle autorità fiscali.
|
| Ambienti supportati | RFI |
Specifica l'ambiente supportato: "local" - installazione locale del middleware fiscale (in locale sul sistema POS, sul server del punto vendita, ecc.)
"cloud" - il middleware fiscale è disponibile come servizio cloud ospitato all’indirizzo https://fiscalisation.retailforce.cloud/.
|
| Tipi di piattaforma supportati | RFI |
Specifica i sistemi operativi/le piattaforme supportate. "linux"
"windows"
"iOS"
"Android"
|
| Legislazione supportata | INFO |
Specifica i requisiti legali supportati e le relative versioni. Ad esempio, per la Grecia: «myDATA v1.x.x». |
| tipi di documenti fiscali | RFI |
Tipi di documenti che devono essere «fiscalizzati» nel rispettivo Paese. Ad esempio, devono essere elaborati dal componente hardware prescritto, firmati, ecc. I «documentTypes» elencati sotto «fiscalDocumentTypes» vengono elaborati automaticamente (ad es. firmati) nel rispettivo Paese dal servizio di fiscalizzazione in conformità con la normativa vigente. Tali tipi di documento DEVONO essere trasmessi al servizio di fiscalizzazione nel rispettivo Paese, a condizione che il sistema a monte («registratore di cassa») li supporti. |
| Tipi di documento supportati | RFI |
Elenco dei tipi di documento supportati in ciascun paese. Oltre ai "fiscalDocumentTypes", i tipi di documento elencati sotto "supportedDocumentTypes" POSSONO essere trasmessi al servizio di fiscalizzazione. Tali tipi di documento sono definiti «non fiscali», ovvero non sottoposti a fiscalizzazione (ad es. firmati). |
| tipi di documenti non supportati | RFI |
Elenco dei tipi di documento non supportati nel rispettivo paese. I «documentTypes» elencati sotto «notSupportedDocumentTypes» non possono essere trasmessi al servizio di fiscalizzazione nel rispettivo Paese. Le motivazioni possono essere l’impossibilità tecnica o specifiche normative/legislative del Paese. Se un “notSupportedDocumentType” viene inviato al servizio di fiscalizzazione, quest’ultimo risponderà con un messaggio di errore (“documentType non supportato!”). Il sistema a monte non dovrebbe consentire l’utilizzo di tali tipi di documento nel Paese in questione. |
| tipi di pagamento supportati | RFI |
Elenco dei metodi di pagamento supportati (accettati) nel rispettivo Paese. Tali metodi di pagamento possono essere utilizzati nel Paese in questione. Il sistema a monte deve esporre all’utente del punto cassa esclusivamente i metodi di pagamento supportati nel Paese di riferimento. |
| metodi di pagamento non supportati | RFI |
Elenco dei metodi di pagamento non supportati (o non consentiti) nel rispettivo Paese. Il sistema a monte deve escludere i metodi di pagamento non supportati nel rispettivo Paese. |
| overpaymentNotAllowed | RFI |
Elenco dei metodi di pagamento (PaymentTypes) per i quali non è consentito il pagamento in eccesso rispetto all’importo dovuto nel Paese in questione. Esempi: Totale dello scontrino = 38,50 EUR
Tali transazioni non sono consentite in alcuni paesi (ovvero, non possono essere trasmesse al sistema di fiscalizzazione). Ciò implica che gli importi dei pagamenti («payment.amount») devono sempre corrispondere al totale lordo delle voci («GrossValue» di tutte le «positions») e non è consentito trasferire importi di pagamento negativi. |
| tipi di transazioni commerciali supportati | RFI |
Elenco dei tipi di casi aziendali supportati in ciascun paese. Tali casi aziendali possono essere utilizzati nel rispettivo Paese, a differenza di notSupportedBusinessTransactionTypes. |
| notSupportedBusinessTransactionTypes | RFI |
Elenco dei tipi di transazioni aziendali non supportati (o non consentiti) nel rispettivo Paese. Tali casi aziendali non possono essere utilizzati nel rispettivo paese e devono essere soppressi dal sistema di origine e non trasmessi al servizio di fiscalizzazione. |
| supportedVatDefinitions | RFI |
Informazioni dettagliate sulle aliquote Vat supportate in ciascun paese. Questo array contiene le seguenti informazioni:
|
| companyIdentification | RFI |
Informazioni sugli identificativi aziendali da utilizzare nel rispettivo Paese. |
| visualizzazioneClienteObbligatoria | RFI |
"non obbligatorio" - La visualizzazione del cliente non è richiesta (nessun obbligo). "obbligatorio (no-RF)" - La visualizzazione sul display cliente è obbligatoria, ma non è gestita tramite il RetailForce Middleware; il controllo è effettuato automaticamente dal sistema di fiscalizzazione (ad es. dalla stampante fiscale). "obbligatorio (RF)" - L'utilizzo della visualizzazione per il cliente è obbligatorio e il controllo avviene tramite il RetailForce Middleware.
"non consentito" - L’impiego di un display cliente è vietato in questo Paese. |
| terminalSlaveSupported | RFI |
Specifica se i dispositivi di input devono essere registrati nel rispettivo Paese ("true" / "false"). I dispositivi di input non costituiscono sistemi di registrazione autonomi. Per ulteriori informazioni, si consiglia di consultare la sezione Architetture dei sistemi di registrazione elettronica (EAS). |
| auditLogMandatory | RFI |
"true" – nel rispettivo Paese vige l’obbligo di tenere un registro tecnico (audit log) (in questo caso incluso nella licenza RF).
"false" – non sussiste l’obbligo di tenere un registro tecnico (non incluso nella licenza).
|
| mustRecordDocumentReprint | RFI |
"true" – nel Paese in questione, la ristampa di un documento deve essere registrata obbligatoriamente.
"false" - La ristampa di un documento non deve essere registrata come obbligatoria. |
| reprintAllowedDomain | RFI |
"terminal" – Il documento può essere ristampato esclusivamente sullo stesso punto cassa su cui è stato emesso il documento originale. "store" - Le ristampe di un documento possono essere effettuate esclusivamente all’interno della stessa filiale/negozio in cui è stato emesso il documento originale.
"tutti" - La ristampa di un documento può essere effettuata su un altro registratore di cassa, nonché in un’altra filiale/negozio della stessa azienda.
|
| mustSendClosingPerDay | RFI |
"true" - È necessario generare una chiusura giornaliera (rapporto Z) una volta al giorno.
"false" - non è richiesta alcuna chiusura giornaliera. |
| maximumHourIntervalForClosing | RFI |
Indica l’intervallo di tempo trascorso dall’ultima chiusura giornaliera entro il quale deve essere eseguita la successiva chiusura giornaliera (ad es. entro 24 ore). Trascorso tale intervallo, il servizio di fiscalizzazione respinge ogni documento, ad eccezione della chiusura giornaliera ("documentType": "[99] = EndOfDay"), restituendo lo stato HTTP 400 fino a quando non viene memorizzata una chiusura giornaliera. Non si applica alcun limite prima della prima chiusura giornaliera. "-1" - non impostato. |
| returnAndSaleBehavior | RFI |
Specificare se le vendite e i resi possono essere registrati contemporaneamente su uno scontrino (documento). "oneReceiptAllowed" - consentito (vendite e resi possono essere riportati insieme su un’unica ricevuta).
"oneReceiptAllowedPerVatRate" - le vendite e i resi possono essere registrati su un’unica (la stessa) ricevuta, purché i totali lordi di tutte le aliquote Vat presenti sulla ricevuta abbiano lo stesso segno (tutti positivi o tutti negativi). "multiReceipt" - Le vendite e i resi devono essere registrati su ricevute diverse.
"NoReturnAllowed" – nel rispettivo Paese, l’elaborazione dei resi tramite il sistema di fiscalizzazione non è possibile. In tali Paesi, i resi vengono spesso gestiti tramite moduli speciali o analoghi presso l’ufficio contabilità. |
| returnDomainAllowed | RFI |
Dove è possibile restituire gli articoli acquistati? "terminal" - Gli articoli possono essere ritirati esclusivamente presso la stessa cassa (emissione del buono) presso la quale è stata effettuata la vendita originale. "store" - Gli articoli possono essere restituiti esclusivamente presso la stessa filiale/negozio (emissione dello scontrino) in cui è stata effettuata la vendita originaria. "tutti" - Gli articoli possono essere restituiti anche presso filiali diverse della stessa azienda. |
| returnReferenceBehavior | RFI |
Riferimento del documento per i resi "singolo" - in caso di resi, è possibile fare riferimento solo a UN unico documento precedente (documento di vendita dei servizi o dei beni restituiti).
"multiple" – in caso di resi, è possibile fare riferimento a più documenti precedenti (più ricevute di vendita qualora vengano restituiti più servizi o beni provenienti da più acquisti).
|
| printFiscalDocumentNumber | RFI |
Specifica se l’elemento «fiscalDocumentNumber» della «fiscalResponse» del Paese corrispondente deve essere stampato sui documenti.
|
| taxFreeVat |
|
|
| getCloudArchiveAccessLicense |
|
Restituisce la licenza necessaria per l’archiviazione nel Cloud dei dati fiscali. |
| surchargesPossible | RFI |
"true" - nel rispettivo Paese sono consentiti i supplementi su beni o servizi.
"false" - I supplementi di prezzo non sono consentiti. |
| trainingModeAllowed | RFI |
Indica se la modalità di formazione/dimostrazione è supportata dal servizio di fiscalizzazione per il rispettivo Paese "true" - consentito.
"false" - la modalità di formazione/dimostrazione non è supportata. Il servizio di fiscalizzazione rifiuta ogni documento con "IsTraining": true (errore di convalida "Ricevuta di formazione non consentita in questo Paese."). |
| netValuePositionCalculation | RFI |
"true" - La somma delle singole voci viene calcolata in base all’importo netto (NetValue) (ad es. Québec/Canada). "false" - La somma delle singole voci viene calcolata in base all’importo lordo (GrossValue) (impostazione predefinita). |
| mustSendCanceledPosition | RFI |
"true" - Le voci che sono state inserite ma che successivamente non sono state incluse nel documento devono essere trasmesse nel payload (JSON). "false" - Le voci che sono state inserite ma che successivamente non sono state incluse nel documento non devono essere trasmesse. Nota: per ulteriori informazioni, consultare l’articolo “Invio delle posizioni delle voci cancellate”. |
| startDocumentType | RFI |
Specifica il tipo di documento iniziale nel Paese di riferimento. Rilevante solo se il sistema a monte NON utilizza la funzione GET /api/v1/transactions/document/{clientId}/start durante l’inizializzazione e genera autonomamente il relativo documento iniziale. |
| supportedPayOutTypes | RFI |
Elenco dei tipi di pagamento supportati nel Paese in questione. Le voci elencate sotto "supportedPayOutTypes" possono/devono essere specificate per i pagamenti ("documentType": "[10] = PayOut" e "BusinessTransactionType": "[10] = PayOut"). |
| notSupportedPayOutTypes | RFI |
Elenco dei tipi di pagamento non supportati (o non consentiti) nel Paese in questione. |
| fiscalModuleCalculatesTaxRates | RFI |
Indica se le aliquote VAT vengono calcolate dal rispettivo modulo di fiscalizzazione del Paese. "true" - Il modulo di fiscalizzazione calcola le aliquote VAT. "false" - Il registratore di cassa deve calcolare le aliquote VAT. |
| storeNumberValidCharsRegex | RFI |
Espressione regolare consentita per il numero del punto vendita (numero di filiale) |
| terminalNumberValidCharsRegex | RFI |
Espressione regolare consentita per il numero del terminal (numero di registratore di cassa) |
| fiscalRegions | RFI |
Indicazione delle regioni fiscali, se applicabile nel Paese in questione. |
| decimali | RFI |
Specifica se e quante cifre decimali devono essere incluse nel documento JSON destinato al middleware fiscale al momento dell’invio di importi/totali. Si applica a tutte le specifiche di valore nel payload ("GrossValue", "NetValue", "TaxValue", "Amount", ecc.) |
| entityParameters |
|
Specifica quali parametri devono essere persistiti per quali entità del portale. |
| legalForms | RFI |
Elenco delle forme giuridiche delle società disponibili nel Paese. |
| classificazione-tipo-articolo-obbligatoria | RFI |
In alcuni paesi è richiesta una specifica più dettagliata di determinati articoli. Se il valore di questa proprietà è “true”, i valori specificati in `supportedItemTypeClassification` devono essere impostati per gli articoli pertinenti nel rispettivo paese (la proprietà ItemTypeClassification deve essere impostata di conseguenza nell’oggetto positions). |
| supportedItemTypeClassification | RFI |
Specifica quali voci devono essere contrassegnate in modo particolare nel rispettivo paese (la proprietà ItemTypeClassification deve essere impostata di conseguenza nell’oggetto «positions»). |
| documentTypeBusinessTransactionTypeSupport | RFI |
Informazioni su quali BusinessTransactionTypes possono essere combinati con quali documentTypes. |
Questo articolo è stato tradotto automaticamente.
Commenti
0 commenti
Accedi per aggiungere un commento.