Build a business dashboard with our Metrics API and Retool.

Product

Leverage enterprise-grade order management with Commerce Layer OMS.

July 12, 2023 Daniel Oh

Order management is a deceptively simple term, which is how many commerce platforms approach it. In theory, all that needs to happen is to ensure that a stock location - a warehouse, a brick-and-mortar, maybe even a garage - packages the order and ships it to the customer. Of course it’s never that simple, especially for established online business who may have multiple sales channels and a distributed inventory model across multiple warehouses.

As part of our ownership of the order lifecycle, Commerce Layer has provided the tools to manage orders from placement to fulfillment. We support all sorts of order and inventory management models with our flexible payment capture and native multi-warehouse support. On top of that, our API-first approach makes it easy to supplement our native OMS functions with external logic and services, whether it’s an application made in-house or procured from a third party.

That said, we’re always looking for ways to improve our offering. Merchants need their commerce platforms to provide robust order management, especially with rising costs across the board and TCO being a priority for scaling brands. That’s why today, we’re proud to announce a wave of improvements to our OMS, including a brand new Orders App and new endpoints to support sophisticated order and inventory management strategies.

Our New Orders Application

As part of our new Dashboard renovations, we’ve released a new Orders application to act as a central manager of all orders within your organization. You can access it by clicking on the “Hub” tab on the Dashboard menu, then clicking on “Orders”.

Once inside the Orders app, you can see which Orders are actively pending - some may be awaiting approval, others for payment to be captured, while others might be in the middle of the fulfillment process. You can select the orders by status, and then drill deep into a specific order to gain more information or move it along to another status. It’s also possible to look at your entire order history or look into archived orders from this view as well.

Once inside a specific order, you can see all kinds of information including:

  • The order, payment, and fulfillment statuses
  • The order summary with line items, subtotal, shipping costs, and total
  • The customer information
  • Payment information
  • Billing and shipping addresses
  • Shipping information
  • Order timeline, which logs all actions made to the order from placement to completion

This view also allows users to manage the status of the order. For instance, if the order is in “Placed” status, the user has the option to manually approve the order. Another example would be if the order has been approved but payment hasn’t been captured, the user has the option to manually capture payments. These flows can obviously be automated within the API itself, but for customer support agents, it can be useful to provide manual triggers to move orders along its lifecycle.

Finally, this view also enables refunds. If you click the top right corner with the three dots, the option to start a refund appears. From there, you have the option to provide either a partial or a complete refund, along with a field to add a note on the refund itself for future reference.

Click the video below if you'd like to see the Orders app in action!

Building Out an Enterprise-Grade OMS

Of course, enterprise-grade order management isn’t just about shepherding orders from placement to completion. Inventory and shipping management is a crucial part of ensuring a world-class ecommerce experience. Along with the ability to set up carriers, shipping methods, and shipping costs on our platform, we’re also one of the few commerce platforms to offer multi-warehouse support. This also includes the ability to implement different inventory model strategies that affect how orders are fulfilled, including prioritizing different warehouses for order fulfillment or splitting shipments between warehouses whenever required.

And while most commerce platforms often stop short of providing these kinds of tools, we continue to develop our OMS to support brands as they scale from a few million in GMV to hundreds of millions.

In the last few weeks, we’ve introduced a few major improvements to our OMS that include:

External Shipping Calculation

We’ve added a new entry to our external resources feature, which allows our clients to override the shipping method cost with an externally calculated price. The price can be calculated using whatever custom logic the clients builds out, or can be supplied directly by any external service. Merchants that have oddly shaped or very heavy items often need to provide dynamic shipping costs, especially since each order will vary wildly in the amount carriers will charge to ship its parcels. A great way to address this is through our external shipping calculation, which can accept external shipping costs in real time, directly from the carrier’s API.

Stock Reservation

We’ve added a new endpoint that enables merchants to reserve stock both automatically and manually for a given order. What that means is that when an order is drafted, you can enable a “stock reservation” to happen where the inventory will reserve that piece of stock from the total available. If the order goes through, then the total stock number will be updated to reflect that. If the order doesn’t, the stock reservation expires and the total stock remains unaffected.

This feature is key for merchants who have products that are in very high demand, like a limited edition drop or an influencer-endorsed product. As orders get drafted and placed at a dizzying speed, it’s very possible for customers to place orders for stock that doesn’t exist. No matter how fast our APIs can update the available stock for a given SKU, there will still be a window where orders can get drafted right before the available stock disappears. In order to prevent this from ruining the customer experience, stock reservations ensure that any order that gets drafted has a chance to be placed and fulfilled.

Order Editing

A key part of providing amazing customer service is the ability to edit orders in-flight. For any given reason, a customer may want to adjust their order - maybe they selected the wrong product, maybe they ordered too much (or not enough) of a product, or put in the wrong shipping address.

Without the ability to edit orders, the merchant would either be forced to cancel the order and draft a new one (which is inefficient) or tell the customer that all orders are final upon placement (which is draconian).

We’ve introduced the capability to edit orders after they’re placed and before they’re approved, which can be exposed on the customer’s end and the support agent’s end. When a customer wants to edit an order, they have the capability to adjust:

  • Line items
  • Quantities
  • Shipping address
  • Shipping method
  • Billing address

As brands scale, they’ll continue to run into more and more intricate customer issues regarding their orders. Having the ability to edit orders after placement is a key component in maintaining a world class customer experience.

The order editing feature will only be available through our API for now. We’re currently working to include order editing on the Orders app in a future release.

Combining Composable Commerce with Robust Order Management

For most commerce solutions, order management is an afterthought. Having the ability to support multiple warehouses, consider stock reservations for in-demand products, or even having the ability to edit orders in-flight is not universal across all solutions. For us, having a robust OMS was the only way to truly own the entire lifecycle of the order. As a service that’s dedicated to driving the entire transactional engine - which includes the last mile of an order - it’s important for us to not only have a powerful OMS that can handle enterprise use cases, but also keep it extensible and flexible for developers to resolve use cases that we don’t address out-of-the-box.

We hope you enjoy our new and improved OMS and we’d love to hear your feedback. If you want to contribute your opinions or questions about our OMS (or our platform in general), join our Slack community here!

Get a free live demo.

Get a personalized demo and learn more about what Commerce Layer can do for your company.