Jump to content
divnet

Zmiana przeliczania cen ze względu na podatek dla wybranego języka

Recommended Posts

witam

 

używam prestashop 1.6.0.9

 

ceny artykułów niestety są przeliczane przez odpowiedni podatek dopiero po zalogowaniu się klienta.

czy jest możliwe biorąc znacznik wybranego języka np: PL zmienić wartość podatku na odpowiedni dla danego kraju z wybranej wcześniej reguły tak, aby bez logowania dla danego języka/kraju wyświetlała się właściwa cena?

 

gdzie szukać odpowiedniego pliku / funkcji odpowiedzialnej za przeliczanie cen?

 

Marcin

 

Share this post


Link to post
Share on other sites

Masz źle ustawione wyświetlanie cen dla grupy klientów "Odwiedzający" i "Gość".

Powinno być brutto.

Share this post


Link to post
Share on other sites

Dziękuję za odpowiedź!

Mam brutto tylko wyświetla mi ceny z domyślnego kraju, a nie bierze pod uwagę języka i waluty w jakiej wyświetla.

Przykład - na polskę mam 23% na danię 25% VAT

Jeśli ktoś wyświetla ceny w koronach duńskich powinien dostać ceny z podatkiem 25% - niestety dostaje 23% i dopiero po zalogowaniu się ceny mu się zmieniają.

Share this post


Link to post
Share on other sites

To okropne głupoty w tym swoim sklepie poustawiałeś :(

Proponuję konsultacje z jakimś księgowym, na pewno włos mu się zjeży na głowie.

Od kiedy to się sprzedaje z podatkiem państwa do którego sprzedajesz???

Co cię interesuje jakie są podatki w Papui Nowej Gwinei, albo w Republice Środkowego Konga?

Share this post


Link to post
Share on other sites

Poczytałem i faktycznie masz rację. Jak widać urzędnicy-bolszewicy z Brukseli nie próżnują i ciągle tworzą jakieś nowe zagmatwane przepisy podatkowe.

Wracając do Twojego pytania, to raczej dla niezalogowanego klienta nie ma sensu tworzyć takiej funkcjonalności.

1. według wybranego języka, co w przypadku jak np. wybierze niemiecki? podatek z Austrii, z Niemiec, czy polski podatek, bo jest Szwajcarem i nie jest z UE

2. według waluty, całkowicie odpada, bo w większości państw jest euro

3. można by się pokusić o walidację jego IP z którego wszedł do sklepu, ale też lipa, bo jak wejdzie z TOR browsera, to pokaże że klient jest z np. z Singapuru, a na prawdę wszedł np. z Niemiec

4. podatek kraju nabycia można zastosować tylko po przekroczeniu limitu danego kraju, jeśli klient jest np. z Niemiec to do 100 000 euro netto całego zamówienia trzeba mu sprzedać z 23% VAT, a powyżej 100 000 euro z 19% VAT, żeby to było jeszcze bardziej pogmatwane, to każdy kraj ma swoje różne limity

5. klienci z europejskim numerem VAT, w ich przypadku obowiązuje procedura wewnątrzwspólnotowego nabycia, czyli sprzedaż z VAT 0%

 

Także podsumowując, jest to możliwe, ale na poziomie koszyka dla zalogowanego klienta, który już określi adres dostawy.

I oczywiście wymaga to modyfikacji presty, aby była walidowana wartość netto koszyka według limitu nabycia każdego z państw UE i wtedy zastosowany odpowiedni podatek.

Share this post


Link to post
Share on other sites

uzywając modułu jaki kupiłem autolanguagecurrency jestem wstanie określić z jakiego kraju jest klient

poniżej logi jakie generuje ten moduł

http://www.intimowoman.com/modules/autolanguagecurrency/log.html

 

tylko nie wiem teraz gdzie mogę wpisać zmianę defaultowego VAT-u na taki wpisany w grupę podatkową przypisany do kraju, który mamy z modułu wyżej

 

Jest do zrobienia tylko potrzeba trochę czasu by przeszukać wszystkie pliki gdzie są i jak wygladają funkcje i konstruktory dla kalkulacji cen a trochę go szkoda.

 

Miałem nadzieję, że ktoś mnie tu nakieruje na dobry tor a resztę już sobie poradzę :)

Share this post


Link to post
Share on other sites

uzywając modułu jaki kupiłem autolanguagecurrency jestem wstanie określić z jakiego kraju jest klient

Nie tak do końca, jak pisałem wyżej, jak wejdzie przez TOR-a to będziesz miał IP z całego świata.

 

A co z limitem?

Cytat z artykułu jaki podałeś:

"Pod warunkiem, że wartość sprzedaży za granicę nie przekroczy określonego limitu, jaki ustala sobie każdy kraj członkowski dla wysyłanych lub transportowanych towarów. Limit przeliczany jest na złote, a do całkowitej wartości nie wlicza się kwoty podatku. Aktualnie limity wynoszą od 35 000 euro (np. w Austrii i Belgi) do 100 000 euro (w Niemczech i we Francji)."

 

Wyświetlając w produkcie np. niemiecki vat 19% będziesz wprowadzał klienta w błąd, bo musi nawalić do koszyka towarów za 100 000 euro, żeby mieć taki vat.

Share this post


Link to post
Share on other sites

sprzedaż nie jest związana z danym klientem tylko limit jest związany z krajem do jakiego wysyłasz towar czyli jeśli na niemcy wyślesz przez cały rok towaru za kwotę przekraczającą wartość limitu będziesz musiał z własnej kieszeni regulować różnice. Z niemcami nie jest to problem bo mają mniejszy VAT ale np Dania ma 25% i w tym momencie będziesz musiał dopłacić 2% od całej sprzedaży na ten kraj.

rozliczenie będę stosował od nowego roku więc mam jeszcze chwilę na zmiany w systemie ale wolalbym mieć już to zrobione i działające.

 

Jeśli ktoś wejdzie przez TOR to jego sprawa (to ma tylko pomóc klientom) I tak będzie miał weryfikowane ceny po zalogowaniu się i podaniu swojego adresu.

 

Bardziej mi zależy aby klienci nie byli wprowadzani w błąd jeśli chodzi o cenę na wstępie gdyż różnica ceny między towarem przez zalogowaniem a po zalogowaniu może być denerwująca i odstraszająca nabywcę.

Share this post


Link to post
Share on other sites

OK jeśli jestes w stanie określić jaki ISO_CODE ma kraj z którego łączy się klient możesz zmieniając parametry

 

if(_PS_VERSION_ >'1.5')

{
if($this->isCountryActive($geolocation->countryCode) == '0')
 
$id_country_by_location = $defaultCountry->id;
 
else
 
$id_country_by_location = Country::getByIso($geolocation->countryCode);
 
}
 
if(_PS_VERSION_ >'1.5')
{
 $this->setNewDefaultCountry($id_country_by_location,$id_language_by_location);
}
 

 

function isCountryActive($iso_code)

 
{
 
return Db::getInstance()->getValue('SELECT `active` FROM `'._DB_PREFIX_.'country` WHERE `iso_code` = \''.pSQL(strtolower($iso_code)).'\'');
 
}

 

function setNewDefaultCountry($id_country_by_location, $id_language_by_location)
{
$defaultCountry = new Country($id_country_by_location,$id_language_by_location);
$context = Context::getContext();
$context->country=$defaultCountry;
 
return;
}
 
ustawić właściwe przeliczanie podatku i wyświetlania cen dla danego klienta/kraju

Share this post


Link to post
Share on other sites
Dnia 8.10.2015 o 7:37 PM, divnet napisał:

sprzedaż nie jest związana z danym klientem tylko limit jest związany z krajem do jakiego wysyłasz towar czyli jeśli na niemcy wyślesz przez cały rok towaru za kwotę przekraczającą wartość limitu będziesz musiał z własnej kieszeni regulować różnice. Z niemcami nie jest to problem bo mają mniejszy VAT ale np Dania ma 25% i w tym momencie będziesz musiał dopłacić 2% od całej sprzedaży na ten kraj.

rozliczenie będę stosował od nowego roku więc mam jeszcze chwilę na zmiany w systemie ale wolalbym mieć już to zrobione i działające.

 

Jeśli ktoś wejdzie przez TOR to jego sprawa (to ma tylko pomóc klientom) I tak będzie miał weryfikowane ceny po zalogowaniu się i podaniu swojego adresu.

 

Bardziej mi zależy aby klienci nie byli wprowadzani w błąd jeśli chodzi o cenę na wstępie gdyż różnica ceny między towarem przez zalogowaniem a po zalogowaniu może być denerwująca i odstraszająca nabywcę.

Co prawda stary temat ale ktoś może będzie potrezbował - limity są i jesteś zobowiązanych ich kontorlować aby po ich przekroczeniu zgłosić sie do rozliczania VAT w danym karju w którym osiągnołeś limit sprzedaży w tym wysyłkowej , ale nic nie soti na przeszkodzie aby zarejestrować sie dodatkowo w innych karjach jako ich podatnik VAT i tam rozliczać z VAT przed osiągnieciem limitu - wszytsko zalezy od sklali kosztów obsługi ksiegowej

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More