Fluent Commerce Logo
Docs
Sign In

CC Workflow Interface Contracts

Interface Contract

Changed on:

25 Oct 2023

Detailed Description

The below Interface Contracts document the interaction points with the CC workflow. These allow you to ensure that any integration made into the workflow will enable the workflow to work correctly.

OrderAppeasement Event

This event is used to create appeasement of the order.

Request Payload

Property

Description

Type

Required?

appeasementAmount

The appeasement amount

String

Required

appeasementReason

The appeasement reason

String

Required

comment

The comment of appeasement

String

Optional

Event Request Example

1POST {{fluentApiHost}}/api/v4.1/event/async
2
3{
4  "name": "OrderAppeasement",
5  "accountId": "<accountId>",
6  "entityType": "ORDER",
7  "entityId": "<orderId>",
8  "entityRef": "<orderRef>",
9  "entitySubtype": "CC",
10  "rootEntityType": "ORDER",
11  "retailerId": "<retailerId>",
12  "attributes": {
13    "appeasementAmount": "<amount>",
14    "appeasementReason": "<reason>",
15    "comment": "<comment>"
16  }
17}

Language: json

Name: OrderAppeasement - event sample

Description:

[Warning: empty required content area]


OrderCancel Event

This event is used to cancel the order.

Request Payload

Property

Description

Type

Required?

entityId

The order id

String

Required

entityRef

The order reference

String

Required

entitySubtype

The order type

String

Required

entityType

The type of the entity (Order)

String

Required

name

The name of the ruleSet

String

Required

retailerId

The retailer id

String

Required

attributes

The attributes

Object

Optional

Event Request Example

1POST {{fluentApiHost}}/api/v4.1/event/async
2
3{
4  "name": "OrderCancel",
5  "entityType": "ORDER",
6  "entityId": "40606",
7  "entityRef": "GAP_50::FC_50::OI_981-976-8005",
8  "entitySubtype": "HD",
9  "rootEntityType": "ORDER",
10  "retailerId": "2025",
11  "attributes": {}
12}

Language: json

Name: OrderCancel - event sample

Description:

[Warning: empty required content area]

OrderRevision Event

This event is used to revise the order.

Request Payload

Property

Description

Type

Required?

revisedItems

The list of revised items

[revisedItems]

Required

revisedItems Definition

Property

Description

Type

Required?

Notes

newQty

The new quantity of the revised order item

Integer

Optional

If newQty is null in the incoming event, the rule will grab the value from the old Order

unitPrice

The unit price of the revised order

Double

Optional

If unitPrice is null in the incoming event, the rule will grab the value from the old Order

orderItemRef

The order item reference of the revised order

String

Required


comment

The comment of the revise

String

Optional


revisionReason

The reason of the revise

RevisionReason

Required

Revision reason is only compulsory for removed or changed items

RevisionReason Type

Property

Description

Type

Required?

value

The value of the revision reason

String

Required

label

The label is in i18n format

String

Required

Event Request Example

1{
2  "name":"OrderRevision",
3  "accountId":"<accountId>",
4  "entityType":"ORDER",
5  "entityId":"<orderId>",
6  "entityRef":"<orderRef>",
7  "entitySubtype":"CC",
8  "rootEntityType":"ORDER",
9  "retailerId":"<retailerId>",
10  "attributes":{
11    "revisedItems":[
12      {
13        "comment":"<comment>",
14        "newQty":1,
15        "orderItemRef":"<orderItemRef>",
16        "revisionReason":{
17          "label":"<label in i18n format>",
18          "value":"<reason_value>"
19        },
20      "unitPrice":100
21      },
22      {
23        "comment":"<comment>",
24        "newQty":2,
25        "orderItemRef":"<orderItemRef>",
26        "revisionReason":{
27          "label":"<label in i18n format>",
28          "value":"<reason_value>"
29          },
30        "unitPrice":100
31      }
32    ]
33  }
34}

Language: json

Name: OrderRevision - event sample

Description:

[Warning: empty required content area]

`
`

WavePack Event

This event is used as an external (anything from outside this workflow) anytime finishing picking and starting packing of the order in the store is triggered.

Request Payload

Property

Description

Type

Required?

pickedItems

The list of picked items

[pickedItem]

Required

fulfilmentItems

The list of fulfilment items

[fulfilmentItem]

Optional

pickedItem Definition

Property

Description

Type

Required?

Notes

GTIN

The Global Trade Item Number (GTIN) for this Product

String

Optional


availableQty

The available quantity of order item

float

Required

availableQty should be positive

catalogueRef

The catalogue reference of the order item

String

Required


productRef

The product reference of the order item

String

Required


fulfilmentItem Definition

Property

Description

Type

Required?

Notes

skuRef

The sku reference of the fulfilment item

String

Optional


orderItemId

The order item id of the fulfilment item

String

Required

Required if skuRef is not null

rejectedQty

The rejected quantity of the fulfilment item

int

Required

Required if skuRef is not null

availableQty

The available quantity of the fulfilment item

int

Required

Required if skuRef is not null

orderItemRef

The order item reference of the fulfilment item

String

Required

Required if skuRef is not null

requestedQty

The requested quantity of the fulfilment item

int

Required

Required if skuRef is not null

fulfilmentItemRef

The fulfilment item reference

String

Required

Required if skuRef is not null

Event Request Example

1{
2  "name":"WavePack",
3  "accountId":"<accountId>",
4  "entityType":"FULFILMENT",
5  "entityId":"<fulfilmentId>",
6  "entityRef":"<fulfilmentRef>",
7  "rootEntityType":"ORDER",
8  "rootEntityId": "<orderID>",
9  "rootEntityRef": "<orderRef>",
10  "retailerId":"<retailerId>",
11  "attributes": {
12    "pickedItems": [
13      {
14        "productRef": "<productRef>",
15        "catalogueRef": "<catalogueRef>",
16        "GTIN": "<gtin>",
17        "availableQty": 1
18      }
19    ],
20    "fulfilmentItems": [
21      {
22        "skuRef": "<skuRef>",
23        "orderItemId": "<orderItemId>",
24        "rejectedQty": 0,
25        "availableQty": 1,
26        "orderItemRef": "<orderItemRef>",
27        "requestedQty": 1,
28        "fulfilmentItemRef": "<fulfilmentItemRef>"
29      }
30    ]
31  }
32}

Language: json

Name: WavePack - event sample

Description:

[Warning: empty required content area]

`
`

WaveDispatchInitiated Event

This event is used externally (anything from outside this workflow) anytime finishing packing and creating an article in the store is triggered.

Request Payload

Property

Description

Type

Required?

fulfilmentArticles

The list of fulfilment articles

[fulfilmentArticle]

Optional

fulfilmentArticle Definition

Property

Description

Type

Required?

Notes

name

The name of the article

String

Optional


depth

The depth of the article

String

Optional


width

The width of the article

String

Optional


height

The height of the article

String

Optional


weight

The weight of the article

String

Optional


maxWeight

The maxWeight of the article

String

Optional


Event Request Example

1{
2  "name":"WaveDispatchInitiated",
3  "accountId":"<accountId>",
4  "entityType":"FULFILMENT",
5  "entityId":"<fulfilmentId>",
6  "entityRef":"<fulfilmentRef>",
7  "rootEntityType":"ORDER",
8  "rootEntityId": "<orderID>",
9  "rootEntityRef": "<orderRef>",
10  "retailerId":"<retailerId>",
11  "attributes":{
12    "fulfilmentArticles":[
13      {
14      "name":"<name>",
15      "depth":"<depth>",
16      "width":"<width>",
17      "height":"<height>",
18      "weight":"<weight>",
19      "maxWeight":"<maxWeight>"
20      }
21    ]
22  }
23}

Language: json

Name: WaveDispatchInitiated - event sample

Description:

[Warning: empty required content area]


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