Commerce 0.4 is here!
This release has a completely rebuilt taxes system. It’s now centered around tax groups with tax rules that define rate providers. If that sounds complicated, it’s because taxes are complicated, and also it is documented and explained in more detailed here.
The release also adds a Paymill payment provider, which is a Stripe-like payment provider available across Europe. While this provider wasn’t in the top list of payment providers to add, I needed it personally so there you go. By the time we get to the 4th batch of alpha invites, I expect to have another 2 gateways implemented, likely Authorize.net and SagePay.
Another cool new feature in 0.4 is bundle products. These are products made up from multiple other products. The bundle product will automatically get its stock and weight from the bundled products.
Two new snippets, get_product and get_products have also been added to help display product information on the frontend.
Here’s the 0.4 changelog with all the details:
Commerce 0.4.0-pl
New features:
- [taxes] Completely rebuilt taxes system based on Tax Groups, Tax Rules and Rate Providers. See documentation.
- [taxes] New “Manual” rate provider (alongside EU VAT and TaxJar) for manually defined tax rates
- [taxes] When address info is available (e.g. UserProfileAddress or AutoFillGeoIP module), expected taxes are calculated right away
- [checkout] Allow alternative field structure for the add to cart form, to easier support variations
- [checkout] Add UserProfileAddress module that prefills the customer address from a user profile, and can update profile as well.
- [frontend] Add get_product and get_products snippet to easily access product information in MODX
- [products] Add Bundle Products which get their weight and stock from the bundled products [#120]
- [dashboard] Add the products within a bundle to the order item grid
- [payments] Add support for Paymill payment provider
- [reports] Add new Collected Taxes report that exports all tax records assigned to order items
- [reports] Add new Coupon Codes export to get coupons created in a certain period
Improvements:
- [checkout] Make sure all forms set the action to {{ current_url }}
- [dashboard] Add footer rows to order item grid with various order totals/calculations
Bug fixes:
- [cart] Fix bug where invalid product IDs might get added to the cart anyway
- [adapter] Fix resource url generation not using the link_tag_scheme setting [S10959]
- [coupons] Make sure created coupons have a created_on and created_by set
- [coupons] Make sure comCoupon.last_used is updated when an order with coupon is processed
- [dashboard] Fix “enabled in test” checkbox being ticked when module is disabled
Breaking changes in this release:
- Taxes have been completely refactored; you will need to reconfigure them.