User guide
Additional Features
Point of No Return

Point of No Return

The Point of No Return (PoNR) feature provides the ability to specify a point after which an order cannot be altered or canceled via the incoming-orders api and UI. This allows to ensure control over order processing and avoid unwanted changes.

Problem

In certain cases, performing specific operations leads to irreversible changes in the order or the systems where a change has taken place.

Any alteration or cancellation of the order might be impossible or, even worse, cause unforeseen consequences.

Therefore, it is necessary to have the ability to mark the moment or moments after which any change or cancellation of the order will be prohibited.

Solution

Points of not return can be defined as steps of specific type in Product Catalogue.

For this case, you should define step/steps in EXECUTION_STEPS sheet. Such step should have cell StepExecutorType filled with POINT_OF_NO_RETURN value. The only purpose of this type of steps is to notify the order that the fulfillment processing has reached the point of no return.

After generating an execution plan for the order, such steps will be specially marked on the UI.

When fulfillment processing will reach such step, the order will mark itself as not allowed to be changed or canceled. Any attempt to make changes to the order will result in an error.

How to enable

To enable this feature we need to change feature flag in application.yml in order-service.


som:
  features:
    point-of-no-return:
      enabled: true