Fluent Commerce Logo
Docs
Sign In

CreateWaveByFulfilmentIds

Rule

Changed on:

3 June 2024

Overview

The CreateWaveByFulfilmentIds takes a list of Fulfillments and creates a Wave with them.

Plugin NameFulfilment Reference Module
Namespace{{accountId}}.fulfilment

The Fulfilment Reference Module is the foundation for in-store operations. It provides a reference Workflow for pickpack, and shipping of orders for in-store staff. Extensible by design, use this Module as a base to build a solution to the needs of your customers.

UI Description

Create a wave with the specified fulfilmentIds, optional waveName and optional userName.

Accepts

  • Location

Actions

  • Type: CreateWave mutation
  • Condition: Always
  • Description: Sends a GraphQL mutation that creates a Wave with the given Fulfilment Ids. 

Event attributes

Name

Type

Required?

Default

Description

fulfilmentIds

`array of integers`

Yes

N/A

List of fulfilment Ids to be added to the wave.

waveName

`String`

No

N/A

The name of the Wave. 

userName

`String`

No

N/A

The name of the user who is allocated to the Wave. This value will only be populated if it matches a valid Fluent user.

Configuration example

1 {
2      "name": "CreateWaveByUserSelection",
3      "description": "Creates a wave based on fulfilments selected by the user",
4      "type": "LOCATION",
5      "subtype": "STORE",
6      "eventType": "NORMAL",
7      "rules": [
8        {
9          "name": "{{account}}.fulfilment.CreateWaveByFulfilmentIds",
10          "props": {}
11        }
12      ],
13      "triggers": [
14        {
15          "status": "ACTIVE"
16        }
17      ],
18      "userActions": [
19        {
20          "context": [
21            {
22              "label": "Create Custom Wave",
23              "type": "PRIMARY",
24              "modules": [
25                "servicepoint",
26                "store"
27              ],
28              "confirm": false
29            }
30          ],
31          "attributes": [
32            {
33              "name": "userName",
34              "label": "Wave Assignee",
35              "type": "String",
36              "mandatory": false
37            },
38            {
39              "name": "waveName",
40              "label": "Wave Name",
41              "type": "STRING",
42              "mandatory": false
43            },
44            {
45              "name": "fulfilmentIds",
46              "label": "Fulfilment Ids",
47              "type": "FULFILMENT_IDS",
48              "mandatory": true
49            }
50          ]
51        }
52      ]
53    }

Language: json

Detailed Technical Description

1. Accepts a list of fulfillment IDs and optional wave attributes. 

2. Filters out any fulfilment already assigned to a Wave.

3. If a

`userName`
is provided then the rule will attempt to retrieve a corresponding user matching the  
`user.username`
field. If a user is found, the
`allocatedTo`
field of the wave will be set to that user. 

4. Performs a createWave mutation with the final list of fulfilment Ids. The optional

`waveName`
provided will be allocated to the
`name`
field of the Wave alongside the
`allocatedTo`
field.


Version History

2024-06-03

v2.0.3

Modifications to enable the feature enabling individual fulfilments selection for Wave creation.

2023-12-14

v2.0.1

refers to the plugin

Copyright © 2024 Fluent Retail Pty Ltd (trading as Fluent Commerce). All rights reserved. No materials on this docs.fluentcommerce.com site may be used in any way and/or for any purpose without prior written authorisation from Fluent Commerce. Current customers and partners shall use these materials strictly in accordance with the terms and conditions of their written agreements with Fluent Commerce or its affiliates.

Fluent Logo