Medusa’s Order API supports order editing capabilities that equip merchants and developers with the tooling necessary to reduce manual work and offer a great customer experience.
Designing this seemingly simple functionality proved to be a complex task that was solved with inspiration from the world’s most-used developer tools.
This article covers how we adopted principles from the Git version control system and GitHub in our Order Editing API design. You can read the product announcement here.
Understanding Order Editing
Before going over the design behind this feature, we need to understand its constraints. Let’s dive into what it means to edit an order in Medusa.
When an order is placed, it is in its base state from a customer and store administrator point of view. Generally, the next steps for orders from here are fulfillment, shipping, and payment capturing.
Sometimes a change in the order might be required first. Several scenarios could lead…