2025
Commerce Layer changelog for software updates, new features, and general improvements.
Last updated
Was this helpful?
Commerce Layer changelog for software updates, new features, and general improvements.
Last updated
Was this helpful?
Commerce Layer has always had built-in promotions that cover a large set of the most common use cases. If your promotional strategy requires a more flexible, custom, tailor-made logic, now you can leverage our new Rules Engine, one of the most powerful promotions engines in the market today. The Commerce Layer Rules Engine is a powerful tool designed to define and manage , from simple to complex, multi-conditional logic. It evaluates specific payloads to ensure are met, triggering corresponding . It is currently integrated with our Core API via and/or to let you create almost any kind or and rules.
Check the documentation, browse the use cases examples, and try it out! Any feedback is appreciated.
The Rules Engine integration is still in beta and available only to our enterprise customers. If you're one of them and want to test and leverage its functionalities reach out to us and request to be part of the beta program.
In the spirit of good spring cleaning 🌱 🌼 as previously announced well in advance, we kindly remind you that both the old Amin Area and the old authentication endpoints are officially sunsetted and no longer available, being replaced by:
Dashboard — The new Dashboard includes a wide set of dedicated back-office apps that cover all the functionalities of the old one. Plus, it comes with an improved user experience and a lot of new features.
Authentication — We've migrated the whole authentication process to our new Authentication API, as detailed in the related section of the documentation. You should already have updated your integration (by the way, the migration is super easy and can be achieved in very few steps).
Now you can change the list of the tags currently associated with a resource by adding or removing tags without the need to specify the new tags list as a whole. To do that, you can patch taggable resources and send the new _add_tags
and/or _remove_tags
trigger attributes by passing the comma-separated list of tags you want to add/remove. On top of that, in the past few days we released the following minor (but still relevant) updates to our APIs:
We've released a relevant chunk of updates regarding our Dashboard. As you may have noticed, the biggest one involves the UI, specifically the navigation menu. Now the old Apps section has been replaced by multiple dropdowns that group the apps by area/functionality:
Fulfillment — including Orders, Shipments, Customers, Returns, Stock transfers, and Subscriptions apps.
Products — including SKUs, SKU lists, Prices, and Inventory apps.
Marketing — including Promotions, Bundles, and Gift cards apps.
Data — including Imports, Exports, and Tags apps.
Developers — including the Webhooks app alongside the API credentials, Resources, and Custom apps sections.
This grouping is replicated also in the application membership section where you can choose to which app a member have access.
Sign up or log in to see for yourself and feel free to share your feedback!
As previously announced the old Admin Area has been definitively sunset and is no longer accessible from the Dashboard.
As a first release, the two new tax calculators are available via API only. The Dashboard Settings section will be updated soon — stay tuned!
On top of that, we released the following minor (but still relevant) tax-related updates to our APIs:
External prices can add notifications on the patched line item.
External shipping costs can add notifications on the patched shipping method.
Each external payment gateway's transaction (except for customer token) can add notifications to the associated order.
External promotions can add notifications to the order on which they are performing the discount computation.
External tax calculators can add notifications to the order on which they are performing the tax computation.
Still talking about external resources, we also added the option to pass two Trace Context headers so that you can easily trace the calls to your external endpoints on your APM. On top of that, we released the following minor (but still relevant) updates to our APIs:
— we change the type of the tracking_details attribute from object to array. This could be a potential breaking change. ⚠️
— we added the new running
status to track the time-window when the related order copy process is ongoing.
— we added the option to force the payment source related to the associated order event and ignore any other created payment sources (if any), upon receiving a successful event from Stripe.
You can now set a default and a for one or more . This way, the default methods will be used for all the market's not already associated with a payment method and all the that belong to the market's orders and that are not already associated with a shipping method. If an existing association of an order with a payment method or a shipment with a shipping method is removed, the association with the default ones will be automatically set. Remember that to be eligible for being set as default a must not be already associated with any market and a must not be already associated with any market, stock location, shipping category, and shipping zone.
We've just added a new entry to the roster of our commerce API endpoints. You can leverage the API to schedule a pickup from a carrier at your customer's residence or place of business and define a dedicated pickup time window. At the moment are available (more to come), thanks to our out-of-the-box integration with EasyPost, a shipping operations suite that features 100+ industry-leading carriers.
Now sales channels the tags associated with a specific subset of (at the moment: , , , and all types). On top of that, in the past few days we released the following minor (but still relevant) updates to our APIs:
— we've enhanced the _fulfill
trigger attribute operation. Now it can be sent not only if the associated shipments are cancelled, shipped, or delivered, but also if the order is just approved.
— we now expose the name and image URL of the associated line items.
Resource attributes computed dynamically are now exported with their original name, instead of using the delegated method’s one (e.g. item_type
instead of item_resource_type
). This could introduce a potential breaking change in case you're relying on a logic dependent on the old (wrong) exported attribute names. Speaking about , we also made them . On top of that, in the past few days we released the following minor (but still relevant) updates to our APIs:
— we added the tax_code
attribute that you can leverage to define a custom tax code for your shipment tax calculation (currently supported by only).
— we added the on_behalf_of
and transfer_group
attributes, which are also available in the associated order payment_source_details
.
Stripe Tax and Vertex have just come in addition to the list of we support out-of-the-box. You can now leverage the new and endpoints to manage tax calculations for your markets seamlessly.
— we exposed the events relationships on all the types of tax calculators.
— we added a new tax_exemption_code
attribute to identify the reason for a specific customer's tax exemption.
We've extended notifications to all the external resources (with the only exception of external order validation). Now, as a result of a successful response, you can ensure that external resources automatically add to the resource they are called for, specifically:
— to enable the above, we added the relationship with the associated .
— we added a new timestamp that traces the time at which the resource was processed by the API.
— now we try to fulfill the associated order not only anytime a shipment is shipped but also when a shipment is cancelled (useful especially if the shipment cancellation is triggered ).