Prezzo IVA inclusa del paese del visitante su PrestaShop

Configura le aliquote IVA UE, mostra il prezzo con l’IVA del paese rilevato da GeoIP o scelto nel selettore e poi esporta le vendite per aliquota: il percorso completo su PrestaShop, limiti compresi.

Comment afficher le prix TTC du pays du visiteur dans PrestaShop

Un cliente spagnolo apre la scheda di un prodotto e vede un prezzo calcolato con l’IVA francese. L’aliquota del suo paese compare solo dopo l’inserimento dell’indirizzo, a volte con l’articolo già nel carrello. È la domanda dei negozi che vendono in più paesi dell’UE: come mostrare subito il prezzo IVA inclusa del paese del visitatore senza rompere le regole fiscali di ogni prodotto? Questa guida percorre il modulo OSS IVA UE, scheda per scheda, e mostra cosa lascia al commercialista.

PrestaShop può gestire da solo l’IVA dei paesi dell’UE e l’OSS?

Non del tutto: PrestaShop applica l’IVA dell’indirizzo del carrello; il modulo applica l’aliquota del paese rilevato o scelto già dalla scheda prodotto e prepara l’esportazione per aliquota per l’OSS.

È pensato prima di tutto per i negozi che soddisfano tre condizioni.

  • Vende a privati in almeno due paesi dell’UE e mostra i prezzi IVA inclusa.
  • Vuole che il visitatore veda l’aliquota del suo paese già dalla scheda prodotto, senza aspettare il carrello.
  • Prepara le vendite per aliquota per il regime OSS, con un CSV da controllare.

Non serve in tre casi. Un negozio che vende in un solo paese ne ricava poco. Nemmeno le vendite B2B con inversione contabile, perché il modulo non controlla i numeri di partita IVA. Un negozio che cerca il monitoraggio della soglia OSS o la conservazione delle prove IVA per dieci anni non trova né l’uno né l’altra in questa versione.

La scheda del modulo riassume le funzioni e la documentazione descrive ogni scheda.

Come configurare le aliquote IVA dei paesi dell’UE in PrestaShop?

Apra la pagina Configura del modulo, poi la scheda Tasse: la procedura prepara le aliquote dei paesi in cui vende, mostra i dati di riferimento delle aliquote IVA per paese e non crea nulla prima della conferma.

La procedura funziona in tre passaggi. Prima sceglie gruppi di regole fiscali già assegnati ai prodotti, oppure ne prepara di nuovi. Il secondo passaggio mostra, paese per paese, le aliquote di riferimento (standard, ridotta, ridotta 2, molto ridotta) e lo stato di configurazione (Configurato, Parziale, Non configurato). Il terzo passaggio elenca le tasse da creare, le regole da creare, gli elementi saltati e gli errori, quindi applica le modifiche dopo un clic su «Esegui»; finché non conferma, l’anteprima non crea alcuna regola.

Restano due punti da verificare a mano. I prodotti non vengono mai riassegnati a un altro gruppo in automatico: un articolo con aliquota ridotta conserva il suo gruppo, e l’aliquota ridotta dipende dalla categoria e dal territorio. I gruppi condivisi tra più negozi, le regole regionali e le regole combinate si controllano nelle impostazioni native di PrestaShop, non nell’anteprima del modulo.

Come mostrare il prezzo IVA inclusa del visitatore, con o senza indirizzo?

Il modulo risolve il paese in quest’ordine: l’indirizzo fiscale del carrello, la scelta salvata nel cookie, il rilevamento GeoIP, poi il paese predefinito della scheda Generale.

La scheda Generale attiva l’anteprima prezzi IVA inclusa e imposta il paese predefinito e i gruppi clienti idonei. I paesi proposti nel selettore si scelgono nella scheda Paesi. La scheda Visualizzazione colloca il selettore su un hook standard (displayNav1, displayNav2, displayTop) o su un hook personalizzato (displayWeprestaOSS per impostazione predefinita); sono forniti cinque template e un’anteprima in tempo reale segue le impostazioni.

Il rilevamento GeoIP si configura nella scheda Avanzato. Inserisca l’identificativo del suo account MaxMind e una chiave autorizzata a scaricare GeoLite2 Country, avvii il download e controlli lo stato del database. PHP deve disporre di cURL, Phar e zlib; una chiave lasciata vuota conserva quella salvata. Su un indirizzo IP locale il rilevamento non può funzionare.

Appena il carrello ha un indirizzo fiscale valido, quell’indirizzo diventa il riferimento e i costi vengono ricalcolati, secondo l’impostazione di consegna o fatturazione di PrestaShop. Un cliente autenticato può scegliere un suo indirizzo e confermarlo per la consegna; il modulo non crea mai un indirizzo fittizio. Il prezzo stimato compare anche nella finestra di conferma dell’aggiunta al carrello.

La durata del cookie si imposta nella scheda Avanzato, in giorni; il valore 0 conserva la scelta solo per la sessione.

Come verificare che la geolocalizzazione e i prezzi siano corretti?

Un paese compare nel selettore solo se sono soddisfatte tre condizioni: è attivo nella scheda Paesi, le sue tasse sono configurate nella scheda Tasse ed è attivo in PrestaShop (Internazionale → Localizzazione → Paesi).

Parta dallo stato del database GeoIP nella scheda Avanzato: deve indicare che il database è disponibile. Usi poi il selettore di paese del negozio per mostrarlo come un visitatore di ogni paese scelto e confronti il prezzo di un prodotto con aliquota ordinaria e di uno con aliquota ridotta. Chiuda con il carrello, con un indirizzo di consegna reale e poi con un indirizzo di fatturazione diverso, se lo accetta.

Se un prezzo non cambia, svuoti la cache di PrestaShop e verifichi che il prodotto appartenga a un gruppo di regole fiscali del paese interessato. Se manca un paese, riprenda le tre condizioni qui sopra. Una cache di pagina o un CDN deve distinguere il paese e la sessione del visitatore; altrimenti può servire a tutti la pagina di un solo paese.

Come esportare vendite e note di credito per aliquota per la dichiarazione OSS?

Apra la scheda Esportazione IVA, scelga un periodo, avvii «Anteprima» e poi clicchi su «Scarica CSV»: gli importi sono separati per negozio, valuta, paese, aliquota e componente, trasporto compreso.

Le vendite seguono la data dell’ordine; le note di credito seguono la data di emissione, anche quando riguardano una vendita precedente. Gli importi e le aliquote storiche vengono conservati: modificare una regola fiscale non riscrive le righe già registrate. Le righe da controllare restano segnalate nell’anteprima e nel file.

Un rimborso inserito senza nota di credito non può essere dedotto in automatico. Per le scadenze dei clienti professionali, guardi piuttosto Pagamento a termine B2B, che gestisce fido e solleciti.

Cosa succede se la licenza scade o il server non risponde?

Un abbonamento rinnovato non viene più interrotto alla vecchia data, e un incidente passeggero del server di licenza lascia 7 giorni di tolleranza dal primo errore; senza licenza valida, però, il modulo si disattiva.

La licenza si attiva dalla pagina Configura, con la Chiave di licenza e il Segreto di licenza dell’account wepresta.shop, poi con il pulsante Attiva la licenza. Il pannello mostra quindi il tipo, il dominio, la scadenza e i giorni rimanenti; il pulsante Disattiva rimuove la licenza da questo negozio. Il controllo avviene al massimo una volta all’ora, e ogni 5 minuti su quella pagina finché la licenza non è attiva: PrestaShop contatta il server solo quando un controllo è dovuto, non a ogni apertura.

La pagina Configura senza licenza valida: il formulario di licenza, l’avviso di scadenza e il promemoria che impostazioni e regole fiscali vengono conservate.
La pagina Configura senza licenza valida: il formulario di licenza, l’avviso di scadenza e il promemoria che impostazioni e regole fiscali vengono conservate.

Trascorso quel periodo, il modulo si disattiva: il selettore, il messaggio IVA e i prezzi con l’IVA del paese del visitatore scompaiono, e PrestaShop mostra i suoi prezzi abituali. Le impostazioni e le regole fiscali restano al loro posto. Il gestore dei moduli rifiuta di riattivare il modulo e rimanda alla pagina Configura, che lo riattiva appena la licenza è valida, senza reinserire la chiave dopo un rinnovo.

Dopo l’attivazione il pannello mostra la licenza attiva, il dominio, la data di scadenza e i giorni rimanenti; «Apri le impostazioni del modulo» porta alle schede.
Dopo l’attivazione il pannello mostra la licenza attiva, il dominio, la data di scadenza e i giorni rimanenti; «Apri le impostazioni del modulo» porta alle schede.

La versione 2.0.2 ha corretto tre difetti: un abbonamento rinnovato che restava interrotto alla vecchia data, una risposta passeggera del server che ritirava la licenza e, su PrestaShop 8, un errore 500 nel back office dopo la disattivazione. Il formulario di licenza, il pannello e i messaggi esistono in francese, inglese, spagnolo, italiano e polacco. Il modulo è compatibile con PrestaShop 1.7.8, 8.0+ e 9.0+, con PHP 7.4 minimo; su PHP 7.1–7.3 mostra un messaggio «PHP 7.4 minimum» al posto di un errore fatale.

Dopo «Disattiva»: la licenza viene rimossa, il modulo è disattivato e torna il formulario di licenza, mentre impostazioni e regole fiscali restano.
Dopo «Disattiva»: la licenza viene rimossa, il modulo è disattivato e torna il formulario di licenza, mentre impostazioni e regole fiscali restano.

L’esportazione IVA sostituisce una dichiarazione OSS?

No: somma le vendite e le note di credito registrate nel negozio e produce un CSV da controllare, non una dichiarazione né una decisione sul suo assoggettamento.

Il modulo non segue la soglia OSS, non conserva prove IVA per dieci anni e non aggiorna da solo il database GeoIP. Non verifica i numeri di partita IVA intracomunitari e non trasforma un prezzo B2B in inversione contabile. Questi limiti sono voluti: una cifra approssimativa su un obbligo di legge sarebbe più pericolosa di un campo vuoto.

Le aliquote, le regole e il suo assoggettamento dipendono dalla situazione e dal paese di stabilimento. Il modulo calcola e presenta; non decide al posto suo. Faccia rivedere la configurazione e l’esportazione dal commercialista prima di dichiarare.

Per gli altri obblighi europei che riguardano la scheda prodotto, guardi il passaporto digitale del prodotto e il monitoraggio della deforestazione UE (EUDR).

Domande frequenti

Posso mostrare prezzi diversi in base all’indirizzo IP del visitatore?
Sì, con il rilevamento GeoIP: una volta attivato GeoIP e autorizzato il paese nel selettore, il modulo legge l’indirizzo IP nel database locale MaxMind e applica il paese rilevato ai prezzi mostrati. Finché il carrello non ha un indirizzo fiscale, quel prezzo resta una stima, visibile anche nella finestra di aggiunta al carrello. Appena esiste un indirizzo valido, è lui a prevalere e i costi vengono ricalcolati.
Va aggiornato il database GeoIP di MaxMind, e con quale frequenza?
Il modulo non impone un calendario: il database si scarica dalla scheda Avanzato, con l’identificativo dell’account MaxMind e una chiave autorizzata per GeoLite2 Country. Scarichi un nuovo database quando vuole; se l’operazione fallisce, resta in uso quello precedente. Controlli lo stato dopo ogni aggiornamento. Su un indirizzo IP locale il rilevamento non funziona.
Cosa succede se il server di licenza è temporaneamente indisponibile?
La licenza resta valida. Un errore passeggero, un limite di richieste o una manutenzione conta come controllo fallito, e il modulo concede 7 giorni di tolleranza dal primo errore. Trascorso quel periodo senza una risposta valida, il modulo si disattiva come senza licenza. Una risposta valida azzera il contatore.
L’abbonamento è stato rinnovato: il modulo si interrompe alla vecchia data?
No. Quando la data salvata nel negozio è passata, il modulo interroga il server di licenza e registra la nuova data. Se nel frattempo il modulo è stato disattivato, apra la pagina Configura: controlla la licenza e lo riattiva appena è valida, senza reinserire chiave e segreto.
Devo iscrivermi al regime OSS appena vendo in un altro paese dell’UE?
Il regime OSS non è solo un contatore: dipende dal tipo di vendite, dalla soglia comune e dal paese di stabilimento. Il modulo non calcola quella soglia e non decide il suo assoggettamento. Faccia verificare la sua situazione dal commercialista, poi usi l’esportazione IVA per preparare gli importi per paese e per aliquota.

Prodotti di questo articolo

Trovate il modulo di cui il vostro negozio ha bisogno

Scopri i moduli