Building Blocks
366 Items
Configurable Drawer Component
The Configurable Drawer is a content component that displays other components in the hidden by-default section. The drawer button click expands this hidden section on the right-hand side of the screen.
The component allows you to redefine the context for its descendants.
Complex Filter Component
The Complex Filter Component dynamically fetches and filters data based on a configurable request. Depending on the configuration, it enables users to search for entities using tailored filters and displays results in either Standard Card or Product Card formats. This adaptability ensures precise data retrieval and a consistent, user-friendly presentation.
Connector Contract - Create Order
Through the API, create a new in Fluent. The Customer must exist before placing the , whether a guest user or not.
Flow
The activity flow for both standard and guest users is identical. However, in a guest checkout scenario, a new Customer is always created before the is placed. The source system should generate a new unique identification for guest users, even if the email address used is the same as that of an existing standard user.
Order create
The activity flow has to first fetch the Customer ID from Fluent before placing the .
API Details
Create Order
API contract - createOrder
Create Customer
API contract - createCustomer
Create Payment
API contract - Create Order Payment
Get Customer
API contract - getCustomer Query
Connector Contracts - Create Order Payment
Payment transactions reflect when and how a customer has paid for an . Multiple (split) payments are supported and custom business logic can be applied on the Fluent side, to identify when an has been fully paid.
Considerations for the payment :
- The workflow needs to reflect the business model on when to capture the payment: at order placement, or at fulfilment.
- Create order payment should simply track the payment details against the order placed, nothing more.
- All available payment transactions (authorisation and/or capture) should be pushed to Fluent.
- These transactions can be used to issue refunds on returns or cancellations.
- Payment pre-authorisations usually only hold for 5-7 days. The workflow should expect it to fail when capturing at fulfilment time for delayed orders.
- Pre-orders will need a different flow, as capturing at fulfilment time will most likely be outside the 5-7 window.
API Details
Event Names
`fc.connect.order.transaction.add`
API contract
To download the add payment transaction payload schema click here.
CreateArticlesForFulfilment
The creates one or more articles for the Fulfilment in the incoming .
DEFAULT.COORDINATES
If the parameter is set to true and the Google Geocoding request fails or the response contains no result, the DEFAULT.COORDINATES setting will be used. this setting is also used by a few rules such as `ValidateOrderDeliveryAddress`
Events Search Component
The Events Search is a component for events:
- filtering,
- displaying,
- exporting.
The component fetches events using the REST Event API based on the selected search criteria.
fc.api.fulfilment.uniqueness
Enabled a new unique constraint for the creation to prevent duplicate fulfillments. Enabling this feature toggle can impact the existing business of replay fulfillments at the same ; see the Managing Duplicate Fulfilments functionality.
fc.graphql.comment.access
This setting is a feature toggle that enables the Retailer-specific Permissions for the Comment GraphQL API.
It allows you to manage User access rights for creating, updating, and viewing Comments with the corresponding Permissions at the or Retailer level.
FC.MYSTIQUE.EVENT.SEARCH.FILTERBASED
Displays the search UI component on the . For more information about how to use this setting, see the Event Search functionality.
fc.mystique.fields.basicpack
The `fc.mystique.fields.basicpack`
setting enables the configuration of the Multi-Parcel Component fields.
fc.mystique.fields.fulfilmentpack
This setting is utilized in the Pack component to configure the Pack Wizard.
fc.mystique.pack.rejection.reasons
This setting provides a list of rejection reasons to be applied during the packing . These reasons will populate the dropdown menu in the rejection field during Pack. The list can be customized or expanded to meet specific business requirements.
Fluent CLI
The is an NPM Package, which can be installed by following the Getting Started Guide.
ForwardEventWithPickupLocationCoordinates
The forwards the input with coordinates of the pickup .
ForwardIfStandardProductExists
Forwards the with name {eventName} if the Standard Product exists.
IfPropertyIsNotPresent
Conditionally another when the specified field or is null.
This is typically used as an "else" case for the IfPropertyIsPresent .
IfPropertyNotEquals
Conditionally another when the specified field or does not match the provided value.
This is typically used as an "else" case for the IfPropertyEquals .
Inline Print Button (legacy)
The Print Button combines the page query with an HTML setting to generate a document that can be printed.
On click, a modal preview is presented with a print button that triggers the browser's print . From there the document may be printed directly or saved out to PDF using a print-to-pdf tool.
This can be used to produce things like pick lists, packing slips, and invoices.
Note that this feature is a legacy design. The new print component can be found here: New Print Component.
Inventory Catalog Workflow Template
This is the Reference Catalog provided as part of the Inventory Reference Module.
Fluent Commerce provides `fc-workflow-inventory-catalogue.json`
file that can be imported directly into any Retailer setup to use the Reference template. It is also possible to update and configure Workflows to fit your specific client requirements using our OMX Workflow Framework.
The Inventory Module Getting Started Guide defines configuration capabilities for the Reference Workflows.
Link Component
The Link Component is a text element with a hyperlink, designed for scenarios where a link needs to be applied. It can be used anywhere and integrates seamlessly with conditional logic when wrapped within a Conditional Component. This allows the link's display or functionality to adapt based on the conditions defined in the (e.g. when the link should be active or inactive).
List Feed Wrapper
The list feed wrapper is a wrapper for the fc.list component that converts data from the Metrics API to a list-readable format.
LoadInventoryPositionData
Send an including the `inventoryPositionExists`
flag indicating whether the corresponding Position exists or not.
This is a simplified version of the `LoadInventoryPosition`
, excluding the logic for:
- Retrieving Inventory Quantity data of type
`LAST_ON_HAND`
in status`ACTIVE`
or`CREATED`
- Setting and forwarding the
`inventoryQuantityExists`
flag (true or false)
Location Id Component
fc.attribute.locationId is a custom field component that allows to add / edit a on a drawer. The component’s key feature is the possibility to add a Id only in situations when it is necessary. Let’s consider the following situations, when a user is created
- When new user with user type “AGENT” is created, the Location Id is a required parameter;
- When user with other type is created, the Location Id is an optional parameter.
Multi-Parcel Component
- Multi-Parcel is an alternative Wave configuration to the Packing step for Fluent Store. The Multi-Parcel field component supports the ability to create multiple parcels per fulfilment.
- It supports the ability to create common parcel types for a location. These parcel types can contain useful information such as dimensions and weight attributes to improve the packing process.
- To get started with the Multi-Parcel field component in your Fluent Store configuration we recommend the following knowledge base guide.
NotifyVirtualCatalogueOnNetworkMatch
Conditionally send an to the (specified by its Reference) if it passes the "Network-Match-Check".
A passes the "Network-Match-Check" when its (s) finds a match with a given Position (s).
The `Rule NotifyVirtualCataloguesByRefsOnNetworksMatch`
is a newer version of the `NotifyVirtualCatalogueOnNetworkMatch`
. Moving forward, please use the `NotifyVirtualCataloguesByRefsOnNetworksMatch`
instead of the `NotifyVirtualCatalogueOnNetworkMatch`
.
Pack Field Component
The Pack Component in Fluent Store is designed to organize the packing by outlining each box's contents in multi-parcel shipments, setting parcel parameters, rejecting items, and providing detailed information for each item through the Pack Wizard.
Connector Contracts - Payment Authorise
Authorization transactions reserve funds in the customer’s to be used in a future payment.
Note that in most cases, this flow should be handled on the e-commerce side but may be applicable for certain types of integration (like “store credit”). Please do not share customer credit card details with Fluent.
Flow
Payment is usually authorized when an e-commerce is placed. This authorization ensures the retailer can get funds from the customer once the items are shipped.
The payment Service Provider validates the received authorized payment request and sends a valid authorized payment response token back to the ; the sends the token back to the Fluent system for further processing of the .
API Details
Event Names
`fc.connect.payment.authorise`
API contract
To download the payment-authorized payload schema, click here.
Connector Contracts - Payment Capture
Payment Capture is the flow in which some or all of the authorized funds are taken.
In many jurisdictions, this must happen at the point of shipping the product, in which case Fluent will send a to the Payment Service Provider with details of the authorization and capture amount.
Flow
Typically, the is placed on an e-commerce system with appropriate payment information, and the and authorized transaction information are passed to Fluent (see Order Connector Contract).
Once we’re ready to capture some or all of that payment, Fluent workflows will produce the “capture request” for the Payment .
The Payment Service Provider will then validate and the request and respond (asynchronously) with either a “success” or “error” .
API Details
Event Names
`fc.connect.payment.capture`
API contract
To download the payment capture payload schema, click here.
Connector Contracts - Payment Reauthorise
Authorisations do not reserve funds indefinitely; funds are automatically released after a defined period of time by the business. The defined time period depends on card types.
When authorisation expires, it is necessary to reauthorise or secure a new authorisation for the value of expired authorisation.
When Fluent workflows produce a “reauthorisation” to the Payment , the Payment Service Provider will validate the received reauthorise payment request, and respond (asynchronously) with either a “success” or “error” .
API Details
Event Names
`fc.connect.payment.reauthorise`
API contract
To download payment reauthorise contract click here.
Connector Contract - Payment Refund
A refund is required when you have charged a payer, and need to cancel the payment and return the funds to the payer. The funds will be returned to the payment method that the payer initially used to make the payment.
When Fluent workflows produce a “reauthorisation” to the Payment , the Payment Service Provider will validate the received refund payment request, and respond (asynchronously) with either a “success” or “error” .
API Details
Event Names
`fc.connect.payment.refund`
API contract
To download the payment refund payload schema click here.
Connector Contracts - Product Category Upsert
Creates or updates a in Fluent Management. Categories are optional.
If the targeted Product Catalogue includes base products or variants that are mapped to categories then these categories need to be created first. Then the Base Product and last the associated Variants .
API Details
Event Names
`fc.connect.product.category.upsert`
API contract
To download the payload schema click here
Connector Contracts - Product Upsert
Creates or updates a product in Fluent. This API will handle both the base product and variants.
The expects to receive the base product first, then the variants. If the base product or variants have references to categories, then these should be sent before the base product and variant.
API Details
Event Names
`fc.connect.product.upsert`
API contract
To download the product upsert payload schema click here.
Retailer Id Component
Retailer Id (fc.attribute.retailerId) Component is a custom field component that allows to add/edit a Retailer on a drawer.
Returns Component
The Field Component provides an experience for creating through an OMX web application. Example usage of this component is provided as part of the configuration guide
SERVICEPOINT_GQL_DASHBOARD
You can configure the information displayed on the tiles on the ServicePoint dashboard via this setting.
The components on the dashboard are generated based on the query and variables passed in this setting.
For more information, see the ServicePoint Dashboard page.
Setting Form Component
The Setting Form Component displays Fluent Settings as user-friendly UI elements, enabling a no-code experience for configuring Fluent web apps. By presenting settings as UI components instead of JSON, business users can directly configure Fluent, reducing their reliance on developers.
This details the capabilities of the Settings Form Component and provides a guide on how to use this component alongside related features to create a no-code experience within an Fluent Commerce web app.
Tab Card Component
The tab card is used to put tabs at the top of a group of card-like components (Attributes Card, List Component, etc) and allows users to switch between them. This can help to reduce the number of clicks a user takes when navigating between pages.
The descendants of the Tab Card component are used as the content of the tabs, linked by index. The first descendant will be shown while the first tab is active. For cases where multiple descendants should be shown under a single tab, use the Page Section component (or similar) to group them.
fc.fulfilmentoptions.create.event.persistence
This setting enables an options creation to be run asynchronously to the request. Read more about it in Fulfilment Options improvements enablement.
UpdateOrderCoordinates
The updates the longitude and latitude of the based on the incoming information received from the ResolveOrderCoordinates rule.
This works only if the comes without coordinates. The ResolveOrderCoordinates resolves the coordinates and sends the with latitude and longitude. After that, the UpdateOrderCoordinates gets coordinates from the and updates the delivery address with coordinates.
USB Barcode Scanner Component
An invisible component that accepts input from a USB scanner in HID mode (keyboard simulation) and performs an on a scan. This component activates when nothing on the screen is currently selected and enables efficient scanning of parcel labels to perform various functions, like marking a customer as collected.
Most commonly, the Barcode Scanner component is included in Fluent Store manifests centered around collections.
Virtual Catalog Workflow Templates
These are the Reference Workflows provided as part of the Inventory Reference Module.
Fluent Commerce provides `fc-workflow-virtual-catalogue-base.json`
and `fc-workflow-virtual-catalogue-aggregate.json`
files that can be imported directly into any Retailer setup to use the Reference templates. It is also possible to update and configure Workflows to fit your specific client requirements using our OMX Workflow Framework.
The Inventory Module Getting Started Guide defines configuration capabilities for the Reference Workflows.