WooCommerce: come applicare una tassa in base alla provincia del cliente
08/05/25
3 minuti

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)

  1. Vai su Plugin > Aggiungi nuovo
  2. Cerca “Code Snippets“, installa e attivalo
  3. Crea un nuovo snippet
  4. Incolla il codice
  5. Salva e attiva

💡 Veloce, sicuro e senza rischi di danneggiare il tema.

Metodo 2: tramite functions.php del tuo tema child

  1. Apri via FTP o file manager il file:
    /wp-content/themes/tuo-tema-child/functions.php
  2. Incolla lo snippet in fondo al file
  3. 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.


Hai bisogno di un E-Commerce che funziona davvero?
Contattami Ora!