CreateFulfilmentForFulfilmentChoiceForUnfulfillableItems
Changed on:
28 Nov 2023
Overview
The rule creates a rejected fulfilment for order items that could not be fulfilled (no inventory) based on location. The rule processes only fulfilments that are in accepted statuses and not in rejected statuses. If the
`fulfilmentType`
Plugin Name | Order Reference Module |
---|---|
Namespace | [[account.id]].order |
The Order Reference Module is the foundation for order-related implementations. It provides reference workflows for click & collect, home delivery 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
Creates a rejected fulfilment for order items that could not be fulfilled (no inventory) based on location from "systemRejectedLocationRef". The rule processes only fulfilments which are in accepted statuses from "acceptedStatuses" and not in rejected statuses from "rejectedStatuses". If the "fulfilmentType" parameter is not empty then a fulfilment with this type will be created.
Accepts
- FULFILMENT_CHOICE
Actions
- Creates a rejected fulfilment for order items that could not be fulfilled (no inventory) using location, accepted statuses and rejected statuses
Rule parameters
Parameter | Description |
systemRejectedLocationRef | The value of the location to be used in the new rejected fulfilment. |
acceptedStatuses | The list of statuses in which fulfilments will be processed by the rules. |
rejectedStatuses | The list of statuses in which fulfilments will not be processed by the rules. |
fulfilmentType | The type of the fulfilment. |
Event attributes
Parameter | Description | Data Type | Required? |
fulfilmentChoiceRef | Reference to the fulfilment choice | String | Required |
Exceptions
This rule will throw an IllegalArgumentException
- if invalid fulfilment choice type
- if invalid location type
- if invalid , must not be empty
`acceptedStatuses`
- if invalid , must not be empty
`rejectedStatuses`
- if found a fulfilment status in both and
`acceptedStatuses`
lists`rejectedStatuses`
All generated exceptions will be wrapped with RubixException
Configuration example
1{
2 "name": "<ACCOUNTID>.order.CreateFulfilmentForFulfilmentChoiceForUnfulfillableItems",
3 "props": {
4 "fulfilmentType":"HD_PFS",
5 "systemRejectedLocationRef":"{{escalationLocation}}",
6 "acceptedStatuses":"[{{acceptedFulfilmentStatuses}}]",
7 "rejectedStatuses":"[{{rejectedFulfilmentStatuses}}]"
8 }
9}
Language: json
Detailed Technical Description
Extension
If you are using Click and Collect, Home Delivery or Mixed Baskets reference workflows, the following fulfilment types can be used without additional rule modification.
`CC_PFS`
`CC_PFDC`
`HD_PFS`
`HD_PFDC`
If you create your own fulfilment type and would like it to be supported in our reference workflow, you need to set the custom type in the
`fulfilmentType`
Useful information:
Version History
v1.0.1
refers to plugin