diff --git a/_data/sidebars/pbc_all_sidebar.yml b/_data/sidebars/pbc_all_sidebar.yml index fea09268f2c..fdd09949a95 100644 --- a/_data/sidebars/pbc_all_sidebar.yml +++ b/_data/sidebars/pbc_all_sidebar.yml @@ -1247,6 +1247,8 @@ entries: - title: Add fields to Back Office forms url: /docs/pbc/all/dynamic-multistore/base-shop/add-fields-to-back-office-forms.html + - title: Enable / Disable Dynamic Multistore + url: /docs/pbc/all/dynamic-multistore/base-shop/enable-dynamic-multistore.html - title: Delete stores url: /docs/pbc/all/dynamic-multistore/base-shop/delete-stores.html - title: Import stores diff --git a/_includes/pbc/all/install-features/202410.0/install-dynamic-multistore.md b/_includes/pbc/all/install-features/202410.0/install-dynamic-multistore.md index ddb0ee399e2..92e1a8077c8 100644 --- a/_includes/pbc/all/install-features/202410.0/install-dynamic-multistore.md +++ b/_includes/pbc/all/install-features/202410.0/install-dynamic-multistore.md @@ -1530,7 +1530,14 @@ class ShopApplicationDependencyProvider extends SprykerShopApplicationDependency } ``` -## Launch and set up environment + +## Launch and set up environment locally + +{% info_block warningBox "" %} + +To enable Dynamic Multistore in a production environment, see [Enable Dynamic Multistore](/docs/pbc/all/dynamic-multistore/202410.0/base-shop/enable-dynamic-multistore.html). + +{% endinfo_block %} Rebuild the application with assets and activate new endpoints: diff --git a/docs/about/all/spryker-marketplace/marketplace-storefront.md b/docs/about/all/spryker-marketplace/marketplace-storefront.md index 2c1e532d8e4..0c859e37e42 100644 --- a/docs/about/all/spryker-marketplace/marketplace-storefront.md +++ b/docs/about/all/spryker-marketplace/marketplace-storefront.md @@ -123,7 +123,7 @@ On the **Merchant Profile** page, customers can find the following merchant-spec Customers can access only the profile pages of [active](/docs/pbc/all/merchant-management/{{site.version}}/marketplace/marketplace-merchant-feature-overview/marketplace-merchant-feature-overview.html#active-merchants) merchants. -For an example, see the [Spryker merchant profile](https://www.de.b2c-marketplace.demo-spryker.com/en/merchant/spryker) in our Marketplace Demo Shop. +For an example, see the [Spryker merchant profile](https://www.b2c-marketplace-eu.demo-spryker.com/en/merchant/spryker) in our Marketplace Demo Shop. ## Read next diff --git a/docs/ca/dev/multi-store-setups/multistore-setup-options.md b/docs/ca/dev/multi-store-setups/multistore-setup-options.md index 317dff6ee93..759daef8c6e 100644 --- a/docs/ca/dev/multi-store-setups/multistore-setup-options.md +++ b/docs/ca/dev/multi-store-setups/multistore-setup-options.md @@ -98,6 +98,11 @@ The following table provides details on infrastructure for this setup: ### Setup 2: Isolated virtual database + +{% info_block warningBox "" %} +If Dynamic Multistore is enabled, separate databases can be used only per region, not per store. +{% endinfo_block %} + ![setup-2](https://spryker.s3.eu-central-1.amazonaws.com/docs/cloud/spryker-cloud-commerce-os/multi-store-setups/setup-2.png) This setup has the following characteristics: diff --git a/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md b/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md index 1e9b73f5579..798172c04d0 100644 --- a/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md +++ b/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md @@ -17,7 +17,7 @@ related: In Spryker, front-end elements have dedicated SCSS styles. To show you how to customize the Spryker front end, we broke down the *Product Details* page from our [B2B Demo Shop](/docs/about/all/b2b-suite.html#b2b-demo-shop) into separate elements with their respective style files. To customize a particular element, you adjust the code in the respective style file. -You can see the [full version of this page](https://www.de.b2b.demo-spryker.com/en/soennecken-permanentmarker-4mm-rundspitze-M22663) in our B2B Demo Shop. +You can see the [full version of this page](https://www.b2b-eu.demo-spryker.com/en/soennecken-permanentmarker-4mm-rundspitze-M22663) in our B2B Demo Shop. ![B2B-1](https://spryker.s3.eu-central-1.amazonaws.com/docs/Developer+Guide/Development+Guide/Front-End/Yves/Atomic+Frontend/%D0%A1ustomization+example+-+B2B+Product+Details+page/b2b-1.png) diff --git a/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md b/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md index 490123e9d58..b0b218e2a4d 100644 --- a/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md +++ b/docs/dg/dev/frontend-development/202311.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md @@ -17,7 +17,7 @@ related: In Spryker, front-end elements have dedicated SCSS styles. To show you how to customize the Spryker front end, we broke down the *Product Details* page from our [B2C Demo Shop](/docs/about/all/b2c-suite.html#b2c-demo-shop) into separate elements with their respective style files. To customize a particular element, you adjust the code in the respective style file. -You can see the [full version of this page](https://www.de.b2c.demo-spryker.com/en/acer-aspire-s7-134) in our B2C Demo Shop. +You can see the [full version of this page](https://www.b2c-eu.demo-spryker.com/en/acer-aspire-s7-134) in our B2C Demo Shop. ![B2C-1](https://spryker.s3.eu-central-1.amazonaws.com/docs/Developer+Guide/Development+Guide/Front-End/Yves/Atomic+Frontend/%D0%A1ustomization+example+-+B2C+Product+Details+page/b2c-1.png) diff --git a/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md b/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md index 8c0d4d0c76d..eb3ab34fd21 100644 --- a/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md +++ b/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md @@ -17,7 +17,7 @@ related: In Spryker, front-end elements have dedicated SCSS styles. To show you how to customize the Spryker front end, we broke down the *Product Details* page from our [B2B Demo Shop](/docs/about/all/b2b-suite.html#b2b-demo-shop) into separate elements with their respective style files. To customize a particular element, you adjust the code in the respective style file. -You can see the [full version of this page](https://www.de.b2b.demo-spryker.com/en/soennecken-permanentmarker-4mm-rundspitze-M22663) in our B2B Demo Shop. +You can see the [full version of this page](https://www.b2b-eu.demo-spryker.com/en/soennecken-permanentmarker-4mm-rundspitze-M22663) in our B2B Demo Shop. ![B2B-1](https://spryker.s3.eu-central-1.amazonaws.com/docs/Developer+Guide/Development+Guide/Front-End/Yves/Atomic+Frontend/%D0%A1ustomization+example+-+B2B+Product+Details+page/b2b-1.png) diff --git a/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md b/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md index bfd54e8b486..4a1e4e50f95 100644 --- a/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md +++ b/docs/dg/dev/frontend-development/202404.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md @@ -17,7 +17,7 @@ related: In Spryker, front-end elements have dedicated SCSS styles. To show you how to customize the Spryker front end, we broke down the *Product Details* page from our [B2C Demo Shop](/docs/about/all/b2c-suite.html#b2c-demo-shop) into separate elements with their respective style files. To customize a particular element, you adjust the code in the respective style file. -You can see the [full version of this page](https://www.de.b2c.demo-spryker.com/en/acer-aspire-s7-134) in our B2C Demo Shop. +You can see the [full version of this page](https://www.b2c-eu.demo-spryker.com/en/acer-aspire-s7-134) in our B2C Demo Shop. ![B2C-1](https://spryker.s3.eu-central-1.amazonaws.com/docs/Developer+Guide/Development+Guide/Front-End/Yves/Atomic+Frontend/%D0%A1ustomization+example+-+B2C+Product+Details+page/b2c-1.png) diff --git a/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md b/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md index 8c0d4d0c76d..eb3ab34fd21 100644 --- a/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md +++ b/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2b-product-details-page.md @@ -17,7 +17,7 @@ related: In Spryker, front-end elements have dedicated SCSS styles. To show you how to customize the Spryker front end, we broke down the *Product Details* page from our [B2B Demo Shop](/docs/about/all/b2b-suite.html#b2b-demo-shop) into separate elements with their respective style files. To customize a particular element, you adjust the code in the respective style file. -You can see the [full version of this page](https://www.de.b2b.demo-spryker.com/en/soennecken-permanentmarker-4mm-rundspitze-M22663) in our B2B Demo Shop. +You can see the [full version of this page](https://www.b2b-eu.demo-spryker.com/en/soennecken-permanentmarker-4mm-rundspitze-M22663) in our B2B Demo Shop. ![B2B-1](https://spryker.s3.eu-central-1.amazonaws.com/docs/Developer+Guide/Development+Guide/Front-End/Yves/Atomic+Frontend/%D0%A1ustomization+example+-+B2B+Product+Details+page/b2b-1.png) diff --git a/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md b/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md index bfd54e8b486..4a1e4e50f95 100644 --- a/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md +++ b/docs/dg/dev/frontend-development/202410.0/yves/atomic-frontend/frontend-customization-example-b2c-product-details-page.md @@ -17,7 +17,7 @@ related: In Spryker, front-end elements have dedicated SCSS styles. To show you how to customize the Spryker front end, we broke down the *Product Details* page from our [B2C Demo Shop](/docs/about/all/b2c-suite.html#b2c-demo-shop) into separate elements with their respective style files. To customize a particular element, you adjust the code in the respective style file. -You can see the [full version of this page](https://www.de.b2c.demo-spryker.com/en/acer-aspire-s7-134) in our B2C Demo Shop. +You can see the [full version of this page](https://www.b2c-eu.demo-spryker.com/en/acer-aspire-s7-134) in our B2C Demo Shop. ![B2C-1](https://spryker.s3.eu-central-1.amazonaws.com/docs/Developer+Guide/Development+Guide/Front-End/Yves/Atomic+Frontend/%D0%A1ustomization+example+-+B2C+Product+Details+page/b2c-1.png) diff --git a/docs/pbc/all/dynamic-multistore/202410.0/base-shop/dynamic-multistore-feature-overview.md b/docs/pbc/all/dynamic-multistore/202410.0/base-shop/dynamic-multistore-feature-overview.md index c68bf60aae2..f7841174310 100644 --- a/docs/pbc/all/dynamic-multistore/202410.0/base-shop/dynamic-multistore-feature-overview.md +++ b/docs/pbc/all/dynamic-multistore/202410.0/base-shop/dynamic-multistore-feature-overview.md @@ -14,7 +14,7 @@ related: link: docs/pbc/all/dynamic-multistore/page.version/marketplace/install-dynamic-multistore-the-marketplace-merchant-portal-core.html --- -The *Dynamic Multistore* feature lets you create and manage multiple stores within the same region in the Back Office. It streamlines the setup and maintenance of distinct stores tailored to various customer segments, regions, or product categories. +*Dynamic Multistore* (DMS) lets you create and manage multiple stores within the same region in the Back Office. It streamlines the setup and maintenance of distinct stores tailored to various customer segments, regions, or product categories. In the Back Office, in the **Administration > Stores**, you can view the list of stores in the current region. The **Stores** page shows all the stores within a specific region. @@ -104,8 +104,13 @@ When you add a new store, to enable store-related entities for customers, you ne To avoid manually assigning entities in the Back Office, you can assign them using data import. For more details, see [Import stores](/docs/pbc/all/dynamic-multistore/{{page.version}}/base-shop/import-stores.html). +## Differences in modes -## How Dynamic Multistore affects a project +This section describes the differences in different parts of application in DMS on and off modes. + + + +## Differences between applications with and without Dynamic Multistore In this example, EU region has DE and AT stores. US region has a US store. Dynamic Multistore introduces the following changes in this setup: @@ -135,10 +140,168 @@ In this example, EU region has DE and AT stores. US region has a US store. Dynam ![storefront-store-switcher](https://spryker.s3.eu-central-1.amazonaws.com/docs/pbc/all/dynamic-multistore/base-shop/dynamic-multistore-feature-overview.md/storefront-store-switcher.png) + + +### Store context in different applications with Dynamic Multistore + +All the applications work with the several stores within one region with the following differences: +* Back Office and Merchant Portal operate with data from all the stores within a region and don't require a store context. +* Storefront, GlueStorefront, and Glue require a store context and operate within only one provided store. If a store isn't provided, the default one is used. + +### Cloud infrastructure differences + +DMS doesn't affect cloud infrastructure. The only related changes are in the deployment files, which are described in the following sections. + + +### Deployment file differences + +Applacation configurations are defined differently depending on whether DMS is on or off. + +#### Environment variables configuration + +DMS off: + +```yaml +SPRYKER_HOOK_BEFORE_DEPLOY: 'vendor/bin/install -r pre-deploy.dynamic-store-off -vvv' +SPRYKER_HOOK_AFTER_DEPLOY: 'true' +SPRYKER_HOOK_INSTALL: 'vendor/bin/install -r production.dynamic-store-off --no-ansi -vvv' +SPRYKER_HOOK_DESTRUCTIVE_INSTALL: 'vendor/bin/install -r destructive.dynamic-store-off --no-ansi -vvv' +SPRYKER_YVES_HOST_DE: de.{{DOMAIN_ZONE}} +SPRYKER_YVES_HOST_AT: at.{{DOMAIN_ZONE}} +``` + +DMS on: + +```yaml +SPRYKER_HOOK_BEFORE_DEPLOY: 'vendor/bin/install -r pre-deploy -vvv' +SPRYKER_HOOK_AFTER_DEPLOY: 'true' +SPRYKER_HOOK_INSTALL: 'vendor/bin/install -r dynamic-store --no-ansi -vvv' +SPRYKER_HOOK_DESTRUCTIVE_INSTALL: 'vendor/bin/install -r destructive --no-ansi -vvv' +SPRYKER_DYNAMIC_STORE_MODE: true +SPRYKER_YVES_HOST_EU: yves.eu.{{DOMAIN_ZONE}} +``` + +#### Regions configuration + +DMS off: + +```yaml +regions: + stores: + DE: + services: + broker: + namespace: de_queue + key_value_store: + namespace: 1 + search: + namespace: de_search + session: + namespace: 2 + AT: + services: + broker: + namespace: at_queue + key_value_store: + namespace: 3 + search: + namespace: at_search + session: + namespace: 4 +``` +DMS on: + +```yaml +regions: + broker: + namespace: eu-docker + key_value_store: + namespace: 1 + search: + namespace: eu_search +``` + + +#### Applications configuration + +The following examples show the difference for the `merchant-portal` application. The difference is similar for all the applications. + +DMS off: + +```yaml + mportal: + application: merchant-portal + endpoints: + mp.de.{{DOMAIN_ZONE}}: + entry-point: MerchantPortal + store: DE + primal: true + services: + session: + namespace: 7 + mp.at.{{DOMAIN_ZONE}}: + entry-point: MerchantPortal + store: AT + services: + session: + namespace: 8 +``` + +DMS on: + +```yaml +mportal: + application: merchant-portal + endpoints: + mp.eu.{{DOMAIN_ZONE}}: + region: EU + <<: *frontend-auth + entry-point: MerchantPortal + primal: true + services: + session: + namespace: 7 +``` + +{% info_block infoBox "" %} + +The domain structure in DMS on mode enables store switching within the same domain. + +{% endinfo_block %} + +### Differences in the execution of console commands + +With DMS off, store-aware console commands are executed with the `APPLICATION_STORE` environment variable. Example: + +```shell +APPLICATION_STORE=DE console search:setup:sources +``` + +With DMS on, all the store-aware console commands are executed with the `--store` parameter. Example: + +```shell +console search:setup:sources --store=DE +``` + +If a store isn't provided as a parameter, the command is executed for all stores within a current region. + +#### Rules for implementing custom console commands in environments with Dynamic Multistore + +- `Store(Facade|Client)::getCurrentStore()` must not be used in the code the console command executes. +- All store-aware commands must implement `Spryker\Zed\Kernel\Communication\Console\StoreAwareConsole` and execute actions for a specific store if the store parameter is provided; if not provided, actions are executed for all the stores in the region. +- We recommend using the `--store` parameter instead of `APPLICATION_STORE` env variable; both methods are supported. + + +### Store-specific entities in Data Exchange API + +There're no specific requirements, and the changes you need to make depend on the database structure. These entities should be handled in the same way as any other exposed through Data Exchange API database table. + + + ## Data import performance The number of stores affects data import speed: the more stores you have, the slower the data import. Importing products for 40 stores takes approximately 5 times longer than for 8 stores. ## Limitations -With Dynamic Multistore, the separated setup is only possible with stores belonging to different regions. To learn about setups, see [Multi-store setups](/docs/ca/dev/multi-store-setups/multi-store-setups.html) +With Dynamic Multistore, the separated setup is only possible with stores belonging to different regions. To learn about setups, see [Multi-store setups](/docs/ca/dev/multi-store-setups/multi-store-setups.html). diff --git a/docs/pbc/all/dynamic-multistore/202410.0/base-shop/enable-dynamic-multistore.md b/docs/pbc/all/dynamic-multistore/202410.0/base-shop/enable-dynamic-multistore.md new file mode 100644 index 00000000000..8ac702e1eea --- /dev/null +++ b/docs/pbc/all/dynamic-multistore/202410.0/base-shop/enable-dynamic-multistore.md @@ -0,0 +1,193 @@ +--- +title: Enable Dynamic Multistore +description: Learn how to enable the Dynamic Store feature on the latest codebase +last_updated: Dec 19, 2024 +template: howto-guide-template +--- + + +This document describes how to enable [Dynamic Multistore](/docs/pbc/all/dynamic-multistore/{{page.version}}/base-shop/dynamic-multistore-feature-overview.html) (DMS). + +## Prerequisites + +If your project version is below 202307.0, [Install Dynamic Multistore](/docs/pbc/all/dynamic-multistore/202410.0/base-shop/install-dynamic-multistore.html). + +### Enable Dynamic Multistore + +{% info_block warningBox "Staging environment" %} +To avoid unexpected downtime and data loss, perform and test *all* of the following steps in a staging environment first. +{% endinfo_block %} + + + +1. Replace `StoreClient::getCurrentStore()` and `StoreFacade::getCurrentStore()` methods with `StoreStorageClient:getStoreNames()`, `StoreStorageClient::findStoreByName()`, or `StoreFacade::getStoreCollection()` in the following: + * Back Office + * Merchant Portal + * Console Commands + * Gateway + * BackendAPI + +2. Update custom console commands to meet the following rules: + - `Store(Facade|Client)::getCurrentStore()` isn't used in the code a console command executes. + - All store-aware commands implement `Spryker\Zed\Kernel\Communication\Console\StoreAwareConsole` and execute actions for a specific store if a store parameter is provided; if not provided, actions are executed for all the stores in the region. + - Optional: We recommend using the `--store` parameter instead of `APPLICATION_STORE` env variable; both methods are supported. + +3. After enabling DMS, the basic domain structure will change from store to region for all the applications. For example, `https://yves.de.mysprykershop.com` will change to `https://yves.eu.mysprykershop.com`. To prevent negative SEO effects, set up the needed redirects. +4. DMS changes the structure of RabbitMQ messages. When you're ready for the migration, wait for all the remaining messages in the queue to be processed. When the queue is empty, enable the maintenance mode. +The downtime associated with the maintenance mode is limited to the deployment time, which usually takes up to an hour. + +5. Update AWS deployment files to DMS mode using the example: + +Original environment variables section: +```yaml +SPRYKER_HOOK_BEFORE_DEPLOY: 'vendor/bin/install -r pre-deploy.dynamic-store-off -vvv' +SPRYKER_HOOK_AFTER_DEPLOY: 'true' +SPRYKER_HOOK_INSTALL: 'vendor/bin/install -r production.dynamic-store-off --no-ansi -vvv' +SPRYKER_HOOK_DESTRUCTIVE_INSTALL: 'vendor/bin/install -r destructive.dynamic-store-off --no-ansi -vvv' +SPRYKER_YVES_HOST_DE: de.{{DOMAIN_ZONE}} +SPRYKER_YVES_HOST_AT: at.{{DOMAIN_ZONE}} +``` + +Updated environment variables section: + +```yaml +SPRYKER_HOOK_BEFORE_DEPLOY: 'vendor/bin/install -r pre-deploy -vvv' +SPRYKER_HOOK_AFTER_DEPLOY: 'true' +SPRYKER_HOOK_INSTALL: 'vendor/bin/install -r dynamic-store --no-ansi -vvv' +SPRYKER_HOOK_DESTRUCTIVE_INSTALL: 'vendor/bin/install -r destructive --no-ansi -vvv' +SPRYKER_DYNAMIC_STORE_MODE: true +SPRYKER_YVES_HOST_EU: yves.eu.{{DOMAIN_ZONE}} +``` + +Original regions section: +```yaml +regions: + stores: + DE: + services: + broker: + namespace: de_queue + key_value_store: + namespace: 1 + search: + namespace: de_search + session: + namespace: 2 + AT: + services: + broker: + namespace: at_queue + key_value_store: + namespace: 3 + search: + namespace: at_search + session: + namespace: 4 +``` + +Updated regions section: + +```yaml +regions: + broker: + namespace: eu-docker + key_value_store: + namespace: 1 + search: + namespace: eu_search +``` + +6. Run a normal deploy for your server pipeline. + + +{% info_block warningBox "Verification" %} +- Make sure your store is available at `https://yves.eu.mysprykershop.com` or `https://backoffice.eu.mysprykershop.com`. +- Make sure the store switcher is displayed on the Storefront. + +{% endinfo_block %} + +Your shop is now running in DMS mode. + +### Check if Dynamic Multistore is enabled + +DMS is enabled if at least one of the following applies: +1. Using environment: If the value of `SPRYKER_DYNAMIC_STORE_MODE` environment variable is `true` +2. Using interface: In the Back Office > **Administration** > **Stores**, an **Edit** button is displayed next to each store. + +## Disable Dynamic Multistore + +{% info_block warningBox "Staging environment" %} +To avoid unexpected downtime and data loss, perform and test *all* of the following steps in a staging environment first. +{% endinfo_block %} + + + + + +1. After disabling DMS, the basic domain structure will change from region to store for all the applications. To prevent negative SEO effects, set up the needed redirects. +2. DMS changes the structure of RabbitMQ messages. When you're ready for the migration, wait for all the remaining messages in the queue to be processed. When the queue is empty, enable the maintenance mode. + (Expected downtime is limited to the deployment time, normally it takes less than 1hr) +3. Revert changes in deploy files to disable DMS: + +Original environment variables section: +```yaml +SPRYKER_HOOK_BEFORE_DEPLOY: 'vendor/bin/install -r pre-deploy -vvv' +SPRYKER_HOOK_AFTER_DEPLOY: 'true' +SPRYKER_HOOK_INSTALL: 'vendor/bin/install -r dynamic-store --no-ansi -vvv' +SPRYKER_HOOK_DESTRUCTIVE_INSTALL: 'vendor/bin/install -r destructive --no-ansi -vvv' +SPRYKER_DYNAMIC_STORE_MODE: true +SPRYKER_YVES_HOST_EU: yves.eu.{{DOMAIN_ZONE}} +``` +Updated environment variables section: +```yaml +SPRYKER_HOOK_BEFORE_DEPLOY: 'vendor/bin/install -r pre-deploy.dynamic-store-off -vvv' +SPRYKER_HOOK_AFTER_DEPLOY: 'true' +SPRYKER_HOOK_INSTALL: 'vendor/bin/install -r production.dynamic-store-off --no-ansi -vvv' +SPRYKER_HOOK_DESTRUCTIVE_INSTALL: 'vendor/bin/install -r destructive.dynamic-store-off --no-ansi -vvv' +SPRYKER_YVES_HOST_DE: de.{{DOMAIN_ZONE}} +SPRYKER_YVES_HOST_AT: at.{{DOMAIN_ZONE}} +``` + +Original regions section: +```yaml +regions: + broker: + namespace: eu-docker + key_value_store: + namespace: 1 + search: + namespace: eu_search +``` + +Updated regions section: +```yaml +regions: + stores: + DE: + services: + broker: + namespace: de_queue + key_value_store: + namespace: 1 + search: + namespace: de_search + session: + namespace: 2 + AT: + services: + broker: + namespace: at_queue + key_value_store: + namespace: 3 + search: + namespace: at_search + session: + namespace: 4 +``` + +6. Run a normal deploy for your server pipeline. + +{% info_block warningBox "Verification" %} +- Make sure your store is available at `https://yves.de.mysprykershop.com` or `https://backoffice.de.mysprykershop.com`. +- Make sure the store switcher is *not* displayed on the Storefront. +{% endinfo_block %} diff --git a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md index 16d67f38dee..e635294f4ef 100644 --- a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md +++ b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md @@ -32,7 +32,7 @@ This endpoint lets you subscribe to push notifications using Glue API. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `POST https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ```json { @@ -45,7 +45,7 @@ Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notifica "identifier": "1" }, "payload": { - "endpoint": "https://push-notifications.de.b2c.demo-spryker.com", + "endpoint": "https://push-notifications.b2c-eu.demo-spryker.com", "publicKey": "3243-f234-3f34-d2334", "authToken": "4o3ijfoi3j4f93j4d7fh4f34jf3d902kfh345g8jf903kdj23uf3" }, @@ -82,7 +82,7 @@ Response sample: "attributes": { "providerName": "web-push-php", "payload": { - "endpoint": "https://push-notifications.de.b2c.demo-spryker.com", + "endpoint": "https://push-notifications.b2c-eu.demo-spryker.com", "publicKey": "3243-f234-3f34-d2334", "authToken": "4o3ijfoi3j4f93j4d7fh4f34jf3d902kfh345g8jf903kdj23uf3" }, diff --git a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md index 71c38fc6ca3..0eb60720a87 100644 --- a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md @@ -32,7 +32,7 @@ This endpoint lets you add push notification providers to further subscribe to n | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `POST https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ```json { @@ -63,7 +63,7 @@ Response sample: "name": "Fulfillment App provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } } diff --git a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md index 031374adbd9..1ddbc0d05b8 100644 --- a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md @@ -33,7 +33,7 @@ This endpoint lets you delete push notification providers. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `DELETE https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` +Request sample: `DELETE https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` ### Response diff --git a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md index 2005edb02bf..7ea12ff6534 100644 --- a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md @@ -32,7 +32,7 @@ This endpoint lets you retrieve push notification providers to further subscribe | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `GET https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ### Response @@ -50,7 +50,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat "name": "web-push-php" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" } }, { @@ -61,12 +61,12 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat "name": "Fulfillment App provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } ], "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers" } } ``` @@ -95,7 +95,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat | ------------- | ------------ | -------- | ------------------------------------------------------------ | | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23` +Request sample: `GET https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23` ### Response @@ -110,7 +110,7 @@ Response sample: "name": "web-push-php" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" } } } diff --git a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md index 79a88f22ded..ea6101cb8b1 100644 --- a/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202311.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md @@ -33,7 +33,7 @@ This endpoint lets you update push notification providers. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `PATCH https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` +Request sample: `PATCH https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` ```json { @@ -63,7 +63,7 @@ Response sample: "name": "FA provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } } diff --git a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md index 16d67f38dee..e635294f4ef 100644 --- a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md +++ b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md @@ -32,7 +32,7 @@ This endpoint lets you subscribe to push notifications using Glue API. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `POST https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ```json { @@ -45,7 +45,7 @@ Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notifica "identifier": "1" }, "payload": { - "endpoint": "https://push-notifications.de.b2c.demo-spryker.com", + "endpoint": "https://push-notifications.b2c-eu.demo-spryker.com", "publicKey": "3243-f234-3f34-d2334", "authToken": "4o3ijfoi3j4f93j4d7fh4f34jf3d902kfh345g8jf903kdj23uf3" }, @@ -82,7 +82,7 @@ Response sample: "attributes": { "providerName": "web-push-php", "payload": { - "endpoint": "https://push-notifications.de.b2c.demo-spryker.com", + "endpoint": "https://push-notifications.b2c-eu.demo-spryker.com", "publicKey": "3243-f234-3f34-d2334", "authToken": "4o3ijfoi3j4f93j4d7fh4f34jf3d902kfh345g8jf903kdj23uf3" }, diff --git a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md index 71c38fc6ca3..0eb60720a87 100644 --- a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md @@ -32,7 +32,7 @@ This endpoint lets you add push notification providers to further subscribe to n | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `POST https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ```json { @@ -63,7 +63,7 @@ Response sample: "name": "Fulfillment App provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } } diff --git a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md index 031374adbd9..1ddbc0d05b8 100644 --- a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md @@ -33,7 +33,7 @@ This endpoint lets you delete push notification providers. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `DELETE https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` +Request sample: `DELETE https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` ### Response diff --git a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md index 2005edb02bf..7ea12ff6534 100644 --- a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md @@ -32,7 +32,7 @@ This endpoint lets you retrieve push notification providers to further subscribe | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `GET https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ### Response @@ -50,7 +50,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat "name": "web-push-php" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" } }, { @@ -61,12 +61,12 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat "name": "Fulfillment App provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } ], "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers" } } ``` @@ -95,7 +95,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat | ------------- | ------------ | -------- | ------------------------------------------------------------ | | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23` +Request sample: `GET https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23` ### Response @@ -110,7 +110,7 @@ Response sample: "name": "web-push-php" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" } } } diff --git a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md index 79a88f22ded..ea6101cb8b1 100644 --- a/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202404.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md @@ -33,7 +33,7 @@ This endpoint lets you update push notification providers. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `PATCH https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` +Request sample: `PATCH https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` ```json { @@ -63,7 +63,7 @@ Response sample: "name": "FA provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } } diff --git a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md index b3565cad582..228c0403373 100644 --- a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md +++ b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/glue-api-add-push-notification-subscriptions.md @@ -32,7 +32,7 @@ This endpoint lets you subscribe to push notifications using Glue API. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `POST https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ```json { @@ -45,7 +45,7 @@ Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notifica "identifier": "1" }, "payload": { - "endpoint": "https://push-notifications.de.b2c.demo-spryker.com", + "endpoint": "https://push-notifications.b2c-eu.demo-spryker.com", "publicKey": "3243-f234-3f34-d2334", "authToken": "4o3ijfoi3j4f93j4d7fh4f34jf3d902kfh345g8jf903kdj23uf3" }, @@ -82,7 +82,7 @@ Response sample: "attributes": { "providerName": "web-push-php", "payload": { - "endpoint": "https://push-notifications.de.b2c.demo-spryker.com", + "endpoint": "https://push-notifications.b2c-eu.demo-spryker.com", "publicKey": "3243-f234-3f34-d2334", "authToken": "4o3ijfoi3j4f93j4d7fh4f34jf3d902kfh345g8jf903kdj23uf3" }, diff --git a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md index 0c7d8a66e6c..8f6700ecfad 100644 --- a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-add-push-notification-providers.md @@ -32,7 +32,7 @@ This endpoint lets you add push notification providers to further subscribe to n | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `POST https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `POST https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ```json { @@ -63,7 +63,7 @@ Response sample: "name": "Fulfillment App provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } } diff --git a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md index 5d47ed9517c..83f7bc1eee5 100644 --- a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-delete-push-notification-providers.md @@ -33,7 +33,7 @@ This endpoint lets you delete push notification providers. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `DELETE https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` +Request sample: `DELETE https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` ### Response diff --git a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md index 7196c0c86ce..693b938d363 100644 --- a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-retrieve-push-notification-providers.md @@ -32,7 +32,7 @@ This endpoint lets you retrieve push notification providers to further subscribe | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers` +Request sample: `GET https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers` ### Response @@ -50,7 +50,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat "name": "web-push-php" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" } }, { @@ -61,12 +61,12 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat "name": "Fulfillment App provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } ], "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers" } } ``` @@ -95,7 +95,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat | ------------- | ------------ | -------- | ------------------------------------------------------------ | | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23` +Request sample: `GET https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23` ### Response @@ -110,7 +110,7 @@ Response sample: "name": "web-push-php" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/2a304ddf-d51b-514f-bd11-6e818a27fe23" } } } diff --git a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md index 00432077846..23815fa9fe4 100644 --- a/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md +++ b/docs/pbc/all/miscellaneous/202410.0/manage-using-glue-api/manage-push-notification-providers/glue-api-update-push-notification-providers.md @@ -33,7 +33,7 @@ This endpoint lets you update push notification providers. | Authorization | string | ✓ | Alphanumeric string that authorizes the Back Office user to send requests to protected resources. Get it by [authenticating as a Back Office user](/docs/pbc/all/identity-access-management/{{page.version}}/manage-using-glue-api/glue-api-authenticate-as-a-back-office-user.html). | -Request sample: `PATCH https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` +Request sample: `PATCH https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e` ```json { @@ -63,7 +63,7 @@ Response sample: "name": "FA provider" }, "links": { - "self": "https://glue-backend.de.b2c.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" + "self": "https://glue-backend.b2c-eu.demo-spryker.com/push-notification-providers/ffb5875e-00d3-5436-ae67-08b7c9837f3e" } } } diff --git a/docs/pbc/all/product-relationship-management/202311.0/glue-api-retrieve-related-products.md b/docs/pbc/all/product-relationship-management/202311.0/glue-api-retrieve-related-products.md index 3c10f24ddf8..6080d05383a 100644 --- a/docs/pbc/all/product-relationship-management/202311.0/glue-api-retrieve-related-products.md +++ b/docs/pbc/all/product-relationship-management/202311.0/glue-api-retrieve-related-products.md @@ -936,7 +936,7 @@ To get upselling items for all products in a cart of a registered customer, send "url": "/en/acer-liquid-leap-100" }, "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/abstract-products/100" + "self": "https://glue.b2c-eu.demo-spryker.com:80/abstract-products/100" }, "relationships": { "product-labels": { @@ -951,7 +951,7 @@ To get upselling items for all products in a cart of a registered customer, send } ], "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/carts/976af32f-80f6-5f69-878f-4ea549ee0830/up-selling-products?include=product-labels" + "self": "https://glue.b2c-eu.demo-spryker.com:80/carts/976af32f-80f6-5f69-878f-4ea549ee0830/up-selling-products?include=product-labels" }, "included": [ { @@ -964,7 +964,7 @@ To get upselling items for all products in a cart of a registered customer, send "frontEndReference": "highlight" }, "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/product-labels/5" + "self": "https://glue.b2c-eu.demo-spryker.com:80/product-labels/5" } } ] diff --git a/docs/pbc/all/product-relationship-management/202404.0/glue-api-retrieve-related-products.md b/docs/pbc/all/product-relationship-management/202404.0/glue-api-retrieve-related-products.md index 4f7e55d5e8b..2ad32751456 100644 --- a/docs/pbc/all/product-relationship-management/202404.0/glue-api-retrieve-related-products.md +++ b/docs/pbc/all/product-relationship-management/202404.0/glue-api-retrieve-related-products.md @@ -919,7 +919,7 @@ To get upselling items for all products in a cart of a registered customer, send "url": "/en/acer-liquid-leap-100" }, "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/abstract-products/100" + "self": "https://glue.b2c-eu.demo-spryker.com:80/abstract-products/100" }, "relationships": { "product-labels": { @@ -934,7 +934,7 @@ To get upselling items for all products in a cart of a registered customer, send } ], "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/carts/976af32f-80f6-5f69-878f-4ea549ee0830/up-selling-products?include=product-labels" + "self": "https://glue.b2c-eu.demo-spryker.com:80/carts/976af32f-80f6-5f69-878f-4ea549ee0830/up-selling-products?include=product-labels" }, "included": [ { @@ -947,7 +947,7 @@ To get upselling items for all products in a cart of a registered customer, send "frontEndReference": "highlight" }, "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/product-labels/5" + "self": "https://glue.b2c-eu.demo-spryker.com:80/product-labels/5" } } ] diff --git a/docs/pbc/all/product-relationship-management/202410.0/glue-api-retrieve-related-products.md b/docs/pbc/all/product-relationship-management/202410.0/glue-api-retrieve-related-products.md index 4f7e55d5e8b..2ad32751456 100644 --- a/docs/pbc/all/product-relationship-management/202410.0/glue-api-retrieve-related-products.md +++ b/docs/pbc/all/product-relationship-management/202410.0/glue-api-retrieve-related-products.md @@ -919,7 +919,7 @@ To get upselling items for all products in a cart of a registered customer, send "url": "/en/acer-liquid-leap-100" }, "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/abstract-products/100" + "self": "https://glue.b2c-eu.demo-spryker.com:80/abstract-products/100" }, "relationships": { "product-labels": { @@ -934,7 +934,7 @@ To get upselling items for all products in a cart of a registered customer, send } ], "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/carts/976af32f-80f6-5f69-878f-4ea549ee0830/up-selling-products?include=product-labels" + "self": "https://glue.b2c-eu.demo-spryker.com:80/carts/976af32f-80f6-5f69-878f-4ea549ee0830/up-selling-products?include=product-labels" }, "included": [ { @@ -947,7 +947,7 @@ To get upselling items for all products in a cart of a registered customer, send "frontEndReference": "highlight" }, "links": { - "self": "https://glue.de.b2c.demo-spryker.com:80/product-labels/5" + "self": "https://glue.b2c-eu.demo-spryker.com:80/product-labels/5" } } ] diff --git a/docs/pbc/all/search/202410.0/base-shop/third-party-integrations/algolia/integrate-algolia-personalization.md b/docs/pbc/all/search/202410.0/base-shop/third-party-integrations/algolia/integrate-algolia-personalization.md index 2b927d73485..e5ed18a6dd1 100644 --- a/docs/pbc/all/search/202410.0/base-shop/third-party-integrations/algolia/integrate-algolia-personalization.md +++ b/docs/pbc/all/search/202410.0/base-shop/third-party-integrations/algolia/integrate-algolia-personalization.md @@ -164,7 +164,7 @@ Order Success page cases: | - | - | | Open the **Order Success** page | `PAGE_LOAD` with currency, order total, SKUs, prices, and quantities of purchased products. | -For a full list of available events, see the [traceable-events-algolia readme file](https://github.com/spryker-shop/traceable-event-widget/src/SprykerShop/Yves/TraceableEventWidget/Theme/default/components/molecules/traceable-events-algolia/README.md). +For a full list of available events, see the [traceable-events-algolia readme file](https://github.com/spryker-shop/traceable-event-widget/blob/master/src/SprykerShop/Yves/TraceableEventWidget/Theme/default/components/molecules/traceable-events-algolia/README.md). ### Common issues and solutions @@ -176,7 +176,7 @@ This section common issues to event and solutions. Most solutions involve adding 1. Locate the page template or view that is used for the page with faulty events. 2. On the project level, override the `{% raw %}{% block eventTracker %}{% endraw %}` block in the template. -For details on the event configuration API, see the [traceable-events-orchestrator README](https://github.com/spryker-shop/traceable-event-widget/src/SprykerShop/Yves/TraceableEventWidget/Theme/default/components/molecules/traceable-events-orchestrator/README.md). +For details on the event configuration API, see the [traceable-events-orchestrator README](https://github.com/spryker-shop/traceable-event-widget/blob/master/src/SprykerShop/Yves/TraceableEventWidget/Theme/default/components/molecules/traceable-events-orchestrator/README.md). #### Issue: Event not triggering on user action @@ -352,6 +352,11 @@ To enhance your experience, we use data and analytics to understand how you inte By accepting, you allow us to capture anonymous events for personalization, analysis, and continuous improvement of your experience on our platform. ``` +### Disable user data tracking + +If a user does not consent to data tracking, you must set the `disableUserActionTracking` flag in the cookie to `true` to stop sending user action tracking events. This ensures no user data is sent from the application. + + ## Verify the installation 1. Deploy to a testing environment.