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.
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.

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.

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.

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?
Va aggiornato il database GeoIP di MaxMind, e con quale frequenza?
Cosa succede se il server di licenza è temporaneamente indisponibile?
L’abbonamento è stato rinnovato: il modulo si interrompe alla vecchia data?
Devo iscrivermi al regime OSS appena vendo in un altro paese dell’UE?
Prodotti di questo articolo
OSS IVA UE – Prezzi IVA inclusa (GeoIP MaxMind)
Prezzi IVA inclusa corretti in base al paese del visitatore, con GeoIP MaxMind o selezione manuale Le 27...
Pagamento a termine B2B: fido, esposizione e solleciti
Condizioni di pagamento per cliente, per gruppo o predefinite: a vista, netto 15/30/45/60/90, fine mese Fido ed...
Passaporto Digitale del Prodotto (DPP): QR e pagina pubblica
Una pagina pubblica del passaporto e un QR code stampabile per ogni prodotto Composizione, durabilità,...
Deforestazione UE (EUDR): individua i prodotti a rischio e traccia le DDS dei fornitori
Individua nel catalogo i prodotti delle sette materie del regolamento: legno, caffè, cacao, soia, olio di palma,...