Built-in functions Cart synchronization across devices Getting started In this article, you can find information about cart synchronization across devices functionality. This change allows you to add the selected products and a discount code to the cart from the URL. Products and a discount code need to exist, and be properly configured in the admin panel - if they are not, they won't be added.   Remember You can find more about products in the Product management article.   Remember You can find more about discount codes and the promotion module in the Promotion module introduction article. Table of contents: Structure of the URL   Structure of the URL This functionality adds the /restore/ function into the cart URL with the following parameters: skus - Adds the selected SKUs to the cart. There can be multiple SKUs separated by commas. Only quantity of 1 of the selected products will be added if the amount of products is not specified in brackets (e.g. 39959(3) will add 3 times 39959). If the selected product already exists in the cart its quantity won't increase. Gifts can be added to the cart this way. Example: https://pluat-v6.yr.tauceti.tech/cart/restore/skus/39959(2),55665 code - Adds the selected main discount code to the cart. The discount code has to exist and be used by a promotion. Example: https://pluat-v6.yr.tauceti.tech/cart/restore/code/TEST123 clear - Removes all of the products from the cart that are not present in the same skus parameter. It's a bool, so 1 removes the products. Example: pluat-v6.yr.tauceti.tech/cart/clear/1 Both of these options can be used simultaneously, which would result in adding the selected products and discount code to the cart. Example: https://pluat-v6.yr.tauceti.tech/cart/restore/skus/99291(4),30132/code/TEST123/clear/1 Storelocator Getting started In this article, you can find information about store locator functionality. Storelocator allows customers to access configured url  open a Google map of the selected country and see all of the configured stores. The map contains a search field, which allows customers to find their desired street or city as well as an option to get their location automatically. Visible points on the map are displayed in the left panel with their basic information like name, address, and current opening / closing hours. Visualization of the store locator Table of contents: Configuration Stores list Store creation Customer perspective Configuration It is possible to configure the storelocator aspects in System > System / Settings > Integrations > Storelocator v2 . Visualization of the storelocator system settings In the storelocator system settings you can find the following options: Enabled - A switch that defines if the functionality is enabled. If this switch is set to OFF customers will get an 404 error when accessing the storelocator URL. API URL - URL of the storelocator API. It shouldn't be modified. Backend: Key - Backend key of the functionality provided by Tau  Ceti. CND URL - URL of the Tau Ceti CDN. It shouldn't be modified. Frontend: Key - Frontend key of the functionality provided by Tau Ceti. Google maps Key - Google maps frontend API key. Use HTTP for local communication - Switch that defines if HTTP protocol should be used for local communication. This switch shouldn't be modified. Default latitude - Default latitude of the opened map Default longtitude - Default longitude of the opened map Default zoom - Default zoom of the opened map between 1 and 10. The higher the value the closer the map is. The map URL can be changed in the System > Translations / list . You can find it under the translation phrase storelocator_url. Stores list By default store locator doesn't have any stores created. They are managed from the admin panel in CMS > Stores / list . Visualization of stores in stores / list Below you will find a list of possible actions in Stores / list . Filters section (1) allows filtering the visible stores by their creation time range Show X entries (2) section defines how many stores per page should be visible. Stores table (3) provides basic information about the store. You can find the following columns in the table: ID - The internal identification number of the created store. Name - The name of the store. This name is visible to the customers City - City where the store is located. Active - Activity status of the store. It can be true or false. Creation time - A date and time when the selected store was created. Update time - A date and time when the store was updated last time. Actions Edit - Allows to edit the selected store. Store edit form is the same as creating a new one. You can find more about it in the Store creation section. Delete - A button that allows to delete the selected store from the database. This action cannot be reverted. Add button (4) allows the creation of a new store entry. You can find more about store creation in the Store creation section. Search field (5) allows to search for the available stores by their names or a city. Page number (6) section allows to you show more stores by switching to a different page. Store creation When the Add or Edit button is selected you will be redirected to the store edit page Visualization of the store creation When creating or editing a store you can define the following fields: Name - The name of the store. This name is visible to the customers. Name (additional) - Additional name to the store, that will help customers find it. GPS: Latitude - A latitude where the store pin will be placed at. GPS: Longitude - A longitude where the store pin will be placed at. POS number - POS number of the store. Active - Activity status of the store. Image - Image of the store that is displayed with the store popup. Mobile number - The phone number of the store that customers can call Landline number - The landline number of the store that customers can call E-mail address - E-mail address of the store Opening hours - Opening hours of the store. It is possible to define the exact opening hours for the selected day of the week. It is possible to assign multiple opening hours on the same day as long as they do not interfere with each other. Services - Services that are available in the selected store. Adding a new service only provides a text field that can be filled in with the type of service and it is displayed to the customers on the popup of the store. Customer perspective Customers can access the storelocator by the storelocator button in the header or by accessing the defined URL from translations. Visualization of the store locator The storelocator page opens on the default longitude and latitude defined in the system settings. Customers are able to search for their selected street or use the find location functionality to find their current location and display stores around them. The left panel also displays 10 stores with their basic information. When the customer selects one of the stores from the left panel or selects one of the pins on the map the store popup will show Visualization of the store locator Store popup contains all of the configured store information described in Store creation section. Customers can select the mobile number to directly call it if they are on a mobile device, or the can press on the directions button next to it, to open Google Maps and get automatic directions from their current location to the selected store. Newsletters Getting started In this article, you can find information about the newsletter functionality, which allows customers to register to a newsletter list, which can be sent to third-party applications via API, like Bloomreach. It is possible to create newsletter groups to categorize types of customers. Table of contents: Functionality configuration Registration for the newsletter subscription Logged-out customers During registration Logged-in customers Managing subscribers Managing subscriber groups Subscribers import Subscribers export Functionality configuration To enable the customers to register for the newsletter on the website it needs to be first enabled in the system settings. Newsletter configuration can be found in: System > System / Settings > Built-in Functions > Newsletter Visualization of the newsletter functionality system settings In the Newsletter section you can find three switches: Enabled - Switch which enables / disables the functionality and the ability to use it by the customers. Show 3rd party agreement checkbox - Switch defining if the 3rd party newsletter agreement should be visible while registering a new account instead of a built-in agreement. This option requires properly configuring the agreement on a 3rd party platform. Double activation - A switch defining whether unregistered customers should confirm the newsletter subscription in a separate e-mail, before signing them in. Additionally, the title of the newsletter confirmation e-mail can be changed in the System > System / Settings > General > E-mails Visualization of the E-mails tab in the System / Settings Registration for the newsletter subscription Logged-out customers Customers who do not have an account on the e-commerce platform, or are not logged in are able to register for the newsletter using the /newsletter webpage. Usually, the /newsletter webpage is linked in the e-commerce platform footer, but that depends on your individual needs. Visualization of the /newsletter page On the /newsletter webpage customers are able to type their e-mail address and their additional information, and register for the newsletters. When the Double activation is activated in the System / Settings customers will receive an e-mail confirmation if they want to register for a newsletter. If this functionality is disabled, the customers will instantly join the newsletter list. Customers are unable to cancel their subscription from this page - it has to be done using the URL in the newsletter or from the customer panel described in Logged-in customers. During registration During the registration process, when the customer selects the agreement, that they agree to an e-mail communication they will sign in to the newsletter list. Visualization of the registration form Same as for logged-out customers when the Double activation is activated in the System / Settings customers will receive an e-mail confirmation if they want to register for a newsletter. If this functionality is disabled, the customers will instantly join the newsletter list. Customers are able to cancel their subscription using the URL in the newsletter or from the customer panel described in Logged-in customers. Logged-in customers Registered and logged-in customers are able to register to the newsletter functionality in their customer panel by accessing the /customer/newsletter option. Logged-in customers will also get redirected to this webpage when they access the previously mentioned /newsletter URL. Visualization of the /customer/newsletter page In the /customer/newsletter webpage customer only has to fill in their e-mail address and are able to register to the newsletter list. Customers registering to the newsletters this way do not have to accept the newsletter registration even if the Double activation is enabled. Visualization of the /customer/newsletter page When the customer is logged-in and registered to a newsletter functionality they are able to cancel their subscription from the /customer/newsletter webpage. Managing subscribers All customers that are registered for a newsletter functionality, or have canceled their subscription can be found in the admin panel. Subscribers list is located in the: Customers > Subscribers / list This tab contains filters, which will help manage the desired customers Visualization of the Subscribers / list filters There are the following filters available: Creation time - A time range when the subscribers were created Update time - A time range when the subscribers were last updated Show MD5 e-mail hash column - Adds a new column that contains MD5 e-mail hash Visualization of the Subscribers list tab In the subscriber list table you can find the following options: (1) Show X Entries allows to filter how many entries should be visible at once (2) Various table columns. All of them can be sorted by clicking on them. ID - Subscribers internal ID First/last name - Subscribers first and last name E-mail - Subscribers e-mail address Status - Subscribers status. Available statuses are Active and Blacklisted . Blacklisted customer unsubscribed to the newsletter, or was manually blacklisted, and won't receive receive newsletter e-mails. Creation time - A date and hour when the customer has subscribed to a newsletter. Actions - Two available actions: Edit - Allows to edit the selected customer. More about adding and editing the customer can be found below View - View the selected subscriber. Viewing doesn't allow to edit any data. (3) Add button allows to manually add a new subscriber. Adding and editing a subscriber looks exactly the same. Below you can find more information about the available fields, when adding or editing a new customer. (4) Search field allows to search the subscribers by their name / surname as well as their e-mail address. (5) Pages list allows to show the next batch of customers on the another pages accoriding to applied sorting option and filters. Visualization of the customer in the subscribers / list When editing or adding a new customer you can find there the following fields: Customer - A button that redirects to customers e-commerce profile. This option is only available if both subscriber e-mail and e-commerce account e-mail are the same. E-mail - Subscribers e-mail address. This field is mandatory. Subscriber's groups - Groups that the subscriber is assigned to. You can find more about the subscriber groups in the Managing subscriber groups chapter. First name - Customers first name Last name - Customers last name Gender - Customers gender Birthday - Customers birthday date Active - A switch that defines if the subscriber is active or not. Not active subscribers won't receive any newsletters. Is blacklisted? - A switch, which defines if the subscriber is blacklisted. Blacklisted subscribers won't receive any newsletters. Additionally, all agreements the subscriber has agreed on will be visible at the bottom of the page. Managing subscriber groups Subscribers can be put in subscriber groups, which allows to easily manage them, and send a desire newsletters to a certain selected group. Subscriber groups can be manged in Customers > Subscribers groups Visualization of the filters in subscribers groups. Subscribers groups filters allow to filter by is active? flag, which defines if the selected group is set as active or not. Visualization of the subscribers groups In the subscribers groups table you can find the following options: (1) Show X Entries allows to filter how many entries should be visible at once (2) Various table columns. All of them can be sorted by clicking on them. ID - Subscriber group internal ID Name - Internal name of a subscriber group. Description - Short description of a subscriber group. Is active? - Subscriber group activity status. Actions Edit - Allows to edit the selected subscriber group. More about adding and editing the customer can be found below (3) Add button allows to addition of a new subscriber group. Adding and editing a subscriber looks exactly the same. Below you can find more information about the available fields, when adding or editing a new group. (4) Search field allows to search the subscribers groups by their name. (5) Pages list allows to show the next batch of groups on the another pages accoriding to applied sorting option and filters. Visualization of the subscriber group creation In the subscriber group creation / edition you can define the following fields: Name (mandatory) - An internal name of a subscriber group. Description - Internal description of a subscriber group. Is active? - An activity flag, which defines if the selected group is active for use. Subscribers import Subscribers can be imported using the import functionality located in Import / Export > Import Visualization of the subscribers import In order to import subscribers you have to select the "Newsletter subscribers CSV" option and select the prepared .csv file. Visualization of the subscribers csv file Subscribers .csv file can have any file name and must contain the following columns: email (mandatory) - Customers e-mail address. Gender - Customers gender. Accepted values are M for males and F for females. Group - Subscriber group internal name. This field will assign the selected customer to a selected subscriber group. first_name - Customers first name last_name - Customers last name birthday - Customers birthday in DD/MM/YYYY format. Subscribers export Subscriber lists can be exported using the: Import / Export > Export / Subscribers Visualization of the subscribers csv file In the Export / Customers you can filter out desirable data by using the selected filters: Groups - A list of selectable subscriber groups that should be exported. Creation time - A range of dates whenever the subscriber was created. Update time - A range of dates whenever the subscriber was updated. Show MD5 e-mail hash column - Adds the MD5 e-mail hash column in the exported file. By pressing the " Export " button the file will be exported with the selected filters. Visualization of the exported subscribers file In the exported subscribers file you can find the following columns: ID - Subscriber internal ID. First_name - Customers first name. Last_name - Customers last name. Email - Subscribers e-mail address. is_active - Activity status of a subscriber. 1 means active, 0 means not active. is_blacklisted - blacklisted status of a subscriber. 1 is blacklisted, 0 is not blacklisted. Gender - Customers gender. M is for Male, F is for Female. Status - Subscribers status. Available statuses are: Only newsletter - Customer is only registered to the newsletter communication and doesn't have an account on a e-commerce platform. Customer - The customer has a created account on an e-commerce platform Mc_hash - MD5 e-mail hash. This field is only visible if the Show MD5 e-mail hash column filter was selected. Joy_id - Customers JOY ID. Birthday - Customers birthday date. Subscribe time - A date with an hour when the customer has subscribed to an e-mail communication. Rate & Review Getting started In this article, you can find information about the rate & review functionality. Rate & Review allows customers to review the products on the website by providing a rating from 1 to 5 and a comment. This review then is accepted or denied by the Yves Rocher employee and in case of acceptance, it is visible on the product page under the Reviews section. Customers can earn FIDEN2 points for providing a review that has been accepted.   Remember You can find more about FIDEN2 functionality in the FIDEN2 article. Table of contents: Customer perspective Review by purchasing a product Review by using the product page Reviews view on the product page Configuring the Rate & Review Built-in fuctions > Reviews E-commerce > e-mails FIDEN2 > Loyalty points Reviews moderation Reviews overview   Moving the reviews Rate & Review steps diagram   Customer perspective When the Rate & Review is enabled customer can review the products according to the options set in system settings and will receive FIDEN2 points for the review, if it is enabled. Customers are unable to edit or remove their reviews by themselves. All of the reviews have to be verified and accepted by Yves Rocher employees. Customer can review products in two ways: By purchasing a product. On a product page if the functionality is enabled. Review by purchasing a product By default when the functionality is enabled customer will receive an invitation on their e-mail with a list of up to three products after purchasing them on the e-commerce platform. When the customer clicks on one of the products they will be redirected to the review page. The invitation to review a product is sent to the customer after a selected amount of time, which is configured in functionality system settings . Visualization of the invitation e-mail These reviews are additionally visible in the customer panel > rate products (e.g. https://uat.yves-rocher.pl/reviews/panel ). Here, the customer can see all of the products they are able to review as well as their already reviewed products. Visualization of the customer panel reviews page When the customer chooses their product they will be welcomed by the review page, where they are able to: (1) select their rating (2) type the review title (3) Type the review description Additionally, if the customer doesn't have set up their nickname there will be an additional field to do so, as a nickname is mandatory to place a review. Visualization of the review creation page When the review is placed it needs to be accepted by the Yves Rocher employee. You can find more about it in the Review moderation chapter. Review by using the product page This option is only enabled if Everyone can review every product option described in Build-in fuctions > Reviews is turned on. Only logged-in users can review products. When this option is enabled customers can enter any available product in the product catalog, and press the " Add review " (4) button. Same as in the other review method customers will be welcomed by the reviewing page, which allows them to: (1) select their rating (2) type the review title (3) Type the review description Additionally, if the customer doesn't have set up their nickname there will be an additional field to do so, as a nickname is mandatory to place a review. When the review is placed it needs to be accepted by the Yves Rocher employee. You can find more about it in the Review moderation chapter. Reviews view on the product page Every accepted review will be visible on the product page. Visualization of the reviews on the product page Here customers can find: (4) Add a review button - A button that allows customers to review the product. It is described in more detail in the Review by using the product page chapter. (5) The amount of reviews placed per rating. (6) The average review rating. (7) Sort the reviews by: Default - Sort by combination of highest rating and best usefulness. Date new - Sort by the newest review date. Date old - Sort by the oldest review date. Rating high - Sort by the highest rating Rating low -  Sort by the lowest rating Usefulness best - Sort by the highest ratio of " yes " to " no " buttons. Usefulness worst - Sort by the lowest ratio of " yes " to " no " buttons. (8) Customer reviews with an option to rate their usefulness with the " Yes " and " No " buttons. The ratio of this rating affects the usefulness of sorting. (9) Change the review page     Configuring the Rate & Review Rate & Review functionality can be turned on / off and configured in system settings. Various functionality options are located in different tabs System / settings > System > Built-in fuctions > Reviews In built-in functions, you can find the main rate & review functionality options described below Visualization of the reviews tab Enabled - A switch that decides if the reviews should be enabled or disabled Everyone can review every produc t - A switch that decides if customers should be able to review products without the need to purchase them described in Review by using the product page. Staff e-mail - An e-mail address separated by a comma (",") where the information e-mails with new reviews should be sent to. Verifications e-mail - An e-mail address separated by a comma (",") where the information e-mails with new reviews should be sent to. System / settings > System > E-commerce > e-mails In the e-mails tab you can find two options related to Rate & Reviews functionality Visualization of the e-mails tab Sender name - A name that will be visible for the customer in the "Sender" field in their mailbox. Send review invitation after - A number of days counted from the purchase date after which customers will receive their review invitation and will be able to review their product from the customer panel. System / settings > System > FIDEN2 > Loyalty points In the Loyalty points tab, you can find the option to choose how many FIDEN2 points a customer should receive per review. Visualization of the loyalty points tab Amount of points for review - The amount of FIDEN2 points customers will review per review. If set to 0 customers won't receive any FIDEN2 points per review.   Remember You can find more about FIDEN2 functionality in the FIDEN2 article.     Reviews moderation Every placed review needs to be moderated and accepted by the Yves Rocher employee. The selected employees will receive e-mail notifications according to the settings in the Build-in fuctions > Reviews. All new reviews can be located in the Catalog > Reviews / moderation Visualization of the reviews moderation page You can find a following options in reviews / moderation: Select the Show X entries (1) field to set the number of reviews, displayed on one page (min 10 / max 100). The names of the columns (2) that contain information about target reviews. Each column is susceptible to sorting. To sort the records, click on the title of the column in question. ID - TauCeti internal ID of the review Creation time - A date and hour of the creation by the customer of the review. Nick  – Nickname of the reviewer. Rate – Review rate applied by the customer. Status – Status of the review. Available statuses are: New Awaiting verification Rejected Needs additional verification Accepted Actions - A view button, which will redirect to the review details described below. Search box (3) where you can search for reviews by customers nickname, product or review content. Page buttons (4) , which allows user to change the page of currently viewed reviews. Visualization of the review details When seeing the review details you can find a more detailed view of the review as well as on this page you are able to change the status of the review as well as apply your own comment to the review. In this section you can find the following information: Creation time - A date and hour of the creation by the customer of the review. Product - A product name and SKU to which this review is related. Rate – Review rate applied by the customer. Review title - The title of the review applied by the customer. Review text - The description of the review applied by the customer. Note to Yves Rocher - no longer supported field. Advantages - no longer supported field. Disadvantages - no longer supported field. Nick  – Nickname of the reviewer. E-mail - Customer's e-mail address. Last edited by - An e-mail address of Yves Rocher employee who last changed this review. Creation time (Yves rocher reply tab) - Creation date, when this review has been initially edited by the Yves Rocher employee Update time - Last date that this review has been edited by the employee. Status – Status of the Yves Rocher comment. Available statuses are: Visible - Comment will be visible on the website. Hidden - Comment won't be visible on the website. Content - Yves Rocher comment. It is visible on the e-commerce platform if the Status of the comment is set to Visible . Reviews overview The list of all reviews can be found in Catalog > Reviews / list By default, the list is empty and needs to be filtered or searched for in order to see the reviews Visualization of the Available filters are: Status - Current status of the review. Available statuses are: New - A default review status of a newly posted review. Awaiting verification - no longer used status. Rejected - Reviews that have been rejected by moderators. Needs additional verification - No longer used status. Accepted - Reviews that have been accepted by moderators Adding date - A range of dates when the review was added YR answer date - A range of dates when the Yves Rocher employee applied a comment to the review. YR answer status - status of the answer. Available statuses are: Hidden - The YR comment is hidden to customers. Visible - The YR Comment is visible to customers. Only with questions to YR - No longer used option. doesn't do anything anymore. Only with YR answers - Shows only reviews that have Yves Rocher comments. Search also in YR answer content - allows to search the YR comment content when using the search (3) functionality. With applied filters, the reviews that fit the criteria will be visible in the Reviews / list tab. It is possible to show them without applying any filters if there is content in the search box (3) . Visualization of the You can find the following options in reviews / list: Select the Show X entries (1) field to set the number of reviews, displayed on one page (min 10 / max 100). The names of the columns (2) that contain information about target reviews. Each column is susceptible to sorting. To sort the records, click on the title of the column in question. Creation time - A date and hour of the creation by the customer of the review. Review title - The title of the review. Nick  – Nickname of the reviewer. Rate – Review rate applied by the customer. YR answer status - the status of the YR comment. Available statuses are: Hidden Visible YR answer creation time - a date and an hour when the YR comment was applied Status – Status of the review. Available statuses are: New Awaiting verification Rejected Needs additional verification Accepted Is active? - A switch, which allows to enable or disable the review. When the review is disabled it is no longer visible on the website. Actions - A view button, which will redirect to the review details described below. Search box (3) where you can search for reviews by customers nickname, product or review content. Page buttons (4) , which allows user to change the page of currently viewed reviews. Visualization of the review details When seeing the review details you can find a more detailed view of the review as well as on this page you are able to change the status of the review as well as apply your own comment to the review. The status option allows you to select if the YR comment should be visible on the website. Available statuses are hidden and visible .   Moving the reviews Rate & Review functionality allows you to move the existing reviews or future reviews from one product to another. Whenever a customer has placed a review on product X it will be moved to product Y. In the same way, it can be done for future reviews, so in the future, if the customer tries to post a review on product X it will be posted on product Y instead. Visualization of the reviews moving page In the reviews / moving tab you can find the following options: Filters Only visible tab by default. In this tab, you have to specify the product SKU you want to move the reviews from. After typing the SKU and applying the filter the other tabs will be visible. Reviews list The list of available reviews assigned to this product. Here it is possible to select the desired reviews that should be moved to another product. Move selected reviews to another product In this tab, you have to specify the product SKU to which you want to move the selected reviews. After pressing the "Move" button, the selected reviews will be moved. Move invitations to another product In this tab, you are able to specify the SKU of the product to which all future review invitations should be sent after a review was placed on the SKU in the Filters tab. For example, if in the Filters tab, there is SKU 123456 and in Move invitations to another product tab SKU 654321 by purchasing the product 123456 customers will receive an invite to review the 654321 product.     Rate & Review steps diagram Rate & Review functionality has multiple steps and ways of handling, so to make it easier to follow and understand you can find below the diagram, which visualizes the functionality. R&R diagram Public JS API Getting started This article contains information regarding access to Public JS API and examples of its usage. Table of contents: API methods cart: TcApiCart localization: TcApiLocalization customer: TcApiCustomer Examples API methods The API contains three main types of objects: cart , localization and customer . They are accessible through the window.tcApi . The object window.tcApi returns Promise with TcApi class instance. cart : TcApiCart getTotalValue(): Promise - method returns total value of cart. getProductsValue(): Promise - method returns total value of all products in cart. getProductsQuantity(): Promise - method returns quantity of products in cart (product * quantity). getGiftsQuantity(): Promise - method returns quantity of gifts in cart. totalProducts(): Promise - method returns number of product rows in cart. totalGifts(): Promise - method returns number of gift rows in cart. getProductsSummary(): Promise - method returns ProductsSummary object interface ProductSummary { totalValue: number; productsValue: number; totalProductsQuantity: number; totalGiftsQuantity: number; totalProducts: number; totalGifts: number; } localization : TcApiLocalization getLocale(): string - current env locale. For example: pl , cs or sk . getCurrency(): string - current locale currency. For example zł in PL environment. getCurrencyIso(): string - current locale currency in ISO 4217 standard. For example PLN . getDecimalDigits(): number - number of decimal digits in prices. getMinGiftPrice(): number - miminum price for a gift. getMobileRegex(): string - mobile phone number regex pattern. getMobileDefaultPrefix(): string - mobile phone number prefix. For example: +48 . getMobilePlaceholder(): string - mobile phone number placeholder. For example: +48000000000 getPostalCodePlaceholder(): string - postal code placeholder. For example: 00-000 . getPostalCodeRegex(): string - postal code regex. For example: ^([0-9]{2}-[0-9]{3})$ . customer : TcApiCustomer isLoggedIn(): Promise - method returns authentication state of current customer. getFirstName(): Promise - method returns first name of customer if logged in. getState(): Promise - method return CustomerState object. interface CustomerState { loggedIn: boolean; firstName: string|null; } Examples Example usage of TC public JS API in CMS Blocks and CMS Pages. Methods returning a Promise type may return the target value with a slight delay. This fact should be taken into account when designing views to avoid potential issues related to Cumulative Layout Shift or empty HTML elements. Fetch and display current cart value in span element The value of your cart is Check if user is logged in and display the appropriate banner based on their status Catalog categorization Getting started In this article, you will learn about catalog categorization functionality, which allows you to create and edit categories. Categories are visible in the product catalog as well as during the product search (1) , and allow customers to click on them in order to filter out products depending on products assigned to the selected category. The default URL to the category page is constructed as: /c/category1[/category2][/category3], for example, /c/make-up/face/powders. The prefix c can be modified by changing the category_url translation.   Warning It's not recommended to change the translation after some time of using the default one, as it will ruin SEO. Visualization of the product category page The category page state consists of: Category selection (part of category URL). Any filter functionalities never modify it. Page number (`page` query parameter). Items per page selection (`pp` query parameter). Sort method selection (`sort` query parameter). Features filter selection (`f` query parameter). Price range selection (`pp` query parameter). Store selection (`shop` query parameter). *Only available in store* filter (`is` query parameter). Filter to *New products* only (`news` query parameter). Filter to *Bestsellers* only (`bestsellers` query parameter). The following sections describe the behavior of all category page elements. Table of contents: Category management Filters section Elements section Editing and creating categories Changes made during the implementation of Categories functionality Product page breadcrumb Removal of the Tag page (`/tag`) Features behavior     Category management All categories can be managed through the admin panel. The categories tab is located in: Catalog > Categories / list Categories can be additonally managed using the product catalog import / export.   Remember You can learn more about import / export of the catalog in the Product catalog export and import article.   Warning   Up to three categories can be created in one path (excluding the default E-commerce one). For example, in the case of the path: E-commerce > Category1 > Category 2 > Category3 > Category4 Category4 won't be accessible on the e-commerce platform and trying to access it via URL will result in a 404 error. Visualization of the categories / list tab Filters section In the filters section, you can see the current parent category, and switch to another one using the drop-down menu. You are additionally able to change the current filter by clicking on a category. This method is described in the Elements section. Visualization of the filters section Visualization of the categories drop-down menu   Elements section In the elements section, you can see all categories in a selected parent category. Visualization of the elements section Below you will find a description of possible actions.  Select the Show X entries (1) field to set the number of categories, displayed on one page (min 10 / max 100). The names of the columns (2) that contain information about a given category. Each column is susceptible to sorting. To sort the records, click on the title of the column in question. ID - An internal ID of a category Name - A name of the category. These names are visible to the customers on a website. Category names can be opened by clicking on them (6) , and it will open the elements tab with a selected category as a parent category. Update time - Date and hour when the selected category has been updated last time. Actions - An edit button, which allows editing a selected category. The main e-commerce category cannot be edited. You can read more about adding and editing categories in the Editing and creating categories section. Select the Add category here (3) button to go to the adding the new category in a current parent category. You can read more about adding and editing categories in the Editing and creating categories section. Search box (4) where you can search for the desired category by their category name. Page buttons (5) , which allows user to change the page of currently viewed categories.   Editing and creating categories Whenever adding a new category or editing one you will be redirected to the following page. Visualization of the editing of a category Below you will find a description of possible actions. Parent category - A field where the current parent category is displayed. This field cannot be edited. Name - A name of the category. This name will be visible to the customers. Path (URL) - An URL of the category. This URL will be visible in the website URL whenever the customer selects this category or one under it. Order - Number which defines the priority and order of this element. Lower the number, higher the priority, or higher position on the list. Save - Button, which saves the changes made to the category. Delete - A button that deletes a selected category and all the categories under it. It is only available when editing the category. In order to be able to press it you have to press the "I confirm delete" checkbox beforehand.     Changes made during the implementation of Categories functionality Product page breadcrumb The breadcrumb has been modified to use the product's main category. Removal of the Tag page (`/tag`) The legacy way to create categories by links to selected feature sets has been removed. Marketing links to, for example, product lines should be directed to promotion pages instead. Features behavior The existing behavior of features has been modified. Previously, it never displayed features that were selected but did not exist in found products (after filtration). It generated scenarios when the user selected 3 filters but could remove only one or none of them. Now, users always see all selected features, even if they returned 0 products. They can be seen and removed from the features filter menu and quick filter removal element. It's useful when selected feature set results in an empty products list. Previously, the user could not see selected features nor remove them.   Expired elements deactivation Getting started In this article, you can learn about the expired elements deactivation functionality, which allows you to automatically deactivate CMS, promotion, and mobile app elements when the current date is after the end date. Deactivated elements save up server memory and increase website responsiveness. It also helps with better admin panel filtering and navigation, as unused elements won't be visible as "active" anymore, so it will be easier to find currently used ones. Table of contents: Configuring the functionality Configuring the functionality By default this functionality is disabled. In order to enable it you have to navigate to: System > System / Settings > Built-in functions > Expired elements deactivation Visualization of the functionality system settings In the Expired elements deactivation tab you can find a single switch called Deactivation enabled , by enabling it you are enabling the automatic deactivation of elements with expired end date. Elements are deactivated 2 weeks after the end date expiration. The affected elements are: CMS blocks CMS pages Altshops Product stickers Cart promotion rules Promotion pages Opensets Private offers Sliders Layout banners Popups Mobile app elements: articles, carousels, cms elements, current offers, homepage products, sub-campaigns The command is set to run every day at 2 am. Delivery point widget Getting started In this article, you will find information about the delivery point widget. The delivery point widget allows selecting delivery services that deliver to parcels to be shown as one delivery option during the order process and will both be visible on the map at the same time with customization options. Visualization of the delivery point widget functionality Table of contents: Configuring the delivery point widget Delivery types / list configuration System / settings configuration Customer perspective Configuring the delivery point widget Delivery types / list configuration In order to add multiple delivery options to one delivery widget you have to navigate to delivery types and turn on the switches on the desired delivery options. You can access delivery types tab in the: System > Delivery types / list Visualization of the delivery types / list In the Delivery types / list expand your desired delivery option that delivers to the parcels and select the new Is in delivery point group? (1) switch. By turning this switch ON you are adding the selected delivery option to the group. Multiple delivery options can be in the group.   Remember In order for a delivery method to be visible for the customers it needs to be enabled both in the Delivery types / list and in the desired altshop. You can find more information about activating the delivery types in the altshops in the Delivery costs / list - browsing and managing delivery costs article. System / settings configuration For further configuration of the functionality you have to navigate to: System > System / settings > Built-in options > Delivery point map Visualization of the delivery point map settings In the delivery point map you can find the following options: Default latitude - A d efault map center latitude when user location cannot be obtained Default longitude - A default map center longitude when user location cannot be obtained Default zoom - A default zoom level when user location cannot be obtained. This value can be set between 0 and 21, where 21 is the closest one, and 0 farthest away. Clustering enabled - Enables clustering of delivery points on the map. It groups them when the map is zoomed out, but introduces a significant performance penalty. Customer perspective The new delivery point widget can be accessed by the customers in the cart process on the "Select the delivery method" step Visualization of the delivery method step in the cart process When customer selects the delivery point map he will see points near his location if he allowed for a location sharing on their device or a default view configured in the System / settings . Customer is able to search the map for their desired delivery point and if there are too many parcels to show them next to eachother they are being merged into one single icon with a number of parcels in this region (1) . Customers are also able to deselect the delivery companies they do not prefer (2) . Visualization of the delivery point map (desktop) Visualization of the delivery point map (mobile) Visualization of the delivery points (mobile) Campaigns and titles Getting started In this article, you can find how campaigns are created and accepted after a certain period of time and the associated titles and qualifiers by which the application is able to promote consumers who have met the conditions. Campaign is a process that works for a selected period of time. Campaigns count all the orders made with their value and according to qualifiers promote or demote customers that met set requirements. Title is a customer rank that affects his used altshop and with that possibly products, promotions, and content on the website. A title can be possibly promoted or demoted depending on set qualifiers and the customer result of the campaign. Qualifier is a JSON function that set various requirements in order to promote users if they are met. Table of contents: Campaigns Creating new campaign Accepting completed campaign Titles Creating new titles Qualifiers Campaigns Campaign as a process decides based on qualifiers what account will be promoted or demoted to the next title depending on customer purchase history. Campaigns can be found in the admin panel under Campaigns > View .   Warning   Campaigns were created with the intention to be handled regularly. Whenever a campaign is ready to be accepted and calculated it should be done as soon as possible. There shouldn't be a situation, where two campaigns at once are ready to be accepted and calculated. Calculating both campaigns at once will result in an error and calculation freeze, which will result in the campaign system being unusable until fixed by Tau Ceti. Visualization of the campaigns list In the campaign view, You can filter campaigns whether they are active or not. The campaign is seen as active only when the current date is between the specified date range. For example, if a campaign has a range of 1/11/2020 – 30/11/2020 it will be visible as active only if the current day is in this range. In this view, you can see all past, currently active, and future campaigns with their information like: ID – System ID of the campaign, it cannot be changed. The system recognizes various components on the website by their ID. Short name – Short name of the campaign. It is specified automatically by the system. The name depends on the year and the number of the campaign. Name – Full name of the campaign. Start date – Date on which the campaign will start. The set time is always local time. End date – End date of the campaign. After the end date is reached the campaign will receive “ Campaign ready for acceptance ” status, which will allow the user to accept the campaign and process user title changes. More on accepting the completed campaign can be found on Accepting completed campaign . The set time is always local time. Status – Current status of the campaign. you have three statuses: Not processed – Campaign did not end yet. This status will be visible on current and future campaigns in the admin panel. Campaign ready for acceptance – Campaign ended and still hasn’t been processed by the employee. Campaign closed – Campaign ended and has been processed. This page also has Add button (1) located in the top right corner of the Campaigns table. This button will create a new campaign. More on creating a new campaign can be read in Creating new campaign section. Creating new campaign In order to create a new campaign you need to click Add button (1) . Visualization of the creating of the new campaign In order to create a new campaign you need to specify information like: Name – A Long name of the campaign. Campaign Year – Year of the campaign. This year will be visible on the short name of the campaign in the admin panel. Campaign Number – Number of the campaign, it’s usually set to a current campaign month. This number will be visible on the short name of the campaign. Start date – Start date of the campaign. The set time is always local time. End date – End date of the campaign. After the end date is reached the campaign will receive “ Campaign ready for acceptance ” status, which will allow a user to accept the campaign and process user title changes. More on accepting the completed campaigns can be found on Accepting completed campaign . The set time is always local time. Altshops – Altshops on which created campaign will gain orders information. After you fill in all the necessery fields you can save our newly configured campaign by pressing the Save button (2) . With our campaign saved it’ll activate automatically on a set start date and end on the end date. A campaign that ended is not closed or processed and it needs to be accepted manually by the employee in order to grant customers promotions and demotions. More on accepting the campaigns can be found in Accepting completed campaign section. Accepting completed campaign When the campaign is over, the user of the administration panel will be given the opportunity to move to campaign acceptance by selecting the Results acceptance button. After selecting the button, the application will start the operation of calculating and promoting the customers that participated in the campaign.    Warning   In case two campaigns are ready for acceptance at once, please accept only one campaign, wait for it to calculate (so the report for this campaign can be accessed), and then proceed with accepting the other campaign. Accepting both campaigns at once will result in an integration freeze and they won't get calculated until fixed by the Tau Ceti team. The campaign acceptance process consists of four stages, described below: Commission Visualization of the commision view This step was used to determine what commission Member Club customers will get. As Member club is mostly abandoned functionality, this step can be skipped. Titles Visualization of the titles view In this step, you can see all customers that participated in the selected campaign. From customer information, you can see their MC hash, first and last name, e-mail address, and phone number. you can also see their title statuses: Status – Status of the title qualifier. It can be above qualifier, which will promote the customer, or below qualifier which won’t do anything if a customer meets current qualifier conditions. If a customer doesn’t meet current qualifier conditions he can be demoted if a title is configured like so. Overdue – invoice payment status. That was MC functionality. Not used anymore. Current title – Customer current title. New title – Customer's new title, which will be assigned to him after acceptance of the campaign. It can be set or changed with “ Change title” In this step you can manually change the title of the customer just in case there is a need. Hierarchy changes Changes in the hierarchy are member club functionality that isn’t used anymore, this step can be skipped. Confirmation This step is the last step of campaign acceptance. Visualization of the confirmation view In this step, you can see the number of customers with the above and below statuses with their total percentage. After ensuring that the campaign is correct and promotions and demotions are correct, you can close the campaign with the Close campaign button (4) . With the campaign closed all the customers that had the Above status will be promoted depending on the qualifiers to the new title or demoted depending on the title settings. Titles Titles as customer ranks allow us to set specific qualifiers for them in order to create a title hierarchy, which will give us more options to manage what customers will be able to see on the website based on their order history. Titles can be found in the admin panel under Titles > View. Visualization of the titles section Titles can be filtered by their activity (if they’re active or not). Filtered activity is read from “ is active? ” field. In the Titles tab you can see basic information about the title: ID – The system ID of the title, it cannot be changed. The system recognizes various components on the website by their ID. Title – Full title name Short title – Short title name usually used in promotions and qualifiers options. Is active? – check If the selected title is currently active. Primary – Member club functionality that isn’t used anymore. You can create new titles with Add button (1) located on the top right corner of the table. More on creating titles can be found on Creating new titles located on the page below. Creating new titles If there’s a need to create a new title you can do it by pressing Add button (1) located in the top right corner of the titles section. Creating or editing the title is separated by sections. The first one is the Title section . Visualization of the title section In the Title section you need to specify: Title – A name of the title Short title – Short name of the title (e.g. T0, TS, TG) Is active? – switch if the title is active There’s also a Leadership switch. This was Member Club functionality, so it’s not used anymore. It should be left on OFF. The next sections are Qualifiers and Promotion / demotion rules . Visualization of the Qualifiers and Promotion / demotion sections In the Qualifiers section, you  need to select our created qualifier and apply rules to it (e.g. Orders count from 1 >= 1 ). More on qualifiers can be found in the Qualifiers section. In Promotion / demotion rules section you have various fields you can customize: Number of campaigns – In this field, you can select a number of campaigns that will be used to check qualifiers. E.g. if it’s set to 2, the customer needs to meet qualifier requirements for 2 campaigns in order to promote / demote. This field is in most cases left on 1. Demote to – Drop down menu which allows us to select other titles that are supposed to be lower in the hierarchy. That customer with this title will be demoted if doesn’t meet current title qualifier requirements. Allow demotion to – In this field you can specify other titles that customers can be demoted.   Example Based on the title promotion path set to T0 > TS > TG and with a customer that has current title TG. If a Customer with a title TG doesn’t anymore meet the requirements for that title in the next campaign, he’ll be demoted to TS if Demote to is set to TS . With set Allow demotion to: T0 when a customer also doesn’t meet requirements for TS title, he’ll be demoted to T0 title. As normal demotion path would go TG > TS > T0 because on this campaign he doesn’t meet requirements for TG so the next check for TS qualifier requirement will be on the next campaign it’ll demote TG > T0 as system checks, that customer also doesn’t meet requirements for TS so it demotes him 2 titles at the same time to the T0 title. Promote to – Drop-down menu which allows selecting titles that are supposed to be higher in the hierarchy. If that customer met the qualifier requirements for the next title, he will be promoted. Promote only if matches qualifiers of next title – Switch that will read the qualifiers of the next title. It can be used when in the current title there are no specified qualifiers, so when T0 title has no qualifiers and the next title in the hierarchy, TS has “ Orders count from 1 >= 1” qualifier it will promote the customer to the TS title if he makes 1 or more orders in the selected campaign. Allow promotion to – In this field you can specify other titles that customers can be promoted to. This work same as with Allow demotion to Current Title path – In this section, you can see the current title path. Current title will be bolded out. Example of the title path: There are also sections: Credit policy Commission Reports access Dashboard tabs access But as they’re Member club functionalities they’re not used or supported anymore, so they’ll be skipped in this documentation. Qualifiers Qualifiers are the requirements that need to be met in order to promote the customer to the next title or in case the customer does not meet the requirements he will be possibly demoted depending on the current title setup. Qualifiers can be found in Titles > Qualifiers Visualization of the qualifiers section In the qualifiers section you can see basic information about qualifiers: ID – System ID of the qualifier. It cannot be changed. The system recognizes various components on the website by their ID. Type – Type of the qualifier. You currently have 3 qualifier types: Orders count – This type will count the number of the orders Orders value – This type will count the value of the orders Dependent members count – This type is from Member Club functionality, which is not supported anymore. Name – Name of the qualifier Public name – Public name of the qualifier. It’s Member club functionality so it’s not visible anywhere anymore. Public name (short) – Short public name of the qualifier. It’s Member club functionality so it’s not visible anywhere anymore. Is active? – Check if the qualifier is currently active. You can add new qualifiers with the Add button (2) or edit existing ones. Visualization of the qualifiers section The fields you can find while adding or editing qualifiers are: Type – Type of the qualifier. You currently have 3 qualifier types: Orders count – This type will count the number of the orders Orders value – This type will count the value of the orders Dependent members count – This type is from Member Club functionality, which is not supported anymore. Name – Name of the qualifier Public name - Public name of the qualifier. It’s Member club functionality so it’s not visible anywhere anymore. Public name (short) - Short public name of the qualifier. It’s Member club functionality so it’s not visible anywhere anymore. Description – Description of the qualifier. It’s Member club functionality so it’s not visible anywhere anymore. Image (SVG) – Image of the qualifier. It was used by Member club functionality so It doesn’t do anything now. Is active? – Switch if the selected qualifier is active. Parameters – JSON parameters of the qualifier.   Example With parameter JSON set to: {  "orders_count_from": 1,  "only_orders_from_campaign": false } The qualifier counts all the orders from 1st created order as orders_count_from is set to 1 even those orders without the campaign because only_orders_from_campaign is set to false. So when you set this qualifier in Title settings to Qualifier >= 1 the customer will be promoted to the set title when he creates 1 or more orders and created campaign gets processed as titles are granted after the campaign is processed by the employee. As qualifiers are wide in range of possibilities the documentation of the parameters is separate and can be found when editing or creating new qualifiers on the website below the parameters section. Visualization of the parameter documentation Omnibus price history Getting started In this article, you can learn about the omnibus price history functionality. This functionality allows showing the customers if the current product catalog price is the lowest catalog price in the last X days or not (1) when the promotion price is applied to the product. If the price is not the lowest one, there will be information about the lowest price in the last X days. The price check occurs every day at 01:05, 09:05, 16:05, and 23:30. This functionality also introduces a new price history report. Visualization of the omnibus functionality on a product page (desktop) Visualization of the omnibus functionality on a product page (mobile) Table of contents: Configuring the integration Product price history Customer perspective Configuring the integration In order to turn on the integration, you have to navigate to: System > System / settings > Built-in functions > Omnibus price history Below you will find a description of possible actions. Visualization of the omnibus price history system settings Display information about the lowest price - An ON / OFF switch that enables the integration on the website. Show lowest price from [...] days - A field where you can define from how many days back the lowest price should be read. The price check occurs every day at 01:05, 09:05, 16:05, and 23:30. Store prices for [...] days - A field where you can define for how many days the prices should be stored. Cannot be lower than the count of days used to detect the lowest price. Stored prices are used in the product's price history report. You can read more about this report in the Product price history chapter. Product price history With this integration, a new report has been created. The product price history report can be found in: Reports > Products price history   Remember Prices are updated four times per day. The report contains prices for every product which was active in the default altshop on a given day. If a product was not active in the default alt shop, there will be no row for a given product and day. Only default altshop prices are used. Prices history is stored for X days (configurable in the system settings). You can learn more about altshops in the Alt shops - Introduction article. The SKU column in the report is just to allow for faster data analysis. Data is stored per product, not per SKU, as all SKUs assigned to a single product always have the same price. Below you will find a description of possible actions. Visualization of the products price history Date range - A range of dates from which price history will be exported. Product SKU - A list of SKUs separated by commas that will be exported. You can export the report with an Apply filters button. It is possible to export the report without any filters applied, then all available SKUs will be generated in the report with a date range between the first time the integration was enabled and the current time. Below, you will see all available columns in the exported XLSX file. Visualization of the products price history xlx file Product_id - An internal ID of a product Product_sku - Products SKU. Date - A date where a price was registered Price - A registered price for a selected day. Customer perspective With the functionality turned on, customers will see in every place on the website where products are visible (for example product catalog, promotion pages, in the cart) information if the current catalog price is the lowest one with a percentage of how much bigger / smaller it is to the current price (1) . This information is only visible when a selected product has applied a promotional price. Products without a promotional price will not have visible omnibus functionality. Below you will see examples of the functionality on the website Visualization of the omnibus functionality when current catalog price is higher than previous one Visualization of the omnibus functionality when current catalog price is lower than previous one Visualization of the products in the product catalog (desktop Visualization of the products in the product catalog (mobile) Simplified mobile top menu Getting started This article describes simplified mobile top menu functionality, that shows top menu categories in the mobile view (1) . This functionality allows partners to decide, if they prefer to use top menu for mobile version of the website.   Remember The content visible in the top menu is configured in CMS > Top menu / list. More information regarding top menu can be found in [UNDER CONTRUCTION] article. Visualization of the mobile view of the home page. Table of contents: Turning on the functionality Customer perspective Turning on the functionality When turned on, simplified mobile top menu will be visible at all times on the mobile version of the website. It can be turned on in the Admin panel > System > System / Settings > Built-in functions > Top menu. Visualization of the top menu tab In Top menu tab we can find Simplified mobile menu (1) switch, which will turn on the functionality when it’s turned on. Customer perspective With the functionality turned off, customer will see the old top menu, where he needs to click on the menu in the top right corner in order to see available categories on the website Visualization of the mobile top menu when functionality is turned off With functionality turned on, the customer will see available categories in the top menu (1) and will be able to scroll through them and select the desired one, which will redirect him to that web page. Visualization of the mobile top menu when functionality is turned on