Fluent Commerce Logo
Docs
Sign In

Foundational Domains & Entities

Essential knowledge

Authors:

Matthew Hesford, Esma Tuzovic, Anita Gu, Cille Schliebitz

Changed on:

2 Feb 2025

Overview

The Foundation Domain contains the core foundational entities to support the Management capabilities. 

Key points

  • The foundation domain is made up of:
    • Accounts
    • Retailers
    • Locations
    • Networks

Fluent Domain Entity - Account

Fluent Account is a tenant of the platform and typically represents a client. An is the most top-level container of client data and is isolated and secure from other accounts in the environment.

Each has its own unique URL for accessing all parts of Fluent Management, such as API endpoints, and Web Apps.

URL Patterns for Sandbox and Production

Fluent Web Apps URLs

  • Sandboxhttps://[ACCOUNTID].sandbox.apps.fluentcommerce.com/[AppName]
  • Productionhttps://[ACCOUNTID].apps.fluentcommerce.com/[AppName]

Fluent API Root URLs

  • Sandboxhttps://[ACCOUNTID].sandbox.api.fluentretail.com/
  • Productionhttps://[ACCOUNTID].api.fluentretail.com/

Accounts are a commercially agreed . For Clients on a standard agreement, 2 sandbox accounts, and 1 production are provided.

No alt provided

Fluent Account Types

Fluent Commerce provides the following types:

Client Account - Every client receives this as part of their subscription agreement. As part of the initial implementation, a Fluent implementation partner is responsible for setting up and configuring a client .

One client receives:

  • two sandbox accounts that may be provisioned at least 4 weeks before the scheduled UAT/SIT  
  • one production account that may be provisioned 4 to 6 weeks before scheduled 'Go-Live' and the 'Ready for Launch' report identifies no issues.

Clients may purchase additional accounts as part of their commercial agreement with Fluent Commerce.  The limit for client accounts is negotiated as part of the license agreement.

Partner Account - Partner Account is a sandbox provided to Fluent Partners who have completed the Fluent OMS Training. This is primarily for the internal use of the partner for continued learning, demos, self-service labs, and testing custom plugins.

During the delivery of a client project, the partner has access to the client accounts.  Partner accounts have the following policies and prerequisites:

A single partner will be provided to official implementation partners in the sandbox environment.

A partner must have completed the Fluent OMS Training (with at least 2 Technical Resources), before qualifying for a Partner .

A Partner has some limits, such as: 

  • Total number of API requests per day is limited to 1000
  • Total number of orders per day is limited to 100
  • Max Retailers are limited to 50

Best Practice: Partner Account should not be used for any client implementations.

Training Account - Training Accounts are temporary accounts issued to learners on the LMS who enroll in implementation-based training. This includes, Functional, Configuration, Developer, and Technical courses.

Training accounts remain active for 30 days before being recycled and made available for subsequent training sessions. 

Fluent Domain Entity: Retailer

Retailer is defined as a business that sells goods to the public. On the Fluent platform Retailer is a logical division of an based on client brands, geographies, or different billing entities within the organization.  Each Retailer has its own CustomersOrdersBilling Accounts, and Workflows (Business Logic).

Retailers can own or share: 

  • Users
  • Settings
  • Locations and Networks
  • Products, and Inventory

Retailers can be classified under client brands, geographies, or different billing entities, and many more. 

Account 1 - In this example, GlobalCorp EU operating in Europe has 4 retailers which may be classified  under brands  like Brand A, Brand B, Brand C for 1.

Account 2 - In this example, the GlobalCorp USA operating has 3 retailers (Retailer E, Retailer F, Retailer G,) which are classified under different geographical locations like USA, UK, EU.

No alt provided

Deciding how Many Retailers to Include in Your Fluent

The following decision tree can be used to determine how many Retailers should ideally be included in an :

No alt provided

Fluent Domain Entities - Network and Location

A Location represents any physical place, such as a store, , or , and may also represent third-party locations, such as drop-ship vendor locations.  The creates and manages individual points on the map, such as for stores, warehouses, centers, and pickup locations.  It also manages opening hours, address, lat/long, storage areas, and custom attributes.

Network is a named group of locations for the purpose of separating locations into logical or geographic categories. These could represent pools of locations, such as by region, type, grade, , and customer types.  Networks are used for many purposes including:

  • Choosing which locations are available for customer collections or return, which locations should be used to fulfill orders
  • As a mechanism to share locations between retailers such as grouping of locations for global inventory purposes.

It is important to note that:

  • A Network can have many Locations.
  •  A Location can be in many Networks.   

In other words, and have M: N (many-to-many) relationships, and there is also no limit to the number of networks.

  • Click and Collect Network (purple broken line) indicates the locations (store/warehouse) which provide the click and collect option.
  • Warehouse represents a location which contains opening hours, address, lat/long, storage areas, and custom attributes.
  • Store location represents the stores within the network, which contains opening hours, address, lat/long, storage areas, and custom attributes.
  • Home Delivery Network 🚚 (green broken lines) indicates the locations (stores/warehouses) which provide Home Delivery services. One or more locations can be in one or more network 
No alt provided

Context and Settings

Settings are used to enable and disable certain platform features (feature toggles). Each setting can be specified on different levels and are applied in hierarchical :

  • Account setting - Account level setting which applies to all Retailers.
  • Retailer setting - Retailer level setting which applies to the Retailer.
  • Agent/Location setting - Location level setting which applies to the Location.

In Fluent apps, settings can be used to specify custom values or toggles. These settings can range from toggling " fulfilment only" to defining environment-specific endpoints. Compared to the attributes of an , settings are more static in nature.

View all of the settings used in the Context of 'Account.'

View all of the settings used in the Context of 'Retailer.'