Overview
Shop is an e-commerce unit that represents a preconfigured web shop, which can be mapped to one or more URLs (domains). Shop offers one or more products and allows customer to go through a checkout process that results in an order. Later this order is going through a fulfilment process. Offered products of simply offers are defined through various configurations: categories available to the shop from master catalog, available stock via warehouse assignments and prices defined for these products. Shop also determines how and where orders will be delivered and what payment methods will be available.
Once the shop is configured for specific URL (with registered domain) the storefront part (i.e. website) will become accessible on the storefront server nodes. Shop themepreferences will define the look and feel for the website and shop assignments (categories, fulfilment centres, shipping and payment methods) will provide the data for the website.
Note that for shop to exist there is no requirement for it to be accessible publicly (i.e. mapped to URL and accessible via storefront). In other words it is possible to create internal shop instances that cannot be accessed by customers. Apart from being invisible internal shops benefit from all functions that the platform offers, including data federation. This mechanism is the basis for users wishing to use the platform with marketplace configurations. Vendors would have access to the internal shops while customer facing shop instance (i.e. the marketplace) will provide access to shared categories and products.
Shop management
Shop management is available from Stores section. Once selected the section menu will display list of all shop instances available to current user. Additionally < + Create >button is available to create new stores for platform admin users.
Once specific shop is selected the data panel is loaded on the righthand side, showing Overview tab by default.
Each tab represents a business function and allows the user to quickly adjust shop parameters.
Basic configuration
Basic configuration of the shop are located on the Main tab that allows to modify shop code, name, description and default theme chain.
Shop code
Shop Code is unique identifier given to a shop at the creation time and it cannot be changed thereafter. It is used throughout the platform to identify data belonging to the shop (e.g. prices, tax, promotions) and also for data federation and import/export functions.
Themes
Theme chain is a semi-colon separated list of theme names. The chain is evaluated from left to right. For example chain ycdemo;default would give preference to ycdemo theme templates and if those do not exist fallback onto default.
This provides a very flexible mechanism to change look and feel of the customer facing website by simply adding additional theme to the end of chain. Say, sale;ycdemo;default which would give preference to sale theme that may provide additional banners and promotion messages.
Community edition provides a number of different themes which can be viewed live on demo site and SaaS demo site.
default theme is always added to the chain so there is no need to specify it explicitly. Thus chain ycdemo would in fact translate to ycdemo;default and blank chain to default
SEO
SEO configuration allows to specify default shop's SEO metadata. All values are localisable and settings can be provided in any language by associating them with a language code which will affect web page meta and title tags.
URL mapping
For any shop to be accessible by customers it has to be mapped to at least one domain name. There is no limit on how many domains are mapped to single shop. When multiple domains are mapped the same shop will be accessible from all domain names.
The mapping must only contain domain name i.e. my company.com, www.company.com or subdomain.company.com. Do not specify protocols or paths.
Note that mapped domain names have to be registered domains or mapped in DNS records on private network for internal uses.
Currencies
Each store can operate in one or more currencies. Once currencies are selected for shop they become available on storefront and Admin editors (e.g. pricing, tax, promotions and price rules SaaS ).
Storefront Currency templates will automatically pick up available currencies configuration and if there are more than one available then a drop down menu will be rendered.
All currencies are used in their ISO 4217 form (a three letter code) and are preconfigured within platform so that all standard currencies are available for selection.
Languages
Each store can operate in one or more languages. Language selection influences only storefront view and does not have any functional purpose other than displaying data to user is desired language. However language setting is not as simple (as say currencies) since it involves some input from the theme templates. Thus available languages are preconfigured to only allow languages which are supported by installed templates. Out of the box the platform supports English, German, Ukrainian and Russian.
Storefront Language templates will automatically pick up available languages configuration and if there are more than one available then a drop down menu will be rendered.
Categories
The platform uses single master catalog. Shop catalog configuration defines the link between shop's top level categories, which are contained in the master catalog. This provides flexible mechanism of sharing categories between shops and is the foundation for multi-tenant/multi-branding strategies and marketplace implementations.
Categories can be linked to any shop at any level thus becoming top level category of the shop. Any subcategories will automatically become available to the shop. Please see catalog management for more in depth discussion of the topic.
Available categories depend on the access rights of the current user. Therefore if user has access only to a single shop there will be no categories available, since all of them are already assigned to the shop. Add button allows to bypass access rights and create new category and assign it to current shop in one action.
Fulfilment centres
Fulfilment centre assignments allow to specify which centres are managing inventory (and hence fulfilment) for a given shop. Fulfilment centre can be assigned to a specific shop or be shared by several shops. The configuration largely depends on the business requirements. Simplest way of thinking about fulfilment centre is - it is an inventory storage, which can represent a physical warehouse, or could be a "logical" separation within a physical storage (e.g. discontinued items inventory)
Basic usage is a one to one fulfilment centre mapping for shop (i.e. each shop has its own stock). However if we need special prices such as "discontinued items" we need to separate out the stock, so that fulfilment centre specific pricing policies can be applied. In some cases it makes sense to have single fulfilment centre - consider multiple shops that use same warehouse for inventory.
More on this topic can be found in the inventory management.
Available warehouses depend on the access rights of the current user. Therefore if user has access only to a single shop there will be no warehouses available, since all of them are already assigned to the shop. Create button allows to bypass access rights and create new warehouse and assign it to current shop in one action.
Supported shipping carriers and locations
Carriers are providers of delivery services. During checkout process customer has to choose one of the available shipping methods provided by carriers. This configuration allows to provide this selection.
Available carriers depend on the access rights of the current user. Therefore if user has access only to a single shop there will be no carriers available, since all of them are already assigned to the shop. Create button allows to bypass access rights and create new carrier and assign it to current shop in one action.
Sometimes shipping methods offered by particular shop are limited to specific location. The platform offers API to allow filtering by country out of the box. There are two location configuration: shipping locations and billing locations. Each of these influence corresponding address books allow greater configuration flexibility.
Locations tabs provides selection of applicable countries for each case.
Available countries are populated with all countries that are available in locations section and require global user access to populate them.
Payment gateways
Payment gateways configuration allows to enable payment methods applicable to given shop. Each payment gateway has its own preconfigured payment module, which can be enabled or disabled at the platform level in the systems payment gateways section.
Once module is enabled at the platform level it can be enabled or disabled at the shop level. Enabling payment gateway triggers setup of the configuration parameters for specific shop. These are copied from the module parameter template and include configurations such as API keys, localised names for payment method, cart information submission forms templates etc. There is no specific list and each payment gateway will require its own predefined set of parameters to operate correctly. For detailed discussion on the topics consult payment gateways guide.
Preferences (Shop Attributes)
Shop preferences provide extensible mechanism to set various shop attributes' values that can be used for various display options or as behaviour modifier on the website. Themes heavily utilise these configurations to provide alternative representations of information, adjustments to search results rendering, product preview, alternative flows at the checkout or custom customer profile sections and features.
Shop preferences/attributes screen loads all attributes available in the system that belong to SHOP attribute group. For those values that have been populated for current shop a distinct value ID is shown, for others an asterisk is displayed. There is an editor button against each value that displays specific editor pop up with description of what the value is used for and sometimes examples of what possible values may be used.
Table below list all shop attributes available and their purpose.
Attribute | Version | Purpose |
---|---|---|
Address | ||
Address: address format | 3.0.0+ | Used during order placement to provide a single line style address representation. Uses placeholders that can be arranged in required order to format address 3.2.0+ format can be specified per customer type by creating a new attribute which has suffix corresponding to desired customer type |
Category | ||
Category: category image height | 3.0.0+ | Category images height configuration. Used when displaying category images in a grid |
Category: category image width | 3.0.0+ | Category images width configuration. Used when displaying category images in a grid |
Category: category product image height | 3.0.0+ | Product images height configuration. Used when displaying product images in a grid |
Category: category product image width | 3.0.0+ | Product images width configuration. Used when displaying product images in a grid |
Category: category product thumbnail image height | 3.0.0+ | Product images thumbnail height configuration. Used when displaying product images in a small grid |
Category: category product thumbnail image width | 3.0.0+ | Product images thumbnail width configuration. Used when displaying product images in a small grid |
Category: items per page | 3.0.0+ | Comma separated numbers for results per page options. Used as fallback mechanism when category specific setting is not set |
Category: sortable fields | 3.0.0+ | Comma separated list of valid sort options. Used as fallback mechanism when category specific setting is not set |
Checkout | ||
Checkout: enable quantity picker for products | 3.0.0+ | Flag to enable/disable quantity picker UI component that is shown on product details page near the add to cart button to allow customers select/view quantity |
Checkout: enable coupons | 3.0.0+ | Enables or disabled coupon code entry form on the shopping cart page |
Checkout: enable order message | 3.0.0+ | Enables or disabled order message entry form on the shopping cart page |
Checkout: enable guest checkout | 3.2.0+ | Enables guest checkout customerType=B2G |
Checkout: pre-select payment method | 3.5.0+ SaaS | If enabled will forcefully pre-select payment method during checkout |
Checkout: pre-select shipping method | 3.5.0+ SaaS | If enabled will forcefully pre-select shipping method during checkout |
Request for quote (RFQ) | ||
Customer: types that eligible to send RFQ | 3.2.0+ SaaS | CSV of customer types eligible for request for quote E.g. B2B,B2E |
Customer | ||
Customer: session expiry in seconds | 3.0.0+ | Number of seconds of inactivity when user will be forced to login again |
Customer: password reset token | 3.0.0+ | Allows to automatically reset customer password via Admin |
Customer: password reset token validity | 3.0.0+ | Allows to automatically reset customer password via Admin |
Customer: name format | 3.0.0+ | Allows to format customer name to display in greetings on website. Uses placeholders that can be re-arranged to provide required format |
Customer: profile form attributes | 3.0.0+ | Comma separated list of attribute codes that belong to CUSTOMER attribute group. When configured these are displayed as additional fields in the customer profile section |
Customer: profile form attributes - read only | 3.0.0+ | Comma separated list of attribute codes that belong to CUSTOMER attribute group. Specify which of the custom attributes cannot be updated by customer through profile page 3.2.0+ these attributes are specified per customer type |
Customer: registration form attributes | 3.0.0+ | Comma separated list of attribute codes that belong to CUSTOMER attribute group. When configured these are displayed as additional fields on the customer registration form 3.2.0+ these attributes are specified per customer type (for guest checkout form use B2G customer type) 3.2.0+ it is also possible to configure address forms per customer type though use of ADDRESS group attributes |
Customer: supported customer types | 3.2.0+ | Supported shop customer types CSV E.g. value=B2B,B2C, display value=Private,Company |
Customer: Allow changing price tax information view for customer types | 3.2.0+ | Allow changing price tax information view for customer types. Blank value is treated as no customer can change tax information view. To reference guests use B2G, blank types are treated as B2C. |
Customer: B2B form feature enabled (CSV) | 3.2.0+ SaaS | CSV of customer types which can add B2B information on the order E.g. B2B,B2E |
Customer: Disable account deletion | 3.5.0+ | Disable account deletion feature for customer types. Blank value is treated as enabled. |
Customer: Disable same address for billing | 3.3.0+ | Disable use of same address feature for customer types. Blank value is treated as enabled. To reference guests use B2G, blank types are treated as B2C. |
Customer: hide prices | 3.3.0+ | Hide prices for customer types. Blank value is treated as show prices. To reference guests use B2G, blank types are treated as B2C. This setting must be used together with Block checkout feature to prevent going through checkout for customer types that cannot see prices |
Customer: line remarks feature enabled (CSV) | 3.3.0+ SaaS | CSV of customer types which can leave remarks per line E.g. B2B,B2E |
Customer: login required | 3.3.0+ | Anonymous browsing for this shop is prohibited |
Customer: managed list feature enabled (CSV) | 3.7.0+ SaaS | CSV of customer types which can use managed lists E.g. B2B,B2E |
Customer: registration types that require approval email (CSV) | 3.3.0+ SaaS | CSV of customer types that must be approved by shop admin E.g. B2B,B2E |
Customer: registration types that require notification email (CSV) | 3.3.0+ SaaS | CSV of customer types for which shop admin is notified E.g. B2B,B2E |
Customer: repeat order feature enabled (CSV) | 3.3.0+ SaaS | CSV of customer types which can repeat order E.g. B2B,B2E |
Customer: shopping list feature enabled (CSV) | 3.3.0+ SaaS | CSV of customer types which can create shopping lists E.g. B2B,B2E |
Customer: types that cannot modify address book | 3.3.0+ SaaS | CSV of customer types that cannot modify address book (e.g. B2B setup with admin authorised addresses only) E.g. B2B,B2E |
Customer: types that cannot modify billing address | 3.3.0+ SaaS | CSV of customer types that cannot modify billing address in address book (e.g. B2B setup with admin authorised addresses only) E.g. B2B,B2E |
Customer: types that cannot place orders | 3.3.0+ SaaS | CSV of customer types that cannot place orders (e.g. B2B setup with browse catalog only) E.g. B2B,B2E |
Customer: types that require order approval | 3.3.0+ SaaS | CSV of customer types that require order approval (e.g. B2B setup with supervisor approval) E.g. B2B,B2E |
Mail: use custom mail server settings | 3.0.0+ | Enable custom mail server settings for this shop |
Mail: custom mail server host | 3.0.0+ | Custom mail server host e.g. mail.somedomain.com |
Mail: custom mail server port | 3.0.0+ | Custom mail server port e.g. 587 |
Mail: custom mail server username | 3.0.0+ | Custom mail server username. Required if SMTP-AUTH is enabled |
Mail: custom mail server password | 3.0.0+ | Custom mail server password. Required if SMTP-AUTH is enabled |
Mail: use custom mail server SMTP-AUTH enable | 3.0.0+ | Enable SMTP authentication on custom mail server (Require username and password) |
Mail: use custom mail server TLS encryption enable | 3.0.0+ | Enable TLS encryption on custom mail server (Must be supported) |
Shop admin email | 3.0.0+ | This is where all correspondence generated by the platform for current shop will be sent. E.g. order placement, payments etc |
Mail: Shop admin email map | 3.1.0+ SaaS | Map of email templates with corresponding shop admin emails, to allow sending different emails to different "admin" recipients |
Mail: Shop admin email CC map | 3.1.0+ SaaS | Map of email templates with corresponding shop admin CC emails, to allow CC (carbon copy) of sending different emails to different "admin" recipients. Can be used to send notifications to multiple recipients. |
Mail: Shop customer disabled emails map | 3.1.0+ SaaS | Map of email templates with corresponding true or false flag to disable some emails from being sent. Can be used to suppress some notifications. |
Product | ||
Product: show manufacturer code | 3.0.0+ | Flag to force displaying manufacturer code rather than SKU code. This may be desirable when vendors use internal SKU codes |
Tax: Enable price tax information | 3.1.0+ | Enables price tax information on search results and product pages 3.2.0+ this configuration is per customer type |
Tax: Enable price tax information to show net prices | 3.1.0+ | Additional configuration to configure showing net prices (without tax) if tax information is enabled, otherwise gross prices are shown 3.2.0+ this configuration is per customer type |
Tax: Enable price tax information to show tax amount | 3.1.0+ | Additional configuration to configure showing tax amount if tax information is enabled, otherwise percentage is shown 3.2.0+ this configuration is per customer type |
Payment Gateway | ||
Payment Gateway: Allowed IPs regular expression | 3.1.0+ | Regular expression to determine if PG callback is allowed from IP. Blank means that all IPs are allowed. If not blank allowed IP should match "regex.matcher(ip).matches()" E.g. "^((192.168.0.)([0-9])\{1,3\})$" will match all IPs starting with "192.168.0." WARNING: be careful with IPv4 vs IPv6 |
Search | ||
Search: include sub categories | 3.0.0+ | When enabled forces product searches to search in sub categories as well. This feature is especially useful in marketplace installations when multiple vendors contribute to subcategories but marketplace exposes only main category that includes search results from all vendors |
Search: new arrival tag days offset | 3.0.0+ | Specifies number of days which allows newly created products to contribute to "newarrival" tag searches |
Search: compound search enable | 3.2.0+ SaaS | Boolean flag that allow to set 2 modes for keyword search. true sets the compound mode so that every new search is added onto existing providing a drill down keyword search capability, false disables this functionality so that every keyword search is taken as is discarding all previous keywords |
Search: search suggest enable | 3.2.0+ SaaS | Enable search suggest. If set to true will perform "as you type" product look up under search box. |
Search: suggest enable min chars | 3.2.0+ SaaS | Search suggest additional options. Minimum number of characters in search box that trigger search suggest (default is 3) |
Search: suggest enable max items | 3.2.0+ SaaS | Search suggest additional options. Maximum number of suggested products (default is 10) |
Category & Browsing | ||
Category: Quantity of featured items to show on category page | 3.1.0+ | How many featured items need to show |
Category: Quantity of new arrival items to show on category page | 3.1.0+ | Quantity of new arrival items to show on category page |
Category: Quantity of product pods in one row on category page | 3.1.0+ | Quantity of product pods in one row to show on category page |
Category: Quantity of category pods in one row on category page | 3.1.0+ | Quantity of product pods in one row to show on category page |
Shop: filter navigation records limit | 3.2.0+ | Filter navigation records limit per group. Default is 25 |
Category: Hide pagination controls on category page | 4.1.0+ SaaS | Hide pagination controls on category pages. This could be a useful option when "Show more" button is enabled. Default is false, i.e. pagination is shown by default. |
Category: Hide sorting controls on category page | 4.1.0+ SaaS | Hide sorting controls on category pages. Default is false, i.e. sort options are shown by default. |
Category: Hide page size controls on category page | 4.1.0+ SaaS | Hide page size controls on category pages. Default is false, i.e. page size options are shown by default. |
Category: Hide show more controls on category page | 4.1.0+ SaaS | Hide show more controls on category pages. Default is false, i.e. show more button is visible. |
Shop | ||
Shop: primary shop admin email | 3.0.0+ | Email used for all CC messages (e.g. order updates) |
Shop: B2B profile enabled | 3.0.0+ | Flag that identifies if shop is B2B when turned on and B2C when turned off This option is not used in community version |
Shop: cookie policy enabled | 3.0.0+ | Flag to enable/disable cookie policy notification, which is legal requirement in EU |
Shop: shop image default (and all localisations thereof) | 3.0.0+ | This image is used to display shop logo in default theme header template |
Shop: i18n overrides | 3.1.0+ SaaS | Attributes with code that is i18n file name (e.g. "shop_en.properties.xml"). Contains shop specific translations for certain translations |
Shop: B2B addressbook mode enable | 3.3.0+ SaaS | Disables customer addressbook access, all customers can only use B2B shop addressbook |
Shop: Enable Newsletter form | 3.6.0+ SaaS | Enable Newsletter form in footer section |
Shop: remove empty categories from menu | 3.5.0+ | Shop: remove empty categories from menu |
Maintenance: enable page render trace | 3.0.0+ SaaS | If this is enabled html rendered will contain information about how this page was constructed (CMS includes, resources and cache info) |
Manager | ||
Manager: Customer image height in list | 3.7.0+ SaaS | Customer image height in list |
Manager: Customer image width in list | 3.7.0+ SaaS | Customer image width in list |
Manager: Quantity of customer pods in one row in list | 3.7.0+ SaaS | Quantity of customer pods in one row to show on customer page |
Manager: allowed to login in SF | 3.7.0+ SaaS | Allow managers with ROLE_SMCALLCENTERLOGINSF to login to SF |
Manager: sortable fields (CSV) | 3.7.0+ SaaS | List of sort fields separated by comma with fail over. Default is: lastname,companyName1,createdTimestamp. |
Email preview 3.6.x
3.7.0+ has a dedicated module in CMS to manage email templates
Email preview functionality is a quick way of checking how the email will look when your customers receive it. In some cases it is important to use "almost real" data to ensure some crucial parts of the email which are data dependent appear correctly. In order to do that preview function uses customer order number as a reference for rendering. This way managers have option to pick example orders with the right details.