Order Statuses
Order statuses are necessary for tracking the progress of an order from its creation to completion. They help systematize order management for managers and allow customers to see the current state of their orders.
Each order repository has its own set of statuses, so you can add unique statuses specific to different groups of products.
Modes of Working with Statuses
At the top of the "Order Statuses" section, there is a block titled "Order Status Mode Settings," where you can choose one of two operational modes:
- Basic — the default mode. A single set of statuses is used, linked to the payment account. The order status changes linearly based on payment events. This mode is sufficient for most scenarios.
- Advanced — flexible configuration along three independent axes:
order(main order status),fulfillment(execution — assembly, shipping, delivery), andpayment(payment). Each axis has its own set of statuses, automatic transition maps based on triggers, and custom triggers.
To change the mode, select the desired option in the "Order Status Mode Settings" block and confirm the action in the pop-up window.
When switching to advanced mode, be sure to assign a default status for the order axis — this is where the order lifecycle begins. As long as the default status for the order axis is not set, the data is considered invalid, and saving the repository is blocked.
Creating a Status
To create a new order status, open the orders section in the left menu. Select the order repository where you want to create the new order status and click the edit icon . Go to the "Order Statuses" section.
In the new status creation block, fill in:
- Status Name - A non-unique string. The name should also reflect the essence of the status. For example, the status can be named "In Transit" or "Completed." This is the information that the manager and user will see in the order status section.
- Marker - A unique string used within your application's code. Keep this in mind when creating the marker to avoid conflicts in the application's operation.
After filling in the fields, click the "Add" button. If all data is entered correctly, the status will be saved automatically and added to the general list.
Editing a Status
To make changes to an existing order status, open the orders section in the left menu. Select the order repository where you want to edit the order status and click the edit icon . Go to the "Order Statuses" section.
Select the status you want to change from the list and click the edit icon . You can change the status name and its marker.
If the status is already in use in your application, change the marker only if you are sure it will not disrupt the application's operation.
Default Value
You can choose one of the statuses as the default value. The status marked as such will be set every time no other status is assigned.
To make a status the default, go to the status settings by clicking the edit icon . Check the "Default Value" setting.
There can only be one status with this setting in a single order repository. In the general list, this status will be marked with a special marker.
Deleting a Status
To delete an order status, open the orders section in the left menu. Select the order repository where you want to delete the order status and click the edit icon . Go to the "Order Statuses" section.
Select the order status you want to delete from the general list. Click the delete icon . Confirm the action in the pop-up window. The status will be removed from the list and from the orders where it is used.
Advanced Mode
The Advanced mode is designed for complex order processing scenarios where a single linear set of statuses is insufficient. It separates statuses into three independent axes and allows configuring automatic transitions between statuses based on triggers.
To enable advanced mode, in the "Order Status Mode Settings" block, select the Advanced option and confirm the switch.
Three Status Axes
In advanced mode, each order has three independent status axes:
order— the main business status of the order.fulfillment— order fulfillment (assembly, shipping, delivery).payment— payment status.
Each status belongs to only one axis. The order and fulfillment axes are managed by the seller (manually or through integration), while the payment axis is managed automatically by the system based on payment events.
A status involved in a transition map or assigned to any order cannot be deleted.
Creating a Status in Advanced Mode
Creating a status is done the same way as in basic mode, but in the creation form, an additional field for selecting the axis to which the status belongs (Order status, Fulfillment, or Payment) appears. In the general status list, an additional column "Axis" is displayed, showing the affiliation of each status.
Status Maps
When advanced mode is enabled, a tab "Order Statuses" → "Status Mapping" appears. The map automatically translates the status of the order or fulfillment axis based on a trigger. For example, with the trigger payment.paid, the status of the order axis changes to "Paid."
The mapping configuration is divided into sub-tabs by axes (Order status and Fulfillment). For each trigger, grouped by categories (order, payment, and return events), the target status to which the order should transition is specified. The initial status is taken from the default status of the corresponding axis.
After configuring the map, click the "Save" button.
The statuses of the order and fulfillment axes can be changed manually or through integration. The payment axis is managed only by the system based on payment events.
Custom Triggers
In the status mapping tab, you can create custom triggers of the form custom.{name}. Such triggers are called only through API integration and are available for the order and fulfillment axes. This allows you to describe status transitions for non-standard business events in your application.