Commerce now in alpha

Commerce makes it easy to sell online exactly the way you want. Extend functionality with our Payment Methods and Modules or build your own.

Recent Releases

Commerce 0.5.0-pl

Released on 2017-03-17 (Commerce Channel)

  • [dashboard] Fix product and order links on the dashboard
  • [dashboard] Prevent issue loading modules from breaking the backend
  • [dashboard] Fix issue in Firefox where prices could not be edited [#130]
  • [dashboard] Add license status to the configuration checklist [#106]
  • [checkout] Fix enter in the cart quantity field submitting with the remove item button
  • [checkout] Fix cart/checkout when friendly urls are off, and the xhtml_urls setting is on [#128]
  • [gateways] Rewrite client-side payment handling
  • [gateways] Add gateway, using the Accept.js integration (on-site JavaScript AIM)
  • [gateways] Add MultiSafePay gateway
  • [orders] Fix PHP notice: Undefined index: total
  • [setup] Use PHP 5.3 array style in setup options to make sure install doesn't break before the requirements validator
  • [emails] Add new email templates for order confirmation and shipping notifications
  • [modules] Log an error when a module class can't be loaded
  • [snippets] Fix get_product and get_products snippet not being installed
  • [snippets] Fix get_products snippet not loading all products when separated by a comma

Commerce 0.4.0-pl

Released on 2017-02-13 (Commerce Channel)

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


  • [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.

Commerce 0.3.2-pl

Released on 2017-01-31 (Commerce Channel)

  • [checkout] Remove placeholder text in the cart form
  • [checkout] Don't show coupon form if the coupon module isn't enabled
  • [checkout] Replace coupon form with a link that shows the form

Commerce 0.3.1-pl

Released on 2017-01-23 (Commerce Channel)

  • [statuses] Fix processing > completed state change not running
  • [reports] Fix period selector not working on Daily Sales chart
  • [reports] Add stock and weight to product and top products reports
  • [checkout] Add sort order to payment and shipping methods
  • [dashboard] Load frontend lexicon in the manager as well to fix some missing shared lexicon entries
  • [dashboard] Fix filtering on customer/address in orders grid
  • [dashboard] Increase connect timeout on HTTPS check to make sure it has enough time to fully run
  • [dashboard] Make modal close button work [#96]
  • [dashboard] Fix missing error messages on textarea fields
  • [dashboard] Fix creating email status change action [#115] / bug where properties aren't available in getModelFields on new objects
  • [i18n] Fix missing pricing lexicon on product form
  • [i18n] First translations included thanks to community help: NL, FR and DE (

Commerce 0.3.0-pl

Released on 2017-01-18 (Commerce Channel)

  • Add shipping method restriction by country
  • Add weight + weight unit support for products, and shipping method by weight to accompany it
  • Make all product information available via {{ item.product. }} in cart/checkout templates
  • Organise lexicons somewhat and enable translations via CrowdIn

Merchant dashboard tweaks:

  • Add better editing UI for shipping method by country
  • Progressively enhance currency/price fields with currency formatting
  • Improve hover and focus styles [#89]
  • Improve configuration checklist styling [#75]
  • Improved modal styling [#55] + close button [#96]
  • Fix alignment of toolbar buttons [#82]
  • Some quick tweaks towards a more responsive manager

Breaking changes in this release:

  • comProduct received a new method: getWeight which returns a PhpUnitsOfMeasure\PhysicalQuantity\Mass instance.

Commerce 0.2.1-pl

Released on 2017-01-14 (Commerce Channel)

  • Fix requirements validator having the check backwards

Commerce 0.2.0-pl

Released on 2017-01-13 (Commerce Channel)

New features:

  • [security] Implement CSRF tokens in the merchant dashboard
  • [taxes] TaxJar integration added via module for automatic US Sales Tax calculation
  • [taxes] Internal (module-managed) tax rates are now exposed under Configuration > Tax Rates
  • [taxes] Add configurable rate and reverse charge mechanism (w/ EU VAT Validator module) added to EU VAT module
  • [checkout] Add tracking of order log entries before the order is persisted to the database
  • [checkout] New module EU VAT Validator which checks for a vat_registration address field and validates it against the VIES web service
  • [dashboard] Add ability to set default currency from the merchant dashboard
  • [reports] Add support for composite headers (e.g. combining product name and currency into name) to reports
  • [reports] Add support for multiple datasets in report charts
  • [reports] Add pie chart type and 2 pie charts on the top products report
  • [products] comProduct->getPrice now returns a Price object that is linked with the currency (for potential multi currency support)
  • [products] Add comProduct.stock field and getStock/updateStock methods, also added to the standard comProduct fields and grid
  • [products] New Update Stock module to automatically reduce the stock when an order is paid in full


  • [taxes] Clean up no longer correct tax records in EU VAT module (e.g. after changing billing country)
  • [checkout] Don't count shipping/transaction price in determining if a shipping/payment method is available for an order
  • [dashboard] Handle exceptions triggered by invalid CSRF token or other errors more cleanly
  • [reports] Implement real revenue data, period and group by currency option on TopProducts report
  • [reports] Add multiple datasets to TopProducts and Sales report charts
  • [reports] Divide financial amounts in reports/charts by 100
  • [reports] Change Bar chart type to be a Bar instead of horizontalBar


  • Disable PaymentSense gateway, not yet implemented
  • Make sure exports are filtered on the current mode where appropriate
  • Fix missing placeholders for the response-messages.twig causing response errors and messages to not appear

Breaking changes in this release:

  • comProduct received 2 new methods: getStock, updateStock.
  • comProduct->getPrice now returns modmore\Commerce\Products\Price object which includes currency info
  • Minimum PHP version increased from 5.4.4 to 5.5.0

Commerce 0.1.1-pl

Released on 2017-01-10 (Commerce Channel)

  • Include polyfills and tweaks to the js to ensure IE10+ and Safari browser support

Commerce 0.1.2-pl

Released on 2017-01-10 (Commerce Channel)

  • Slight markup simplification in merchant dashboard for better experience on older browsers
  • Fix incorrect validation when editing a status that prevented creating a status with "draft" state
  • Add missing name field to currency form
  • Fix missing CSS scoping class causing conflicts in the manager
  • Add more currencies to setup (USD, EUR, GBP, RUB, BYN, CHF, CAD, AUD), and a default currency selector [#97]
  • Add setup options to create a cart and checkout resource automatically [#100]
  • Only show setup options if there are options available (so it isn't shown on upgrade, basically) [#95]
  • Add proper date + time field to editing coupon date fields [#92]
  • Rename Commerce->CommerceGrid and CommerceJS to Commerce
  • Fix filtering of grids
  • Add no results message to grids when there are no results [#88]

Commerce 0.1.0-pl

Released on 2017-01-09 (Commerce Channel)

  • Fix fatal error when viewing statuses
  • Remove unused "Find Available Modules" button
  • Fix incorrect description on customers module
  • Add note that the shop is in test mode
  • Make radio buttons for shipping/payment method selection visible in default frontend theme
  • Add "Manual" gateway that just creates a successful transaction for demo purposes

Commerce 0.1.0-rc1

Released on 2017-01-08 (Commerce Channel)

  • First packaged release of Commerce.

Open Issues

Below you will see a subset of known issues in Commerce. If you have any bug reports or feature requests, let us know.

  • No issue

  • navigateup

    Disclaimer: Viewing non-Euro pricing

    You are currently viewing prices in a non-Euro currency. Please be advised that these prices are estimates, based on data by Open Exchange Rates.

    While we offer this currency converter hoping our users find it convenient, all purchases are made in Euro, and the final amount charged can vary depending on payment provider, day, time of day and a number of other factors outside of modmore's control. There are no guarantees on accuracy and modmore nor Open Exchange Rates can not be held liable for errors.