-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Solidus VAT Roadmap #989
Comments
@gmacdougall @jhawthorn Here's a list of open tax-related PRs, in order of which one to merge first for the least amount of friction: Core taxation system
Pricing
Drive-by refactorings
|
This issue seems quite out of date. Perhaps it's time to give it a freshening up in light of our intention to add related guides (#1606)? I'd love for the guide to reference any further planned development. |
I'll close this issue now as the refactoring in question is mostly done. The one point not tackled so far is time-aware tax rates, for which I'll create a new issue. |
For now, this roadmap is work in Progress.
Solidus' VAT system has been very crazy, and I'm working slowly on reducing that crazyness. In the past weeks, I've been slowly moving parts of the taxation system into service objects, as well removing some duplicate and terse logic.
Much of the refactoring is done, from here on we're mostly looking at extracting logic into service objects and adding functionality for handling VAT pricing more elegantly.
Refactoring
contains?
in tax_rate.rb #657 (Use Zone#contains? rather than checking for zone equality)Spree::TaxRate#compute_amount
#684 (Minor refactoring)ReturnItem
s useamount
instead ofpre_tax_amount
, making the return items having to know much less about taxes)Bugfixes
Spree::Product#prices
return all prices)Introduce service objects
Untangling of the "default zone"
Spree::Store
object #933 (Relieve the default tax zone of cart taxation responsibilies, make cart behaviour store-dependent)Necessary new features
The text was updated successfully, but these errors were encountered: