80% of the shoppers make buying decisions based on ship cost and delivery speed during pre-purchase. Fenix Delivery Experience Platform enables retailers to offer a personalized delivery experience to their customers through the entire shopping journey from pre-purchase to post-purchase.
Pre-requisites before making API requests to Fenix Delivery Experience Platform
Carrier Information: The retailer should provide the current Carriers, the services opted for, carrier account information, or rate cards ( any specific). Kindly configure the carrier account information for fulfillment location-specific carrier accounts at a fulfillment location to get the most accurate rates. Global Credentials are always on priority.
Fulfillment locations: Configure all the USA Fulfillment locations, including DC/Store, in the Business Console
Lead Time (Time required to pick/pack/ship) for each fulfillment location after the order gets allocated
Shipment Pick-up times for each carrier or by carrier service.
Cut-off Time for the location
Holidays for the location
Inventory and Product: Various channels to share the inventory and product information with Fenix. Fenix's technical team helps you to choose the most appropriate method via SFTP/S3/Rest API.
Integration varies from platform to platform. In the case of Bigcommerce or Shopify Fenix team will install the private app in the checkout, then retailer-specific PDP and CART Rest API endpoints will be provided by the Fenix team.
Integration Architecture
...
Request & Response formats
All the request and response formats are accepted in application/JSON
Delivery Estimates Request
API | /fenixdelest/api/v3/deliveryestimates | ||
Method | POST | ||
Request Headers
|
| ||
Request body sample |
| ||
Response body sample |
|
Request Body Attribute Definitions
Attribute | Description | ||
sessionTrackId mandatory | "sessionTrackId":"123123-2323-1231-23123"
| ||
orderId
| "orderId": "123123123"
| ||
cartId | "cartId": "123123123"
| ||
buyerZipCode mandatory | "buyerZipCode" : "95129"
| ||
pageType mandatory | "pageType": "cop"
E.g., Show fastest EDD on PDP and show all EDD options on COP. PDP - Product Detail Page CART - CART page/shopping Bag page COP - Check out Page MC - Mini Cart CA - Cart Abandonment OC - Order Confirmation SC - Shipping Confirmation Send Values as part of a delivery estimate request | ||
moneytoryValue mandatory | "monetaryValue": 50.0
| ||
responseFormat | "responseFormat" : "json"
| ||
additionalProcessing | "additionalProcessing": true
| ||
skus mandatory |
| ||
buyerAddress mandatory |
| ||
shippingInfo mandatory |
|
Response Attribute Definitions
Delivery Estimates response vary from the type of rule configured in the business console.
...
The above request is a Fenix commerce master request with all the attributes the request body will change based on the retailer, such as inventory product feed integration.
PDP Integration Procedure
Precheck
Restrict the delivery estimates to only USA region and for only USA Customers
Don't make a delivery estimate call if the item is out of stock and other exceptional handling cases
...
Code Block |
---|
{ "sessionId": null, "responseTimeInMs": 1065, "eddResponses": [ { "webId": "black-leather-bag", "hours": "1", "minutes": "55", "response": "Order within <b>1 Hrs 55 Mins</b> to get it by <b>Mon, Jul 18</b>", "shippingCost": { "amount": 4.99, "currency": "USD" }, "buyerZipCode": "10002", "deliveryZone": "DEFAULT", "shippingDateTime": "15 Jul 2022, 16:30", "shippingMethodDesc": "Standard", "internationalOrder": false, "formattedDeliveryDate": "Mon, Jul 18", "guaranteedDeliveryDate": "Mon, 18 Jul 2022", "errorMessage": null, "packages": [ { "carrier": "FEDEX", "wrapperType": "DEFAULT", "shipperLocId": "64364413079", "deliveryDate": "Mon, Jul 18", "shippingDate": "15 Jul 2022, 16:30", "shipperZipCode": "10011", "shippingMethod": "FEDEX_GROUND", "actualMethodDesc": "FEDEX_GROUND", "externalShippingMethod": null, "contents": { "black-leather-bag": 1 } } ], "shipCostBreakUp": { "breakups": [ { "name": "BASE_CHARGES", "charges": { "amount": 11.16, "currency": "USD" } } ] }, "orderRoutingInfo": [ { "sku": "black-leather-bag", "location_id": "64364413079" } ], "prePurchaseShippingInfos": null, "shippingDeliveryDate": "Mon, 18 Jul 2022", "code": null } ], "smartShippingResponses": null, "pickFromStoreResponse": { "locationsWithIn": "50.0 miles", "storeInfos": [ { "locId": "64364413079", "address": { "id": null, "address1": "156 10th Avenue", "address2": "", "city": "New York", "country": "US", "state": "NY", "zipcode": "10011", "phone": null, "timeZone": null, "shortZone": "CT" }, "distance": "0.00 miles", "pickUpCost": 0.0, "mapsRoute": null, "leadTimeForPickUp": 4, "lineItems": { "black-leather-bag": 1 }, "workingHours": { "Sunday": "09:00 - 18:00", "Monday": "09:00 - 18:00", "Tuesday": "09:00 - 18:00", "Wednesday": "09:00 - 18:00", "Thursday": "09:00 - 18:00", "Friday": "09:00 - 18:00", "Saturday": "09:00 - 18:00" }, "pickUpTitle": "Pick at New York in 4 hrs", "pickUpDescription": "156 10th Avenue,New York,NY,10011" } ] } } |
Exception Use Cases :
Use Case | HTTP Status Code | Response Payload |
---|---|---|
Invalid Inventory | 400 | { |
Invalid TenantId | 400 | { |
Invalid Zipcode | 400 | { |
Invalid Page Type | 400 | { |
Invalid Product Info | 400 | { |