Closed tonobo closed 8 years ago
Usually you want to setup your tax rates and prices with including tax. Then Solidus starts to refund your taxes for customers outside of the EU.
But, that's wrong.
Please wait for @mamhoff finishing his work and/or contact one of us (we work together at magic labs, a German Spree/Solidus integrator) in order to setup your system following German tax laws. We are quite familiar with it ;)
Linking #519
And linking #522
I'm going to leave this open for now until we have support for VAT in solidus, but aye I echo @tvdeyen's comments that your best bets are to wait for better support from the two PR's linked or poke the magiclabs guys offline.
We know handling VAT better is a big issue for the platform and the German folk involved are doing a great job to try and get support in for 1.2.
Currently, what Solidus does is the following: If your customer's tax_zone
is outside your default_tax_zone
, and the line items in your customer's orders do not have tax categories for which there are tax_rate
s which are VATs (included_in_price
). This sounds complex? Yep, it is, and it's also not exactly correct.
However: If you're in Europe, and you don't care that your customers have line items with German prices in their carts, Spree will produce a strange "VAT refund" for every line item, so your customers, in the end, will get the correct price.
This only holds true for two cases, though:
If your needs go beyond that, you'll have to wait for a bit.
Yeah thats exactly what i want, within german or the eu everybody needs to pay the german vat. Otherweise it must be refunded. The tax will be calculated by line item? If yes, does it also contains promition adjustments? Normally there where no problem to setup a custom tax calculator but i wasn't able to calculate all promotions. But thanks a lot guys, good work ;)
You should be able to set this up with Solidus as it is right now. Create a zone for Europe with all of Europe inside (I do believe there's a seed that can do this for you). Make this zone your default zone. Add a tax rate: 19%, included in tax, zone: Your only zone. Solidus will do the right thing.
Promotions get adjusted as well (tax is always calculated after promotions). This does mean that if you were to give a fixed-sum promotion on a line item, your US customer would only get the net value of that fixed-sum (which is actually the correct thing to do IMO).
There's also no need to write a custom tax calculator, this works out of the box.
Things Solidus can't deal with for the time being:
Don't use order-wide promotions if you can avoid them. They're a bookkeeping nightmare. ;)
As we now also have #706, I'm closing this issue. We're hoping to get these cleaned up in time for 1.3 out the door, sorry its currently such a hassle.
I echo Martin's warning about order-wide promotions being a book-keeping nightmare.
Heyho,
I'm a german guy and I want to use sales prices, so I setup a tax zone wich describes that the prices which are in this zone should contain the tax of 19% german vat. German legals requires to countries which are not in EU zone should pay your own tax. so i need to reduce the gross/sales price with 19%, easiest way so calculate "/ 1.19" to get the master price. Currently i don't know how to do this. My first idea was to setup a negative tax, but this results a wrong calculation (which makes sense, it calculates with master price). Custom tax calculator is also not possible because it woudn't allow me to access promotions, or i'm wrong? Is it a known problem? is there a workaround? My hotfix in spree version 2.3 was to tag a processed order from calculator and process only per order intead of each line item, but this is not the pretty way.
regards tim