Hello, Commerce 0.7.0

Another big Commerce release is now available. This release brings some long-awaited improvements, bug fixes, and a few new features, too.

Breaking changes in 0.7

  • Price fields/TVs for resource products are now assumed to be specified as numbers with decimals, instead of an integer representing cents. This can be disabled with the commerce.resourceproduct.price_field_decimals system setting to restore the old behaviour of expecting a number in cents.

Highlights of Commerce 0.7

  • You can now delete stuff from the dashboard :tada: Some types of items are soft-delete, meaning they stay in the database for reporting and existing data integrity, but are hidden from the dashboard. Some others are completely wiped upon delete. The delete form tells you what it is.
  • Customers no longer see a message that their order is free right after they paid.
  • Mollie and other webhook-based payment methods now handle cancelled/failed transactions better.
  • Total order estimates when viewing shipping methods now correctly excludes previously selected shipping methods.
  • More transaction information is now visible from an order detail page
  • Resource products now expect decimals in the price field/TV instead of cents.
  • New commerce.get_cart snippet to show a mini-cart in a header, sidebar, etc.

Full Changelog for 0.7.0-pl

  • [checkout] Prevent “Your order is free” message right after paying an order [#145]
  • [checkout] Fix incorrect total estimate on shipping methods when going back to shipping step after selecting a method before [#146]
  • [checkout] Fix incorrect shipping calculation when sending cart info to payment provider
  • [checkout] Fix incorrect classes on buttons in Pending Transactions view [#144]
  • [checkout] Add support for continuing an off-site transaction from the pending transactions view
  • [dashboard] Slightly change statuses grid to have buttons in the actions menu
  • [dashboard] Add ability to (soft) delete payment methods, shipping methods, currencies, statuses (incl. changes and actions), tax groups (incl. rules), products …
  • [dashboard] Ensure missing weight_units would not cause fatal errors in the dashboard
  • [dashboard] Add new transaction view, accessible via an order’s list of transactions, to expose more information and error messages
  • [dashboard] Add event to add checks to the configuration checklist [#79]
  • [dashboard] Coupons module now adds a check to the configuration checklist to make sure active coupons are available
  • [payments] Improve transaction handling of webhook-based gateways (e.g. Mollie), with more solid cancelled/failed checking, proper response on webhook, and improved messages in log and checkout [#143]
  • [payments] Prevent double slash in webhook url
  • [products] Include price in resource product sync [#147]
  • [products] Add setting (resourceproduct.price_field_decimals) to allow resource product price TVs to be defined with decimals [#131]
  • [settings] All settings now have lexicons and descriptions to explain their purpose. [#98]
  • [snippets] Add commerce.get_cart snippet to list cart information outside the actual cart/checkout [#126]
  • [snippets] Add (temporary!) checkoutClass property to checkout snippet to allow specifying checkout class
  • [statuses] Make comStatus and comProduct objects use soft delete instead of hard delete

Almost at beta…

Every release brings us a step closer to the Commerce beta. There’s just a few more (potentially breaking) changes that I need to work on, and some additional ideas I’d like to explore first.