ORDER type transactions may be leveraged for use within Sidekick via an existing Lookup Adaptor. Lookup Adaptor transactions of type == ORDER can be accessed within Sidekick’s Lookup Order Action, as well as within the Rule Action when configuring a Rule using the ‘order’ object.
In order to do so, order data must conform to the below specifications. Attribute names in an existing Lookup Adaptor must match exactly the required attributes in the tables below.
Detailed developer information on these specifications may be found here.
ORDER object structure requirements #
Attribute Name | Type | Required for Sidekick | Sidekick Use Case |
type | string This attribute must be set to ORDER. | Yes | Transactions of type ORDER are available in Sidekick. |
createdAt | date This attribute must be in ISO8601 format. | Yes | Used in filtering orders the customer is inquiring about. Used for enforcing SLA policies. Important for time sensitive replies and policies dependent on order creation, e.g. order cancellation. |
orderStatus | string/enum See list of allowable orderStatus below. | Yes | Create a Customer-facing reply or configure Rules based on this value. |
orderTotal | string This attribute amount must be formatted with the currency symbol. | Yes | Create a Customer-facing Reply or configure Rules based on this value. E.g., a $1000 order may be handled differently than $10 order by Sidekick. This value will allow behavior to be set up accordingly. |
currencyCode | enum Sidekick will assume orderTotal to be in USD by default. If this is not present, currency type will be inferred from the symbol provided in orderTotal. | No, but recommended | Recommended for optimal UX. |
customerOrderUrl | url | No, but recommended | While this is not required, it’s recommended especially if your business has a self-service ecosystem. |
products | []Product | Yes | See products table below. |
fulfillments | []Fulfillment | Yes | See fulfillments table below. |
billingAddress | Address | No, but recommended. | Recommended for optimal UX. |
List of allowable orderStatus values #
Our status definitions for pending, reviewing, complete, and canceled are listed below. Statuses must conform to the values below in order to leverage this data.
Pending – The order is being processed and awaiting payment, packaging, or shipment. Partial fulfillment, such as split shipments, should be marked pending.
Reviewing – The order is undergoing additional fraud checks or is awaiting manual review. It may be slightly delayed or canceled.
Complete – The order was completely fulfilled. All packages were shipped.
Canceled – (by company) The order was canceled by the company, such as when the order failed to pass a fraud review. (by buyer) The order was canceled by the buyer at their request.
Product structure (nested within order) #
The product Array is required for Gladly Sidekick. The more Sidekick knows about the products in an order, the more nuanced Sidekick can be when interacting with a Customer.
Attribute Name | Type | Required for Sidekick | Sidekick Use Case |
name | string | Yes | Create a Customer-facing Reply or configure Rules based on product names in an order. |
id | string | Yes | Critical to pair with fufillments[n].productIds to showcase what items are included within a shipment. |
status | string | No, but recommended | Recommended for optimal UX. |
sku | string | Yes | Create a Customer-facing Reply or configure Rules based on SKU(s) in order. |
imageUrl | url This attribute must be in HTTPS format. | No, but recommended | Recommended for optimal UX. |
quantity | number | No, but recommended | Encouraged if item quantity > 1. This will allow for specific Rules to be configured based on item quantity. |
Fulfillment structure (nested within order) #
The fulfillments Array is required for Gladly Sidekick. With fulfillment information, Sidekick can leverage its many carrier integrations to get real-time shipping updates that can better support the Conversation. By having access to this data, Sidekick can enforce SLA-based Rules and automate nuanced communication to the Customer about their order.
Attribute Name | Type | Required for Sidekick | Sidekick Use Case |
estimatedDeliveryDate | date This attribute must be in ISO8601 format. | No, but recommended | Recommended for optimal UX. |
productIds | array of Strings Product IDs must correspond to the id in the products Array for this order object. | Yes | Create Customer-facing replies and configure Rules based on items included within a shipment. |
trackingUrl | url | Yes | |
trackingNumber | string | Yes, if it exists | Look up an order’s shipment status based on the carrier and trackingNumber. |
carrier | string/enum | Yes | Look up an order’s shipment status based on carrier and trackingNumber. See list of allowable carrier values below. |
shippingSpeed | string/enum | Yes | Enforce unique Replies and/or configure Rules based on the shipping speed and shipping SLAs. See list of allowable shipping speeds below. |
shippingAddress | Address | Yes | Enforce unique Replies and/or configure Rules based on shipment address (e.g.: transfer international shipments to Heroes). |
Allowable carrier values #
dhlEcom
fedex
fedexSmartpost
flavorcloud
laPoste
landmark
laserShip
ontrac
postNord
royalMail
rrDonnelley
ups
usps
yodel
pitneyBowes
Allowable shippingSpeed values #
lastMile
standard
expedited
twoDay
overnight
sameDay
Address structure #
Providing structure to addresses will enable more advanced behaviors and permit more precise communications with Customers.
Attribute Name | Type | Required for Sidekick |
street1 | string | Yes |
street2 | string | Yes, if it exists |
city | string | Yes |
state | string | Yes |
country | string | Yes |
zip | string | Yes |