Fluent Commerce Logo
Docs
Sign In
Essential knowledge

Author:

Fluent Commerce

Changed on:

3 July 2024

Overview

A fulfilment represents one or more items in an order that need to be picked & packed for the customer. A fulfilment is assigned to a location based on the retailer's fulfilment rules and available inventory. A fulfilment will have an origin (from) and destination (to) associated with it.

Key points

  • Fulfilment Properties
  • What you can do with Fulfilment
  • Response on Failures

Fulfilment API

Fulfilment Properties

Below are the properties available in the Fulfilment object which can be updated and retrieved through the APIs in this document.

1. fulfilmentType

Type: String

1{ "CC_PFS" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

Fulfilment type confirms how the customer will receive the order - in-store collection (CC) or delivery (HD) - and is used to determine the location(s) that can be used to pick and pack the order.

Possible values:

  • CC_PFS : Click & Collect - Pick from Store
  • CC_PFDC : Click & Collect - Pick from DC
  • HD_PFS : Home Delivery - Pick from Store
  • HD_PFDC : Home Delivery - Pick from DC
2. fulfilmentId

Type: Long

1{ 4161 }

Language: java

Name: Description

Description:

[Warning: empty required content area]

The unique fulfilment identifier assigned by Fluent Commerce.

3. fulfilmentRef

Type: String

1{ "1442901695" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

The unique fulfilment reference provided by the retailer.

4. orderId

Type: String

1{ "16425" }

Language: json

Name: Description

Description:

[Warning: empty required content area]

The external consignment reference assigned by the carrier.

5. eta

Type: String

1{ "2D" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

The estimated time of completing the fulfilment. The ETA is configurable per retailer and can be hours e.g "3HR" or days e.g. "2D”.

6. expiryTime

Type: DateTime

1{ "2015-09-16T00:50:56.959Z" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

The Fulfilment expiry time.

7. deliveryType

Type: String

1{ "deliveryType" : "EXPRESS" }

Language: json

Name: Description

Description:

[Warning: empty required content area]

The fulfilment delivery type. Based on retailers shipping options. Retailer fulfilment rules will determine how order is handled.

Possible values include: STANDARD | EXPRESS | OVERNIGHT | 3HOURS

8. fromAddress

Type: Object

1{ "locationRef" : "1013" }
2
3{ "companyName" : "null" }
4
5{ "name" : "John Smith" }
6
7{ "street" : "25 James Drive" }
8
9{ "city" : "Sydney" }
10
11{ "postcode" : "2000" }
12
13{ "state" : "NSW" }
14
15{ "country" : "AU" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

The location where the Fulfilment is being actioned

  • locationRef (String) : The location (i.e. store) number provided by the retailer. Required if address details not provided.
  • companyName (String) : The company name if delivering to a business location. Optional.
  • name (String) : The contact name provided with the order
  • street (String) : Street address. Required if locationRef not provided.
  • city (String) : City. Required if locationRef not provided.
  • postcode (String) : Postcode. Required if locationRef not provided.
  • state (String) : State. Required if locationRef not provided.
  • country (String, Optional) : Country. Required if locationRef not provided.
9. toAddress

Type: Object

Description: The location where the Article will be sent - either a store location for in-store collections (CC) or customer address (HD).

See examples and definitions above.

10. items

Type: Array

1{ "fulfilmentItemId" : "46787" }
2
3{ "fulfilmentItemRef" : "483" }
4
5{ "orderItemId" : "10" }
6
7{ "orderItemRef" : "AR1-4001-WH-1-2" }
8
9{ "skuRef" : "FX141123TPRT-1-2" }
10
11{ "requestedQty" : "1" }
12
13{ "availableQty" : "1" }
14
15{ "filledQty" : "1" }
16
17
18{ "rejectedQty" : "0" }
19
20
21{ "status" : "CREATED" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

An array of order item(s) assigned to the fulfilment

  • fulfilmentItemId (String) : The unique identifier assigned to the Fulfilment Item by Fluent Commerce
  • fulfilmentItemRef (String) : The Fulfilment Item reference provided by the Retailer
  • orderItemId (String) : The unique identifier assigned to the Order Item by Fluent Commerce
  • orderItemRef (String) : The Order Item reference provided by the Retailer
  • skuRef (String) : The unique reference or code provided by the retailer
  • requestedQty (Integer) : The total quantity assigned to the fulfilment
  • availableQty (Integer) : The quantity available at the fulfilment location
  • filledQty (Integer) : The quality confirmed by the fulfilment location
  • rejectedQty (Integer) : The quality rejected by the fulfilment location
  • status (String) : The status of the fulfilment item. Possible values are CREATED.
11. consignment

Type: Object

1{ "carrierId" : "21" }
2
3{ "consignmentRef" : "25018856" }
4
5{ "labelUrl" : "de6cb885-81d3-40ad-8ade-0177a8c58b8d.pdf" }
6
7{ "status" : "ACTIVE_SENT" }
8
9{ "retailerId" : "197" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

The consignment details

  • carrierId (string) : The unique identifier assigned to the carrier
  • carrierName (string) : The carrier name
  • consignmentRef (string) : The external consignment reference assigned by the carrier
  • labelUrl (string) : The URL used to retrieve the shipping label
  • status (string) : The status of the consignment Possible values are:
    • ASSIGNED - A courier booking has been initiated. An API call has been made to the courier.
    • ACTIVE_LODGED - A consignment has been created with a courier. The booking has been confirmed.
    • ACTIVE_SENT - The consignment has been picked up by the courier.
    • COMPLETE - The shipment has been delivered.
    • FAILED - The courier booking has failed. The store associate will be required to follow in-store procedures to book the courier. Our system will not be updated once the booking has been made.
  • retailerId (string) : The retailer identifier assigned by Fluent Commerce.
12. attributes

Type: Array

Description:

1"attributes": [
2
3{
4
5"name" : "Supplier Address",
6
7"type" : "address",
8
9"value" : {
10
11    "value" : "46, Kippax Street",
12
13    "Suburb" : "Surry Hills",
14
15    "Post Code" : "2010",
16
17    "State" : "NSW,
18
19    "State" : "AU"
20
21    }
22
23},
24
25{
26
27"name" : "ECP",
28
29"type" : "string",
30
31"value" : "XSD987"
32
33}
34
35]

Language: java

Name: Attributes Description Example

Description:

[Warning: empty required content area]

Array of attributes. Attributes are used to provide additional information about the order. Standard attribute types like string, integer and complex types like address which has more than one value are supported as well.

  • name (String, Optional) : Name of attributes
  • type (String, Optional) : Type of value provided (String, Integer, Address etc)
  • value (String, Optional) : attribute value
13. status

Type: String

1{ "status" : "FULFILLED" }

Language: json

Name: Description

Description:

[Warning: empty required content area]

The status of the fulfilment

Valid values are:

  • CREATED - The fulfilment has been allocated to a location based on the fulfilment rules.
  • ASSIGNED - The fulfilment has been assigned to a wave by the store associate using ServicePoint.
  • CANCELLED - (a) The order, and all associated fulfilments, have been cancelled via Admin Console (b) The allocated location was unable to fulfill within the pick & pack time limit.
  • FULFILLED - All order items have been confirmed. An article will be created. A consignment will also be created for Home Delivery orders.
  • PARTIALLY FULFILLED - Only some of the items in the fulfilment were available at the location. For home delivery orders, the rejected items will be allocated to another location (a new fulfilment) if the split limit has not been exceeded. For Click & Collect orders, any rejected items will be allocated to the Distribution Center. An article will be created for the fulfilled items. A consignment will also be created for Home Delivery orders.
  • REJECTED - All order items are unavailable at the location.
14. createdOn

Type: DateTime

1{ "createdOn" : "2016-05-06T23:41:12.242Z" }

Language: json

Name: Description

Description:

[Warning: empty required content area]

Date/time when the fulfilment was created.

15. updatedOn

Type: DateTime

1{ "2015-09-16T00:50:56.959Z" }

Language: java

Name: Description

Description:

[Warning: empty required content area]

Date/time when the fulfilment was last updated.


What you can do with Fulfilment

Create a Fulfilment

Create a Fulfilment in the Fluent Commerce system.

POST: 

`/api/v4.1/order/{orderId}/fulfilment`

Request and response

Request parameters and sample

Fulfilment request

1FulfilmentRequest {
2    fulfilmentType (string, compulsory) = 'CC_PFS', 'CC_PFDC', 'HD_PFS', 'HD_PFDC'
3    eta (string, optional),
4    expiryTime (DateTime, optional),
5    deliveryType (string, optional) = 'STANDARD', 'EXPRESS', 'OVERNIGHT',
6    fulfilmentRef (string, optional),
7    fromAddress (object, optional),
8    toAddress (object, compulsory),
9    items (array, optional),
10    consignment (object, compulsory),
11    attributes (Array[Attribute], optional)
12}
13
14fromAddress {
15        locationRef (string, conditional),
16        companyName (string, optional),
17        name (string, optional),
18        street (string, conditional),
19        city (string, conditional),
20        postcode (string, conditional),
21        state (string, conditional),
22        country (string, conditional)
23}
24
25toAddress {
26        locationRef (string, conditional),
27        companyName (string, optional),
28        name (string, optional),
29        street (string, conditional),
30        city (string, conditional),
31        postcode (string, conditional),
32        state (string, conditional),
33        country (string, conditional)
34}
35
36items {
37        fulfilmentItemRef (string, optional),
38        orderItemId (string, optional),
39        orderItemRef (string, optional),
40        skuRef (string, optional),
41        requestedQty (integer, optional)
42}
43
44consignment {
45        carrierId (string, compulsory),
46        consignmentRef (string, optional),
47        labelUrl (string, optional),
48        status (string, optional) = ['ASSIGNED', 'ACTIVE_LODGED', 'ACTIVE_SENT', 'COMPLETE', 'FAILED'],
49        retailerId (string, optional)
50}
51
52Attribute {
53        name (string, optional),
54        type (string, optional) = ['STRING', 'INTEGER'],
55        value (string, optional)
56}
57

Language: java

Name: Fulfilment Request Example

Description:

[Warning: empty required content area]
1{
2"deliveryType": "EXPRESS",
3"eta": "2D",
4"expiryTime": "2015-09-16T00:50:56.959Z",
5"fromAddress": {
6"locationRef": "080",
7"companyName": "testName",
8"name": "testName",
9"street": "1 Anderson Street",
10"city": "Chatswood",
11"postcode": "2067",
12"state": "NSW",
13"country": "Australia"
14},
15"fulfilmentRef": "1442901695",
16"fulfilmentType": "CC_PFS",
17"toAddress": {
18"companyName": "testName",
19"name": "testName",
20"street": "1 Anderson Street",
21"city": "Chatswood",
22"postcode": "2067",
23"state": "NSW",
24"country": "Australia"
25},
26"items": [
27{
28"orderItemId": "10",
29"orderItemRef": "AR1-4001-WH-1-2",
30"requestedQty": 1,
31"skuRef": "7066028-796-S"
32}
33],
34"consignment": {
35"carrierId": "1",
36"status": "ASSIGNED",
37"labelUrl": "labelUrl1",
38"consignmentRef": "1442901695",
39"retailerId": "211"
40}
41}

Language: json

Name: Example request

Description:

[Warning: empty required content area]

Request parameters and sample

1SuccessMessageResponse {
2    id (object, optional),
3    message (string, optional),
4    status (string, optional)
5}

Language: java

Name: Fulfilment response

Description:

[Warning: empty required content area]
1{
2 "id":"427323"
3}

Language: java

Name: Example response

Description:

[Warning: empty required content area]
Unique Constraints and Duplicate Handling

The platform prevents the creation of duplicate fulfilments by using a unique constraint on the following combination fields:

  • Order ID
  • From Location ID
  • To Location Address fields
    • Street
    • City
    • Post Code
  • Shipment Type (which is the Fulfilment Type - e.g: CC_PFS, CC_PFDC, etc.)
  • Delivery Type
  • Fulfilment Item fields (sorted by Order Item ID ascending):
    • Order Items ID
    • Requested Quantity

The API will return an error in the case that a duplicate fulfilment is trying to be created:

1{
2  "errors": [
3    {
4      "code": "400",
5      "message": "Fulfilment constraint violation error"
6    }
7  ]
8}

Language: json

Name: Rest API error:

Description:

[Warning: empty required content area]
ENABLE DUPLICATE FULFILMENT ATTRIBUTE

There are certain circumstances where a duplicate fulfilment may be intended for a use case. For example, if the fulfilment has expired (or been rejected) at a specific location, but the intention is still to fulfill from that location. In this case, a special attribute can be added to the Fulfilment to allow the duplicate fulfilment to be created and assigned to the same location as the first.

To enable a duplicate fulfilment creation, first enable the feature in Account Settings (

`fc.api.fulfilment.uniqueness`
), and then add the following attribute to the Fulfilment POST API.

1{
2    "name": "ENABLE_DUPLICATE_ENTITY",
3    "type": "BOOLEAN",
4    "value": true
5}

Language: json

Name: ENABLE_DUPLICATE_ENTITY

Description:

[Warning: empty required content area]
View Fulfilment Details

Retrieve details of the Fulfilment.

GET: 

`/api/v4.1/fulfilment/{fulfilmentId}`

Request and response

Request parameters and sample

Fulfilment request

`/api/v4.1/fulfilment/{fulfilmentId}`

 Example request

`/api/v4.1/fulfilment/41241412412`

Response Parameters and sample

 Fulfilment response

1fulfilmentResponse {
2    fulfilmentId (long)
3    status (string) = 'CREATED', 'ASSIGNED', 'PARTIALLY_FULFILLED', 'FULFILLED', 'CANCELLED', 'COMPLETE', 'REJECTED',
4    fulfilmentType (string) = 'CC_PFS', 'CC_PFDC', 'HD_PFS', 'HD_PFDC'
5    eta (string),
6    expiryTime (DateTime),
7    deliveryType (string) = 'STANDARD', 'EXPRESS', 'OVERNIGHT',
8    fulfilmentRef (string),
9    createdOn (string),
10    updatedOn (string),
11    fromAddress (object),
12    toAddress (object),
13    items (array),
14    consignment (object)
15}
16
17fromAddress {
18        locationRef (string),
19        companyName (string),
20        name (string),
21        street (string),
22        city (string),
23        postcode (string),
24        state (string),
25        country (string)
26        }
27
28toAddress {
29        locationRef (string),
30        companyName (string),
31        name (string),
32        street (string),
33        city (string),
34        postcode (string),
35        state (string),
36        country (string)
37        }
38        
39items {
40        fulfilmentItemId (string),
41        fulfilmentItemRef (string),
42        orderItemId (string),
43        orderItemRef (string),
44        skuRef (string),
45        requestedQty (integer),
46        filledQty (integer),
47        rejectedQty (integer),
48        status (string) = CREATED
49        }
50        
51consignment {
52        carrierId (string),
53        carrierName (string),
54        consignmentId (string),
55        consignmentRef (string),
56        labelUrl (string),
57        status (string) = ['ASSIGNED', 'ACTIVE_LODGED', 'ACTIVE_SENT', 'COMPLETE', 'FAILED'],
58        retailerId (string)
59        }

Language: java

Name: Fulfilment Response Example

Description:

[Warning: empty required content area]

Example response

1{
2"fulfilmentId": 4161,
3"deliveryType": "EXPRESS",
4"eta": "2D",
5"expiryTime": "2015-09-16T00:50:57.000+0000",
6"fromAddress": {
7"locationRef": "080",
8"street": "1 Anderson Street",
9"city": "Chatswood",
10"postcode": "2067",
11"state": "NSW",
12"country": "Australia"
13},
14"fulfilmentRef": "1442901695",
15"fulfilmentType": "CC_PFS",
16"items": [
17{
18"fulfilmentItemId": 11876,
19"fulfilmentItemRef": null,
20"orderItemId": 10,
21"orderItemRef": "AR1-4001-WH-1-2",
22"requestedQty": 1,
23"skuRef": "7066028-796-S"
24}
25],
26"toAddress": {
27"name": "testName",
28"street": "1 Anderson Street",
29"city": "Chatswood",
30"postcode": "2067",
31"state": "NSW",
32"country": "Australia"
33},
34"consignment": {
35"consignmentId": 1739911,
36"carrierId": "1",
37"consignmentRef": "1442901695",
38"labelUrl": "labelUrl1",
39"status": "ASSIGNED",
40"retailerId": "211"
41}
42}

Language: json

Name: Example response

Description:

[Warning: empty required content area]

Update Fulfilment Status

Update the Fulfilment status.

PUT: 

`/api/v4.1/fulfilment/{fulfilmentId}/transition/{status}`

Request and response

Request parameters and sample

Fulfilment request

`/api/v4.1/fulfilment/{fulfilmentId}/transition/{status}`

 Example request

`/api/v4.1/fulfilment/34254/transition/FULFILLED`

Response Parameters and sample

1SuccessMessageResponse {
2    id (UUID), 
3}

Language: java

Name: Fulfilment response

Description:

[Warning: empty required content area]
1{
2 "id":"34254"
3}

Language: json

Name: Example response

Description:

[Warning: empty required content area]
View all Fulfilments associated with an Order

Retrieve details of all Fulfilments within an order.

GET: 

`/api/v4.1/order/{orderId}/fulfilment`

Request and response

Request parameters and sample

Fulfilment request

`/api/v4.1/order/{orderId}/fulfilment`

 Example request

`/api/v4.1/order/16425/fulfilment`

Response Parameters and sample

 Fulfilment response

1response {
2    orderId (string),
3    fulfilments (enum[Fulfilments]) [
4    {
5        fulfilmentId (long)
6        status (string) = 'CREATED', 'ASSIGNED', 'PARTIALLY_FULFILLED', 'FULFILLED', 'CANCELLED', 'COMPLETE', 'REJECTED',
7        fulfilmentType (string) = 'CC_PFS', 'CC_PFDC', 'HD_PFS', 'HD_PFDC'
8        eta (string),
9        expiryTime (DateTime),
10        deliveryType (string) = 'STANDARD', 'EXPRESS', 'OVERNIGHT',
11        fulfilmentRef (string),
12        createdOn (string),
13            updatedOn (string),
14        fromAddress (object),
15        toAddress (object),
16        items (array),
17        consignment (object),
18    }]
19}
20
21 fromAddress {
22        locationRef (string),
23        companyName (string),
24        name (string),
25        street (string),
26        city (string),
27        postcode (string),
28        state (string),
29        country (string)
30}
31
32 toAddress {
33        locationRef (string),
34        companyName (string),
35        name (string),
36        street (string),
37        city (string),
38        postcode (string),
39        state (string),
40        country (string)
41}
42
43items {
44        fulfilmentItemId (string),
45        fulfilmentItemRef (string),
46        orderItemId (string),
47        orderItemRef (string),
48        skuRef (string),
49        requestedQty (integer),
50        filledQty (integer),
51        rejectedQty (integer),
52        status (string) = CREATED
53}
54
55consignment {
56        carrierId (string),
57        carrierName (string),
58        consignmentId (string),
59        consignmentRef (string),
60        labelUrl (string),
61        status (string) = ('ASSIGNED', 'ACTIVE_LODGED', 'ACTIVE_SENT', 'COMPLETE', 'FAILED'),
62        retailerId (string)
63}
64

Language: java

Name: Fulfilment Response Example

Description:

[Warning: empty required content area]
1{
2  "orderId": "122352",
3  "fulfilments": [
4    {
5      "fulfilmentId": 1000913,
6      "deliveryType": "STANDARD",
7      "eta": "1D",
8      "createdOn": "2015-11-16T04:07:24.000+0000",
9      "updatedOn": "2015-11-16T04:07:24.000+0000",
10      "expiryTime": "2015-11-21T00:00:00.000+0000",
11      "status": "CREATED",
12      "fulfilmentRef": null,
13      "fulfilmentType": "HD_PFDC",
14      "items": [
15        {
16          "fulfilmentItemId": 122724,
17          "fulfilmentItemRef": "1082088-1-12-se",
18          "orderItemId": 136443,
19          "orderItemRef": "1082088-1-12-se",
20          "requestedQty": 1,
21          "confirmedQty": 0,
22          "filledQty": 0,
23          "rejectedQty": 0,
24          "skuRef": "1082088-1-12-se"
25        }
26      ],
27      "fromAddress": {
28        "locationRef": "SHA067",
29        "companyName": "Seed Heritage Warehouse",
30        "name": null,
31        "street": "6 ARDENA CRT   ",
32        "city": "BENTLEIGH EAST",
33        "postcode": "3165",
34        "state": "VIC",
35        "country": "Australia"
36      },
37      "toAddress": {
38        "companyName": "",
39        "name": "John Smith",
40        "street": "Store 65-77 Market Street",
41        "city": "Sydney",
42        "postcode": "2000",
43        "state": "NSW",
44        "country": "AU"
45      },
46      "consignment": null
47    },
48    {
49      "fulfilmentId": 1000914,
50      "deliveryType": "STANDARD",
51      "eta": "1D",
52      "createdOn": "2015-11-16T04:07:24.000+0000",
53      "updatedOn": "2015-11-17T03:09:36.000+0000",
54      "expiryTime": "2015-11-21T00:00:00.000+0000",
55      "status": "CANCELLED",
56      "fulfilmentRef": null,
57      "fulfilmentType": "HD_PFS",
58      "items": [
59        {
60          "fulfilmentItemId": 122725,
61          "fulfilmentItemRef": "1082102-1281-10-se",
62          "orderItemId": 136444,
63          "orderItemRef": "1082102-1281-10-se",
64          "requestedQty": 1,
65          "confirmedQty": 0,
66          "filledQty": 0,
67          "rejectedQty": 0,
68          "skuRef": "1082102-1281-10-se"
69        }
70      ],
71      "fromAddress": {
72        "locationRef": "SHA081",
73        "companyName": "Seed Heritage Oxford Street",
74        "name": null,
75        "street": "280 Oxford Street",
76        "city": "Paddington",
77        "postcode": "2021",
78        "state": "NSW",
79        "country": "Australia"
80      },
81      "toAddress": {
82        "companyName": "",
83        "name": "John Smith",
84        "street": "Store 65-77 Market Street",
85        "city": "Sydney",
86        "postcode": "2000",
87        "state": "NSW",
88        "country": "AU"
89      },
90      "consignment": null
91    },
92    {
93      "fulfilmentId": 1001072,
94      "deliveryType": "STANDARD",
95      "eta": "1D",
96      "createdOn": "2015-11-17T03:09:36.000+0000",
97      "updatedOn": "2015-11-18T02:39:38.000+0000",
98      "expiryTime": "2015-11-21T00:00:00.000+0000",
99      "status": "CANCELLED",
100      "fulfilmentRef": null,
101      "fulfilmentType": "HD_PFS",
102      "items": [
103        {
104          "fulfilmentItemId": 122915,
105          "fulfilmentItemRef": "1082102-1281-10-se",
106          "orderItemId": 136444,
107          "orderItemRef": "1082102-1281-10-se",
108          "requestedQty": 1,
109          "confirmedQty": 0,
110          "filledQty": 0,
111          "rejectedQty": 0,
112          "skuRef": "1082102-1281-10-se"
113        }
114      ],
115      "fromAddress": {
116        "locationRef": "SHA090",
117        "companyName": "Seed Heritage Mosman",
118        "name": null,
119        "street": "SHOP 1 778-782 MILITARY RD",
120        "city": "MOSMAN",
121        "postcode": "2088",
122        "state": "NSW",
123        "country": "Australia"
124      },
125      "toAddress": {
126        "companyName": "",
127        "name": "John Smith",
128        "street": "Store 65-77 Market Street",
129        "city": "Sydney",
130        "postcode": "2000",
131        "state": "NSW",
132        "country": "AU"
133      },
134      "consignment": null
135    },
136    {
137      "fulfilmentId": 1001192,
138      "deliveryType": "STANDARD",
139      "eta": "1D",
140      "createdOn": "2015-11-18T02:39:38.000+0000",
141      "updatedOn": "2015-11-18T02:39:38.000+0000",
142      "expiryTime": "2015-11-21T00:00:00.000+0000",
143      "status": "REJECTED",
144      "fulfilmentRef": null,
145      "fulfilmentType": "HD_PFDC",
146      "items": [
147        {
148          "fulfilmentItemId": 123058,
149          "fulfilmentItemRef": "1082102-1281-10-se",
150          "orderItemId": 136444,
151          "orderItemRef": "1082102-1281-10-se",
152          "requestedQty": 1,
153          "confirmedQty": 0,
154          "filledQty": 0,
155          "rejectedQty": 1,
156          "skuRef": "1082102-1281-10-se"
157        }
158      ],
159      "fromAddress": {
160        "locationRef": "SHA067",
161        "companyName": "Seed Heritage Warehouse",
162        "name": null,
163        "street": "6 ARDENA CRT   ",
164        "city": "BENTLEIGH EAST",
165        "postcode": "3165",
166        "state": "VIC",
167        "country": "Australia"
168      },
169      "toAddress": null,
170      "consignment": null
171    }
172  ]
173}

Language: json

Name: Example Response

Description:

[Warning: empty required content area]
View Fulfilment Attributes

Retrieve Fulfilment details.

GET: 

`/api/v4.1/fulfilment/{fulfilmentId}/attribute`

Request and response

Request parameters and sample

Fulfilment request

`/api/v4.1/fulfilment/{fulfilmentId}/attribute`

 Example request

`/api/v4.1/fulfilment/1231/attribute`

Response Parameters and sample

 Fulfilment response

1fulfilmentResponse {
2    fulfilmentId (long), 
3    attributes (array)
4}
5
6// View Attributes
7    attributes {
8        name (string),
9        type (string),
10        value (string)
11    }

Language: java

Name: Fulfilment Response Example

Description:

[Warning: empty required content area]
1{
2"fulfilmentId": "1231",
3"attributes": [
4
5{
6"name": "Address",
7"type" : "address",
8"value" : {
9"Address 1" : "46, Kipax Street",
10"Suburb" : "Surry Hills",
11"Post code" : "2010",
12"State" : "NSW"
13}
14}
15]
16}

Language: json

Name: Example Response

Description:

[Warning: empty required content area]
Update Fulfilment Details

Edit the Fulfilment information.

PUT: 

`/api/v4.1/order/{orderId}/fulfilment/{fulfilmentId}`

Request and response

Request and response

Request parameters and sample

Fulfilment request

1FulfilmentRequest {
2    fulfilmentType (string, optional) = 'CC_PFS', 'CC_PFDC', 'HD_PFS', 'HD_PFDC'
3    eta (string, optional),
4    expiryTime (DateTime, optional),
5    deliveryType (string, optional) = 'STANDARD', 'EXPRESS', 'OVERNIGHT',
6    fulfilmentRef (string, optional),
7    fromAddress (object, optional),
8    toAddress (object, optional),
9    items (array, optional),
10    consignment (object, optional),
11    attributes (Array[Attribute], optional)
12}
13
14fromAddress {
15
16        locationRef (string, optional),
17        companyName (string, optional),
18        name (string, optional),
19        street (string, optional),
20        city (string, optional),
21        postcode (string, optional),
22        state (string, optional),
23        country (string, optional)
24        }
25
26toAddress {
27
28        locationRef (string, optional),
29        companyName (string, optional),
30        name (string, optional),
31        street (string, optional),
32        city (string, optional),
33        postcode (string, optional),
34        state (string, optional),
35        country (string, optional)
36        }
37
38items {
39
40        fulfilmentItemRef (string, optional),
41        orderItemId (string, optional),
42        orderItemRef (string, optional),
43        skuRef (string, optional),
44        requestedQty (integer, optional)
45        availableQty (integer, optional)
46        }
47
48consignment {
49
50        carrierId (string, compulsory),
51        consignmentRef (string, optional),
52        labelUrl (string, optional),
53        status (string, optional) = ['ASSIGNED', 'ACTIVE_LODGED', 'ACTIVE_SENT', 'COMPLETE', 'FAILED'],
54        retailerId (string, compulsory)
55        }
56
57Attribute {
58
59        name (string, optional),
60        type (string, optional) = ['STRING', 'INTEGER'],
61        value (string, optional)
62    }

Language: java

Name: Fulfilment Request Example

Description:

[Warning: empty required content area]

Example request

1{
2"deliveryType": "EXPRESS",
3"eta": "2D",
4"expiryTime": "2015-09-16T00:50:56.959Z",
5"fromAddress": {
6"locationRef": "080",
7"companyName": "testName",
8"name": "testName",
9"street": "update 1 Anderson Street",
10"city": "Chatswood",
11"postcode": "2067",
12"state": "NSW",
13"country": "Australia"
14},
15"fulfilmentRef": "TestFul_4496",
16"fulfilmentType": "CC_PFS",
17"toAddress": {
18"companyName": "UpdatetestName",
19"name": "testName",
20"street": "1 Anderson Street",
21"city": "Chatswood",
22"postcode": "2067",
23"state": "NSW",
24"country": "Australia"
25},
26"items": [
27{
28
29"orderItemId": "10",
30"orderItemRef": "AR1-4001-WH-1-2",
31"requestedQty": 1,
32"skuRef": "7066028-796-S"
33}
34],
35"consignment": {
36"carrierId": "1",
37"status": "ASSIGNED",
38"labelUrl": "labelUrl1",
39"consignmentRef": "CPANRMZ0000982",
40"retailerId": "211"
41}
42}

Language: json

Name: Example request

Description:

[Warning: empty required content area]

Response Parameters and sample

1SuccessMessageResponse {
2
3    id (object, optional),
4    message (string, optional),
5    status (string, optional)
6    }

Language: java

Name: Fulfilment response

Description:

[Warning: empty required content area]
1{
2 "id":"427323"
3}

Language: json

Name: Example response

Description:

[Warning: empty required content area]
Update Fulfilment Attributes

Edit Fulfilment details.

PUT: 

`/api/v4.1/fulfilment/{fulfilmentId}/attribute`

Request and response

Request parameters and sample

Fulfilment request

1fulfilmentRequest {
2
3    attributes (Array[Attribute], optional)
4}
5
6Attribute {
7
8        name (string, compulsory),
9        type (string, optional) = ['STRING', 'INTEGER'],
10        value (string, optional)
11    }

Language: java

Name: Fulfilment Request Example

Description:

[Warning: empty required content area]

Example request

1{
2"attributes": [
3
4{
5"name": "Address",
6"type" : "address",
7"value" : {
8"Address 1" : "46, Kipax Street",
9"Suburb" : "Surry Hills",
10"Post code" : "2010",
11"State" : "NSW"
12}
13}
14]
15}

Language: json

Name: Example request

Description:

[Warning: empty required content area]

Response Parameters and sample

1SuccessMessageResponse {
2
3    id (object, optional),
4    message (string, optional),
5    status (string, optional)
6}

Language: java

Name: Fulfilment response

Description:

[Warning: empty required content area]
1{
2 "id":""
3}

Language: json

Name: Example response

Description:

[Warning: empty required content area]


Response on Failures

NAME

TYPE

DESCRIPTION

error

Array

Array of errors

message

String

Additional information on the code Unauthorized | Bad Request | Forbidden | Not Found | Status 500 Error

code

String

Status Code for the above messages 401 | 400 | 403 | 404 | 500

Fluent Commerce

Fluent Commerce