2012-05-04 15 views
6

Używam Magento i mam problem z wyświetlaniem sum.Magento Dodaj podatek transportowy do podziału podatkowego i sumy łącznej

W tej chwili mam to:

Subtotal: £10.00 
Shipping & Handling: £5.00 
Tax (at the moment just using 20% of Subtotal) (20%):£2.00 
Grand Total: £17.00 

więc powinien wyglądać następująco:

Subtotal: £10.00 
Shipping & Handling: £5.00 
Tax (need it to be 20% of subtotal AND 20% of shipping & Handling) (20%):£3.00 
Grand Total: £18.00 

Jak widać podatkowej upadł od £ 2.00 do £ 3.00 jak muszę go wziąć 20% opłaty za wysyłkę &, a także 20% opłaty częściowej?

+0

Jakiej wersji na Magento używasz? – chawkinsuf

Odpowiedz

8

Przejdź do System -> Konfiguracja -> Sprzedaż -> Podatek -> Klasy podatkowe i zmień listę na Tax Class for Shipping z powrotem na Shipping i ponownie sprawdź swoje sumy.

+0

Próbowałem tego, ale nie spowodowało to różnic w stosunku do sum. Jakieś pomysły? – Matt

+0

Inne rzeczy do obejrzenia to: Admin -> System -> Konfiguracja -> Sprzedaż -> Podatek -> Ustawienia obliczania. Spróbuj zmienić te ustawienia. – seanbreeden

+0

Żadne z tych ustawień nie robi różnicy Mogę pokazać cenę wysyłki w dwóch liniach, w tym w Podatek i w jednym z Podatkiem, ale cena z Podatkiem nie dodaje się do samej Linii Podatkowej ani Wielkiej Sumy, bez względu na to, co mogłaby być. problem z szablonem? – Matt

1

Szybkim i brudnym sposobem na to byłoby zastąpienie szablonu koszyka/totals.phtml i użycie $this->getTotals() z bloku sum i ręczne wyświetlenie żądanych sum.

Jeśli chcesz mieć bardziej przejrzysty i odpowiedni sposób robienia tego, szablony w folderze podatkowym kontrolują sposób renderowania tych elementów. Podatek ma w szczególności dwa bloki, które korzystają z szablonu, jeden dla koszyka i jeden dla kasy. Nie pamiętam dokładnych imion atm. Jeśli chcesz dodać tę funkcję do bloku, wówczas zastąp oba bloki. Jeśli wolisz zrobić to w szablonie, pamiętaj, że masz dostęp do wszystkich bloków, które będą renderować stronę w czasie szablonu. Możesz powiedzieć: Mage::app()->getLayout()->getBlock('block.name'); Nie jestem pewien, czy cały blok wysyłki będzie miał informacje, których szukasz w tym momencie, ponieważ mogą być tworzone dynamicznie przez blok sumy koszyka. Jeśli tak jest, to musisz najpierw uzyskać blok sumaryczny Mage::app()->getLayout()->getBlock('cart.totals.block.name') i wywołać na nim getTotals(). Wtedy możesz uzyskać 20% niezależnie od sumy wysyłki.

+0

Seanbreeden ma lepszą odpowiedź. Nigdy nie użyłem tego ustawienia, ale wygląda na to, że robi się tak jak w reklamie. – Droydn

1

Po prostu ustaw wartość Tax Class for Shipping na Taxable Goods. Dopóki wszystkie produkty są ustawione w klasie podatkowej Taxable Goods, podatek będzie zawierał podatek od wysyłki.

0

Dodatkowo do zamiar System -> Configuration -> Sales -> Tax -> Tax Classes i zmieniając Tax Class for Shipping spaść do Shipping jak sugeruje seanbreeden, należy również upewnić się, że nie ma Tax Rule stosowane na ShippingTax Class.

W tym celu przejdź do Sales -> Tax -> Manage Tax Rules i filtruj według poprawnych Customer Tax Class i Product Tax Class = .

Jeśli istnieją reguły, kliknij je jeden po drugim, a zobaczysz, jaka stawka zostanie zastosowana na Shipping. Jeśli chcesz wyłączyć podatek od wysyłki, usuń Shipping ze wszystkich znalezionych Tax Rules.

Powiązane problemy