Jump to content

[HOW TO] Modifica per etichetta IVA escl. / incl. ovunque, anche fatture


viger

Recommended Posts

Ciao a tutti!
Con questa guida raccolgo tutto il lavoro fatto (e parzialmente pubblicato in alcuni post) sulla questione "etichetta" IVA inclusa / IVA esclusa.
 
Forse per molti non è così importante, forse sono io che mi sono fissato, ma avendo un negozio internazionale il problema IVA mi si pone, e prestashop non è che, di default, lo risolva gran bene...
 
Un'IVA del 22% è cosa mostruosa, specificare a un'ospite estero che vede un determinato prezzo che per lui potrebbe essere più basso di tale percentuale non è cosa da poco, così come ribadire che tale percentuale non appartiene al venditore ma allo Stato (non basta mai insistere su questo punto!).
 
Purtroppo bisogna fare alcuni cambiamenti al codice, quindi se siete maniaci degli aggiornamenti, andranno rifatti. 
Io sono più della filosofia: "funziona? Non lo toccare..." e mi sa mi fermerò alla 1560 che funziona gran bene, almeno per me.
Io li ho testati e ritestati e li ho nel mio shop.
Faccio riferimento alla 1560, forse alcuni cambiamenti sono diventati di serie nella 1561, non ho verificato, in caso fate sapere.
 
COSA NON FUNZIONA:
non ho curato tutti gli aspetti che non utilizzo: carta regalo, ecotassa, IVA differente dal 22%, fattura B2B, fatture di restituzione, forniture, e altre cose un po' specifiche.
 
Per funzionare deve essere attivato e configurato il modulo "Partita IVA Europea".
Da BO tradurre a piacere: io ho sostituito "Tax incl." in "VAT 22% incl" o "IVA 22% incl." e "Tax excl." in "VAT excl." o "IVA escl.", vedete voi.
 
Come funziona l'IVA in Italia per l'Italia e per l'estero e gli screen di tutti i casi dove l'IVA deve apparire o non apparire:
 
IVA appare:
Italia ==> Italia privato con Cod. Fisc.: 22% IVA da versare al venditore
Italia ==> Italia professionista con P.IVA: 22% IVA da versare al venditore
Italia ==> UE privato: 22% IVA da versare al venditore
Guest
 
post-408444-0-92940600-1385063824_thumb.jpg post-408444-0-96417700-1385063825_thumb.jpg post-408444-0-25513400-1385063828_thumb.jpg post-408444-0-55026400-1385063830_thumb.jpg post-408444-0-83600400-1385063831_thumb.jpg post-408444-0-80055300-1385063832_thumb.jpg post-408444-0-91572500-1385063833_thumb.jpg post-408444-0-94531800-1385063836_thumb.jpg
 
IVA non appare:
Italia ==> UE professionista con P.IVA EUROPEA (verificarla sempre!!): NO IVA
Italia ==> resto del mondo, sia professionisti sia privati: NO IVA
 
post-408444-0-03283600-1385063844_thumb.jpg post-408444-0-57073600-1385063844_thumb.jpg post-408444-0-55479900-1385063845_thumb.jpg post-408444-0-98145400-1385063846_thumb.jpg post-408444-0-93411100-1385063847_thumb.jpg post-408444-0-98453100-1385063848_thumb.jpg post-408444-0-67998600-1385063849_thumb.jpg post-408444-0-13694300-1385063852_thumb.jpg
 
(nella fattura ho inserito una scritta che specifica che è solo una fattura pro-forma, quella vera viene inviata unitamente alla merce perché ho anche un negozio fisico e devo unire le due numerazioni. In caso levare quella frase. Ora finalmente il template cambia se c'è o non c'è l'IVA :) )
 
Ci sono poi alcune casistiche di posti esenti IVA che andranno viste caso per caso, ma sono previste in questa modifica. Per esempio, in Spagna, le Canarias e Ceuta Y Melilla sono esenti IVA. Quindi (se si vuole essere pignoli), nella nazione Spagna si creano tre provincie/stati (Spain, Canarias e Ceuta y Melilla) a cui verrà applicata l'IVA in maniera differente (Localizzazione==>Regole tasse==>Spain==>applicarla solo alla nuova provincia appena creata "Spain". Canarias e Ceuta y Melilla saranno automaticamente esenti IVA pur essendo all'interno della nazione Spain. Questo va fatto per ogni zona coperta dallo shop con problematiche analoghe.
 
 
Passiamo ora alle modifiche vere e proprie.
 
• aprire il file /classes/Product.php
• cercare
self::$_taxCalculationMethod = Group::getPriceDisplayMethod((int)$customer->id_default_group);

• incollare dopo

      $cur_cart = Context::getContext()->cart;
      $id_address = 0;
      if (Validate::isLoadedObject($cur_cart))
        $id_address = $cur_cart->{Configuration::get('PS_TAX_ADDRESS_TYPE')};
      $address_infos = Address::getCountryAndState($id_address);


      if (self::$_taxCalculationMethod != PS_TAX_EXC
        && !empty($address_infos['vat_number'])
        && $address_infos['id_country'] != Configuration::get('VATNUMBER_COUNTRY')
        && Configuration::get('VATNUMBER_MANAGEMENT'))
        self::$_taxCalculationMethod = PS_TAX_EXC;

• aprire classes/controller/FrontController.php

• cercare
 CartRule::autoAddToCart($this->context);
 }

• aggiungere dopo

    else
      $this->context->cart = $cart;

• cercare

     'priceDisplay' => Product::getTaxCalculationMethod(),

• sostituire con

     'priceDisplay' => Product::getTaxCalculationMethod((int)$this->context->cookie->id_customer),
(NB: queste modifiche qui sopra nella 1560 erano state inserite in github, dalle versioni successive dovrebbero già esistere; verificare prima di modificare il codice)
 
• cercare
// Usefull for layout.tpl

• aggiungere dopo

'EU' => $infos['id_country'] == 2 || $infos['id_country'] == 3 || $infos['id_country'] == 236 || $infos['id_country'] == 74 || $infos['id_country'] == 76 || $infos['id_country'] == 16 || $infos['id_country'] == 20 || $infos['id_country'] == 86 || $infos['id_country'] == 7 || $infos['id_country'] == 8 || $infos['id_country'] == 1 || $infos['id_country'] == 9 || $infos['id_country'] == 143 || $infos['id_country'] == 26 || $infos['id_country'] == 10 || $infos['id_country'] == 125 || $infos['id_country'] == 131 || $infos['id_country'] == 12 || $infos['id_country'] == 139 || $infos['id_country'] == 13 || $infos['id_country'] == 14 || $infos['id_country'] == 15 || $infos['id_country'] == 36 || $infos['id_country'] == 37 || $infos['id_country'] == 193 || $infos['id_country'] == 18 || $infos['id_country'] == 17 || $infos['id_state'] == 315 || $infos['id_country'] == "",
($infos['id_state'] == 315 reappresenta la nuova "provincia" Spain in regime IVA. Come detto prima, in maniera analoga andrà esclusa qualsiasi altra zona con esenzione IVA)
 
• aprire /themes/default/order-carrier.tpl
• cercare
{if $use_taxes == 1}
{convertPrice price=$option.total_price_with_tax} {l s='(tax incl.)'}
{else}
{convertPrice price=$option.total_price_without_tax} {l s='(tax excl.)'}
{/if}

• modificarlo in

{if $priceDisplay == 1 OR $EU != 1}
{convertPrice price=$option.total_price_without_tax} {l s='(tax excl.)'}
{else}
{convertPrice price=$option.total_price_with_tax} {l s='(tax incl.)'} 
{/if}

• aprire il file /themes/default/product.tpl

• cercare
<!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) OR !isset($display_tax_label))}
{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
{/if}-->

• modificare in

{if $tax_enabled}
{if $priceDisplay == 1 OR $EU != 1}<span class="our_price_display_tax">{l s='tax excl.'}</span>{else}<span class="our_price_display_tax">{l s='tax incl.'}</span>{/if}
{/if}

• cercare

<!-- {if $tax_enabled && $display_tax_label == 1}{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if} -->

• modificare in

{if $tax_enabled}{if $priceDisplay == 1 OR $EU != 1}<span class="our_price_display_tax">{l s='tax excl.'}</span>{else}<span class="our_price_display_tax">{l s='tax incl.'}</span>{/if}{/if}

• aprire /themes/default/css/product.css

• cercare
.our_price_display {
padding-bottom:10px;
font-weight:bold;
font-size:24px;
line-height:18px;
color:#9b0000
}

• aggiungere dopo

.our_price_display_tax {
padding-bottom:10px;
font-weight:bold;
font-size:11px;
line-height:18px;
color:black
}

• aprire /themes/default/modules/blockcart/blockcart.tpl

• cercare:
{if $use_taxes && $display_tax_label == 1 && $show_tax}
{if $priceDisplay == 0}
<p id="cart-price-precisions">
{l s='Prices are tax included' mod='blockcart'}
</p>
{/if}
{if $priceDisplay == 1}
<p id="cart-price-precisions">
{l s='Prices are tax excluded' mod='blockcart'}
</p>
{/if}
{/if}

• cambiare in:

{if $use_taxes && $show_tax}
{if $priceDisplay == 1 OR $EU != 1}
<p id="cart-price-precisions">
{l s='Prices are tax excluded' mod='blockcart'}
</p>
{else}
<p id="cart-price-precisions">
{l s='Prices are tax included' mod='blockcart'}
</p>
{/if}
{/if}

• aprire /classes/pdf/PDFGenerator.php

• cercare:
public function writePage()
{
$this->SetHeaderMargin(5);
$this->SetFooterMargin(18);
$this->setMargins(10, 40, 10);
$this->SetAutoPageBreak(true, PDF_MARGIN_BOTTOM);


$this->AddPage();


$this->writeHTML($this->content, true, false, true, false, '');
}

• correggere la stringa:

$this->setMargins(10, 40, 10);

• in:

$this->setMargins(10, 5, 10);

• aprire /classes/pdf/HTMLTemplateInvoice.php

• cercare:
$this->title = HTMLTemplateInvoice::l('Invoice ').' #'.Configuration::get('PS_INVOICE_PREFIX', $id_lang, null, (int)$this->order->id_shop).sprintf('%06d', $order_invoice->number);

• cambiare in:

$this->title = Configuration::get('PS_INVOICE_PREFIX', $id_lang, null, (int)$this->order->id_shop).sprintf('%06d', $order_invoice->number);

• cercare:

'tax_exempt' => $tax_exempt,

• aggiungere prima:

'EU' => $address->id_country == 2 || $address->id_country == 3 || $address->id_country == 236 || $address->id_country == 74 || $address->id_country == 76 || $address->id_country == 16 || $address->id_country == 20 || $address->id_country == 86 || $address->id_country == 7 || $address->id_country == 8 || $address->id_country == 1 || $address->id_country == 9 || $address->id_country == 143 || $address->id_country == 26 || $address->id_country == 10 || $address->id_country == 125 || $address->id_country == 131 || $address->id_country == 12 || $address->id_country == 139 || $address->id_country == 13 || $address->id_country == 14 || $address->id_country == 15 || $address->id_country == 36 || $address->id_country == 37 || $address->id_country == 193 || $address->id_country == 18 || $address->id_country == 17 || $address->id_state == 315,

• aprire /modules/bankwire/views/templates/front/payment_execution.tpl

• cercare
{if $use_taxes == 1}
     {l s='(tax incl.)' mod='bankwire'}
    {/if}

• sostituire con

{if $priceDisplay == 1 OR $EU != 1} {l s='(tax excl.)' mod='bankwire'}{else} {l s='(tax incl.)' mod='bankwire'}{/if}
(in caso interessi ho postato una guida su come modificare il modulo bonifico per ricevere un bonifico solo in euro ma con uno shop multivaluta)
 
sostituire i template nella cartella /pdf/ con quelli personalizzati allegati a questo post (o correggere il codice dei propri se si vuole mantenerli, sono cambiamenti semplici)
 
Con questo dovrebbe funzionare tutto come negli screen allegati sopra. A molti credo non interessi molto tutta 'sta roba, ma magari a qualche altro maniaco come me...  :D
 
PS: ho provato a suggerire nel bugfix o in github tutto questo (e altro), ma boh, alcuni sono rimasti senza risposta, altri sono stati inseriti nel github ufficialmente ma nel complesso tra inglese e fatica per spiegarsi e poche risposte dall'altra parte lo posto solo qui, poi ciascuno ne faccia ciò che vuole!
 
template pdf: pdf.zip
Edited by viger (see edit history)
  • Like 3
Link to comment
Share on other sites

  • 3 months later...

 

Ciao a tutti!
Con questa guida raccolgo tutto il lavoro fatto (e parzialmente pubblicato in alcuni post) sulla questione "etichetta" IVA inclusa / IVA esclusa.
 
Forse per molti non è così importante, forse sono io che mi sono fissato, ma avendo un negozio internazionale il problema IVA mi si pone, e prestashop non è che, di default, lo risolva gran bene...
 
Un'IVA del 22% è cosa mostruosa, specificare a un'ospite estero che vede un determinato prezzo che per lui potrebbe essere più basso di tale percentuale non è cosa da poco, così come ribadire che tale percentuale non appartiene al venditore ma allo Stato (non basta mai insistere su questo punto!).
 
Purtroppo bisogna fare alcuni cambiamenti al codice, quindi se siete maniaci degli aggiornamenti, andranno rifatti. 
Io sono più della filosofia: "funziona? Non lo toccare..." e mi sa mi fermerò alla 1560 che funziona gran bene, almeno per me.
Io li ho testati e ritestati e li ho nel mio shop.
Faccio riferimento alla 1560, forse alcuni cambiamenti sono diventati di serie nella 1561, non ho verificato, in caso fate sapere.
 
COSA NON FUNZIONA:
non ho curato tutti gli aspetti che non utilizzo: carta regalo, ecotassa, IVA differente dal 22%, fattura B2B, fatture di restituzione, forniture, e altre cose un po' specifiche.
 
Per funzionare deve essere attivato e configurato il modulo "Partita IVA Europea".
Da BO tradurre a piacere: io ho sostituito "Tax incl." in "VAT 22% incl" o "IVA 22% incl." e "Tax excl." in "VAT excl." o "IVA escl.", vedete voi.
 
Come funziona l'IVA in Italia per l'Italia e per l'estero e gli screen di tutti i casi dove l'IVA deve apparire o non apparire:
 
IVA appare:
Italia ==> Italia privato con Cod. Fisc.: 22% IVA da versare al venditore
Italia ==> Italia professionista con P.IVA: 22% IVA da versare al venditore
Italia ==> UE privato: 22% IVA da versare al venditore
Guest
 
 
IVA non appare:
Italia ==> UE professionista con P.IVA EUROPEA (verificarla sempre!!): NO IVA
Italia ==> resto del mondo, sia professionisti sia privati: NO IVA
 
 
(nella fattura ho inserito una scritta che specifica che è solo una fattura pro-forma, quella vera viene inviata unitamente alla merce perché ho anche un negozio fisico e devo unire le due numerazioni. In caso levare quella frase. Ora finalmente il template cambia se c'è o non c'è l'IVA :) )
 
Ci sono poi alcune casistiche di posti esenti IVA che andranno viste caso per caso, ma sono previste in questa modifica. Per esempio, in Spagna, le Canarias e Ceuta Y Melilla sono esenti IVA. Quindi (se si vuole essere pignoli), nella nazione Spagna si creano tre provincie/stati (Spain, Canarias e Ceuta y Melilla) a cui verrà applicata l'IVA in maniera differente (Localizzazione==>Regole tasse==>Spain==>applicarla solo alla nuova provincia appena creata "Spain". Canarias e Ceuta y Melilla saranno automaticamente esenti IVA pur essendo all'interno della nazione Spain. Questo va fatto per ogni zona coperta dallo shop con problematiche analoghe.
 
 
Passiamo ora alle modifiche vere e proprie.
 
• aprire il file /classes/Product.php
• cercare
self::$_taxCalculationMethod = Group::getPriceDisplayMethod((int)$customer->id_default_group);

• incollare dopo

      $cur_cart = Context::getContext()->cart;
      $id_address = 0;
      if (Validate::isLoadedObject($cur_cart))
        $id_address = $cur_cart->{Configuration::get('PS_TAX_ADDRESS_TYPE')};
      $address_infos = Address::getCountryAndState($id_address);


      if (self::$_taxCalculationMethod != PS_TAX_EXC
        && !empty($address_infos['vat_number'])
        && $address_infos['id_country'] != Configuration::get('VATNUMBER_COUNTRY')
        && Configuration::get('VATNUMBER_MANAGEMENT'))
        self::$_taxCalculationMethod = PS_TAX_EXC;

• aprire classes/controller/FrontController.php

• cercare
 CartRule::autoAddToCart($this->context);
 }

• aggiungere dopo

    else
      $this->context->cart = $cart;

• cercare

     'priceDisplay' => Product::getTaxCalculationMethod(),

• sostituire con

     'priceDisplay' => Product::getTaxCalculationMethod((int)$this->context->cookie->id_customer),
(NB: queste modifiche qui sopra nella 1560 erano state inserite in github, dalle versioni successive dovrebbero già esistere; verificare prima di modificare il codice)
 
• cercare
// Usefull for layout.tpl

• aggiungere dopo

'EU' => $infos['id_country'] == 2 || $infos['id_country'] == 3 || $infos['id_country'] == 236 || $infos['id_country'] == 74 || $infos['id_country'] == 76 || $infos['id_country'] == 16 || $infos['id_country'] == 20 || $infos['id_country'] == 86 || $infos['id_country'] == 7 || $infos['id_country'] == 8 || $infos['id_country'] == 1 || $infos['id_country'] == 9 || $infos['id_country'] == 143 || $infos['id_country'] == 26 || $infos['id_country'] == 10 || $infos['id_country'] == 125 || $infos['id_country'] == 131 || $infos['id_country'] == 12 || $infos['id_country'] == 139 || $infos['id_country'] == 13 || $infos['id_country'] == 14 || $infos['id_country'] == 15 || $infos['id_country'] == 36 || $infos['id_country'] == 37 || $infos['id_country'] == 193 || $infos['id_country'] == 18 || $infos['id_country'] == 17 || $infos['id_state'] == 315 || $infos['id_country'] == "",
($infos['id_state'] == 315 reappresenta la nuova "provincia" Spain in regime IVA. Come detto prima, in maniera analoga andrà esclusa qualsiasi altra zona con esenzione IVA)
 
• aprire /themes/default/order-carrier.tpl
• cercare
{if $use_taxes == 1}
{convertPrice price=$option.total_price_with_tax} {l s='(tax incl.)'}
{else}
{convertPrice price=$option.total_price_without_tax} {l s='(tax excl.)'}
{/if}

• modificarlo in

{if $priceDisplay == 1 OR $EU != 1}
{convertPrice price=$option.total_price_without_tax} {l s='(tax excl.)'}
{else}
{convertPrice price=$option.total_price_with_tax} {l s='(tax incl.)'} 
{/if}

• aprire il file /themes/default/product.tpl

• cercare
<!--{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) OR !isset($display_tax_label))}
{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
{/if}-->

• modificare in

{if $tax_enabled}
{if $priceDisplay == 1 OR $EU != 1}<span class="our_price_display_tax">{l s='tax excl.'}</span>{else}<span class="our_price_display_tax">{l s='tax incl.'}</span>{/if}
{/if}

• cercare

<!-- {if $tax_enabled && $display_tax_label == 1}{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if} -->

• modificare in

{if $tax_enabled}{if $priceDisplay == 1 OR $EU != 1}<span class="our_price_display_tax">{l s='tax excl.'}</span>{else}<span class="our_price_display_tax">{l s='tax incl.'}</span>{/if}{/if}

• aprire /themes/default/css/product.css

• cercare
.our_price_display {
padding-bottom:10px;
font-weight:bold;
font-size:24px;
line-height:18px;
color:#9b0000
}

• aggiungere dopo

.our_price_display_tax {
padding-bottom:10px;
font-weight:bold;
font-size:11px;
line-height:18px;
color:black
}

• aprire /themes/default/modules/blockcart/blockcart.tpl

• cercare:
{if $use_taxes && $display_tax_label == 1 && $show_tax}
{if $priceDisplay == 0}
<p id="cart-price-precisions">
{l s='Prices are tax included' mod='blockcart'}
</p>
{/if}
{if $priceDisplay == 1}
<p id="cart-price-precisions">
{l s='Prices are tax excluded' mod='blockcart'}
</p>
{/if}
{/if}

• cambiare in:

{if $use_taxes && $show_tax}
{if $priceDisplay == 1 OR $EU != 1}
<p id="cart-price-precisions">
{l s='Prices are tax excluded' mod='blockcart'}
</p>
{else}
<p id="cart-price-precisions">
{l s='Prices are tax included' mod='blockcart'}
</p>
{/if}
{/if}

• aprire /classes/pdf/PDFGenerator.php

• cercare:
public function writePage()
{
$this->SetHeaderMargin(5);
$this->SetFooterMargin(18);
$this->setMargins(10, 40, 10);
$this->SetAutoPageBreak(true, PDF_MARGIN_BOTTOM);


$this->AddPage();


$this->writeHTML($this->content, true, false, true, false, '');
}

• correggere la stringa:

$this->setMargins(10, 40, 10);

• in:

$this->setMargins(10, 5, 10);

• aprire /classes/pdf/HTMLTemplateInvoice.php

• cercare:
$this->title = HTMLTemplateInvoice::l('Invoice ').' #'.Configuration::get('PS_INVOICE_PREFIX', $id_lang, null, (int)$this->order->id_shop).sprintf('%06d', $order_invoice->number);

• cambiare in:

$this->title = Configuration::get('PS_INVOICE_PREFIX', $id_lang, null, (int)$this->order->id_shop).sprintf('%06d', $order_invoice->number);

• cercare:

'tax_exempt' => $tax_exempt,

• aggiungere prima:

'EU' => $address->id_country == 2 || $address->id_country == 3 || $address->id_country == 236 || $address->id_country == 74 || $address->id_country == 76 || $address->id_country == 16 || $address->id_country == 20 || $address->id_country == 86 || $address->id_country == 7 || $address->id_country == 8 || $address->id_country == 1 || $address->id_country == 9 || $address->id_country == 143 || $address->id_country == 26 || $address->id_country == 10 || $address->id_country == 125 || $address->id_country == 131 || $address->id_country == 12 || $address->id_country == 139 || $address->id_country == 13 || $address->id_country == 14 || $address->id_country == 15 || $address->id_country == 36 || $address->id_country == 37 || $address->id_country == 193 || $address->id_country == 18 || $address->id_country == 17 || $address->id_state == 315,

• aprire /modules/bankwire/views/templates/front/payment_execution.tpl

• cercare
{if $use_taxes == 1}
     {l s='(tax incl.)' mod='bankwire'}
    {/if}

• sostituire con

{if $priceDisplay == 1 OR $EU != 1} {l s='(tax excl.)' mod='bankwire'}{else} {l s='(tax incl.)' mod='bankwire'}{/if}
(in caso interessi ho postato una guida su come modificare il modulo bonifico per ricevere un bonifico solo in euro ma con uno shop multivaluta)
 
sostituire i template nella cartella /pdf/ con quelli personalizzati allegati a questo post (o correggere il codice dei propri se si vuole mantenerli, sono cambiamenti semplici)
 
Con questo dovrebbe funzionare tutto come negli screen allegati sopra. A molti credo non interessi molto tutta 'sta roba, ma magari a qualche altro maniaco come me...  :D
 
PS: ho provato a suggerire nel bugfix o in github tutto questo (e altro), ma boh, alcuni sono rimasti senza risposta, altri sono stati inseriti nel github ufficialmente ma nel complesso tra inglese e fatica per spiegarsi e poche risposte dall'altra parte lo posto solo qui, poi ciascuno ne faccia ciò che vuole!
 
template pdf: attachicon.gifpdf.zip

 

 

Ciao,

Una sola domanda, ho installato prestashop 1.5.6.0 e volevo configurare per vendite internazionali,

come faccio a configurare prestashop per non fargli applicare le tasse (iva sui prodotti e sulle spese di spedizione) ad esempio per paesi tipo russia piuttosto che albania o paesi extra UE in generale?

 

Grazie anticipatamente per la risposta.

Link to comment
Share on other sites

Ciao,

Una sola domanda, ho installato prestashop 1.5.6.0 e volevo configurare per vendite internazionali,

come faccio a configurare prestashop per non fargli applicare le tasse (iva sui prodotti e sulle spese di spedizione) ad esempio per paesi tipo russia piuttosto che albania o paesi extra UE in generale?

 

Grazie anticipatamente per la risposta.

Ho provato a fare le modifiche cosi come da te suggerite , ma adesso l'eshop mi da pagina bianca nel frontoffice. Il back Funziona ancora.

Link to comment
Share on other sites

Ho provato a fare le modifiche cosi come da te suggerite , ma adesso l'eshop mi da pagina bianca nel frontoffice. Il back Funziona ancora.

Ciao,

se ti da pagina bianca probabilmente c'è qualche errore nelle modifiche fatte (basta poco eh).

In ogni caso nessuna paura, basta annullare le modifiche. Se non hai fatto una copia di backup prima di modificare, puoi semplicemente copiare-incollare i file originali.

 

Per scalare l'IVA, devi installare il modulo di default Partita IVA Europea. Con questo l'IVA viene scalata automaticamente se un componente la UE si iscrive con p.iva e se si registra un extra UE.

Prima di concludere la transazione, però, controlla SEMPRE all'agenzia delle entrate

http://www1.agenziaentrate.gov.it/servizi/vies/vies.htm

che la partita iva sia effettivamente valida, altrimenti rischi di smenarci tu l'iva...

Con le modifiche che ho fatto, l'etichetta "iva incl", iva excl." funziona, tieni presente che, come detto nel primo post:

 

COSA NON FUNZIONA:

non ho curato tutti gli aspetti che non utilizzo: carta regalo, ecotassa, IVA differente dal 22%, fattura B2B, fatture di restituzione, forniture, e altre cose un po' specifiche.

 

Fammi sapere

Link to comment
Share on other sites

  • 1 month later...

Ciao a tutti, senti Viger  ho seguito il post e ne sto girando anche altri senza trovare una vera e propria soluzione o almeno n proprio. Ho un ecommerce con un modulo installato a pagamento che si chiama Erilab Groups che fa si che in fase di registrazione mi dia la possibilità di scegliere tra visitor, Customer e Business. A questi gruppi ci sono impostati poi dall'interno dei prodotti, le varianti di prezzo. Se uno entra come business il prodotto "lampada" esempio lo vedrà a 10 anzichè a 25 come un utente privato. Fin qua ci siamo ho già effettuato tale modifica col modulo, ho bisogno però di dover fare delle altre modifiche che non trovo: 
 
1) assegnare solo al gruppo Business le tasse al 22% essendo per aziende dovranno vedere il prezzo iva escl + iva al 22 al Checkout, non mi appaiono nemmeno le etichette affianco al prezzo (1.5.6.2 in uso)
 
2) sempre al gruppo Business impostare un valore minimo di € 1.000 per poter convalidare l'acquisto e qua forse ho trovato il modo sempre nel forum mi hanno detto come fare e dove intervenire ma è da provare.
 
3) aggiungere ai campi di registrazione P.IVA e CF 

 

gli account che accederanno come privati o visitor vedranno direttamente il prezzo finale tipo 35 euro + spedizione e basta.

 

Chi mi da una mano?

Link to comment
Share on other sites

  • 7 months later...

Salve a tutti,

sono un newbie nell'uso di prestashop. Ho un piccolo problemino, riguardo l'iva. Uso prestashop 1.5.6.0 in particolare il seguente problema. Quando effettuo una vendita in italia Nel totale fattura,  non mi viene calcolato l'iva sule spese di trasporto. Oppure  quando effettuano un ordine dall'estero, anche in quel caso viene applicata l'iva, non sulle spese di trasporto ma solo sulla merce, anche se non dovrebbero essere soggette ad IVA. non so se mi sono spiegato bene.

Acquisto dall'italia, nel totale fattura non mi vengono aggiunte l'iva sulle spese di trasporto.

Acquisto dall'estero spese di spedizione ok, ma mi viene aggiunto l'iva sulla mercce.

 

Help me.

Link to comment
Share on other sites

 

Acquisto dall'italia, nel totale fattura non mi vengono aggiunte l'iva sulle spese di trasporto.

Acquisto dall'estero spese di spedizione ok, ma mi viene aggiunto l'iva sulla mercce.

 

 

 

Ciao!

Dunque, per l'IVA nelle spese di trasporto, devi vedere che sia impostata l'applicazione della tassa nella schermata Spedizione==>Corrieri nella seconda scheda "Destinazione ecc ecc". Qui imposti se la spedizione è assoggettata a IVA o meno.

 

Quanto alla spedizione all'estero, non è chiaro cosa intendi per estero, se UE o extra-UE. In caso leggi bene il primo post del thread dove sono spiegate le varie casistiche  ;)

Link to comment
Share on other sites

ciao probabilmente sono ot ma non so proprio come cercare per modificare una variabile che riguarda proprio tasse escluse e tasse incluse... vi spiego meglio ho impostato un minimo d'acquisto totale perché un ordine sia convalidato dalle impostazioni ordini, dove lo vuole tasse escluse... solo che il messaggio di errore, quando non raggiungo la cifra minima richiesta, al check out continua ad essere tasse escluse e risulta poco pratico fare calcoli con il nostro regime al 22%... vi posto uno screen per farvi capire meglio..

ora volevo sapere se era possibile far uscire nel messaggio di errore direttamente il prezzo iva inclusa

vi ringrazio anticipatamente ciao

 

ScreenShot005.jpg

Link to comment
Share on other sites

  • 1 year later...

Ciao, ho un problema simile..cioè ho attivato sia il modulo di default europeo vat number e attvato IL B2B in customers

 

 
Uso la versione 1.6.1.3 di prestashop 
devo fare le stesse cose hai scritto su? chiedo onde evitare un lavoro per nulla
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...