Segmentation
Overview of the main segmentation classes
classDiagram
direction RL
class Segmentation {
Id
Name
ContentSegmentation
PimSegmentation
PrimaryHost
PrimaryPath
Hostnames
}
class Language {
Id
CultureCode
}
class Business {
Id
Name
}
class BusinessUnit {
Id
Name
IsDefault
VatEnabled
VatPercentage
}
class Account {
Id
Name
}
class Address {
Name
AddressOne
AddressTwo
City
ZipCode
Country
}
class WebsiteUser {
Id
Name
Email
UserName
PhoneNumber
LoginStatus
EmailConfirmed
}
Segmentation --> Language
Segmentation --o Business
Business --o "1..n" BusinessUnit
Account "0..n" --> BusinessUnit
WebsiteUser "1..n" --> Account
Address <-- Account
Segmentation
The website data is divided into one or more segmentations. The segmentation controls:
- The current PIM segmentation.
- The current CMS segmentation.
- The current DAM segmentation.
- Which search index is used to fetch product data.
- What translations we use.
- How the urls we generate look.
- And more...
Normally you create one segmentation per domain / language you need in the solution.
Say for instance you create a webshop that is going to be hosted on two domains www.foo.dk
and www.foo.se
then
you need one segmentation for each.
You can also have two languages on the same domain but different paths. Then you make two segmentations with different
PrimaryPath
www.foo.com/da
and www.foo.com/se
.
Most API endpoints in the webshop backend take a SegmentationId
as one of the parameters, so that it knows from which
segmentation to return data.
Currently, segmentations can not be created from the UI. It is done in the database.
Business and BusinessUnit
The segmentation points to a Business. This could for instance be "Foo Denmark" or "Foo Sweeden".
The Business is the further divided into BusinessUnits. This could for instance be "Foo Denmark B2C" and "Foo Denmark B2B".
On the BusinessUnit you can set the VAT settings. These settings then apply to all accounts related to the BusinessUnit.
Feel free to add more settings on these classes if you need it.
Account
Each account in the shop is related to one BusinessUnit. The account is typically integrated with the customers ERP system (sometimes called a debitor).
Each account can have a number of WebsiteUser's associated. Think of a WebsiteUser as someone who can log in to the webshop.
In a B2C scenario there will be one WebsiteUser per account, but in a B2B shop it is normal to have multiple per account. For instance a number of employees at one particular company that has an account in the shop.
Read more about users here.
Admin UI
In the administration site you can create/edit/delete Businesses, BusinessUnits, Accounts and WebsiteUsers under Website > Business and Website > Logins.