Fatturazione elettronica in Francia
Fatturazione elettronica in Francia
La piattaforma Chorus Pro, gestita dall'AIFE (Agence pour l'Informatique financière de l'État), è la piattaforma ufficiale per l'invio di fatture elettroniche alle entità pubbliche francesi. Permette alle aziende di inviare e gestire fatture, tracciare lo stato di elaborazione e accedere agli aggiornamenti sui pagamenti. Dal gennaio 2020, la fatturazione elettronica è obbligatoria per tutte le transazioni Business-to-Government (B2G) in Francia. Laundry ERP supporta l'integrazione con Chorus Pro per inviare le fatture generate nel sistema.
Configurazione
Per inviare fatture a Chorus Pro, è necessaria la seguente configurazione:
Installazione del modulo
Installare il modulo France - Factur-X integration with Chorus Pro (l10n_fr_facturx_chorus_pro).
Per installare il modulo:
- Andare in Impostazioni → Apps
- Cercare "Chorus Pro"
- Installare il modulo France - Factur-X integration with Chorus Pro
Registrazione Peppol
Registrarsi a Peppol, poiché le fatture vengono inviate da Laundry ERP a Chorus Pro tramite la rete Peppol.
Account Chorus Pro
Se non si dispone già di un account Chorus Pro, accedere alla pagina Chorus Pro, cliccare su Créer un compte e crearne uno.
Configurazione clienti
Per inviare fatture a Chorus Pro, configurare il modulo contatto dei clienti pertinenti come segue:
- Verificare che i campi Paese e Partita IVA siano compilati
- Nella scheda Vendite e acquisti, assicurarsi che il campo SIRET sia completato
- Nella scheda Contabilità, compilare i seguenti campi nella sezione Fatture clienti:
- Formato eFattura: selezionare BIS Billing 3.0
- Assicurarsi che France SIRET sia selezionato nel campo successivo, quindi digitare
11000201100044, il riferimento utilizzato da Chorus Pro
Invio fatture a Chorus Pro
Per inviare fatture a Chorus Pro, seguire questi passaggi:
- Andare in Contabilità → Clienti → Fatture e aprire o creare la fattura
- Nella scheda Altre info, assicurarsi che i seguenti campi siano compilati nella sezione Chorus Pro:
- Riferimento acquirente: corrisponde a Service Exécutant in Chorus Pro
- Riferimento contratto: corrisponde a Numéro de Marché in Chorus Pro
- Riferimento ordine acquisto: corrisponde a Engagement Juridique in Chorus Pro
- Confermare la fattura
- Cliccare su Invia e, nella finestra Invia, abilitare Tramite Peppol
- Cliccare su Invia
Una volta inviata la fattura, lo stato Peppol della fattura viene aggiornato a Completato.
FEC - Fichier des Écritures Comptables
Un file di audit FEC (Fichier des Écritures Comptables) contiene tutti i dati contabili e le registrazioni nei registri contabili per un anno fiscale. Le registrazioni nel file devono essere disposte in ordine cronologico. Dal gennaio 2014, ogni azienda francese è tenuta a produrre e trasmettere questo file su richiesta delle autorità fiscali per scopi di audit.
Importazione FEC
Installare il modulo France - FEC Import (l10n_fr_fec_import) per importare file FEC da altri software.
Per abilitare questa funzionalità:
- Andare in Contabilità → Configurazione → Impostazioni
- Nella sezione Importazione contabile, cliccare su Importa e selezionare Importa FEC
- Nella finestra Importazione FEC, caricare il file FEC e cliccare su Importa
Formati file supportati
- I file FEC devono essere in formato CSV, poiché il formato XML non è supportato
- Il file FEC CSV è un file di testo normale strutturato come una tabella di dati. La prima riga serve come intestazione, definendo l'elenco dei campi per ogni registrazione, e ogni riga successiva rappresenta una singola registrazione contabile senza un ordine specifico ::
- Codifica: UTF-8, UTF-8-SIG e iso8859_15
- Separatore: uno qualsiasi tra:
;o|o,oTAB - Terminatori di riga: sono supportati sia CR+LF (
\r\n) che LF (\n) - Formato data:
%Y%m%d
Descrizione campi
| # | Nome campo | Descrizione | Utilizzo | Formato |
|---|---|---|---|---|
| 01 | JournalCode | Codice registro | journal.code e journal.name se JournalLib non è fornito | Alfanumerico |
| 02 | JournalLib | Etichetta registro | journal.name | Alfanumerico |
| 03 | EcritureNum | Numero di sequenza specifico per ogni registro | move.name | Alfanumerico |
| 04 | EcritureDate | Data registrazione contabile | move.date | Data (yyyyMMdd) |
| 05 | CompteNum | Numero conto | account.code | Alfanumerico |
| 06 | CompteLib | Etichetta conto | account.name | Alfanumerico |
| 07 | CompAuxNum | Numero conto secondario (accetta null) | partner.ref | Alfanumerico |
| 08 | CompAuxLib | Etichetta conto secondario (accetta null) | partner.name | Alfanumerico |
| 09 | PieceRef | Riferimento documento | move.ref e move.name se EcritureNum non è fornito | Alfanumerico |
| 10 | PieceDate | Data documento | move.date | Data (yyyyMMdd) |
| 11 | EcritureLib | Etichetta registrazione contabile | move_line.name | Alfanumerico |
| 12 | Debit | Importo dare | move_line.debit | Float |
| 13 | Credit | Importo avere (nome campo "Crédit" non consentito) | move_line.credit | Float |
| 14 | EcritureLet | Riferimento incrociato registrazione contabile (accetta null) | move_line.fec_matching_number | Alfanumerico |
| 15 | DateLet | Data registrazione contabile (accetta null) | non utilizzato | Data (yyyyMMdd) |
| 16 | ValidDate | Data validazione registrazione contabile | non utilizzato | Data (yyyyMMdd) |
| 17 | Montantdevise | Importo in valuta (accetta null) | move_line.amount_currency | Float |
| 18 | Idevise | Identificatore valuta (accetta null) | currency.name | Alfanumerico |
| # | Nome campo | Descrizione | Utilizzo | Formato |
|---|---|---|---|---|
| 12 | Montant | Importo | move_line.debit o move_line.credit | Float |
| 13 | Sens | Può essere "C" per Avere o "D" per Dare | determina move_line.debit o move_line.credit | Char |
Dettagli implementazione
Le seguenti entità contabili vengono importate dai file FEC: Conti, Registri, Partner e Movimenti. Il modulo determina automaticamente la codifica, il terminatore di riga e il separatore utilizzati nel file. Successivamente, viene eseguito un controllo per garantire che ogni riga abbia il numero corretto di campi corrispondenti all'intestazione. Se il controllo ha successo, l'intero file viene letto, memorizzato in memoria e scansionato. Le entità contabili vengono quindi importate un tipo alla volta nel seguente ordine.Conti
Ogni registrazione contabile è associata a un conto identificato dal campo CompteNum.Corrispondenza codice: Se esiste già un conto con lo stesso codice, viene utilizzato quello esistente anziché crearne uno nuovo. In Laundry ERP, i numeri di conto seguono la lunghezza predefinita delle cifre della localizzazione fiscale. Poiché il modulo FEC è legato alla localizzazione francese, la lunghezza predefinita del conto è di 6 cifre. Ciò significa che gli zeri finali nei codici conto vengono rimossi e il confronto tra i codici conto nel file FEC e quelli già presenti in Laundry ERP viene effettuato solo sulle prime sei cifre dei codici.65800000 nel file viene abbinato a un conto esistente 658000 in Laundry ERP e viene utilizzato il conto esistente invece di crearne uno nuovo.Registri
I registri vengono controllati rispetto a quelli esistenti in Laundry ERP per evitare duplicati, anche durante l'importazione di più file FEC.Se esiste già un registro con lo stesso codice, viene utilizzato il registro esistente invece di crearne uno nuovo.I nuovi registri hanno il prefisso FEC- aggiunto al loro nome. Ad esempio, ACHATS diventa FEC-ACHATS.Determinazione tipo registro: Il tipo di registro non è specificato nel formato (simile ai conti) e viene inizialmente creato con il tipo predefinito generale.Al termine del processo di importazione, il tipo di registro viene determinato in base alle seguenti regole relative ai movimenti e ai conti correlati:- banca: I movimenti in questi registri includono sempre una riga (dare o avere) che impatta un conto di liquidità. cassa / banca possono essere intercambiati, quindi viene assegnato banca quando questa condizione è soddisfatta
- vendita: I movimenti in questi registri hanno principalmente righe in dare su conti clienti e righe in avere su conti fiscali. Le voci del registro di nota di credito vendita sono invertite dare/avere
- acquisto: I movimenti in questi registri hanno principalmente righe in avere su conti fornitori e righe in dare su conti spese. Le voci del registro di nota di credito acquisto sono invertite dare/avere
- generale: Utilizzato per tutto il resto
- È richiesto un minimo di tre movimenti per identificare il tipo di registro
- Una soglia del 70% dei movimenti deve soddisfare i criteri affinché un tipo di registro venga determinato ::
Contatti
Ogni contatto mantiene il suo Riferimento dal campo CompAuxNum.Movimenti
Le registrazioni vengono pubblicate e riconciliate immediatamente al momento dell'invio, con il campo EcritureLet utilizzato per abbinare le registrazioni.
Il campo EcritureNum rappresenta il nome dei movimenti, ma a volte può essere lasciato vuoto. In tali casi, viene utilizzato invece il campo PieceRef.
Problemi di arrotondamento: Viene applicata una tolleranza di arrotondamento basata sulla precisione della valuta per gli importi dare e avere (ad esempio, 0,01 per EUR). Se la differenza rientra in questa tolleranza, viene aggiunta una nuova riga al movimento, chiamata Differenza di arrotondamento importazione, indirizzata ai seguenti conti:
658000Charges diverses de gestion courante, per addebiti aggiunti758000Produits divers de gestion courante, per accrediti aggiunti
Nome movimento mancante: Se il campo EcritureNum non è compilato e il campo PieceRef non è adatto a determinare il nome del movimento (può essere utilizzato come riferimento della riga del movimento contabile), diventa impossibile identificare quali righe devono essere raggruppate in un unico movimento, impedendo di fatto la creazione di movimenti bilanciati.
In tali casi, viene effettuato un tentativo finale di raggruppare tutte le righe per lo stesso registro e data (JournalLib, EcritureDate). Se questo raggruppamento genera movimenti bilanciati (sum(credit) - sum(debit) = 0), allora ogni diversa combinazione di registro e data crea un nuovo movimento.
Informazioni contatto: Se una riga include informazioni di contatto, queste vengono copiate nel movimento contabile stesso, a condizione che il registro di destinazione sia di tipo debito o credito.
Esportazione FEC
Per scaricare il FEC:
- Andare in Contabilità → Reportistica → Libro mastro
- Cliccare sull'icona ingranaggio e selezionare FEC
- Nella finestra Generazione file FEC, compilare i seguenti campi:
- Data inizio
- Data fine
- File di test: abilitare questa opzione per testare la generazione del file FEC
- Escludi righe a 0: abilitare questa opzione se necessario
- Registri esclusi: selezionare i registri da escludere
- Cliccare su Genera
Liasse fiscale
La liasse fiscale (dichiarazione dei redditi) è una raccolta di documenti finanziari standardizzati che le aziende devono presentare annualmente alle autorità fiscali. Riassume in modo completo le attività finanziarie dell'azienda e determina le imposte sul reddito delle società.Teledec è una piattaforma utilizzata per preparare e inviare le dichiarazioni dei redditi utilizzando i dati dei registri contabili. Per sincronizzare i dati contabili memorizzati in Laundry ERP con Teledec e inviare elettronicamente la liasse fiscale dell'azienda alla DGFiP (Direction Générale des Finances Publiques), seguire questi passaggi:- Creazione account Teledec
- Registrazione azienda e informazioni anno fiscale
- Sincronizzazione con Laundry ERP
Creazione account Teledec
Per creare un account Teledec:- Accedere alla pagina di creazione account Teledec
- Compilare il campo Adresse e-mail con un indirizzo email
- Scegliere una password sicura
- Accettare i termini e le condizioni generali spuntando la casella
- Cliccare su S'enregistrer per salvare
- Inserire il numero SIREN (Système d'identification du répertoire des entreprises, Sistema di identificazione del registro delle imprese) dell'azienda
Registrazione azienda e informazioni anno fiscale
Per registrare l'azienda su Teledec:- Andare in Vos entreprises (Le tue aziende) e cliccare su Enregistrer votre entreprise (Registra la tua azienda)
- Assicurarsi di compilare le seguenti informazioni aziendali nelle sezioni Coordonnées de l'entreprise (Dati dell'azienda) e Représentant légal (Rappresentante legale):
- Nom de l'entreprise: Nome azienda
- Forme juridique: selezionare la forma giuridica dell'azienda
- Les comptes sont clôturés le: data di chiusura
- Régime d'imposition, choix de la liasse: selezionare il regime fiscale e l'opzione di dichiarazione dei redditi
- Adresse du siège social: indirizzo della sede legale
- Nom du représentant légal: nome del rappresentante legale
- Agissant en qualité de: funzione del rappresentante legale
- Numéro de téléphone: numero di telefono
- Cliccare su Sauvegarder (Salva) per visualizzare il passaggio successivo Informations générales sur l'exercice déclaré (Informazioni generali sull'anno fiscale dichiarato)
- Compilare le informazioni sull'anno fiscale, come le date di inizio e fine dell'anno fiscale o la data di chiusura e la durata del periodo fiscale precedente
- Dopo aver salvato, viene visualizzato l'elenco dei documenti inclusi nella liasse fiscale, compresi sia i moduli fiscali standard che quelli personalizzati per la dichiarazione dei redditi dell'azienda
- La colonna Etat (Stato) mostra l'avanzamento della presentazione del documento
- Cliccare su Compléter per compilare un documento, quindi su Sauvegarder per salvare
- Per stampare una versione vuota della dichiarazione, cliccare su Imprimer la déclaration e selezionare l'opzione Imprimer la déclaration avec les notices ::
Sincronizzazione con Laundry ERP
Per consentire a Laundry ERP di compilare automaticamente i dati per la Liasse fiscale:- Cliccare su Autres actions (Altre azioni) nell'angolo in alto a destra
- Selezionare Synchroniser avec un logiciel tiers (Sincronizza con software di terze parti)
- Selezionare Synchroniser cette liasse avec Odoo (Sincronizza questa liasse con Odoo)
- Nella finestra Synchroniser cette liasse avec Odoo, compilare le seguenti informazioni per completare la sincronizzazione:
- Nom / URL complète de la base de données Odoo: nome database Laundry ERP o URL. Per fornire l'URL completo del database, abilitare l'opzione Je voudrais donner une url complète hors .odoo.com
- Nom de l'utilisateur: nome utente associato all'account Laundry ERP
- Clé API: chiave API generata dall'istanza Laundry ERP
- L'utente collegato alla chiave API generata deve avere accesso all'azienda destinata alla sincronizzazione
- Questa azienda deve essere impostata anche come Azienda predefinita dell'utente, poiché Teledec sincronizza sempre con l'azienda predefinita dell'utente ::
- Cliccare su Importer per sincronizzare i dati da Laundry ERP
- Nella finestra Confirmation de la synchronisation de liasse avec Odoo, rivedere gli importi e apportare eventuali modifiche necessarie
- Cliccare su Importer la balance per confermare la sincronizzazione della liasse fiscale con Laundry ERP e importare il saldo
- Per effettuare il pagamento e inviare la dichiarazione alle autorità fiscali, cliccare su Paiement & envoi de la déclaration
Punto vendita
Certificazione antifrode IVA
Dal gennaio 2018, è in vigore in Francia e nei suoi territori d'oltremare (DOM-TOM) una nuova legislazione antifrode. Questa legislazione stabilisce requisiti specifici per l'integrità, la sicurezza, l'archiviazione e l'archiviazione dei dati di vendita. Laundry ERP è conforme a questi requisiti legali fornendo un modulo e un certificato di conformità scaricabile.Il software di cassa antifrode, come Laundry ERP (CGI art. 286, I. 3° bis), è richiesto per le aziende soggette a IVA in Francia o DOM-TOM, dove alcuni clienti sono privati (B2C). Questa regola si applica a tutte le dimensioni aziendali, ma gli auto-imprenditori esenti da IVA non sono interessati.Certificazione Laundry ERP
L'amministrazione fiscale richiede a tutte le aziende di fornire un certificato di conformità che confermi che il loro software è conforme alla legislazione antifrode. In caso di non conformità, può essere imposta una multa di 7.500 €.Per ottenere la certificazione, seguire questi passaggi:
- Installare il modulo France - VAT Anti-Fraud Certification for Point of Sale (CGI 286 I-3 bis) (
l10n_fr_pos_cert) - Impostare il campo Paese sul record aziendale a Francia per crittografare le voci per il controllo di inalterabilità
- Scaricare il certificato di conformità obbligatorio rilasciato da Odoo SA
Funzionalità antifrode
Il modulo antifrode introduce le seguenti funzionalità:
Inalterabilità
Tutti i metodi per annullare o modificare i dati chiave negli ordini POS, nelle fatture e nelle registrazioni contabili sono disattivati per le aziende situate in Francia o in qualsiasi DOM-TOM.
Sicurezza
Per garantire l'inalterabilità, ogni ordine o registrazione contabile viene crittografato al momento della convalida. Questo numero (o hash) viene calcolato dai dati chiave del documento e dall'hash dei documenti precedenti. Il modulo introduce un'interfaccia per testare l'inalterabilità dei dati. Il test fallirà se qualsiasi informazione viene modificata su un documento dopo la sua convalida. L'algoritmo ricalcola tutti gli hash e li confronta con quelli iniziali. In caso di fallimento, il sistema indica il primo documento corrotto registrato nel sistema.
Solo gli utenti con diritti di accesso da amministratore possono avviare il controllo di inalterabilità:
- Per gli ordini POS, andare in Punto vendita → Reportistica → Controllo inalterabilità POS
- Per le registrazioni contabili, andare in Fatturazione/Contabilità → Configurazione → Impostazioni. Nella sezione Reportistica, cliccare su Scarica report controllo inalterabilità dati
Archiviazione
Il sistema elabora anche chiusure di vendita automatiche giornaliere, mensili e annuali. Tali chiusure calcolano il totale delle vendite per il periodo e i totali cumulativi complessivi dalla prima registrazione di vendita registrata nel sistema.
Per accedere alle chiusure, andare in Punto vendita → Reportistica → Chiusure vendite oppure Fatturazione/Contabilità → Reportistica → Chiusure vendite.
- Le chiusure calcolano i totali per le registrazioni contabili dei registri di vendita (Tipo registro = Vendite)
- Per ambienti multi-azienda, tali chiusure vengono eseguite per azienda
- Gli ordini POS vengono registrati come registrazioni contabili alla chiusura della sessione POS. La chiusura di una sessione POS può essere effettuata in qualsiasi momento. Per richiedere agli utenti di farlo quotidianamente, il modulo impedisce loro di riprendere una sessione aperta da più di 24 ore. Tale sessione deve essere chiusa prima di vendere di nuovo
- Il totale di un periodo viene calcolato da tutte le registrazioni contabili pubblicate dopo la chiusura precedente dello stesso tipo, indipendentemente dalla data di pubblicazione. La registrazione di una nuova transazione di vendita per un periodo già chiuso verrà conteggiata nella chiusura successiva ::
Responsabilità
La disinstallazione di questo modulo resetterà gli hash di sicurezza. Ciò significa che il sistema non garantirà più l'integrità dei dati passati.Gli utenti sono responsabili del proprio sistema Laundry ERP e devono utilizzarlo con attenzione. La modifica del codice sorgente responsabile di garantire l'integrità dei dati non è consentita.Odoo non è responsabile di eventuali problemi con la funzionalità di questo modulo se causati da applicazioni di terze parti non certificate.Fatturazione elettronica in Germania
Guida completa alla conformità GoBD, esportazione DATEV e sistema di sicurezza tecnica per il punto vendita in Germania con Laundry ERP
Fatturazione elettronica in Spagna
Guida completa alla fatturazione elettronica spagnola con Laundry ERP tramite FACe e sistema SII