Table of Contents | ||||||
---|---|---|---|---|---|---|
|
Delivery Estimates
Get the Fenix SFCC
...
Cartridges
The Fenix onboarding team will share the
...
cartridges zip along with documentation. Please get in touch with fixdsupport@fenixcommerce.ai
Setup
Include Link Cartridge
...
Upload the cartridges
Upload the cartridges The 'fenix_sfra_changes', 'int_fenix_sfra',
...
'int_fenix_
...
core' &
...
'bm_fenix' from the received zip from Fenix onboarding team to the current code version along with all other cartridges.
Configuration
Site Cartridge path
Add the ‘fenix_sfra_changes’, ‘int_fenix_sfra’ & ‘int_fenix_core’
...
cartridges to the Storefront Cartridge path
...
at the following location:
Tip |
---|
Administration > Sites > Manage Sites > <<Site Name>> - Settings |
...
BM Cartridge path
Add the ‘bm_fenix’ Cartridge to the Business Manager Cartridge path
...
. To use the Jobs in the link cartridge, the Business Manager cartridge path needs to be updated to include this cartridge name ‘bm_fenix’. This is done at the following location.
Tip |
---|
Administration > Sites > Manage Sites > Manage the Business Manager Site |
...
Metadata Import
To use the Fenix Intelligent Delivery Platform, we need to
...
import the site metadata. This is done at the following location:
Tip |
---|
Administration > Site Development > Site Import & Export |
...
...
Steps are below:
From the cartridge zip received, zip the folder “Fenix_Intelligent_Delivery_Platform“ under metadata folder to create a zip file “Fenix_Intelligent_Delivery_Platform.zip“
In BM, navigate to Administration > Site Development > Site Import & Export.
Under “Import”, click Choose File.
Select and Upload “Fenix_Intelligent_Delivery_Platform
...
.
...
zip” from the Metadata directory in the Link Cartridge.
Click Upload
...
Import Meta File
...
Under “Import”
...
.
Now select the radio button next to “Fenix_Intelligent_Delivery_Platform.zip”.
Click Import to validate the import file.
Click “OK” to confirm the Import.
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Note Assign Value to Site PreferenceWe will need new shipping methods with same Ids as returned in the response from Fenix in attribute Id - shippingOptionMappingId e.g. standard-id, expedited-id, priority-id etc. |
Assign values to Site Preferences
After selecting the site, you assign the value to the site preference. This is done at the following location:
Tip |
---|
Merchant Tools > Site Preferences > Custom Preferences > Storefront Configurations. |
Find the Site Preference Grouping titled
...
“Fenix_Communications” and assign values to the text
...
fields that was provided by Fenix.
...
Setup Site Specific Preferences
...
All the required site preferences are below:
Name | Type | Description | |
---|---|---|---|
1 | Fenix Enabled | Boolean | Enable / Disable all features of the Fenix Intelligent Delivery Platform |
2 | Fenix Debugging Enabled | Boolean | Enable / Disable debug features of the Fenix Intelligent Delivery Platform |
3 | Fenix Tenant Id | String | Customer Identification token provided by Fenix Communications. e.g. 768b656c974245d2a427abe356bb4bf1 |
4 | Fenix Show Ship Id | String | Business Manager Shipping ID forced to display on the Checkout shipping page. This is used for a Ground shipping method that does not have a Fenix Intelligent Delivery Platform Delivery Estimate.
|
5 | Fenix Hide Ship Id | String | Business Manager Shipping ID forced to hide on the Checkout shipping page. This is used for a Ground shipping method that does not have a Fenix Intelligent Delivery Platform Delivery Estimate.
|
6 | Fenix Inventory Threshold | Number | Threshold Used For All Products In The Inventory Feed |
7 | Fenix Inventory Location | String | Inventory Location Used For All Products In The Inventory Feed. This should be populated with the inventory list Id assigned to site. |
8 | Fenix Inventory List Ids | Set of strings | Provide all the inventory list ids of which we want to send the inventory records of products to Fenix. |
9 | Fenix Store Name | String | Fenix store name used for post purchase order API and fulfillment API |
910 | Fenix Username | String | Fenix store username used for generating post purchase auth token |
1011 | Fenix Password | String | Fenix store password used for post purchase auth token |
1112 | Fenix X-Api-Key | String | Fenix store X-Api-Key used for post purchase APIs - generating auth token, order and fulfillment API. |
1213 | Fenix X-Identity | String | Fenix store X-Identoty used for post purchase order API and fulfillment API |
Service Profile and Service Creds
...
Assign Values To “FenixIntelligentDelivery.get” Service Credentials
From Path: Administration > Operations > Services
Go to Tab “Credentials”.
Click FenixIntelligentDelivery.get.cred to edit the credentials.
Give the following parameters:
Name: FenixIntelligentDelivery.get.cred
URL: <<End point URL of Fenix>>
User: empty
Password: empty
Click Apply.
...
Similarly, do the same exercise for Service Credentials
“FenixIntelligentDelivery.push.auth.cred”,
“FenixIntelligentDelivery.push.orders.cred”
“FenixIntelligentDelivery.push.fulfillment.cred”
if the site is enabled for post-purchase Fenix integration.
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Note {order_id} is dynamic order id in the URLs and {fulfillment_id} is dynamic shipment/fulfillment id in the URLs. Example below: https://platform.api.fenixcommerce.com/sfcccartridge/fenixppdenterpriseinbound/api/v1/orders/{order_id}/fulfillment/{fulfillment_id}/created |
FenixIntelligentDelivery.push.orders.cred
...
FenixIntelligentDelivery.push.fulfillment.cred
...
FenixIntelligentDelivery.push.fulfillment.cred
Assign Values To “FenixIntelligentDelivery.push” Service Credentials
Info |
---|
From Path : Administration > Operations > Services |
Go to Tab “Credentials.”
Click
FenixIntelligentDelivery.push.cred to edit the credentials.
Give the following parameters:
Name: FenixIntelligentDelivery.get.cred
URL: <<Fenix Provided Endpoint URL>>
User: <<Fenix Provided User Name>>
Password: << Fenix Provided Password >>
...
14 | Consume Fenix Shipping Cost | Boolean | Enabling this will consume the shipping cost for each shipping method from Fenix response |
15 | Show Shipping Description In New Line(Checkout) | Boolean | This will enable the display of shipping method name and description in different lines. |
Services, Profiles, and Credentials
...
for pre and post purchase integration
Services created during the setup process
Name | Type | Description |
FenixIntelligentDelivery.get.http | Service | Service Used to “Get” Delivery Estimate From the Fenix Intelligent Delivery Platform. |
FenixIntelligentDelivery.get.prof | Profile | Profile Configuration For “Get” Service |
FenixIntelligentDelivery.get.cred | Credentials | Credentials needed to connect to the “Get” Service |
FenixIntelligentDelivery.push.sftp | Service | Service Used to “Push” Product and Inventory Feeds to the Fenix Intelligent Delivery Platform.
|
FenixIntelligentDelivery.push.prof | Profile | Profile Configuration For “Push” Service |
FenixIntelligentDelivery.push.cred | Credentials | Credentials needed to connect to the “Push” Service |
FenixIntelligentDelivery.push.auth.http | Service | Service used for generating auth token for post purchase APIs |
FenixIntelligentDelivery.push.auth.cred | Credentials | Credentials needed to connect to the auth token Service |
FenixIntelligentDelivery.push.orders.http
| Service | Service used for sending order data to Fenix systems |
FenixIntelligentDelivery.push.orders.cred | Credentials | Credentials needed to connect to the Order Service |
FenixIntelligentDelivery.push.fulfillment.http | Service | Service used for sending shipment/fulfillment data to Fenix systems |
FenixIntelligentDelivery.push.fulfillment.cred | Credentials | Credentials needed to connect to the Fulfillment Service |
Fenix Intelligent Delivery Export Job
To use Salesforce B2C box Service Framework, you’ll need to configure the Export Job.
Assign Values To Job Steps
Service credentials configuration
Assign Values To “FenixIntelligentDelivery.get.http” Service
From Path: Administration > Operations > Services
Go to Tab “Credentials”.
Click FenixIntelligentDelivery.get.cred to edit the credentials.
Give the following parameters:
Name: FenixIntelligentDelivery.get.cred
URL: <<End point URL of Fenix>>
User: empty
Password: empty
Click Apply.
...
Assign Values To “FenixIntelligentDelivery.push.sftp” Service Credentials
From Path : Administration > Operations > Services
Go to Tab “Credentials.”
Click FenixIntelligentDelivery.push.cred to edit the credentials.
Give the following parameters:
Name: FenixIntelligentDelivery.get.cred
URL: <<Fenix Provided Endpoint URL>>
User: <<Fenix Provided User Name>>
Password: << Fenix Provided Password >>
...
Similarly, do the same exercise for Service Credentials if the site is enabled for post-purchase Fenix integration.
“FenixIntelligentDelivery.push.auth.cred”
“FenixIntelligentDelivery.push.orders.cred”
“FenixIntelligentDelivery.push.fulfillment.cred”
Here
Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Note In the URLs {order_id} is dynamic order id and {fulfillment_id} is dynamic shipment/fulfillment id. Example below: https://platform.api.fenixcommerce.com/sfcccartridge/fenixppdenterpriseinbound/api/v1/orders/{order_id}/fulfillment/{fulfillment_id}/created |
...
Fenix Intelligent Delivery Export Job
Assign values to Job steps. Follow these steps to assign value to Export Job Definition. This is done at the following location.
Tip |
---|
Administration > Operations > Jobs : Fenix Intelligent Delivery Export |
...
Click Job Steps.
For “Site Specific Catalog Export” & “Site Specific Inventory Export”.
Click Organization.
...
Select scope - Specific Sites and select storefront to export.
Click Assign.
Do this for both Catalog and Inventory
Click Job Step “Sites Upload Feeds
...
“
Update
...
“ProductDir” to Fenix Provided Directory.
Update
...
“InventoryDir” to Fenix Provided Directory.
Click Assign.
...
Click Run Now or setup a “Schedule” to connect.
Fenix Intelligent Order Export Job
Order can be sent to Fenix systems at the time of order placement. For this, a hook needs to be implemented as below.
...
This hook is already called in SFRA out of the box in the file CheckoutServices.js. For any failed order export to Fenix or clients who do not want to send the orders at the time of order placement, the following job will be responsible for sending those orders to the Fenix database.
Assign
...
values to Job
...
steps. Follow these steps to assign value to Export Job Definition. This is done at the following location.
Tip |
---|
Administration > Operations > Jobs : Fenix Intelligent - Send Orders |
...
Click Run Now or setup a “Schedule” to connect.
Fenix Intelligent Fulfillment Export Job
For sending the fulfillment details to the Fenix database, the following hook must be implemented in all the custom events, and flows must be implemented where the order/shipment objects are updated.
...
Where order represents the SFCC order object, and final shipment finalShipment represents the updated shipment.
...
For manually triggering this flow, i.e., testing the flow for sending fulfillment data, Job “Fenix Intelligent - Send Fulfillment - Test Job” is added to the meta folder where the order id and shipment id are passed to the job step.
Assign
...
values to Job
...
steps. Follow these steps to assign value to Export Job Definition. This is done at the following location:.
Tip |
---|
Administration > Operations > Jobs : Fenix Intelligent - Send Fulfillment - Test Job |
...
Click Run Now or setup a “Schedule” to connect.Next