Hai bisogno di un E-Commerce che funziona davvero?
Contattami Ora!WooCommerce: come applicare una tassa in base alla provincia del cliente
Vuoi aggiungere una tassa extra solo per i clienti che risiedono in una provincia specifica? Ad esempio, vuoi applicare un contributo CONAI oppure una ecotassa solo se il cliente si trova a Napoli (NA)?
Buone notizie: con un semplice snippet PHP puoi fare tutto questo, senza plugin aggiuntivi e in modo 100% automatico.
In questa guida ti mostro come funziona il codice, dove inserirlo e come personalizzarlo per altre province o importi.
Perché applicare una tassa per provincia in WooCommerce
Ci sono diversi casi in cui può essere necessario aggiungere una tassa o un contributo solo per clienti in determinate zone:
- ♻️ Contributo CONAI o simili imposte ambientali
- 🏙️ Ecotassa urbana per alcune città (come Napoli o Roma)
- 🚛 Supplemento spedizione in zone remote
- 💼 Regole fiscali locali o accordi con fornitori
Snippet PHP per applicare una tassa per provincia
Ecco il codice pronto all’uso:
add_action('woocommerce_cart_calculate_fees', 'aggiungi_tassa_per_provincia', 20, 1);
function aggiungi_tassa_per_provincia($cart) {
if (is_admin() && !defined('DOING_AJAX')) return;
// Verifica che i dati dell'indirizzo siano disponibili
if (empty(WC()->customer->get_billing_state())) return;
// Provincia target (sigla): es. Napoli = NA
$provincia_target = 'NA';
if (WC()->customer->get_billing_state() === $provincia_target) {
$nome_tassa = 'Ecotassa Napoli'; // Puoi cambiare nome in "Contributo CONAI" o altro
$importo = 2.50; // L'importo fisso della tassa
$cart->add_fee($nome_tassa, $importo, true); // true = tassa soggetta a IVA
}
}
Come installare lo snippet nel tuo sito WooCommerce
Hai due modi semplici:
Metodo 1: con il plugin Code Snippets (consigliato)
- Vai su Plugin > Aggiungi nuovo
- Cerca “Code Snippets“, installa e attivalo
- Crea un nuovo snippet
- Incolla il codice
- Salva e attiva
💡 Veloce, sicuro e senza rischi di danneggiare il tema.
Metodo 2: tramite functions.php
del tuo tema child
- Apri via FTP o file manager il file:
/wp-content/themes/tuo-tema-child/functions.php
- Incolla lo snippet in fondo al file
- Salva
⚠️ Usa sempre un tema child, per non perdere le modifiche con aggiornamenti futuri.
Come funziona lo snippet
Vediamolo nel dettaglio.
Controlla la provincia del cliente
La riga:
WC()->customer->get_billing_state()
recupera la sigla della provincia (es. “NA” per Napoli) inserita dal cliente in fase di checkout.
Applica una tassa solo se la provincia corrisponde
Se la provincia coincide con quella definita nello snippet:
$provincia_target = 'NA';
Personalizzazioni utili dello snippet
Cambiare provincia
Sostituisci:
$provincia_target = 'NA';
con la sigla della provincia desiderata, ad esempio:
- “MI” → Milano
- “RM” → Roma
- “TO” → Torino
Cambiare nome e importo della tassa
Modifica:
$nome_tassa = 'Contributo CONAI';
$importo = 3.00;
Rendere la tassa esente da IVA
Modifica il parametro finale:
$cart->add_fee($nome_tassa, $importo, false); // false = esente da IVA
Conclusione: tassa intelligente, automatica e geolocalizzata
Con questo snippet puoi aggiungere una tassa automatica basata sulla provincia del cliente, senza bisogno di plugin esterni.
Perfetto per:
- gestire regole fiscali locali
- applicare supplementi ecologici
- premiare o penalizzare certe aree con logiche personalizzate
Tutto questo, in modo veloce, stabile e 100% compatibile con WooCommerce.