Fluent Commerce Logo
Docs
Sign In

CancelAllFulfilmentsForOrder

Rule

Changed on:

27 Nov 2023

Overview

The changes the status of all fulfilments associated with the incoming to `CANCELLED` and updates fulfilment item's filled quantity and rejected quantity.

Plugin NameOrder Reference Module
Namespace[[account.id]].order

The is the foundation for order-related implementations. It provides reference workflows for , and mixed baskets and those needed to build your own. Extensible by design, use this Module as a base to build a solution to your customers' needs.

UI Description

Cancels all related fulfilments that belong to cancel order.

Accepts

  • ORDER

Actions

  • This rule produces an action with triggers the updateFulfilment mutation.

Rule parameters

This does not identify any input parameters.

Event attributes

This does not directly identify any attributes.

Exceptions

This will throw an RubixException: 400 if or entities are not found.

Configuration example

1{
2  "name": "<ACCOUNTID>.order.CancelAllFulfilmentsForOrder",
3  "props": {}
4}

Detailed Technical Description

  • Read incoming event: `accountId, orderId`
  • Getting order with fulfilments by order id via GQL query and null check (potential exception 1)
  • For each fulfilment in the order
    • For each item in the fulfilment item is added in the `UpdateFulfilmentItemWithFulfilmentInput` list with filled quantity and rejected quantity
    • Changing status to `CANCELLED`
    • Check that `UpdateFulfilmentItemWithFulfilmentInput` list is not empty
    • Updating fulfilment with `UpdateFulfilmentItemWithFulfilmentInput` list and `CANCELLED` status via GQL mutation

Version History

2023-08-03

v1.0.0

refers to