From 94834c99e5699eedb53a344ce071880ce8026be8 Mon Sep 17 00:00:00 2001 From: AntonKhabiuk Date: Thu, 12 Oct 2023 16:42:43 +0300 Subject: [PATCH 01/35] CC-31362 Begin adding the information --- .../click-and-colect-feature-walkthrough.md | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md new file mode 100644 index 00000000000..96ea04e83cb --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md @@ -0,0 +1,56 @@ +--- +title: Click and Collect feature walkthrough +last_updated: Sep 26, 2023 +description: TODO +template: concept-topic-template +--- + +C&C business models refers to a retail strategy where customers make purchases online and then collect their ordered products from a physical store or a designated pickup location. This model combines the convenience of online shopping with the immediacy of in-store pickup. + +## Domain Model + +TBD (Diagrams are here https://spryker.atlassian.net/wiki/spaces/CORE/pages/3894607900/WIP+Developer+Feature+Overview+materials) + +| Connection | Description | Rationale | +|------------|-----------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| SP1 | Every service must belong to a service point. One service point can have many services. | Services are assigned to service points where it is provided, the service is an instance of its type that is available at this service point. | +| SP2 | A service point must have one address. | A service point represents a physical location in the real world, for that reason, it must have an address and geo-location. | +| SP3 | A service point can belong to one or many stores. | Service point can belong to one or many stores. Connection between service point and store enable possibility to provide services for specified online store.
F.e. if service point is connected to two online stores it means that it could provide pickup service for orders created in this two stores as physical location where customers could collect their orders. | +| ST1 | Service type can have many services enabled in specific service points. | Service that have same service type could be created for any number of service points.
The service point could have only one service of specific type. | +| ShT1 | Shipment type should have one or more Shipment methods. | Shipment type is a logical grouping of specific shipment methods.
F.e. “In store pickup“ shipment type could be represented by following shipment methods: In-Store Counter pickup, Curbside pickup, Locker pickup, etc. | +| ShT2 | Shipment type can have none or one connected service type. | If shipment type that has connection with the service is selected on checkout, it means that user can select specific service point as a destination of corresponding shipment group. | +| ShT3 | Shipment type can belong to one or many stores. | This connection makes shipment type available at specific store(s). | +| PO1 | Product offer can be connected to none or many services. | As Product Offer is used to share stock between various (especially selling services). As stock physically can be only in one physical place, it means that Product offer MUST be connected to services that have same service point only. | +| PO2 | Product offer can be connected to none or many delivery types. | Same product offer could be connected with few delivery types. It means that offer could be delivered by two different delivery types but price of the product is same for both of them and stock is shared. So delivery will be done from one place.
F.e single product offer can be created for Pickup and Ship from store delivery types. | + + +## Database Diagram + +TBD (Diagrams are here https://spryker.atlassian.net/wiki/spaces/CORE/pages/3894607900/WIP+Developer+Feature+Overview+materials) + +# Service Point + + * A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator itself or by third-party providers. + * A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Amazon Locker as a service point to pick up their order, they will be given the address of the specific Amazon Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. + * A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, et. + * A **Service** represent a specific service type that are provided (enabled) in specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. + +# Shipment Type + +Shipment type refers to the different options available to customers for receiving their orders. +Some common shipment types include: + * Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. + * In-store pickup (aka click & collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. +Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. +Shipment type is a logical grouping of the shipment methods. + +# Click & Collect + +TBD + +# Extension Points + +TBD + + + From 55405fbc54e44d42c13b93f1783c67cea4609274 Mon Sep 17 00:00:00 2001 From: Artem Date: Thu, 19 Oct 2023 14:43:02 +0200 Subject: [PATCH 02/35] CC-31363 add extension points --- .../click-and-colect-feature-walkthrough.md | 464 +++++++++++++++++- 1 file changed, 463 insertions(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md index 96ea04e83cb..1e9e74ecdc9 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md @@ -50,7 +50,469 @@ TBD # Extension Points -TBD +## ProductOfferServicePointAvailabilityCalculator module + +### ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface plugin + +The plugin is used to calculate product offer service point availability based on a specific needs. + +The example of implementation: + +**ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** + +The plugin calculates product offer availabilities per service point for each item in request based on the provided conditions: + +```php +> + */ + public function calculateProductOfferServicePointAvailabilities( + ProductOfferServicePointAvailabilityCollectionTransfer $productOfferServicePointAvailabilityCollectionTransfer, + ProductOfferServicePointAvailabilityConditionsTransfer $productOfferServicePointAvailabilityConditionsTransfer + ): array { + ... + } +} +``` + +## ProductOfferServicePointStorage module + +### ProductOfferServiceStorageFilterPluginInterface plugin + +Provides ability to filter product offer services collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicesTransfer` for publishing is retrieved from Persistence. + +The example of implementation: + +**MerchantProductOfferServiceStorageFilterPlugin** + +The plugin filters product offer services collection by active and approved merchants: + +```php + $productOfferServicesTransfers + * + * @return list<\Generated\Shared\Transfer\ProductOfferServicesTransfer> + */ + public function filterProductOfferServices(array $productOfferServicesTransfers): array + { + ... + } +} +``` + +## ProductOfferServicePointAvailability module + +### ProductOfferServicePointAvailabilityFilterPluginInterface plugin + +Provides ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. + +The example of implementation: + +**ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** + +The plugin filters product offer service point availability transfers by shipment type: + +```php + $shipmentTypeStorageTransfers + * + * @return list<\Generated\Shared\Transfer\ShipmentTypeStorageTransfer> + */ + public function expand(array $shipmentTypeStorageTransfers): array + { + ... + } +} +``` From 1edb3bf25e2ad19a2cf3d14468ffd41f7acd0a23 Mon Sep 17 00:00:00 2001 From: Artem Date: Tue, 24 Oct 2023 09:22:24 +0200 Subject: [PATCH 03/35] CC-31362 add domains and subdomains with extension points --- .../click-and-colect-feature-walkthrough.md | 612 ++++++------------ 1 file changed, 189 insertions(+), 423 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md index 1e9e74ecdc9..bbb833ceff6 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md @@ -7,512 +7,278 @@ template: concept-topic-template C&C business models refers to a retail strategy where customers make purchases online and then collect their ordered products from a physical store or a designated pickup location. This model combines the convenience of online shopping with the immediacy of in-store pickup. -## Domain Model +# Domain Model -TBD (Diagrams are here https://spryker.atlassian.net/wiki/spaces/CORE/pages/3894607900/WIP+Developer+Feature+Overview+materials) +
+ -| Connection | Description | Rationale | -|------------|-----------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| SP1 | Every service must belong to a service point. One service point can have many services. | Services are assigned to service points where it is provided, the service is an instance of its type that is available at this service point. | -| SP2 | A service point must have one address. | A service point represents a physical location in the real world, for that reason, it must have an address and geo-location. | -| SP3 | A service point can belong to one or many stores. | Service point can belong to one or many stores. Connection between service point and store enable possibility to provide services for specified online store.
F.e. if service point is connected to two online stores it means that it could provide pickup service for orders created in this two stores as physical location where customers could collect their orders. | -| ST1 | Service type can have many services enabled in specific service points. | Service that have same service type could be created for any number of service points.
The service point could have only one service of specific type. | -| ShT1 | Shipment type should have one or more Shipment methods. | Shipment type is a logical grouping of specific shipment methods.
F.e. “In store pickup“ shipment type could be represented by following shipment methods: In-Store Counter pickup, Curbside pickup, Locker pickup, etc. | -| ShT2 | Shipment type can have none or one connected service type. | If shipment type that has connection with the service is selected on checkout, it means that user can select specific service point as a destination of corresponding shipment group. | -| ShT3 | Shipment type can belong to one or many stores. | This connection makes shipment type available at specific store(s). | -| PO1 | Product offer can be connected to none or many services. | As Product Offer is used to share stock between various (especially selling services). As stock physically can be only in one physical place, it means that Product offer MUST be connected to services that have same service point only. | -| PO2 | Product offer can be connected to none or many delivery types. | Same product offer could be connected with few delivery types. It means that offer could be delivered by two different delivery types but price of the product is same for both of them and stock is shared. So delivery will be done from one place.
F.e single product offer can be created for Pickup and Ship from store delivery types. | +# Database +
+ -## Database Diagram +# Click & Collect -TBD (Diagrams are here https://spryker.atlassian.net/wiki/spaces/CORE/pages/3894607900/WIP+Developer+Feature+Overview+materials) +Click & Collect functionality provides a convenient and flexible shopping experience by bridging the gap between online purchasing and physical retail. +It allows customers to order products online and pick them up at a designated pickup location, often referred to as Service Points. +To implement this functionality effectively, retailers create product offers within these Service Points, ensuring that the inventory reflects available products accurately and that items are ready for customers to pick them up. Furthermore, shipment types need to be configured to manage and streamline both delivery and pickup options. Delivery pertains to orders sent directly to the customer's address, while Pickup refers to the collection of products by the customers themselves at the Service Points. +This system not only enhances customer convenience by providing a more flexible shopping experience but also helps retailers manage inventory and sales effectively through a well-structured, digitally integrated system. # Service Point - * A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator itself or by third-party providers. - * A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Amazon Locker as a service point to pick up their order, they will be given the address of the specific Amazon Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. - * A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, et. - * A **Service** represent a specific service type that are provided (enabled) in specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. +* A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator itself or by third-party providers. +* A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Amazon Locker as a service point to pick up their order, they will be given the address of the specific Amazon Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. +* A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, et. +* A **Service** represent a specific service type that are provided (enabled) in specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. # Shipment Type Shipment type refers to the different options available to customers for receiving their orders. Some common shipment types include: - * Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. - * In-store pickup (aka click & collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. -Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. -Shipment type is a logical grouping of the shipment methods. +* Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. +* In-store pickup (aka click & collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. + Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. + Shipment type is a logical grouping of the shipment methods. -# Click & Collect +# Domains and subdomains -TBD +## Service Points -# Extension Points +Service Point represents a physical location, such as a store or a post office, where customers can pick up their orders. +Each service point can provide one or multiple unique services in it to the customers. -## ProductOfferServicePointAvailabilityCalculator module +#### 1. Modules -### ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface plugin +| MODULE | EXPECTED DIRECTORY | +|-----------------------------|------------------------------------------------| +| ServicePoint | vendor/spryker/service-point | +| ServicePointCart | vendor/spryker/service-point-cart | +| ServicePointCartExtension | vendor/spryker/service-point-cart-extension | +| ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | +| ServicePointCartsBackendApi | vendor/spryker/service-point-carts-backend-api | +| ServicePointDataImport | vendor/spryker/service-point-data-import | +| ServicePointSearch | vendor/spryker/service-point-search | +| ServicePointsRestApi | vendor/spryker/service-points-rest-api | +| ServicePointStorage | vendor/spryker/service-point-storage | -The plugin is used to calculate product offer service point availability based on a specific needs. +#### 2. Data set up -The example of implementation: +Spryker offers import (check `ServicePointDataImport` module) functionality to set up the service points, service point addresses, service point stores, service types and services. -**ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** - -The plugin calculates product offer availabilities per service point for each item in request based on the provided conditions: - -```php -> - */ - public function calculateProductOfferServicePointAvailabilities( - ProductOfferServicePointAvailabilityCollectionTransfer $productOfferServicePointAvailabilityCollectionTransfer, - ProductOfferServicePointAvailabilityConditionsTransfer $productOfferServicePointAvailabilityConditionsTransfer - ): array { - ... - } -} -``` - -## ProductOfferServicePointStorage module - -### ProductOfferServiceStorageFilterPluginInterface plugin +### Service Point Cart -Provides ability to filter product offer services collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicesTransfer` for publishing is retrieved from Persistence. +Provides support for service points validation and replacement in a cart. -The example of implementation: +#### 1. Modules -**MerchantProductOfferServiceStorageFilterPlugin** +| MODULE | EXPECTED DIRECTORY | +|-----------------------------|------------------------------------------------| +| ServicePointCart | vendor/spryker/service-point-cart | +| ServicePointCartExtension | vendor/spryker/service-point-cart-extension | +| ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | +| ServicePointCartsBackendApi | vendor/spryker/service-point-carts-backend-api | -The plugin filters product offer services collection by active and approved merchants: +#### 2. Extension point for replacement strategy -```php - $productOfferServicesTransfers - * - * @return list<\Generated\Shared\Transfer\ProductOfferServicesTransfer> - */ - public function filterProductOfferServices(array $productOfferServicesTransfers): array - { - ... - } -} -``` +**\Spryker\Zed\ClickAndCollectExample\Communication\Plugin\ServicePointCart\ClickAndCollectExampleServicePointQuoteItemReplaceStrategyPlugin** -## ProductOfferServicePointAvailability module +An example replacement strategy replaces a product offer with another product offer based on updated information about the Service Point and Shipment Type in the shopping cart. -### ProductOfferServicePointAvailabilityFilterPluginInterface plugin +On a project level, this can be extended to support more complex scenarios such as: -Provides ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. +1. Getting information from external systems about the offer you want to replace the current offer with +2. Have different algorithms for replacement based on information obtained from a customer -The example of implementation: -**ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** - -The plugin filters product offer service point availability transfers by shipment type: - -```php - $shipmentTypeStorageTransfers - * - * @return list<\Generated\Shared\Transfer\ShipmentTypeStorageTransfer> - */ - public function expand(array $shipmentTypeStorageTransfers): array - { - ... - } -} - -``` +**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** + +The plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers with inactive merchants. + +### Product Offer Shipment Type Availability + +Refers to the availability calculation. + +#### 1. Modules: + +| MODULE | EXPECTED DIRECTORY | +|---------------------------------------------------------|------------------------------------------------------------------------------| +| ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | From 6a02482bf8b901ce3aeec349ed3fcafc9a57ed46 Mon Sep 17 00:00:00 2001 From: Artem Date: Thu, 2 Nov 2023 14:59:44 +0100 Subject: [PATCH 04/35] CC-31362 Split documentation + fixes --- .../click-and-collect-feature-walkthrough.md} | 249 +----------------- ...oint-availability-subdomain-walkthrough.md | 47 ++++ ...fer-service-point-subdomain-walkthrough.md | 46 ++++ ...type-availability-subdomain-walkthrough.md | 19 ++ ...fer-shipment-type-subdomain-walkthrough.md | 40 +++ ...ervice-point-cart-subdomain-walkthrough.md | 37 +++ .../service-points-domain-walkthrough.md | 38 +++ ...ype-service-point-subdomain-walkthrough.md | 25 ++ .../shipment-types-domain-walkthrough.md | 73 +++++ 9 files changed, 334 insertions(+), 240 deletions(-) rename docs/scos/dev/feature-walkthroughs/202204.0/{click-and-colect-feature-walkthrough.md => click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md} (89%) create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md similarity index 89% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md rename to docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index bbb833ceff6..ded69c7ab5d 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-colect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -42,243 +42,12 @@ Some common shipment types include: # Domains and subdomains -## Service Points - -Service Point represents a physical location, such as a store or a post office, where customers can pick up their orders. -Each service point can provide one or multiple unique services in it to the customers. - -#### 1. Modules - -| MODULE | EXPECTED DIRECTORY | -|-----------------------------|------------------------------------------------| -| ServicePoint | vendor/spryker/service-point | -| ServicePointCart | vendor/spryker/service-point-cart | -| ServicePointCartExtension | vendor/spryker/service-point-cart-extension | -| ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | -| ServicePointCartsBackendApi | vendor/spryker/service-point-carts-backend-api | -| ServicePointDataImport | vendor/spryker/service-point-data-import | -| ServicePointSearch | vendor/spryker/service-point-search | -| ServicePointsRestApi | vendor/spryker/service-points-rest-api | -| ServicePointStorage | vendor/spryker/service-point-storage | - -#### 2. Data set up - -Spryker offers import (check `ServicePointDataImport` module) functionality to set up the service points, service point addresses, service point stores, service types and services. - -### Service Point Cart - -Provides support for service points validation and replacement in a cart. - -#### 1. Modules - -| MODULE | EXPECTED DIRECTORY | -|-----------------------------|------------------------------------------------| -| ServicePointCart | vendor/spryker/service-point-cart | -| ServicePointCartExtension | vendor/spryker/service-point-cart-extension | -| ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | -| ServicePointCartsBackendApi | vendor/spryker/service-point-carts-backend-api | - -#### 2. Extension point for replacement strategy - -Allows to provide your own replacement strategy: - -**\Spryker\Zed\ServicePointCartExtension\Dependency\Plugin\ServicePointQuoteItemReplaceStrategyPluginInterface** - -The example of the implementation: - -**\Spryker\Zed\ClickAndCollectExample\Communication\Plugin\ServicePointCart\ClickAndCollectExampleServicePointQuoteItemReplaceStrategyPlugin** - -An example replacement strategy replaces a product offer with another product offer based on updated information about the Service Point and Shipment Type in the shopping cart. - -On a project level, this can be extended to support more complex scenarios such as: - -1. Getting information from external systems about the offer you want to replace the current offer with -2. Have different algorithms for replacement based on information obtained from a customer - - -## Shipment Type - -Shipment type refers to the different options available to customers for receiving their orders. - -#### 1. Modules - -| MODULE | EXPECTED DIRECTORY | -|-----------------------------------------------------------|----------------------------------------------------------------------------------| -| ShipmentType | vendor/spryker/shipment-type | -| ShipmentTypeCart | vendor/spryker/shipment-type-cart | -| ShipmentTypeDataImport | vendor/spryker/shipment-type-data-import | -| ShipmentTypeProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/shipment-type-product-offer-service-point-availabilities-rest-api | -| ShipmentTypesBackendApi | vendor/spryker/shipment-type-backend-api | -| ShipmentTypeServicePoint | vendor/spryker/shipment-type-service-point | -| ShipmentTypeServicePointDataImport | vendor/spryker/shipment-type-service-point-data-import | -| ShipmentTypeServicePointsRestApi | vendor/spryker/shipment-type-service-points-rest-api | -| ShipmentTypeServicePointStorage | vendor/spryker/shipment-type-service-point-storage | -| ShipmentTypesRestApi | vendor/spryker/shipment-type-rest-api | -| ShipmentTypeStorage | vendor/spryker/shipment-type-storage | -| ShipmentTypeStorageExtension | vendor/spryker/shipment-type-extension | - -#### 2. Data set up - -Spryker offers two ways to set up the shipment types: -- Backend API (check `ShipmentTypesBackendApi` module) -- Import (check `ShipmentTypeDataImport` module) - -#### 3. Extension point for filter shipment types - -Allows filtering out unavailable shipment types before publishing: - -**\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface** - -The example of implementation: - -**\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin** - -The plugin filters out shipment types without product offer shipment type relation. - -#### 4. Extension point for expanding storage data - -Provides ability to expand shipment type storage collection with additional data after retrieving it from the storage: - -**\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** - -The example of implementation: - -**\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** - -The plugin expands shipment type with a service type. - - -### Shipment Type Service Point - -Refers to the connection between shipment type and service point. - -#### 1. Modules - -| MODULE | EXPECTED DIRECTORY | -|-----------------------------------------------------------|----------------------------------------------------------------------------------| -| ShipmentTypeServicePoint | vendor/spryker/shipment-type-service-point | -| ShipmentTypeServicePointDataImport | vendor/spryker/shipment-type-service-point-data-import | -| ShipmentTypeServicePointsRestApi | vendor/spryker/shipment-type-service-points-rest-api | -| ShipmentTypeServicePointStorage | vendor/spryker/shipment-type-service-point-storage | - -#### 2. Data set up - -Spryker offers import (check `ShipmentTypeServicePointDataImport` module) functionality to set up the connection between service points and shipment types. - - -## Product Offer Service Point - -Refers to the connection between product offer and service point. - -#### 1. Modules: - -| MODULE | EXPECTED DIRECTORY | -|---------------------------------------------------------|------------------------------------------------------------------------------| -| ProductOfferServicePoint | vendor/spryker/product-offer-service-point | -| ProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/product-offer-service-point-availabilities-rest-api | -| ProductOfferServicePointAvailability | vendor/spryker/product-offer-service-point-availability | -| ProductOfferServicePointAvailabilityCalculator | vendor/spryker/product-offer-service-point-availability-calculator | -| ProductOfferServicePointAvailabilityCalculatorExtension | vendor/spryker/product-offer-service-point-availability-calculator-extension | -| ProductOfferServicePointAvailabilityExtension | vendor/spryker/product-offer-service-point-availability-extension | -| ProductOfferServicePointDataImport | vendor/spryker/product-offer-service-point-data-import | -| ProductOfferServicePointGui | vendor/spryker/product-offer-service-point-gui | -| ProductOfferServicePointMerchantPortalGui | vendor/spryker/product-offer-service-point-merchant-portal-gui | -| ProductOfferServicePointStorage | vendor/spryker/product-offer-service-point-storage | -| ProductOfferServicePointStorageExtension | vendor/spryker/product-offer-service-point-storage-extension | - -#### 2. Data set up - -Spryker offers import (check `ProductOfferServicePointDataImport` module) functionality to set up the connection between product offers and service points. - -#### 3. Extension point for filtering product offer services - -Provides ability to filter product offer services collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicesTransfer` for publishing is retrieved from Persistence. - -**\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependeency\Plugin\ProductOfferServiceStorageFilterPluginInterface** - -The example of implementation: - -**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin** - -The plugin filters product offer services collection by active and approved merchants. - -### Product Offer Service Point Availability - -Refers to the availability calculation. - -#### 1. Modules: - -| MODULE | EXPECTED DIRECTORY | -|---------------------------------------------------------|------------------------------------------------------------------------------| -| ProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/product-offer-service-point-availabilities-rest-api | -| ProductOfferServicePointAvailability | vendor/spryker/product-offer-service-point-availability | -| ProductOfferServicePointAvailabilityCalculator | vendor/spryker/product-offer-service-point-availability-calculator | -| ProductOfferServicePointAvailabilityCalculatorExtension | vendor/spryker/product-offer-service-point-availability-calculator-extension | -| ProductOfferServicePointAvailabilityExtension | vendor/spryker/product-offer-service-point-availability-extension | - -#### 2. Extension point for calculating product offer service availability - -The plugin is used to calculate product offer service point availability based on a specific needs. - -**\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface** - -The example of implementation: - -**\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** - -The plugin calculates product offer availabilities per service point for each item in request based on the provided conditions. - -#### 3. Extension point for filtering product offer service availability - -Provides ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. - -**\Spryker\Client\ProductOfferServicePointAvailabilityExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface** - -The example of implementation: - -**\Spryker\Client\ProductOfferShipmentTypeAvailability\Plugin\ProductOfferServicePointAvailability\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** - -The plugin filters product offer service point availability transfers by shipment type. - - -## Product Offer Shipment Type - -Refers to the connection between product offer and shipment type. - -#### 1. Modules: - -| MODULE | EXPECTED DIRECTORY | -|---------------------------------------------------------|------------------------------------------------------------------------------| -| ProductOfferShipmentType | vendor/spryker/product-offer-shipment-type | -| ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | -| ProductOfferShipmentTypeDataImport | vendor/spryker/product-offer-shipment-type-data-import | -| ProductOfferShipmentTypeGui | vendor/spryker/product-offer-shipment-type-gui | -| ProductOfferShipmentTypeMerchantPortalGui | vendor/spryker/product-offer-shipment-type-merchant-portal-gui | -| ProductOfferShipmentTypeStorage | vendor/spryker/product-offer-shipment-type-storage | -| ProductOfferShipmentTypeStorageExtension | vendor/spryker/product-offer-shipment-type-storage-extension | - -#### 2. Data set up - -Spryker offers import (check `ProductOfferShipmentTypeDataImport` module) functionality to set up the connection between shipment types and product offers. - -#### 3. Extension point for filtering product offer shipment types - -Provides ability to filter product offer shipment type collection transfer by provided criteria. - -**\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface** - -The example of implementation: - -**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** - -The plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers with inactive merchants. - -### Product Offer Shipment Type Availability - -Refers to the availability calculation. - -#### 1. Modules: - -| MODULE | EXPECTED DIRECTORY | -|---------------------------------------------------------|------------------------------------------------------------------------------| -| ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | +- [Service Points](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.html) + - [Service Point Cart](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.html) +- [Shipment Types](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.html) + - [Shipment Type Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.html) +- Product Offer + - [Product Offer Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.html) + - [Product Offer Service Point Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.html) + - [Product Offer Shipment Type](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.html) + - [Product Offer Shipment Type Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.html) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md new file mode 100644 index 00000000000..badfb40c674 --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md @@ -0,0 +1,47 @@ +--- +title: Click and Collect feature Product Offer Service Point Availability subdomain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Product Offer Service Point Availability + +Refers to the availability calculation. + +[Install the Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-availability-feature.html) + +## 1. Modules: + +| MODULE | EXPECTED DIRECTORY | +|----------------------------------------------------------------|--------------------------------------------------------------------------------------| +| ProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/product-offer-service-point-availabilities-rest-api | +| ProductOfferServicePointAvailability | vendor/spryker/product-offer-service-point-availability | +| ProductOfferServicePointAvailabilityCalculatorStorage | vendor/spryker/product-offer-service-point-availability-calculator-storage | +| ProductOfferServicePointAvailabilityCalculatorStorageExtension | vendor/spryker/product-offer-service-point-availability-calculator-storage-extension | +| ProductOfferServicePointAvailabilityStorage | vendor/spryker/product-offer-service-point-availability-storage | +| ProductOfferServicePointAvailabilityStorageExtension | vendor/spryker/product-offer-service-point-availability-storage-extension | + +## 2. Extension point for calculating product offer service availability + +The plugin is used to calculate product offer service point availability based on a specific needs. + +**\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface** + +The example of implementation: + +**\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** + +The plugin calculates product offer availabilities per service point for each item in request based on the provided conditions. + +## 3. Extension point for filtering product offer service availability + +Provides ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. + +**\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface** + +The example of implementation: + +**\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** + +The plugin filters product offer service point availability transfers by shipment type. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md new file mode 100644 index 00000000000..8310ea95683 --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md @@ -0,0 +1,46 @@ +--- +title: Click and Collect feature Product Offer Service Point subdomain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Product Offer Service Point + +Refers to the connection between product offer and service point. + +[Install the Product Offer Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-feature.html) + +## 1. Modules: + +| MODULE | EXPECTED DIRECTORY | +|----------------------------------------------------------------|--------------------------------------------------------------------------------------| +| ProductOfferServicePoint | vendor/spryker/product-offer-service-point | +| ProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/product-offer-service-point-availabilities-rest-api | +| ProductOfferServicePointAvailability | vendor/spryker/product-offer-service-point-availability | +| ProductOfferServicePointAvailabilityCalculatorStorage | vendor/spryker/product-offer-service-point-availability-calculator-storage | +| ProductOfferServicePointAvailabilityCalculatorStorageExtension | vendor/spryker/product-offer-service-point-availability-calculator-storage-extension | +| ProductOfferServicePointAvailabilityStorage | vendor/spryker/product-offer-service-point-availability-storage | +| ProductOfferServicePointAvailabilityStorageExtension | vendor/spryker/product-offer-service-point-availability-storage-extension | +| ProductOfferServicePointDataImport | vendor/spryker/product-offer-service-point-data-import | +| ProductOfferServicePointGui | vendor/spryker/product-offer-service-point-gui | +| ProductOfferServicePointMerchantPortalGui | vendor/spryker/product-offer-service-point-merchant-portal-gui | +| ProductOfferServicePointStorage | vendor/spryker/product-offer-service-point-storage | +| ProductOfferServicePointStorageExtension | vendor/spryker/product-offer-service-point-storage-extension | +| ProductOfferServicePointAvailabilityWidget | vendor/spryker-shop/product-offer-service-point-availability-widget | + +## 2. Data set up + +Spryker offers import (check `ProductOfferServicePointDataImport` module) functionality to set up the connection between product offers and service points. + +## 3. Extension point for filtering Product Offer Services before publishing it to Storage. + +Provides ability to filter Product Offer Service collection before publishing it to the Storage. + +**\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface** + +The example of implementation: + +**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin** + +The plugin filters product offer services collection by active and approved merchants. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md new file mode 100644 index 00000000000..85825fbfcc7 --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md @@ -0,0 +1,19 @@ +--- +title: Click and Collect feature Product Offer Shipment Type Availability subdomain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Product Offer Shipment Type Availability + +Refers to the availability calculation. + +[Install the Product Offer Shipments Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipments-availability-feature.html) + +## 1. Modules: + +| MODULE | EXPECTED DIRECTORY | +|---------------------------------------------|-----------------------------------------------------------------| +| ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | +| ProductOfferShipmentTypeAvailabilityStorage | vendor/spryker/product-offer-shipment-type-availability-storage | diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md new file mode 100644 index 00000000000..81ea1717385 --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md @@ -0,0 +1,40 @@ +--- +title: Click and Collect feature Product Offer Shipment Type subdomain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Product Offer Shipment Type + +Refers to the connection between product offer and shipment type. + +[Install the Product Offer Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipment-feature.html) + +## 1. Modules: + +| MODULE | EXPECTED DIRECTORY | +|---------------------------------------------------------|------------------------------------------------------------------------------| +| ProductOfferShipmentType | vendor/spryker/product-offer-shipment-type | +| ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | +| ProductOfferShipmentTypeDataImport | vendor/spryker/product-offer-shipment-type-data-import | +| ProductOfferShipmentTypeGui | vendor/spryker/product-offer-shipment-type-gui | +| ProductOfferShipmentTypeMerchantPortalGui | vendor/spryker/product-offer-shipment-type-merchant-portal-gui | +| ProductOfferShipmentTypeStorage | vendor/spryker/product-offer-shipment-type-storage | +| ProductOfferShipmentTypeStorageExtension | vendor/spryker/product-offer-shipment-type-storage-extension | + +## 2. Data set up + +Spryker offers import (check `ProductOfferShipmentTypeDataImport` module) functionality to set up the connection between shipment types and product offers. + +## 3. Extension point for filtering product offer shipment types before publishing it to the Storage + +Provides ability to filter product offer shipment type collection before publishing it to the Storage. + +**\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface** + +The example of implementation: + +**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** + +The plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers with inactive merchants. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md new file mode 100644 index 00000000000..f837eebda39 --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md @@ -0,0 +1,37 @@ +--- +title: Click and Collect feature Service Point Cart subdomain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Service Point Cart + +Provides support for service points validation and replacement in a cart. + +[Install the Service Points Cart feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-cart-feature.html) + +## 1. Modules + +| MODULE | EXPECTED DIRECTORY | +|-----------------------------|------------------------------------------------| +| ServicePointCart | vendor/spryker/service-point-cart | +| ServicePointCartExtension | vendor/spryker/service-point-cart-extension | +| ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | + +## 2. Extension point for item replacement strategy in the cart during checkout process + +Allows to provide your own replacement strategy for items in the cart. + +**\Spryker\Zed\ServicePointCartExtension\Dependency\Plugin\ServicePointQuoteItemReplaceStrategyPluginInterface** + +The example of the implementation: + +**\Spryker\Zed\ClickAndCollectExample\Communication\Plugin\ServicePointCart\ClickAndCollectExampleServicePointQuoteItemReplaceStrategyPlugin** + +An example replacement strategy replaces a product offer with another product offer based on updated information about the Service Point and Shipment Type in the shopping cart. + +On a project level, this can be extended to support more complex scenarios such as: + +1. Getting information from external systems about the offer you want to replace the current offer with. +2. Have different algorithms for replacement based on information obtained from a customer. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md new file mode 100644 index 00000000000..dbb99a2faca --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -0,0 +1,38 @@ +--- +title: Click and Collect feature Service Points domain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Service Points + +Service Point represents a physical location, such as a store or a post office, where customers can pick up their orders. +Each service point can provide one or multiple unique services in it to the customers. + +[Install the Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-feature.html) + +## 1. Modules + +| MODULE | EXPECTED DIRECTORY | +|---------------------------|------------------------------------------------| +| ServicePoint | vendor/spryker/service-point | +| ServicePointCart | vendor/spryker/service-point-cart | +| ServicePointCartExtension | vendor/spryker/service-point-cart-extension | +| ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | +| ServicePointDataImport | vendor/spryker/service-point-data-import | +| ServicePointSearch | vendor/spryker/service-point-search | +| ServicePointsRestApi | vendor/spryker/service-points-rest-api | +| ServicePointsBackendApi | vendor/spryker/service-points-backend-api | +| ServicePointStorage | vendor/spryker/service-point-storage | +| SalesServicePoint | vendor/spryker/sales-service-point | +| SalesServicePointGui | vendor/spryker/sales-service-point-gui | +| SalesServicePointWidget | vendor/spryker-shop/sales-service-point-widget | +| ServicePointWidget | vendor/spryker-shop/service-point-widget | +| ServicePointCartPage | vendor/spryker-shop/service-point-cart-page | + +## 2. Data set up + +Spryker offers two ways to set up the service points, service point addresses, service point stores, service types and services: +- Backend API (check `ServicePointsBackendApi` module) +- Import (check `ServicePointDataImport` module) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md new file mode 100644 index 00000000000..d40e733db6c --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md @@ -0,0 +1,25 @@ +--- +title: Click and Collect feature Shipment Type Service Point subdomain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Shipment Type Service Point + +Refers to the connection between shipment type and service point. + +[Install the Shipment Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-service-points-feature.html) + +## 1. Modules + +| MODULE | EXPECTED DIRECTORY | +|------------------------------------|---------------------------------------------------------| +| ShipmentTypeServicePoint | vendor/spryker/shipment-type-service-point | +| ShipmentTypeServicePointDataImport | vendor/spryker/shipment-type-service-point-data-import | +| ShipmentTypeServicePointsRestApi | vendor/spryker/shipment-type-service-points-rest-api | +| ShipmentTypeServicePointStorage | vendor/spryker/shipment-type-service-point-storage | + +## 2. Data set up + +Spryker offers import (check `ShipmentTypeServicePointDataImport` module) functionality to set up the connection between service points and shipment types. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md new file mode 100644 index 00000000000..170150653cf --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md @@ -0,0 +1,73 @@ +--- +title: Click and Collect feature Shipment Types domain walkthrough +last_updated: Nov 02, 2023 +description: TODO +template: concept-topic-template +--- + +# Shipment Types + +Shipment type refers to the different options available to customers for receiving their orders. + +[Install the Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-feature.html) + +## 1. Modules + +| MODULE | EXPECTED DIRECTORY | +|-----------------------------------------------------------|----------------------------------------------------------------------------------| +| ShipmentType | vendor/spryker/shipment-type | +| ShipmentTypeCart | vendor/spryker/shipment-type-cart | +| ShipmentTypeDataImport | vendor/spryker/shipment-type-data-import | +| ShipmentTypeProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/shipment-type-product-offer-service-point-availabilities-rest-api | +| ShipmentTypesBackendApi | vendor/spryker/shipment-type-backend-api | +| ShipmentTypeServicePoint | vendor/spryker/shipment-type-service-point | +| ShipmentTypeServicePointDataImport | vendor/spryker/shipment-type-service-point-data-import | +| ShipmentTypeServicePointsRestApi | vendor/spryker/shipment-type-service-points-rest-api | +| ShipmentTypeServicePointStorage | vendor/spryker/shipment-type-service-point-storage | +| ShipmentTypesRestApi | vendor/spryker/shipment-type-rest-api | +| ShipmentTypeStorage | vendor/spryker/shipment-type-storage | +| ShipmentTypeStorageExtension | vendor/spryker/shipment-type-extension | +| ShipmentTypeWidget | vendor/spryker-shop/shipment-type-widget | + +## 2. Data set up + +Spryker offers two ways to set up the shipment types: +- Backend API (check `ShipmentTypesBackendApi` module) +- Import (check `ShipmentTypeDataImport` module) + +## 3. Extension point for filter shipment types for the quote during checkout process + +Allows filtering out shipment types for the quote during checkout process. + +**\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface** + +The example of implementation: + +**\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin** + +The plugin filters out shipment types without product offer shipment type relation. + +## 4. Extension point for expanding Shipment Type data before publishing to the Storage + +Provides ability to expand shipment type storage collection with additional data before publishing it to the Storage. +Later, the expanded data can be used after retrieving the Shipment Type data from the Storage. + +**\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** + +The example of implementation: + +**\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** + +The plugin expands shipment type with a service type. + +## 5. Extension point for expanding Shipment Type data after retrieving from the Storage + +Provides ability to expand shipment type storage collection with additional data after it is retrieved from the Storage. + +**\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** + +The example of implementation: + +**\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** + +The plugin expands shipment type with a service type. From d2b534d3ec20569fb25e8fb966f3b4b3a27e3a9c Mon Sep 17 00:00:00 2001 From: Artem Date: Thu, 2 Nov 2023 16:22:25 +0100 Subject: [PATCH 05/35] CC-31362 update domain model --- .../click-and-collect-feature-walkthrough.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index ded69c7ab5d..bbc40e00330 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -9,7 +9,7 @@ C&C business models refers to a retail strategy where customers make purchases o # Domain Model -
+
# Database From ae321b04bbefcc3665c1fb863b7e9992a26479c3 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Mon, 13 Nov 2023 16:11:15 +0100 Subject: [PATCH 06/35] CC-31362: Added the fixes after the technical review. --- ...e-point-availability-subdomain-walkthrough.md | 12 ++++++------ ...-offer-service-point-subdomain-walkthrough.md | 4 ++-- ...-offer-shipment-type-subdomain-walkthrough.md | 6 +++--- .../service-point-cart-subdomain-walkthrough.md | 10 +++++----- .../service-points-domain-walkthrough.md | 2 +- .../shipment-types-domain-walkthrough.md | 16 ++++++++-------- 6 files changed, 25 insertions(+), 25 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md index badfb40c674..a65b4add191 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md @@ -22,26 +22,26 @@ Refers to the availability calculation. | ProductOfferServicePointAvailabilityStorage | vendor/spryker/product-offer-service-point-availability-storage | | ProductOfferServicePointAvailabilityStorageExtension | vendor/spryker/product-offer-service-point-availability-storage-extension | -## 2. Extension point for calculating product offer service availability +## 2. Extension point for calculating the availability of a product offer at a service point. -The plugin is used to calculate product offer service point availability based on a specific needs. +The plugin is used to calculate product offer availability at the service point based on specific needs. **\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface** -The example of implementation: +An example: **\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** The plugin calculates product offer availabilities per service point for each item in request based on the provided conditions. -## 3. Extension point for filtering product offer service availability +## 3. Extension point for filtering data about the availability of a product offer at a service point. Provides ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. **\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface** -The example of implementation: +An example: **\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** -The plugin filters product offer service point availability transfers by shipment type. +The plugin filters product offer availability data at the service point by shipment type in case of its existence in the criteria of the availability request. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md index 8310ea95683..d43adf88584 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md @@ -33,13 +33,13 @@ Refers to the connection between product offer and service point. Spryker offers import (check `ProductOfferServicePointDataImport` module) functionality to set up the connection between product offers and service points. -## 3. Extension point for filtering Product Offer Services before publishing it to Storage. +## 3. Extension point for filtering services assigned to the product offers before publishing them to Storage Provides ability to filter Product Offer Service collection before publishing it to the Storage. **\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface** -The example of implementation: +An example: **\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin** diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md index 81ea1717385..93eaaa13aae 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md @@ -27,14 +27,14 @@ Refers to the connection between product offer and shipment type. Spryker offers import (check `ProductOfferShipmentTypeDataImport` module) functionality to set up the connection between shipment types and product offers. -## 3. Extension point for filtering product offer shipment types before publishing it to the Storage +## 3. Extension point for filtering shipment types assigned to product offers before publishing them to the Storage. Provides ability to filter product offer shipment type collection before publishing it to the Storage. **\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface** -The example of implementation: +An example: **\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** -The plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers with inactive merchants. +The plugin filters out ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes with product offers from inactive merchants. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md index f837eebda39..d60a105433e 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md @@ -7,7 +7,7 @@ template: concept-topic-template # Service Point Cart -Provides support for service points validation and replacement in a cart. +Enables validation of service points and replacement of line items in a shopping cart. [Install the Service Points Cart feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-cart-feature.html) @@ -19,9 +19,9 @@ Provides support for service points validation and replacement in a cart. | ServicePointCartExtension | vendor/spryker/service-point-cart-extension | | ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | -## 2. Extension point for item replacement strategy in the cart during checkout process +## 2. Extension point that allows for the implementation of item replacement strategies in the cart during the checkout process -Allows to provide your own replacement strategy for items in the cart. +Allows you to provide your strategy for replacing items in your cart. **\Spryker\Zed\ServicePointCartExtension\Dependency\Plugin\ServicePointQuoteItemReplaceStrategyPluginInterface** @@ -33,5 +33,5 @@ An example replacement strategy replaces a product offer with another product of On a project level, this can be extended to support more complex scenarios such as: -1. Getting information from external systems about the offer you want to replace the current offer with. -2. Have different algorithms for replacement based on information obtained from a customer. +1. Receive information from external systems about the offer you want to replace the current offer with. +2. Have different algorithms for cart item replacement based on information obtained from a customer. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md index dbb99a2faca..000d294ef90 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -35,4 +35,4 @@ Each service point can provide one or multiple unique services in it to the cust Spryker offers two ways to set up the service points, service point addresses, service point stores, service types and services: - Backend API (check `ServicePointsBackendApi` module) -- Import (check `ServicePointDataImport` module) +- Data import (check `ServicePointDataImport` module) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md index 170150653cf..aa50dca0cec 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md @@ -33,15 +33,15 @@ Shipment type refers to the different options available to customers for receivi Spryker offers two ways to set up the shipment types: - Backend API (check `ShipmentTypesBackendApi` module) -- Import (check `ShipmentTypeDataImport` module) +- Data import (check `ShipmentTypeDataImport` module) -## 3. Extension point for filter shipment types for the quote during checkout process +## 3. Extension point for filter shipment types for the quote during the checkout process -Allows filtering out shipment types for the quote during checkout process. +Allows filtering out shipment types for the quote during the checkout process. **\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface** -The example of implementation: +An example: **\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin** @@ -49,12 +49,12 @@ The plugin filters out shipment types without product offer shipment type relati ## 4. Extension point for expanding Shipment Type data before publishing to the Storage -Provides ability to expand shipment type storage collection with additional data before publishing it to the Storage. +Provides the ability to expand shipment type storage collection with additional data before publishing it to the Storage. Later, the expanded data can be used after retrieving the Shipment Type data from the Storage. **\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** -The example of implementation: +An example: **\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** @@ -62,11 +62,11 @@ The plugin expands shipment type with a service type. ## 5. Extension point for expanding Shipment Type data after retrieving from the Storage -Provides ability to expand shipment type storage collection with additional data after it is retrieved from the Storage. +Provides the ability to expand shipment type storage collection with additional data after it is retrieved from the Storage. **\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** -The example of implementation: +An example: **\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** From 6b9f8ee71390e89c1341c98b1798abae352dd3b1 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Tue, 14 Nov 2023 15:52:46 +0100 Subject: [PATCH 07/35] CC-31362: Added improvements to the documentation. --- .../click-and-collect-feature-walkthrough.md | 36 +++++++++++++++++-- ...oint-availability-subdomain-walkthrough.md | 16 +++++---- ...fer-service-point-subdomain-walkthrough.md | 16 +++++---- ...type-availability-subdomain-walkthrough.md | 9 +++-- ...fer-shipment-type-subdomain-walkthrough.md | 14 ++++---- ...ervice-point-cart-subdomain-walkthrough.md | 18 +++++----- .../service-points-domain-walkthrough.md | 16 +++++---- ...ype-service-point-subdomain-walkthrough.md | 10 +++--- .../shipment-types-domain-walkthrough.md | 24 +++++++------ 9 files changed, 104 insertions(+), 55 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index bbc40e00330..efd58dad814 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -1,7 +1,7 @@ --- title: Click and Collect feature walkthrough last_updated: Sep 26, 2023 -description: TODO +description: Explore the Click and Collect feature technical walkthrough, a retail strategy seamlessly blending online shopping with in-store pickup. Learn about the domain model, database, and the intricate details of Click & Collect functionality, Service Points, Shipment Types, and more. Enhance your understanding of how this system brings convenience to customers and effective inventory management to retailers. template: concept-topic-template --- @@ -12,7 +12,39 @@ C&C business models refers to a retail strategy where customers make purchases o
-# Database +Here is a list of the entities and their relationships as they appear in the diagram: +- **Store:** + - Relates to Service Point (many-to-many relationship). + - Relates to Shipment Type (many-to-many relationship). +- **Merchant:** + - Relates to Product Offer (1-to-many relationship). +- **Service Point:** + - Has a Service Point Address (1-to-1 relationship). + - Relates to Sales Order through Sales Order Item (1-to-many relationship). + - Has a Service (1-to-many relationship). +- **Service:** + - Has a Service Type (1-to-1 relationship). + - Relates to Sales Order through Sales Order Item (1-to-many relationship). +- **Shipment Type:** + - Relates to Shipping Method (1-to-many relationship). + - Relates to Product Offer (many-to-many relationship). +- **Product Offer:** + - Contains attributes like Price, Availability, etc. + - Relates to Product (1-to-many relationship). + - Relates to Stock (Warehouse) (1-to-many relationship). +- **Product:** + - Relates to Product Price (1-to-1 relationship). + - Relates to Product Stock (1-to-1 relationship). +- **Sales Order:** + - Contains Sales Order Item (1-to-many relationship). + - Relates to Sales Shipment (1-to-many relationship). +- **Stock (Warehouse):** + - Contains Product Offer Stock (1-to-many relationship). + +The relationships indicate how each entity interacts with others within the system. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. +The model also differentiates between new entities and relations (shown in green) and existing ones (shown in white), which helps to understand the changes or extensions made to the existing system. + +# Database Schema
diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md index a65b4add191..3c5780951fd 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md @@ -1,13 +1,15 @@ --- title: Click and Collect feature Product Offer Service Point Availability subdomain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Explore the intricacies of the Product Offer Service Point Availability subdomain in the Click and Collect feature. Learn about the modules, installation of the feature, and the extension points for calculating and filtering data related to the availability of a product offer at a service point. Enhance your understanding with examples of plugins and strategies used in the availability calculation process. + template: concept-topic-template --- # Product Offer Service Point Availability -Refers to the availability calculation. +The Product Offer Service Point Availability subdomain refers to the calculation of product availability at service points. [Install the Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-availability-feature.html) @@ -28,20 +30,20 @@ The plugin is used to calculate product offer availability at the service point **\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface** -An example: +Example: **\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** -The plugin calculates product offer availabilities per service point for each item in request based on the provided conditions. +This plugin calculates product offer availabilities per service point for each item in the request based on the provided conditions. ## 3. Extension point for filtering data about the availability of a product offer at a service point. -Provides ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. +Provides the ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. **\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface** -An example: +Example: **\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** -The plugin filters product offer availability data at the service point by shipment type in case of its existence in the criteria of the availability request. +This plugin filters product offer availability data at the service point by shipment type if it exists in the criteria of the availability request. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md index d43adf88584..e5f202e7c05 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md @@ -1,13 +1,15 @@ --- title: Click and Collect feature Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Embark on a detailed exploration of the Product Offer Service Point subdomain in the Click and Collect feature. Understand the connection between product offers and service points, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering services assigned to product offers before publishing them to storage. + template: concept-topic-template --- # Product Offer Service Point -Refers to the connection between product offer and service point. +The Product Offer Service Point subdomain refers to the connection between product offers and service points. [Install the Product Offer Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-feature.html) @@ -29,18 +31,18 @@ Refers to the connection between product offer and service point. | ProductOfferServicePointStorageExtension | vendor/spryker/product-offer-service-point-storage-extension | | ProductOfferServicePointAvailabilityWidget | vendor/spryker-shop/product-offer-service-point-availability-widget | -## 2. Data set up +## 2. Data Setup -Spryker offers import (check `ProductOfferServicePointDataImport` module) functionality to set up the connection between product offers and service points. +Spryker offers an import functionality (check the `ProductOfferServicePointDataImport` module) to establish the connection between product offers and service points. ## 3. Extension point for filtering services assigned to the product offers before publishing them to Storage -Provides ability to filter Product Offer Service collection before publishing it to the Storage. +This extension point provides the ability to filter the Product Offer Service collection before publishing it to storage. **\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface** -An example: +Example: **\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin** -The plugin filters product offer services collection by active and approved merchants. +This plugin filters the product offer services collection by active and approved merchants. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md index 85825fbfcc7..8f4b5e5e7bf 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md @@ -1,13 +1,15 @@ --- -title: Click and Collect feature Product Offer Shipment Type Availability subdomain walkthrough +title: Click and Collect Feature Product Offer Shipment Type Availability Subdomain Walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Dive into the intricacies of the Product Offer Shipment Type Availability subdomain in the Click and Collect feature. Explore the availability calculation and understand how to install and configure the essential modules for optimal functionality. + template: concept-topic-template --- # Product Offer Shipment Type Availability -Refers to the availability calculation. +The Product Offer Shipment Type Availability subdomain focuses on the availability calculation. [Install the Product Offer Shipments Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipments-availability-feature.html) @@ -17,3 +19,4 @@ Refers to the availability calculation. |---------------------------------------------|-----------------------------------------------------------------| | ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | | ProductOfferShipmentTypeAvailabilityStorage | vendor/spryker/product-offer-shipment-type-availability-storage | + diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md index 93eaaa13aae..fa069c2e277 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md @@ -1,13 +1,15 @@ --- title: Click and Collect feature Product Offer Shipment Type subdomain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Immerse yourself in the Product Offer Shipment Type subdomain of the Click and Collect feature. Gain insights into the connection between product offers and shipment types, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering shipment types assigned to product offers before publishing them to storage. + template: concept-topic-template --- # Product Offer Shipment Type -Refers to the connection between product offer and shipment type. +The Product Offer Shipment Type subdomain deals with the connection between product offers and shipment types. [Install the Product Offer Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipment-feature.html) @@ -23,13 +25,13 @@ Refers to the connection between product offer and shipment type. | ProductOfferShipmentTypeStorage | vendor/spryker/product-offer-shipment-type-storage | | ProductOfferShipmentTypeStorageExtension | vendor/spryker/product-offer-shipment-type-storage-extension | -## 2. Data set up +## 2. Data Setup -Spryker offers import (check `ProductOfferShipmentTypeDataImport` module) functionality to set up the connection between shipment types and product offers. +Spryker offers an import functionality (check the `ProductOfferShipmentTypeDataImport` module) to establish the connection between shipment types and product offers. ## 3. Extension point for filtering shipment types assigned to product offers before publishing them to the Storage. -Provides ability to filter product offer shipment type collection before publishing it to the Storage. +This extension point provides the ability to filter the product offer shipment type collection before publishing it to storage. **\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface** @@ -37,4 +39,4 @@ An example: **\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** -The plugin filters out ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes with product offers from inactive merchants. +This plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers from inactive merchants. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md index d60a105433e..c9a5c22034f 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md @@ -1,13 +1,15 @@ --- title: Click and Collect feature Service Point Cart subdomain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Explore the Service Point Cart subdomain in the Click and Collect feature, focusing on the validation of service points and the replacement of line items in a shopping cart. Learn how to install the essential modules and leverage the extension point for implementing custom item replacement strategies during the checkout process. + template: concept-topic-template --- # Service Point Cart -Enables validation of service points and replacement of line items in a shopping cart. +The Service Point Cart subdomain empowers you to validate service points and replace line items within a shopping cart. [Install the Service Points Cart feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-cart-feature.html) @@ -21,17 +23,17 @@ Enables validation of service points and replacement of line items in a shopping ## 2. Extension point that allows for the implementation of item replacement strategies in the cart during the checkout process -Allows you to provide your strategy for replacing items in your cart. +Utilize the extension point to implement custom strategies for replacing items in the cart during the checkout process. **\Spryker\Zed\ServicePointCartExtension\Dependency\Plugin\ServicePointQuoteItemReplaceStrategyPluginInterface** -The example of the implementation: +Example Implementation: **\Spryker\Zed\ClickAndCollectExample\Communication\Plugin\ServicePointCart\ClickAndCollectExampleServicePointQuoteItemReplaceStrategyPlugin** -An example replacement strategy replaces a product offer with another product offer based on updated information about the Service Point and Shipment Type in the shopping cart. +This example replacement strategy substitutes a product offer with another based on updated information about the Service Point and Shipment Type in the shopping cart. -On a project level, this can be extended to support more complex scenarios such as: +At the project level, extend this capability to support more intricate scenarios, such as: -1. Receive information from external systems about the offer you want to replace the current offer with. -2. Have different algorithms for cart item replacement based on information obtained from a customer. +1. Receiving information from external systems about the offer intended for replacement. +2. Implementing diverse algorithms for cart item replacement based on information obtained from customers. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md index 000d294ef90..6416513dfb0 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -1,14 +1,15 @@ --- title: Click and Collect feature Service Points domain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Delve into the Service Points domain of the Click and Collect feature, exploring the definition and functionality of service points. Learn how to install the Service Points feature and set up essential modules for seamless integration. Understand the significance of data setup and discover the available methods, including the Backend API and Data Import, to configure service points, addresses, stores, service types, and services. + template: concept-topic-template --- # Service Points -Service Point represents a physical location, such as a store or a post office, where customers can pick up their orders. -Each service point can provide one or multiple unique services in it to the customers. +A Service Point represents a physical location, such as a store or a post office, enabling customers to conveniently pick up their orders. Each service point has the capability to offer one or multiple unique services to customers. [Install the Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-feature.html) @@ -31,8 +32,9 @@ Each service point can provide one or multiple unique services in it to the cust | ServicePointWidget | vendor/spryker-shop/service-point-widget | | ServicePointCartPage | vendor/spryker-shop/service-point-cart-page | -## 2. Data set up +## 2. Data Setup + +Spryker offers two methods for setting up service points, service point addresses, service point stores, service types, and services: -Spryker offers two ways to set up the service points, service point addresses, service point stores, service types and services: -- Backend API (check `ServicePointsBackendApi` module) -- Data import (check `ServicePointDataImport` module) +- Backend API (check the `ServicePointsBackendApi` module) +- Data Import (check the `ServicePointDataImport` module) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md index d40e733db6c..30d1554208f 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md @@ -1,13 +1,15 @@ --- title: Click and Collect feature Shipment Type Service Point subdomain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Explore the Shipment Type Service Point subdomain in the Click and Collect feature, focusing on the connection between shipment types and service points. Learn how to install the Shipment Service Points feature and set up the necessary modules to establish a seamless integration. Understand the data setup process, leveraging the import functionality provided by the `ShipmentTypeServicePointDataImport` module to create a robust connection between service points and shipment types. + template: concept-topic-template --- # Shipment Type Service Point -Refers to the connection between shipment type and service point. +The Shipment Type Service Point subdomain establishes the connection between shipment types and service points. [Install the Shipment Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-service-points-feature.html) @@ -20,6 +22,6 @@ Refers to the connection between shipment type and service point. | ShipmentTypeServicePointsRestApi | vendor/spryker/shipment-type-service-points-rest-api | | ShipmentTypeServicePointStorage | vendor/spryker/shipment-type-service-point-storage | -## 2. Data set up +## 2. Data Setup -Spryker offers import (check `ShipmentTypeServicePointDataImport` module) functionality to set up the connection between service points and shipment types. +Spryker provides import functionality through the `ShipmentTypeServicePointDataImport` module to facilitate the setup of the connection between service points and shipment types. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md index aa50dca0cec..5afb052fbdc 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md @@ -1,13 +1,15 @@ --- title: Click and Collect feature Shipment Types domain walkthrough last_updated: Nov 02, 2023 -description: TODO +description: | + Explore the Shipment Types domain in the Click and Collect feature, understanding the various options available to customers for receiving their orders. This guide provides comprehensive details on installing the Shipment feature, delving into the associated modules, and showcasing different data setup methods. Additionally, discover key extension points for customizing Shipment Types behavior during the checkout process. + template: concept-topic-template --- # Shipment Types -Shipment type refers to the different options available to customers for receiving their orders. +Shipment types offer diverse options for customers to receive their orders. [Install the Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-feature.html) @@ -29,15 +31,15 @@ Shipment type refers to the different options available to customers for receivi | ShipmentTypeStorageExtension | vendor/spryker/shipment-type-extension | | ShipmentTypeWidget | vendor/spryker-shop/shipment-type-widget | -## 2. Data set up +## 2. Data Setup -Spryker offers two ways to set up the shipment types: +Spryker offers two methods for setting up shipment types: - Backend API (check `ShipmentTypesBackendApi` module) - Data import (check `ShipmentTypeDataImport` module) ## 3. Extension point for filter shipment types for the quote during the checkout process -Allows filtering out shipment types for the quote during the checkout process. +Filter shipment types for the quote during the checkout process with the following extension point: **\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface** @@ -45,12 +47,12 @@ An example: **\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin** -The plugin filters out shipment types without product offer shipment type relation. +This plugin filters out shipment types without a product offer shipment type relation. ## 4. Extension point for expanding Shipment Type data before publishing to the Storage -Provides the ability to expand shipment type storage collection with additional data before publishing it to the Storage. -Later, the expanded data can be used after retrieving the Shipment Type data from the Storage. +Expands shipment type storage collection with additional data before publishing to the Storage. +Use the expanded data after retrieving Shipment Type data from the Storage. **\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** @@ -58,11 +60,11 @@ An example: **\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** -The plugin expands shipment type with a service type. +This plugin expands shipment types with a service type. ## 5. Extension point for expanding Shipment Type data after retrieving from the Storage -Provides the ability to expand shipment type storage collection with additional data after it is retrieved from the Storage. +Expands shipment type storage collection with additional data after retrieving it from the Storage. **\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** @@ -70,4 +72,4 @@ An example: **\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** -The plugin expands shipment type with a service type. +This plugin expands shipment types with a service type. From 96cbcf90bd87816b3853786f6103e24bdefa17e5 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Tue, 14 Nov 2023 16:06:22 +0100 Subject: [PATCH 08/35] CC-31362: Extended the Domain model description. --- .../click-and-collect-feature-walkthrough.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index efd58dad814..4d5ee3ac5b4 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -24,10 +24,14 @@ Here is a list of the entities and their relationships as they appear in the dia - Has a Service (1-to-many relationship). - **Service:** - Has a Service Type (1-to-1 relationship). - - Relates to Sales Order through Sales Order Item (1-to-many relationship). + - Relates to Product Offer (many-to-many relationship). +- **Service Type:** + - Relates to a Service (1-to-many relationship). + - Relates to Product Offer (many-to-many relationship). - **Shipment Type:** - Relates to Shipping Method (1-to-many relationship). - Relates to Product Offer (many-to-many relationship). + - Relates to Sales Shipment (1-to-many relationship). - **Product Offer:** - Contains attributes like Price, Availability, etc. - Relates to Product (1-to-many relationship). From d39a754cf6c0595a93209f9e4108aeb121d898b0 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Tue, 14 Nov 2023 17:03:13 +0100 Subject: [PATCH 09/35] CC-32362: Improved the domain model description. --- .../click-and-collect-feature-walkthrough.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index 4d5ee3ac5b4..4331b2ffbf7 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -22,16 +22,18 @@ Here is a list of the entities and their relationships as they appear in the dia - Has a Service Point Address (1-to-1 relationship). - Relates to Sales Order through Sales Order Item (1-to-many relationship). - Has a Service (1-to-many relationship). + - Has a Store (many-to-many relationship) - **Service:** - Has a Service Type (1-to-1 relationship). - Relates to Product Offer (many-to-many relationship). - **Service Type:** - Relates to a Service (1-to-many relationship). - - Relates to Product Offer (many-to-many relationship). + - Relates to Shipment Type (1-to-many relationship). - **Shipment Type:** - Relates to Shipping Method (1-to-many relationship). - Relates to Product Offer (many-to-many relationship). - Relates to Sales Shipment (1-to-many relationship). + - Has a Store (many-to-many relationship). - **Product Offer:** - Contains attributes like Price, Availability, etc. - Relates to Product (1-to-many relationship). @@ -39,11 +41,15 @@ Here is a list of the entities and their relationships as they appear in the dia - **Product:** - Relates to Product Price (1-to-1 relationship). - Relates to Product Stock (1-to-1 relationship). + - Has a Product Offer (1-to-many relationship). - **Sales Order:** - Contains Sales Order Item (1-to-many relationship). - Relates to Sales Shipment (1-to-many relationship). +- **Sales Order Item:** + - Has a Sales Shipemnt (1-to-many relationship). - **Stock (Warehouse):** - Contains Product Offer Stock (1-to-many relationship). + - Contains Product Stock (1-to-many relationship). The relationships indicate how each entity interacts with others within the system. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. The model also differentiates between new entities and relations (shown in green) and existing ones (shown in white), which helps to understand the changes or extensions made to the existing system. @@ -53,6 +59,8 @@ The model also differentiates between new entities and relations (shown in green
+The Entity-Relationship Diagram illustrates how domain entities are mapped to database tables. + # Click & Collect Click & Collect functionality provides a convenient and flexible shopping experience by bridging the gap between online purchasing and physical retail. From a54aff0461910954ca347b573160072998e9b96a Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Tue, 14 Nov 2023 17:04:41 +0100 Subject: [PATCH 10/35] CC-32362: Fixed the name of the paragraph. --- .../click-and-collect-feature-walkthrough.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index 4331b2ffbf7..e8bc9466d52 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -54,7 +54,7 @@ Here is a list of the entities and their relationships as they appear in the dia The relationships indicate how each entity interacts with others within the system. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. The model also differentiates between new entities and relations (shown in green) and existing ones (shown in white), which helps to understand the changes or extensions made to the existing system. -# Database Schema +# Entity-Relationship Diagram
From db7c2073722189114477c7bb9ea706d860567cb5 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Tue, 14 Nov 2023 17:17:12 +0100 Subject: [PATCH 11/35] CC-32362: Fixed the product offer link. --- .../click-and-collect-feature-walkthrough.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index e8bc9466d52..6945cbb393a 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -56,8 +56,6 @@ The model also differentiates between new entities and relations (shown in green # Entity-Relationship Diagram -
- The Entity-Relationship Diagram illustrates how domain entities are mapped to database tables. @@ -90,7 +88,7 @@ Some common shipment types include: - [Service Point Cart](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.html) - [Shipment Types](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.html) - [Shipment Type Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.html) -- Product Offer +- [Product Offer](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-marketplace-product-offer-feature.html) - [Product Offer Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.html) - [Product Offer Service Point Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.html) - [Product Offer Shipment Type](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.html) From bbe9e7a86a8e2c0a4cf87bf3b2814e323b12cd23 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Tue, 14 Nov 2023 17:35:35 +0100 Subject: [PATCH 12/35] CC-32362: Restored the ERD diagram. --- .../click-and-collect-feature-walkthrough.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index 6945cbb393a..343b16a4e67 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -56,6 +56,8 @@ The model also differentiates between new entities and relations (shown in green # Entity-Relationship Diagram +
+ The Entity-Relationship Diagram illustrates how domain entities are mapped to database tables. From 4640bbc286e2280b0acb30ad9f9a56d5ca518de9 Mon Sep 17 00:00:00 2001 From: valerio8787 Date: Thu, 16 Nov 2023 16:24:07 +0100 Subject: [PATCH 13/35] Improved Click and Collect feature walkthrough doc --- .../click-and-collect-feature-walkthrough.md | 27 +++++++++---------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index 343b16a4e67..bae50d3ba90 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -24,7 +24,7 @@ Here is a list of the entities and their relationships as they appear in the dia - Has a Service (1-to-many relationship). - Has a Store (many-to-many relationship) - **Service:** - - Has a Service Type (1-to-1 relationship). + - Has a Service Type (many-to-1 relationship). - Relates to Product Offer (many-to-many relationship). - **Service Type:** - Relates to a Service (1-to-many relationship). @@ -35,21 +35,20 @@ Here is a list of the entities and their relationships as they appear in the dia - Relates to Sales Shipment (1-to-many relationship). - Has a Store (many-to-many relationship). - **Product Offer:** - - Contains attributes like Price, Availability, etc. - - Relates to Product (1-to-many relationship). - - Relates to Stock (Warehouse) (1-to-many relationship). + - Relates to Product (many-to-1 relationship). + - Relates to Stock (Warehouse) (many-to-1 relationship). - **Product:** - - Relates to Product Price (1-to-1 relationship). - - Relates to Product Stock (1-to-1 relationship). + - Relates to Product Price (1-to-many relationship). + - Relates to Product Stock (1-to-many relationship). - Has a Product Offer (1-to-many relationship). - **Sales Order:** - - Contains Sales Order Item (1-to-many relationship). + - Has Sales Order Item (1-to-many relationship). - Relates to Sales Shipment (1-to-many relationship). - **Sales Order Item:** - - Has a Sales Shipemnt (1-to-many relationship). + - Has a Sales Shipment (many-to-1 relationship). - **Stock (Warehouse):** - - Contains Product Offer Stock (1-to-many relationship). - - Contains Product Stock (1-to-many relationship). + - Has Product Offer Stock (1-to-many relationship). + - Has Product Stock (1-to-many relationship). The relationships indicate how each entity interacts with others within the system. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. The model also differentiates between new entities and relations (shown in green) and existing ones (shown in white), which helps to understand the changes or extensions made to the existing system. @@ -70,8 +69,8 @@ This system not only enhances customer convenience by providing a more flexible # Service Point -* A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator itself or by third-party providers. -* A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Amazon Locker as a service point to pick up their order, they will be given the address of the specific Amazon Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. +* A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator. +* A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Parcel Locker as a service point to pick up their order, they will be given the address of the specific Parcel Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. * A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, et. * A **Service** represent a specific service type that are provided (enabled) in specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. @@ -86,9 +85,9 @@ Some common shipment types include: # Domains and subdomains -- [Service Points](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.html) +- [Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.html) - [Service Point Cart](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.html) -- [Shipment Types](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.html) +- [Shipment Type](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.html) - [Shipment Type Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.html) - [Product Offer](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-marketplace-product-offer-feature.html) - [Product Offer Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.html) From 63caf68a9b7f24c383e93cef0b2a323a0af494ef Mon Sep 17 00:00:00 2001 From: valerio8787 Date: Fri, 17 Nov 2023 10:01:40 +0100 Subject: [PATCH 14/35] Fix typos --- .../click-and-collect-feature-walkthrough.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index bae50d3ba90..a387f136c63 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -71,8 +71,8 @@ This system not only enhances customer convenience by providing a more flexible * A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator. * A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Parcel Locker as a service point to pick up their order, they will be given the address of the specific Parcel Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. -* A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, et. -* A **Service** represent a specific service type that are provided (enabled) in specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. +* A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, etc. +* A **Service** represents a specific service type that is provided (enabled) in the specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. # Shipment Type From 8591d1b5aae1c5a170a48e5ab182887f5fa606b9 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Fri, 17 Nov 2023 17:25:43 +0100 Subject: [PATCH 15/35] CC-31210: Added merchant subdomain and address substitution. --- .../click-and-collect-feature-walkthrough.md | 1 + ...oint-availability-subdomain-walkthrough.md | 21 +++++++++++++++++++ ...ype-service-point-subdomain-walkthrough.md | 14 +++++++++++++ .../shipment-types-domain-walkthrough.md | 1 + 4 files changed, 37 insertions(+) create mode 100644 docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index a387f136c63..1e173400f3e 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -92,5 +92,6 @@ Some common shipment types include: - [Product Offer](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-marketplace-product-offer-feature.html) - [Product Offer Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.html) - [Product Offer Service Point Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.html) + - [Marketplace Merchant Product Offer Service Point Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.html) - [Product Offer Shipment Type](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.html) - [Product Offer Shipment Type Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.html) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md new file mode 100644 index 00000000000..5efd5bf613c --- /dev/null +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md @@ -0,0 +1,21 @@ +--- +title: Click and Collect feature Marketplace Merchant Product Offer Service Point subdomain walkthrough +last_updated: Nov 02, 2023 +description: Explore the Marketplace Merchant Product Offer Service Point Availability subdomain, which facilitates the calculation of merchant product availability at service points within the Click and Collect feature. + +template: concept-topic-template +--- + +# MarketPlace Merchant Product Offer Service Point Availability + +The Marketplace Merchant Product Offer Service Point Availability subdomain refers to the calculation of merchant product availability at service points within the Click and Collect feature. + +[Marketplace Merchant Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/marketplace/install-the-marketplace-merchant-product-offer-service-points-availability-feature.html) + +## 1. Modules: + +| MODULE | EXPECTED DIRECTORY | +|-------------------------------------------------------|------------------------------------------------------------------------------| +| MerchantProductOfferServicePointAvailability | vendor/spryker/merchant-product-offer-service-point-availability | +| MerchantProductOfferServicePointAvailabilitiesRestApi | vendor/spryker/merchant-product-offer-service-point-availabilities-rest-api | +| MerchantProductOfferServicePointAvailabilityWidget | vendor/spryker-shop/merchant-product-offer-service-point-availability-widget | diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md index 30d1554208f..3218f49691b 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md @@ -25,3 +25,17 @@ The Shipment Type Service Point subdomain establishes the connection between shi ## 2. Data Setup Spryker provides import functionality through the `ShipmentTypeServicePointDataImport` module to facilitate the setup of the connection between service points and shipment types. + +## 3. Address Substitution during Checkout + +The `ShipmentTypeServicePointsRestApi` module offers a mechanism to substitute the shipping address with the service point address during the checkout process. + +### Plugins + +The following plugin handles address substitution when the shipment type is set to `pickup` and a service point is selected: + +- **\Spryker\Glue\ShipmentTypeServicePointsRestApi\Plugin\CheckoutRestApi\ShipmentTypeServicePointCheckoutRequestExpanderPlugin** + +Additionally, customization possibilities exist to redefine applicable shipment type keys supporting address substitution through module configuration: + +- **\Spryker\Shared\ShipmentTypeServicePointsRestApi\ShipmentTypeServicePointsRestApiConfig::getApplicableShipmentTypeKeysForShippingAddress** diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md index 5afb052fbdc..464f1f9578e 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md @@ -30,6 +30,7 @@ Shipment types offer diverse options for customers to receive their orders. | ShipmentTypeStorage | vendor/spryker/shipment-type-storage | | ShipmentTypeStorageExtension | vendor/spryker/shipment-type-extension | | ShipmentTypeWidget | vendor/spryker-shop/shipment-type-widget | +| SalesShipmentType | vendor/spryker/sales-shipment-type | ## 2. Data Setup From d3d2878d603a530833f62cfa64f4affb3e2cec29 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Mon, 20 Nov 2023 09:50:03 +0100 Subject: [PATCH 16/35] CC-31210: Added an address substitution in Yves. --- .../service-points-domain-walkthrough.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md index 6416513dfb0..9abf4e09823 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -38,3 +38,13 @@ Spryker offers two methods for setting up service points, service point addresse - Backend API (check the `ServicePointsBackendApi` module) - Data Import (check the `ServicePointDataImport` module) + +## 3. Address Substitution during Checkout + +The `ServicePointWidget` module offers a mechanism to substitute the shipping address with the service point address during the checkout process in Yves. + +### Plugins + +The following plugin handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: + +- **\SprykerShop\Yves\ServicePointWidget\Plugin\CustomerPage\ServicePointAddressCheckoutAddressCollectionFormExpanderPlugin** From 4a8496ee843b1969ba02d3ade931efbb153eb582 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Mon, 20 Nov 2023 09:54:13 +0100 Subject: [PATCH 17/35] CC-31210: Fixed the sentence. --- .../service-points-domain-walkthrough.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md index 9abf4e09823..453f681bea4 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -45,6 +45,6 @@ The `ServicePointWidget` module offers a mechanism to substitute the shipping ad ### Plugins -The following plugin handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: +The following widget handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: - **\SprykerShop\Yves\ServicePointWidget\Plugin\CustomerPage\ServicePointAddressCheckoutAddressCollectionFormExpanderPlugin** From b7440c77766857af75aaa03489d97ab966d38bfa Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Mon, 20 Nov 2023 09:54:52 +0100 Subject: [PATCH 18/35] CC-31210: Fixed the sentence. --- .../service-points-domain-walkthrough.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md index 453f681bea4..9abf4e09823 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -45,6 +45,6 @@ The `ServicePointWidget` module offers a mechanism to substitute the shipping ad ### Plugins -The following widget handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: +The following plugin handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: - **\SprykerShop\Yves\ServicePointWidget\Plugin\CustomerPage\ServicePointAddressCheckoutAddressCollectionFormExpanderPlugin** From fdb9928802738526756ad2878e0b6f451b44d16a Mon Sep 17 00:00:00 2001 From: valerio8787 Date: Tue, 21 Nov 2023 16:02:49 +0100 Subject: [PATCH 19/35] Updated Click and Collect dev guidlines --- .../click-and-collect-feature-walkthrough.md | 4 ++-- ...-offer-service-point-availability-subdomain-walkthrough.md | 2 +- .../product-offer-service-point-subdomain-walkthrough.md | 2 +- ...-offer-shipment-type-availability-subdomain-walkthrough.md | 2 +- .../product-offer-shipment-type-subdomain-walkthrough.md | 2 +- .../service-point-cart-subdomain-walkthrough.md | 2 +- .../service-points-domain-walkthrough.md | 4 ++-- .../shipment-type-service-point-subdomain-walkthrough.md | 2 +- .../shipment-types-domain-walkthrough.md | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md index 1e173400f3e..f498f8488df 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md @@ -5,7 +5,7 @@ description: Explore the Click and Collect feature technical walkthrough, a reta template: concept-topic-template --- -C&C business models refers to a retail strategy where customers make purchases online and then collect their ordered products from a physical store or a designated pickup location. This model combines the convenience of online shopping with the immediacy of in-store pickup. +Click and Collect business models refers to a retail strategy where customers make purchases online and then collect their ordered products from a physical store or a designated pickup location. This model combines the convenience of online shopping with the immediacy of in-store pickup. # Domain Model @@ -79,7 +79,7 @@ This system not only enhances customer convenience by providing a more flexible Shipment type refers to the different options available to customers for receiving their orders. Some common shipment types include: * Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. -* In-store pickup (aka click & collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. +* In-Store Pickup (or Click and Collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. Shipment type is a logical grouping of the shipment methods. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md index 3c5780951fd..0f1a5e00bff 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md @@ -2,7 +2,7 @@ title: Click and Collect feature Product Offer Service Point Availability subdomain walkthrough last_updated: Nov 02, 2023 description: | - Explore the intricacies of the Product Offer Service Point Availability subdomain in the Click and Collect feature. Learn about the modules, installation of the feature, and the extension points for calculating and filtering data related to the availability of a product offer at a service point. Enhance your understanding with examples of plugins and strategies used in the availability calculation process. + Explore the Product Offer Service Point Availability subdomain in the Click and Collect feature. Learn about the modules, installation of the feature, and the extension points for calculating and filtering data related to the availability of a product offer at a service point. Enhance your understanding with examples of plugins and strategies used in the availability calculation process. template: concept-topic-template --- diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md index e5f202e7c05..3c6e4d660be 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md @@ -2,7 +2,7 @@ title: Click and Collect feature Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 description: | - Embark on a detailed exploration of the Product Offer Service Point subdomain in the Click and Collect feature. Understand the connection between product offers and service points, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering services assigned to product offers before publishing them to storage. + Explore the Product Offer Service Point subdomain in the Click and Collect feature. Understand the connection between product offers and service points, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering services assigned to product offers before publishing them to storage. template: concept-topic-template --- diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md index 8f4b5e5e7bf..a3dfd398848 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md @@ -2,7 +2,7 @@ title: Click and Collect Feature Product Offer Shipment Type Availability Subdomain Walkthrough last_updated: Nov 02, 2023 description: | - Dive into the intricacies of the Product Offer Shipment Type Availability subdomain in the Click and Collect feature. Explore the availability calculation and understand how to install and configure the essential modules for optimal functionality. + Explore the Product Offer Shipment Type Availability subdomain in the Click and Collect feature. Explore the availability calculation and understand how to install and configure the essential modules for optimal functionality. template: concept-topic-template --- diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md index fa069c2e277..14f4c15f478 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md @@ -2,7 +2,7 @@ title: Click and Collect feature Product Offer Shipment Type subdomain walkthrough last_updated: Nov 02, 2023 description: | - Immerse yourself in the Product Offer Shipment Type subdomain of the Click and Collect feature. Gain insights into the connection between product offers and shipment types, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering shipment types assigned to product offers before publishing them to storage. + Explore the Product Offer Shipment Type subdomain of the Click and Collect feature. Gain insights into the connection between product offers and shipment types, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering shipment types assigned to product offers before publishing them to storage. template: concept-topic-template --- diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md index c9a5c22034f..11657ef9edd 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md @@ -9,7 +9,7 @@ template: concept-topic-template # Service Point Cart -The Service Point Cart subdomain empowers you to validate service points and replace line items within a shopping cart. +The Service Point Cart subdomain enables you to validate service points and replace line items within a shopping cart. [Install the Service Points Cart feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-cart-feature.html) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md index 9abf4e09823..256c8ad6fe9 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md @@ -2,14 +2,14 @@ title: Click and Collect feature Service Points domain walkthrough last_updated: Nov 02, 2023 description: | - Delve into the Service Points domain of the Click and Collect feature, exploring the definition and functionality of service points. Learn how to install the Service Points feature and set up essential modules for seamless integration. Understand the significance of data setup and discover the available methods, including the Backend API and Data Import, to configure service points, addresses, stores, service types, and services. + Explore the Service Point domain of the Click and Collect feature, exploring the definition and functionality of service points. Learn how to install the Service Points feature and set up essential modules for seamless integration. Understand the significance of data setup and discover the available methods, including the Backend API and Data Import, to configure service points, addresses, stores, service types, and services. template: concept-topic-template --- # Service Points -A Service Point represents a physical location, such as a store or a post office, enabling customers to conveniently pick up their orders. Each service point has the capability to offer one or multiple unique services to customers. +A Service Point represents a physical location, such as a store, post office, or other designated areas, enabling customers to conveniently pick up their orders or access additional services like returns, exchanges, or customer support. Each service point has the capability to offer one or multiple unique services to customers. [Install the Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-feature.html) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md index 3218f49691b..c4a6d6b77c3 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md @@ -9,7 +9,7 @@ template: concept-topic-template # Shipment Type Service Point -The Shipment Type Service Point subdomain establishes the connection between shipment types and service points. +The Shipment Type Service Point subdomain establishes the connection between shipment types and service type. [Install the Shipment Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-service-points-feature.html) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md index 464f1f9578e..8621b5b9ffd 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md @@ -2,7 +2,7 @@ title: Click and Collect feature Shipment Types domain walkthrough last_updated: Nov 02, 2023 description: | - Explore the Shipment Types domain in the Click and Collect feature, understanding the various options available to customers for receiving their orders. This guide provides comprehensive details on installing the Shipment feature, delving into the associated modules, and showcasing different data setup methods. Additionally, discover key extension points for customizing Shipment Types behavior during the checkout process. + Explore the Shipment Type domain in the Click and Collect feature, understanding the various options available to customers for receiving their orders. This guide provides comprehensive details on installing the Shipment feature, delving into the associated modules, and showcasing different data setup methods. Additionally, discover key extension points for customizing Shipment Types behavior during the checkout process. template: concept-topic-template --- From fd06ea1a189637e39b11ed7ee2f7f4ad43baae44 Mon Sep 17 00:00:00 2001 From: Denys Sokolov Date: Thu, 7 Dec 2023 16:26:13 +0100 Subject: [PATCH 20/35] CC-31362: Updated the guide with the cart merge information. --- ...ervice-point-cart-subdomain-walkthrough.md | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md index 11657ef9edd..49271547625 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md +++ b/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md @@ -37,3 +37,72 @@ At the project level, extend this capability to support more intricate scenarios 1. Receiving information from external systems about the offer intended for replacement. 2. Implementing diverse algorithms for cart item replacement based on information obtained from customers. + +## 2.1 How to merge cart line items with different product offers but same SKU and Merchant. + +The demo replacement strategy can guarantee work only if a product in the cart with same SKU and Merchant represented as a single cart line item. +To enable the following behavior, you need to follow the steps below: + +1. Disable plugin **\Spryker\Zed\ProductOffer\Communication\Plugin\Cart\ProductOfferGroupKeyItemExpanderPlugin** from the **\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()**, this plugin groups cart items with the same product offer. +2. Create a new ProductOfferGroupKeyItemExpanderPlugin plugin that implements **\Spryker\Zed\CartExtension\Dependency\Plugin\ItemExpanderPluginInterface** and register it in **\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()**. +3. Add the following code to the example plugin: + +```php +namespace Pyz\Zed\ProductOffer\Communication\Plugin\Cart; + +use Generated\Shared\Transfer\CartChangeTransfer; +use Generated\Shared\Transfer\ItemTransfer; +use Spryker\Zed\CartExtension\Dependency\Plugin\ItemExpanderPluginInterface +use Spryker\Zed\Kernel\Communication\AbstractPlugin; + +class ProductOfferMerchantGroupKeyItemExpanderPlugin extends AbstractPlugin implements ItemExpanderPluginInterface +{ + protected const GROUP_KEY_DELIMITER = '_'; + + /** + * {@inheritDoc} + * - Expands `CartChangeTransfer.items` group key with the merchant reference. + * - Returns expanded `CartChangeTransfer`. + * - Returns `CartChangeTransfer` without changes if item's merchant reference is empty. + * + * @api + * + * @param \Generated\Shared\Transfer\CartChangeTransfer $cartChangeTransfer + * + * @return \Generated\Shared\Transfer\CartChangeTransfer + */ + public function expandItems(CartChangeTransfer $cartChangeTransfer): CartChangeTransfer + { + $items = $cartChangeTransfer->getItems(); + + foreach ($items as $itemTransfer) { + if (!$itemTransfer->getMerchantReference()) { + continue; + } + + $itemTransfer->setGroupKey($this->buildGroupKey($itemTransfer)); + } + + return $cartChangeTransfer; + } + + /** + * @param \Generated\Shared\Transfer\ItemTransfer $itemTransfer + * + * @return string + */ + protected function buildGroupKey(ItemTransfer $itemTransfer): string + { + $itemGroupKey = $itemTransfer->getGroupKey(); + $merchantReference = $itemTransfer->getMerchantReference(); + + return $itemGroupKey . static::GROUP_KEY_DELIMITER . $merchantReference; + } +} +``` + +1. Prepare several product offers for the merchant's product. +2. Log in to the store as a customer. +3. Add a product to the cart with a quantity of 1 for SKU SKU123 and Merchant MER123 and Offer [Offer1]. +4. Select a different offer, for example, Offer2, for the same product with the same Merchant and add it to the cart. +5. The cart line item with a quantity of 1, SKU SKU123 and Merchant MER123 and Offer [Offer1] will be updated to a quantity of 2. From 9ce371326510abfa2e0c2e69abe1a811423128ce Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 18 Dec 2023 11:01:10 +0200 Subject: [PATCH 21/35] move docs --- .../click-and-collect-feature-walkthrough.md | 74 +++++++++---------- ...oint-availability-subdomain-walkthrough.md | 0 ...oint-availability-subdomain-walkthrough.md | 0 ...fer-service-point-subdomain-walkthrough.md | 0 ...type-availability-subdomain-walkthrough.md | 0 ...fer-shipment-type-subdomain-walkthrough.md | 0 ...ervice-point-cart-subdomain-walkthrough.md | 0 .../service-points-domain-walkthrough.md | 0 ...ype-service-point-subdomain-walkthrough.md | 0 .../shipment-types-domain-walkthrough.md | 0 10 files changed, 33 insertions(+), 41 deletions(-) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/click-and-collect-feature-walkthrough.md (98%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/product-offer-service-point-availability-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/product-offer-service-point-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/product-offer-shipment-type-availability-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/product-offer-shipment-type-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/service-point-cart-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/service-points-domain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/shipment-type-service-point-subdomain-walkthrough.md (100%) rename docs/{scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough => pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize}/shipment-types-domain-walkthrough.md (100%) diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md similarity index 98% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md index f498f8488df..100419ec8da 100644 --- a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/click-and-collect-feature-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md @@ -1,55 +1,47 @@ --- -title: Click and Collect feature walkthrough +title: Click & Collect developer overview last_updated: Sep 26, 2023 -description: Explore the Click and Collect feature technical walkthrough, a retail strategy seamlessly blending online shopping with in-store pickup. Learn about the domain model, database, and the intricate details of Click & Collect functionality, Service Points, Shipment Types, and more. Enhance your understanding of how this system brings convenience to customers and effective inventory management to retailers. +description: Learn about the domain model, database, and other technical details of Click & Collect. template: concept-topic-template --- Click and Collect business models refers to a retail strategy where customers make purchases online and then collect their ordered products from a physical store or a designated pickup location. This model combines the convenience of online shopping with the immediacy of in-store pickup. -# Domain Model +## Domain model
-Here is a list of the entities and their relationships as they appear in the diagram: -- **Store:** - - Relates to Service Point (many-to-many relationship). - - Relates to Shipment Type (many-to-many relationship). -- **Merchant:** - - Relates to Product Offer (1-to-many relationship). -- **Service Point:** - - Has a Service Point Address (1-to-1 relationship). - - Relates to Sales Order through Sales Order Item (1-to-many relationship). - - Has a Service (1-to-many relationship). - - Has a Store (many-to-many relationship) -- **Service:** - - Has a Service Type (many-to-1 relationship). - - Relates to Product Offer (many-to-many relationship). -- **Service Type:** - - Relates to a Service (1-to-many relationship). - - Relates to Shipment Type (1-to-many relationship). -- **Shipment Type:** - - Relates to Shipping Method (1-to-many relationship). - - Relates to Product Offer (many-to-many relationship). - - Relates to Sales Shipment (1-to-many relationship). - - Has a Store (many-to-many relationship). -- **Product Offer:** - - Relates to Product (many-to-1 relationship). - - Relates to Stock (Warehouse) (many-to-1 relationship). -- **Product:** - - Relates to Product Price (1-to-many relationship). - - Relates to Product Stock (1-to-many relationship). - - Has a Product Offer (1-to-many relationship). -- **Sales Order:** - - Has Sales Order Item (1-to-many relationship). - - Relates to Sales Shipment (1-to-many relationship). -- **Sales Order Item:** - - Has a Sales Shipment (many-to-1 relationship). -- **Stock (Warehouse):** - - Has Product Offer Stock (1-to-many relationship). - - Has Product Stock (1-to-many relationship). - +The entities and their relationships as they appear in the diagram: + +| ENTITY | RELATIONSHIP | RELATIONSHIP TYPE | +| - | - | - | +| Store | Relates to Service Point | many-to-many | +| Store | Relates to Shipment Type | many-to-many | +| Merchant | Relates to Product Offer | one-to-many | +| Service point | Has a Service Point Address | 1-to-1 | +| Service point | Relates to Sales Order through Sales Order Item | one-to-many | +| Service point | Has a Service | one-to-many | +| Service point | Has a Store | many-to-many | +| Service | Has a Service Type | many-to-one | +| Service | Relates to Product Offer | many-to-many | +| Service type | Relates to a Service | one-to-many | +| Service type | Relates to Shipment Type | one-to-many | +| Shipment | Relates to Shipping Method | one-to-many | +| Shipment | Relates to Product Offer | many-to-many | +| Shipment | Relates to Sales Shipment | one-to-many | +| Shipment | Has a Store | many-to-many | +| Product offer | Relates to Product | many-to-one | +| Product offer | Relates to Stock (Warehouse) | many-to-one | +| Product | Relates to Product Price | one-to-many | +| Product | Relates to Product Stock | one-to-many | +| Product | Has a Product Offer | one-to-many | +| Sales order | Has Sales Order Item | one-to-many | +| Sales order | Relates to Sales Shipment | one-to-many | +| Sales order item | Has a Sales Shipment | many-to-one | +| Stock (warehouse) | Has Product Offer Stock | one-to-many | +| Stock (warehouse) | Has Product Stock | one-to-many | + The relationships indicate how each entity interacts with others within the system. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. The model also differentiates between new entities and relations (shown in green) and existing ones (shown in white), which helps to understand the changes or extensions made to the existing system. diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md diff --git a/docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md similarity index 100% rename from docs/scos/dev/feature-walkthroughs/202204.0/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md From 975820070fd0806aebc308c6cba57c8278e9e824 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 18 Dec 2023 11:48:20 +0200 Subject: [PATCH 22/35] review --- .../click-and-collect-feature-walkthrough.md | 37 ++++--------------- ...oint-availability-subdomain-walkthrough.md | 7 ++-- ...oint-availability-subdomain-walkthrough.md | 17 ++++----- ...fer-service-point-subdomain-walkthrough.md | 15 ++++---- ...type-availability-subdomain-walkthrough.md | 10 ++--- ...fer-shipment-type-subdomain-walkthrough.md | 17 ++++----- ...ervice-point-cart-subdomain-walkthrough.md | 3 +- 7 files changed, 39 insertions(+), 67 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md index 100419ec8da..e9de6621d42 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md @@ -1,5 +1,5 @@ --- -title: Click & Collect developer overview +title: Click & Collect: Domain model and relationships last_updated: Sep 26, 2023 description: Learn about the domain model, database, and other technical details of Click & Collect. template: concept-topic-template @@ -42,40 +42,19 @@ The entities and their relationships as they appear in the diagram: | Stock (warehouse) | Has Product Offer Stock | one-to-many | | Stock (warehouse) | Has Product Stock | one-to-many | -The relationships indicate how each entity interacts with others within the system. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. -The model also differentiates between new entities and relations (shown in green) and existing ones (shown in white), which helps to understand the changes or extensions made to the existing system. +The relationships indicate how entities interact with each other. For example, a Store can have multiple Service Points, a Merchant can offer various Product Offers, and each Product Offer can be linked to multiple Products. -# Entity-Relationship Diagram +To show the introduced changes and extensions, new entities and relations are painted in green, and existing ones are painted in white. -
- - -The Entity-Relationship Diagram illustrates how domain entities are mapped to database tables. - -# Click & Collect +# Entity-relationship diagram -Click & Collect functionality provides a convenient and flexible shopping experience by bridging the gap between online purchasing and physical retail. -It allows customers to order products online and pick them up at a designated pickup location, often referred to as Service Points. -To implement this functionality effectively, retailers create product offers within these Service Points, ensuring that the inventory reflects available products accurately and that items are ready for customers to pick them up. Furthermore, shipment types need to be configured to manage and streamline both delivery and pickup options. Delivery pertains to orders sent directly to the customer's address, while Pickup refers to the collection of products by the customers themselves at the Service Points. -This system not only enhances customer convenience by providing a more flexible shopping experience but also helps retailers manage inventory and sales effectively through a well-structured, digitally integrated system. +The entity-relationship diagram shows how domain entities are mapped to database tables. -# Service Point - -* A **Service point** refers to a physical location, such as a store or a post office, where customers can pick up their orders. Service points are typically used to deliver products purchased online, especially for customers who may not be able to receive the products at their homes or workplace.
Service points can be owned and operated by the e-commerce platform operator. -* A **Service point address** is the physical address of a location where customers can pick up their orders.
For example, if a customer chooses to use an Parcel Locker as a service point to pick up their order, they will be given the address of the specific Parcel Locker location where their package will be delivered. The customer can then go to that location and use a unique code or barcode to retrieve their package.
The service point address is an important component of e-commerce logistics, as it allows customers to locate and access their orders for pickup easily. -* A **Service Type** is different categories or classifications of services that a business offers to its customers. These service types are often determined by the nature of the business. Examples: Pickup service, Return service, Stock keeping service, etc. -* A **Service** represents a specific service type that is provided (enabled) in the specific Service point.
A service is a capability within a service point that is offered to other entities, for example customers, merchants, third parties, basically any business entity. A service can be a point of sale, a locker where you can deliver to and customers can pick up their goods. It could be as well a loading point or loading dock. A service itself can be an aggregation of business entities that must be a logical part of this service. A service in this context is a point of interaction that exists in the real world. - -# Shipment Type +
+ -Shipment type refers to the different options available to customers for receiving their orders. -Some common shipment types include: -* Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. -* In-Store Pickup (or Click and Collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. - Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. - Shipment type is a logical grouping of the shipment methods. -# Domains and subdomains +## Domains and subdomains - [Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.html) - [Service Point Cart](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.html) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md index 5efd5bf613c..21ec7017e90 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md @@ -2,17 +2,16 @@ title: Click and Collect feature Marketplace Merchant Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 description: Explore the Marketplace Merchant Product Offer Service Point Availability subdomain, which facilitates the calculation of merchant product availability at service points within the Click and Collect feature. - template: concept-topic-template --- -# MarketPlace Merchant Product Offer Service Point Availability +The Marketplace Merchant Product Offer Service Point Availability subdomain refers to the calculation of merchant product availability at service points. -The Marketplace Merchant Product Offer Service Point Availability subdomain refers to the calculation of merchant product availability at service points within the Click and Collect feature. +## Installation [Marketplace Merchant Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/marketplace/install-the-marketplace-merchant-product-offer-service-points-availability-feature.html) -## 1. Modules: +## Modules | MODULE | EXPECTED DIRECTORY | |-------------------------------------------------------|------------------------------------------------------------------------------| diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md index 0f1a5e00bff..490d71e1eda 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md @@ -1,19 +1,18 @@ --- -title: Click and Collect feature Product Offer Service Point Availability subdomain walkthrough +title: Product Offer Service Point Availability subdomain last_updated: Nov 02, 2023 -description: | - Explore the Product Offer Service Point Availability subdomain in the Click and Collect feature. Learn about the modules, installation of the feature, and the extension points for calculating and filtering data related to the availability of a product offer at a service point. Enhance your understanding with examples of plugins and strategies used in the availability calculation process. +description: Explore the Product Offer Service Point Availability subdomain in the Click and Collect feature. Learn about the modules, installation of the feature, and the extension points for calculating and filtering data related to the availability of a product offer at a service point. Enhance your understanding with examples of plugins and strategies used in the availability calculation process. template: concept-topic-template --- -# Product Offer Service Point Availability - The Product Offer Service Point Availability subdomain refers to the calculation of product availability at service points. +## Installation + [Install the Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-availability-feature.html) -## 1. Modules: +## Modules | MODULE | EXPECTED DIRECTORY | |----------------------------------------------------------------|--------------------------------------------------------------------------------------| @@ -24,7 +23,7 @@ The Product Offer Service Point Availability subdomain refers to the calculation | ProductOfferServicePointAvailabilityStorage | vendor/spryker/product-offer-service-point-availability-storage | | ProductOfferServicePointAvailabilityStorageExtension | vendor/spryker/product-offer-service-point-availability-storage-extension | -## 2. Extension point for calculating the availability of a product offer at a service point. +## Extension point for calculating the availability of a product offer at a service point The plugin is used to calculate product offer availability at the service point based on specific needs. @@ -36,9 +35,9 @@ Example: This plugin calculates product offer availabilities per service point for each item in the request based on the provided conditions. -## 3. Extension point for filtering data about the availability of a product offer at a service point. +## Extension point for filtering data about the availability of a product offer at a service point -Provides the ability to filter product offer service point availability collection by provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. +Provides the ability to filter product offer service point availability collection by a provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. **\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface** diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md index 3c6e4d660be..a43f98d8e0c 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md @@ -1,19 +1,18 @@ --- title: Click and Collect feature Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 -description: | - Explore the Product Offer Service Point subdomain in the Click and Collect feature. Understand the connection between product offers and service points, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering services assigned to product offers before publishing them to storage. - +description: Explore the Product Offer Service Point subdomain in the Click and Collect feature. Understand the connection between product offers and service points, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering services assigned to product offers before publishing them to storage. template: concept-topic-template --- -# Product Offer Service Point The Product Offer Service Point subdomain refers to the connection between product offers and service points. +## Installation + [Install the Product Offer Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-feature.html) -## 1. Modules: +## Modules | MODULE | EXPECTED DIRECTORY | |----------------------------------------------------------------|--------------------------------------------------------------------------------------| @@ -31,11 +30,11 @@ The Product Offer Service Point subdomain refers to the connection between produ | ProductOfferServicePointStorageExtension | vendor/spryker/product-offer-service-point-storage-extension | | ProductOfferServicePointAvailabilityWidget | vendor/spryker-shop/product-offer-service-point-availability-widget | -## 2. Data Setup +## Data setup -Spryker offers an import functionality (check the `ProductOfferServicePointDataImport` module) to establish the connection between product offers and service points. +The `ProductOfferServicePointDataImport` module lets you import the relationships between product offers and service points. -## 3. Extension point for filtering services assigned to the product offers before publishing them to Storage +## Extension point for filtering services assigned to the product offers before publishing them to Storage This extension point provides the ability to filter the Product Offer Service collection before publishing it to storage. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md index a3dfd398848..aaaeb232845 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md @@ -1,22 +1,20 @@ --- title: Click and Collect Feature Product Offer Shipment Type Availability Subdomain Walkthrough last_updated: Nov 02, 2023 -description: | - Explore the Product Offer Shipment Type Availability subdomain in the Click and Collect feature. Explore the availability calculation and understand how to install and configure the essential modules for optimal functionality. +description: The Product Offer Shipment Type Availability subdomain enables the availability calculation. template: concept-topic-template --- -# Product Offer Shipment Type Availability - The Product Offer Shipment Type Availability subdomain focuses on the availability calculation. +## Installation + [Install the Product Offer Shipments Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipments-availability-feature.html) -## 1. Modules: +## Modules | MODULE | EXPECTED DIRECTORY | |---------------------------------------------|-----------------------------------------------------------------| | ProductOfferShipmentTypeAvailability | vendor/spryker/product-offer-shipment-type-availability | | ProductOfferShipmentTypeAvailabilityStorage | vendor/spryker/product-offer-shipment-type-availability-storage | - diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md index 14f4c15f478..e5de36eed8d 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md @@ -1,19 +1,18 @@ --- title: Click and Collect feature Product Offer Shipment Type subdomain walkthrough last_updated: Nov 02, 2023 -description: | - Explore the Product Offer Shipment Type subdomain of the Click and Collect feature. Gain insights into the connection between product offers and shipment types, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering shipment types assigned to product offers before publishing them to storage. +description: The Product Offer Shipment Type subdomain establishes the connection between product offers and shipment types. template: concept-topic-template --- -# Product Offer Shipment Type +The Product Offer Shipment Type subdomain establishes the connection between product offers and shipment types. -The Product Offer Shipment Type subdomain deals with the connection between product offers and shipment types. +## Installation [Install the Product Offer Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipment-feature.html) -## 1. Modules: +## Modules | MODULE | EXPECTED DIRECTORY | |---------------------------------------------------------|------------------------------------------------------------------------------| @@ -25,17 +24,17 @@ The Product Offer Shipment Type subdomain deals with the connection between prod | ProductOfferShipmentTypeStorage | vendor/spryker/product-offer-shipment-type-storage | | ProductOfferShipmentTypeStorageExtension | vendor/spryker/product-offer-shipment-type-storage-extension | -## 2. Data Setup +## Data Setup -Spryker offers an import functionality (check the `ProductOfferShipmentTypeDataImport` module) to establish the connection between shipment types and product offers. +The `ProductOfferShipmentTypeDataImport` module lets you import the relationships between shipment types and product offers. -## 3. Extension point for filtering shipment types assigned to product offers before publishing them to the Storage. +## Extension point for filtering shipment types assigned to product offers before publishing them to the Storage This extension point provides the ability to filter the product offer shipment type collection before publishing it to storage. **\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface** -An example: +Example: **\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md index 49271547625..32f1c66ac7b 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md @@ -1,8 +1,7 @@ --- title: Click and Collect feature Service Point Cart subdomain walkthrough last_updated: Nov 02, 2023 -description: | - Explore the Service Point Cart subdomain in the Click and Collect feature, focusing on the validation of service points and the replacement of line items in a shopping cart. Learn how to install the essential modules and leverage the extension point for implementing custom item replacement strategies during the checkout process. +description: Explore the Service Point Cart subdomain in the Click and Collect feature, focusing on the validation of service points and the replacement of line items in a shopping cart. Learn how to install the essential modules and leverage the extension point for implementing custom item replacement strategies during the checkout process. template: concept-topic-template --- From 94ca6a34865332855c8a84e9c3f42a9e365acefc Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 19 Dec 2023 10:24:31 +0200 Subject: [PATCH 23/35] review --- .../202204.0/install-the-navigation-module.md | 2 +- .../202212.0/install-the-navigation-module.md | 2 +- .../202307.0/install-the-navigation-module.md | 2 +- .../202311.0/install-the-navigation-module.md | 2 +- ...fer-shipment-type-subdomain-walkthrough.md | 2 +- ...ervice-point-cart-subdomain-walkthrough.md | 61 +++++++++++-------- .../service-points-domain-walkthrough.md | 28 ++++----- ...ype-service-point-subdomain-walkthrough.md | 22 +++---- .../shipment-types-domain-walkthrough.md | 43 ++++++------- 9 files changed, 83 insertions(+), 81 deletions(-) diff --git a/_includes/pbc/all/install-features/202204.0/install-the-navigation-module.md b/_includes/pbc/all/install-features/202204.0/install-the-navigation-module.md index 14434dc733f..54e6f58818a 100644 --- a/_includes/pbc/all/install-features/202204.0/install-the-navigation-module.md +++ b/_includes/pbc/all/install-features/202204.0/install-the-navigation-module.md @@ -56,7 +56,7 @@ class CollectorDependencyProvider extends SprykerCollectorDependencyProvider } ``` -### Data Setup +### Data setup You should now be able to manage navigation menus from Zed UI, and the collectors should also be able to export the navigation menus to the KV storage. This is a good time to implement an installer in your project to install a selection of frequently used navigation menus. diff --git a/_includes/pbc/all/install-features/202212.0/install-the-navigation-module.md b/_includes/pbc/all/install-features/202212.0/install-the-navigation-module.md index 14434dc733f..54e6f58818a 100644 --- a/_includes/pbc/all/install-features/202212.0/install-the-navigation-module.md +++ b/_includes/pbc/all/install-features/202212.0/install-the-navigation-module.md @@ -56,7 +56,7 @@ class CollectorDependencyProvider extends SprykerCollectorDependencyProvider } ``` -### Data Setup +### Data setup You should now be able to manage navigation menus from Zed UI, and the collectors should also be able to export the navigation menus to the KV storage. This is a good time to implement an installer in your project to install a selection of frequently used navigation menus. diff --git a/_includes/pbc/all/install-features/202307.0/install-the-navigation-module.md b/_includes/pbc/all/install-features/202307.0/install-the-navigation-module.md index 14434dc733f..54e6f58818a 100644 --- a/_includes/pbc/all/install-features/202307.0/install-the-navigation-module.md +++ b/_includes/pbc/all/install-features/202307.0/install-the-navigation-module.md @@ -56,7 +56,7 @@ class CollectorDependencyProvider extends SprykerCollectorDependencyProvider } ``` -### Data Setup +### Data setup You should now be able to manage navigation menus from Zed UI, and the collectors should also be able to export the navigation menus to the KV storage. This is a good time to implement an installer in your project to install a selection of frequently used navigation menus. diff --git a/_includes/pbc/all/install-features/202311.0/install-the-navigation-module.md b/_includes/pbc/all/install-features/202311.0/install-the-navigation-module.md index 14434dc733f..54e6f58818a 100644 --- a/_includes/pbc/all/install-features/202311.0/install-the-navigation-module.md +++ b/_includes/pbc/all/install-features/202311.0/install-the-navigation-module.md @@ -56,7 +56,7 @@ class CollectorDependencyProvider extends SprykerCollectorDependencyProvider } ``` -### Data Setup +### Data setup You should now be able to manage navigation menus from Zed UI, and the collectors should also be able to export the navigation menus to the KV storage. This is a good time to implement an installer in your project to install a selection of frequently used navigation menus. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md index e5de36eed8d..838d63fd426 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md @@ -24,7 +24,7 @@ The Product Offer Shipment Type subdomain establishes the connection between pro | ProductOfferShipmentTypeStorage | vendor/spryker/product-offer-shipment-type-storage | | ProductOfferShipmentTypeStorageExtension | vendor/spryker/product-offer-shipment-type-storage-extension | -## Data Setup +## Data setup The `ProductOfferShipmentTypeDataImport` module lets you import the relationships between shipment types and product offers. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md index 32f1c66ac7b..a01c828fdf2 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md @@ -1,18 +1,17 @@ --- title: Click and Collect feature Service Point Cart subdomain walkthrough last_updated: Nov 02, 2023 -description: Explore the Service Point Cart subdomain in the Click and Collect feature, focusing on the validation of service points and the replacement of line items in a shopping cart. Learn how to install the essential modules and leverage the extension point for implementing custom item replacement strategies during the checkout process. - +description: The Service Point Cart subdomain focuses on the validation of service points and the replacement of line items in shopping carts. template: concept-topic-template --- -# Service Point Cart - The Service Point Cart subdomain enables you to validate service points and replace line items within a shopping cart. +## Installation + [Install the Service Points Cart feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-cart-feature.html) -## 1. Modules +## Modules | MODULE | EXPECTED DIRECTORY | |-----------------------------|------------------------------------------------| @@ -20,30 +19,27 @@ The Service Point Cart subdomain enables you to validate service points and repl | ServicePointCartExtension | vendor/spryker/service-point-cart-extension | | ServicePointCartsRestApi | vendor/spryker/service-point-carts-rest-api | -## 2. Extension point that allows for the implementation of item replacement strategies in the cart during the checkout process +## Extension point that allows for the implementation of item replacement strategies in the cart during checkout -Utilize the extension point to implement custom strategies for replacing items in the cart during the checkout process. +The following extension point is used to implement custom strategies for replacing items in the cart during checkout: `\Spryker\Zed\ServicePointCartExtension\Dependency\Plugin\ServicePointQuoteItemReplaceStrategyPluginInterface`. -**\Spryker\Zed\ServicePointCartExtension\Dependency\Plugin\ServicePointQuoteItemReplaceStrategyPluginInterface** +Implementation example: `\Spryker\Zed\ClickAndCollectExample\Communication\Plugin\ServicePointCart\ClickAndCollectExampleServicePointQuoteItemReplaceStrategyPlugin`. -Example Implementation: +This example replacement strategy substitutes a product offer with another one based on updated information about the service point and shipment type in the shopping cart. -**\Spryker\Zed\ClickAndCollectExample\Communication\Plugin\ServicePointCart\ClickAndCollectExampleServicePointQuoteItemReplaceStrategyPlugin** - -This example replacement strategy substitutes a product offer with another based on updated information about the Service Point and Shipment Type in the shopping cart. - -At the project level, extend this capability to support more intricate scenarios, such as: +At the project level, extend this capability to support more intricate scenarios, such as the following: 1. Receiving information from external systems about the offer intended for replacement. 2. Implementing diverse algorithms for cart item replacement based on information obtained from customers. -## 2.1 How to merge cart line items with different product offers but same SKU and Merchant. +### How to merge cart line items with different product offers but same SKU and merchant. -The demo replacement strategy can guarantee work only if a product in the cart with same SKU and Merchant represented as a single cart line item. -To enable the following behavior, you need to follow the steps below: +The demo replacement strategy works only if a product in the cart with same SKU and merchant are represented as a single cart line item. +To enable this behavior, follow the steps: -1. Disable plugin **\Spryker\Zed\ProductOffer\Communication\Plugin\Cart\ProductOfferGroupKeyItemExpanderPlugin** from the **\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()**, this plugin groups cart items with the same product offer. -2. Create a new ProductOfferGroupKeyItemExpanderPlugin plugin that implements **\Spryker\Zed\CartExtension\Dependency\Plugin\ItemExpanderPluginInterface** and register it in **\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()**. +1. From `\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()`, disable the `\Spryker\Zed\ProductOffer\Communication\Plugin\Cart\ProductOfferGroupKeyItemExpanderPlugin` plugin. + This plugin groups cart items with the same product offer. +2. Create a new `ProductOfferGroupKeyItemExpanderPlugin` plugin that implements `\Spryker\Zed\CartExtension\Dependency\Plugin\ItemExpanderPluginInterface` and register it in `\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()`. 3. Add the following code to the example plugin: ```php @@ -100,8 +96,25 @@ class ProductOfferMerchantGroupKeyItemExpanderPlugin extends AbstractPlugin impl } ``` -1. Prepare several product offers for the merchant's product. -2. Log in to the store as a customer. -3. Add a product to the cart with a quantity of 1 for SKU SKU123 and Merchant MER123 and Offer [Offer1]. -4. Select a different offer, for example, Offer2, for the same product with the same Merchant and add it to the cart. -5. The cart line item with a quantity of 1, SKU SKU123 and Merchant MER123 and Offer [Offer1] will be updated to a quantity of 2. + +{% info_block warningBox "Verification" %} + + +1. Prepare several product offers for a merchant's product. + For these steps, assume you are creating offer1 and offer2 for product SKU123 and merchant MER123. +2. On the Storefront, log in as a customer. +3. Add a product to cart with the following configuration: + * Quantity: 1 + * SKU: SKU123 + * Merchant: MER123 + * Offer: offer1 + +4. Add the following product to cart: + * Quantity: 1 + * SKU: SKU123 + * Merchant: MER123 + * Offer: offer2 + +Make sure the cart item you've added in step 3 is updated to quantity 2. The number of items in cart remains 1. + +{% endinfo_block %} diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md index 256c8ad6fe9..69c66e34627 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md @@ -1,19 +1,18 @@ --- title: Click and Collect feature Service Points domain walkthrough last_updated: Nov 02, 2023 -description: | - Explore the Service Point domain of the Click and Collect feature, exploring the definition and functionality of service points. Learn how to install the Service Points feature and set up essential modules for seamless integration. Understand the significance of data setup and discover the available methods, including the Backend API and Data Import, to configure service points, addresses, stores, service types, and services. - +description: Explore the Service Point domain of the Click and Collect feature, exploring the definition and functionality of service points. Learn how to install the Service Points feature and set up essential modules for seamless integration. Understand the significance of data setup and discover the available methods, including the Backend API and Data Import, to configure service points, addresses, stores, service types, and services. template: concept-topic-template --- -# Service Points A Service Point represents a physical location, such as a store, post office, or other designated areas, enabling customers to conveniently pick up their orders or access additional services like returns, exchanges, or customer support. Each service point has the capability to offer one or multiple unique services to customers. +## Installation + [Install the Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-feature.html) -## 1. Modules +## Modules | MODULE | EXPECTED DIRECTORY | |---------------------------|------------------------------------------------| @@ -32,19 +31,18 @@ A Service Point represents a physical location, such as a store, post office, or | ServicePointWidget | vendor/spryker-shop/service-point-widget | | ServicePointCartPage | vendor/spryker-shop/service-point-cart-page | -## 2. Data Setup - -Spryker offers two methods for setting up service points, service point addresses, service point stores, service types, and services: +## Data setup -- Backend API (check the `ServicePointsBackendApi` module) -- Data Import (check the `ServicePointDataImport` module) +The following options let you set up shipment types data: -## 3. Address Substitution during Checkout +| MODULE | IMPORT TYPE | +| - | - | +| `ServicePointsBackendApi` | Backend API | +| `ServicePointDataImport` | Data Import | -The `ServicePointWidget` module offers a mechanism to substitute the shipping address with the service point address during the checkout process in Yves. -### Plugins +## Address substitution during checkout -The following plugin handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: +The `ServicePointWidget` module offers a mechanism to substitute the shipping address with the service point address during checkout. -- **\SprykerShop\Yves\ServicePointWidget\Plugin\CustomerPage\ServicePointAddressCheckoutAddressCollectionFormExpanderPlugin** +The following plugin handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: `\SprykerShop\Yves\ServicePointWidget\Plugin\CustomerPage\ServicePointAddressCheckoutAddressCollectionFormExpanderPlugin`. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md index c4a6d6b77c3..dcffa428819 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md @@ -1,19 +1,15 @@ --- -title: Click and Collect feature Shipment Type Service Point subdomain walkthrough +title: Shipment Type Service Point subdomain last_updated: Nov 02, 2023 -description: | - Explore the Shipment Type Service Point subdomain in the Click and Collect feature, focusing on the connection between shipment types and service points. Learn how to install the Shipment Service Points feature and set up the necessary modules to establish a seamless integration. Understand the data setup process, leveraging the import functionality provided by the `ShipmentTypeServicePointDataImport` module to create a robust connection between service points and shipment types. - +description: The Shipment Type Service Point subdomain connects shipment types and service points. template: concept-topic-template --- -# Shipment Type Service Point - The Shipment Type Service Point subdomain establishes the connection between shipment types and service type. [Install the Shipment Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-service-points-feature.html) -## 1. Modules +## Modules | MODULE | EXPECTED DIRECTORY | |------------------------------------|---------------------------------------------------------| @@ -22,20 +18,20 @@ The Shipment Type Service Point subdomain establishes the connection between shi | ShipmentTypeServicePointsRestApi | vendor/spryker/shipment-type-service-points-rest-api | | ShipmentTypeServicePointStorage | vendor/spryker/shipment-type-service-point-storage | -## 2. Data Setup +## Data setup Spryker provides import functionality through the `ShipmentTypeServicePointDataImport` module to facilitate the setup of the connection between service points and shipment types. -## 3. Address Substitution during Checkout +## Address substitution during checkout -The `ShipmentTypeServicePointsRestApi` module offers a mechanism to substitute the shipping address with the service point address during the checkout process. +The `ShipmentTypeServicePointsRestApi` module offers a mechanism to substitute the shipping address with the service point address during checkout. ### Plugins The following plugin handles address substitution when the shipment type is set to `pickup` and a service point is selected: -- **\Spryker\Glue\ShipmentTypeServicePointsRestApi\Plugin\CheckoutRestApi\ShipmentTypeServicePointCheckoutRequestExpanderPlugin** +**\Spryker\Glue\ShipmentTypeServicePointsRestApi\Plugin\CheckoutRestApi\ShipmentTypeServicePointCheckoutRequestExpanderPlugin** -Additionally, customization possibilities exist to redefine applicable shipment type keys supporting address substitution through module configuration: +Additionally, you can redefine applicable shipment type keys supporting address substitution through module configuration: -- **\Spryker\Shared\ShipmentTypeServicePointsRestApi\ShipmentTypeServicePointsRestApiConfig::getApplicableShipmentTypeKeysForShippingAddress** +**\Spryker\Shared\ShipmentTypeServicePointsRestApi\ShipmentTypeServicePointsRestApiConfig::getApplicableShipmentTypeKeysForShippingAddress** diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md index 8621b5b9ffd..b2b60f74593 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md @@ -1,19 +1,17 @@ --- -title: Click and Collect feature Shipment Types domain walkthrough +title: Shipment Types domain walkthrough last_updated: Nov 02, 2023 -description: | - Explore the Shipment Type domain in the Click and Collect feature, understanding the various options available to customers for receiving their orders. This guide provides comprehensive details on installing the Shipment feature, delving into the associated modules, and showcasing different data setup methods. Additionally, discover key extension points for customizing Shipment Types behavior during the checkout process. - +description: Discover the key extension points for customizing the behavior of shipment types during checkout. template: concept-topic-template --- -# Shipment Types +Shipment types offer different options for customers to receive their orders. -Shipment types offer diverse options for customers to receive their orders. +## Installation [Install the Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-feature.html) -## 1. Modules +## Modules | MODULE | EXPECTED DIRECTORY | |-----------------------------------------------------------|----------------------------------------------------------------------------------| @@ -32,36 +30,35 @@ Shipment types offer diverse options for customers to receive their orders. | ShipmentTypeWidget | vendor/spryker-shop/shipment-type-widget | | SalesShipmentType | vendor/spryker/sales-shipment-type | -## 2. Data Setup +## Data setup + +The following options let you set up shipment types data: -Spryker offers two methods for setting up shipment types: -- Backend API (check `ShipmentTypesBackendApi` module) -- Data import (check `ShipmentTypeDataImport` module) +| MODULE | IMPORT TYPE | +| - | - | +| `ShipmentTypesBackendApi` | Backend API | +| `ShipmentTypeDataImport` | Data import | -## 3. Extension point for filter shipment types for the quote during the checkout process +## Extension point for filter shipment types for the quote during checkout -Filter shipment types for the quote during the checkout process with the following extension point: +Filter shipment types for the quote during checkout with the following extension point: **\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface** -An example: +Example of a plugin that filters out shipment types without a product offer shipment type relation: **\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin** -This plugin filters out shipment types without a product offer shipment type relation. +## Extension point for expanding Shipment Type data before publishing to the Storage -## 4. Extension point for expanding Shipment Type data before publishing to the Storage - -Expands shipment type storage collection with additional data before publishing to the Storage. -Use the expanded data after retrieving Shipment Type data from the Storage. +Expands shipment type storage collection with additional data before publishing to the Storage. Use the expanded data after retrieving Shipment Type data from the Storage. **\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** -An example: +Example of a plugin that expands shipment types with a service type: **\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** -This plugin expands shipment types with a service type. ## 5. Extension point for expanding Shipment Type data after retrieving from the Storage @@ -69,8 +66,6 @@ Expands shipment type storage collection with additional data after retrieving i **\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** -An example: +Example of a plugin that expands shipment types with a service type: **\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** - -This plugin expands shipment types with a service type. From e5d67d6015d289ba0f3aac2e94d97fa3762f7898 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 19 Dec 2023 10:32:30 +0200 Subject: [PATCH 24/35] review --- ...oint-availability-subdomain-walkthrough.md | 4 ++-- ...oint-availability-subdomain-walkthrough.md | 24 ++++++------------- ...fer-service-point-subdomain-walkthrough.md | 10 ++++---- ...type-availability-subdomain-walkthrough.md | 1 - 4 files changed, 13 insertions(+), 26 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md index 21ec7017e90..a2f393a214a 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md @@ -1,11 +1,11 @@ --- title: Click and Collect feature Marketplace Merchant Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 -description: Explore the Marketplace Merchant Product Offer Service Point Availability subdomain, which facilitates the calculation of merchant product availability at service points within the Click and Collect feature. +description: The Marketplace Merchant Product Offer Service Point Availability subdomain facilitates the calculation of merchant product availability at service points. template: concept-topic-template --- -The Marketplace Merchant Product Offer Service Point Availability subdomain refers to the calculation of merchant product availability at service points. +The Marketplace Merchant Product Offer Service Point Availability subdomain is used to calculate merchant product availability at service points. ## Installation diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md index 490d71e1eda..37dc14b8511 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md @@ -1,12 +1,11 @@ --- title: Product Offer Service Point Availability subdomain last_updated: Nov 02, 2023 -description: Explore the Product Offer Service Point Availability subdomain in the Click and Collect feature. Learn about the modules, installation of the feature, and the extension points for calculating and filtering data related to the availability of a product offer at a service point. Enhance your understanding with examples of plugins and strategies used in the availability calculation process. - +description: The Product Offer Service Point Availability subdomain provides the extension points for calculating and filtering data related to the availability of a product offer at a service point. template: concept-topic-template --- -The Product Offer Service Point Availability subdomain refers to the calculation of product availability at service points. +The Product Offer Service Point Availability subdomain is used to calculate product availability at service points. ## Installation @@ -25,24 +24,15 @@ The Product Offer Service Point Availability subdomain refers to the calculation ## Extension point for calculating the availability of a product offer at a service point -The plugin is used to calculate product offer availability at the service point based on specific needs. - -**\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface** - -Example: +The plugin is used to calculate product offer availability at the service point based on specific needs: `\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface` -**\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin** +The following example plugin calculates product offer availabilities per service point for each item in the request based on the provided conditions: +`\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin` -This plugin calculates product offer availabilities per service point for each item in the request based on the provided conditions. ## Extension point for filtering data about the availability of a product offer at a service point -Provides the ability to filter product offer service point availability collection by a provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created. - -**\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface** - -Example: +Provides the ability to filter product offer service point availability collection by a provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created: `\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface` -**\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin** -This plugin filters product offer availability data at the service point by shipment type if it exists in the criteria of the availability request. +The following example plugin filters product offer availability data at the service point by shipment type if it exists in the criteria of the availability request: `\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin` diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md index a43f98d8e0c..b81d0d65e9d 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md @@ -1,7 +1,7 @@ --- title: Click and Collect feature Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 -description: Explore the Product Offer Service Point subdomain in the Click and Collect feature. Understand the connection between product offers and service points, and learn how to install and configure the necessary modules for seamless integration. Discover the significance of data setup and explore extension points for filtering services assigned to product offers before publishing them to storage. +description: The Product Offer Service Point subdomain establishes the connection between product offers and service points, uct offers before publishing them to storage. template: concept-topic-template --- @@ -38,10 +38,8 @@ The `ProductOfferServicePointDataImport` module lets you import the relationship This extension point provides the ability to filter the Product Offer Service collection before publishing it to storage. -**\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface** +`\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface` -Example: +The following example plugin filters the product offer services collection by active and approved merchants: -**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin** - -This plugin filters the product offer services collection by active and approved merchants. +`\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin` diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md index aaaeb232845..ef34d4d284b 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md @@ -2,7 +2,6 @@ title: Click and Collect Feature Product Offer Shipment Type Availability Subdomain Walkthrough last_updated: Nov 02, 2023 description: The Product Offer Shipment Type Availability subdomain enables the availability calculation. - template: concept-topic-template --- From 04733b90c86424b0608850743449828bbf17f9b1 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 26 Dec 2023 10:45:14 +0200 Subject: [PATCH 25/35] Update shipment-types-domain-walkthrough.md --- .../shipment-types-domain-walkthrough.md | 26 +++++-------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md index b2b60f74593..69f072a097b 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md @@ -39,33 +39,21 @@ The following options let you set up shipment types data: | `ShipmentTypesBackendApi` | Backend API | | `ShipmentTypeDataImport` | Data import | -## Extension point for filter shipment types for the quote during checkout +## Extension point for filtering shipment types for the quote during checkout -Filter shipment types for the quote during checkout with the following extension point: +Filter shipment types for the quote during checkout with the following extension point: `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface` -**\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface** - -Example of a plugin that filters out shipment types without a product offer shipment type relation: - -**\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin** +Example of a plugin that filters out shipment types without a product offer shipment type relation: `\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin` ## Extension point for expanding Shipment Type data before publishing to the Storage -Expands shipment type storage collection with additional data before publishing to the Storage. Use the expanded data after retrieving Shipment Type data from the Storage. - -**\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** +Expands shipment type storage collection with additional data before publishing to the Storage. Use the expanded data after retrieving Shipment Type data from the Storage. `\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface` -Example of a plugin that expands shipment types with a service type: - -**\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** +Example of a plugin that expands shipment types with a service type: `\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin` ## 5. Extension point for expanding Shipment Type data after retrieving from the Storage -Expands shipment type storage collection with additional data after retrieving it from the Storage. - -**\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface** - -Example of a plugin that expands shipment types with a service type: +Expands shipment type storage collection with additional data after retrieving it from the Storage. `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface` -**\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin** +Example of a plugin that expands shipment types with a service type: `\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin` From c475baf74f86df6bf4699c1f76281c55108b5e95 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 26 Dec 2023 11:06:00 +0200 Subject: [PATCH 26/35] review --- ...ice-point-availability-subdomain-walkthrough.md | 8 ++++---- ...ct-offer-service-point-subdomain-walkthrough.md | 10 +++------- ...ct-offer-shipment-type-subdomain-walkthrough.md | 10 ++-------- .../service-point-cart-subdomain-walkthrough.md | 4 ++-- .../service-points-domain-walkthrough.md | 6 +++--- ...ent-type-service-point-subdomain-walkthrough.md | 14 ++++++-------- .../shipment-types-domain-walkthrough.md | 12 ++++++------ 7 files changed, 26 insertions(+), 38 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md index 37dc14b8511..8b581c78c7b 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md @@ -24,15 +24,15 @@ The Product Offer Service Point Availability subdomain is used to calculate prod ## Extension point for calculating the availability of a product offer at a service point -The plugin is used to calculate product offer availability at the service point based on specific needs: `\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface` +The plugin is used to calculate product offer availability at the service point based on specific needs: `\Spryker\Client\ProductOfferServicePointAvailabilityCalculatorStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityCalculatorStrategyPluginInterface`. The following example plugin calculates product offer availabilities per service point for each item in the request based on the provided conditions: -`\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin` +`\Spryker\Client\ClickAndCollectExample\Plugin\ExampleClickAndCollectProductOfferServicePointAvailabilityCalculatorStrategyPlugin`. ## Extension point for filtering data about the availability of a product offer at a service point -Provides the ability to filter product offer service point availability collection by a provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created: `\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface` +Provides the ability to filter product offer service point availability collection by a provided criteria. The plugin gets executed after a list of `ProductOfferServicePointAvailabilityResponseItemTransfer` is created: `\Spryker\Client\ProductOfferServicePointAvailabilityStorageExtension\Dependency\Plugin\ProductOfferServicePointAvailabilityFilterPluginInterface`. -The following example plugin filters product offer availability data at the service point by shipment type if it exists in the criteria of the availability request: `\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin` +The following example plugin filters product offer availability data at the service point by shipment type if it exists in the criteria of the availability request: `\Spryker\Client\ProductOfferShipmentTypeAvailabilityStorage\Plugin\ProductOfferServicePointAvailabilityStorage\ShipmentTypeProductOfferServicePointAvailabilityFilterPlugin`. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md index b81d0d65e9d..9f8f4871912 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md @@ -1,7 +1,7 @@ --- title: Click and Collect feature Product Offer Service Point subdomain walkthrough last_updated: Nov 02, 2023 -description: The Product Offer Service Point subdomain establishes the connection between product offers and service points, uct offers before publishing them to storage. +description: The Product Offer Service Point subdomain establishes the connection between product offers and service points. template: concept-topic-template --- @@ -36,10 +36,6 @@ The `ProductOfferServicePointDataImport` module lets you import the relationship ## Extension point for filtering services assigned to the product offers before publishing them to Storage -This extension point provides the ability to filter the Product Offer Service collection before publishing it to storage. +This extension point provides the ability to filter the Product Offer Service collection before publishing it to storage: `\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface`. -`\Spryker\Zed\ProductOfferServicePointStorageExtension\Dependency\Plugin\ProductOfferServiceCollectionStorageFilterPluginInterface` - -The following example plugin filters the product offer services collection by active and approved merchants: - -`\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin` +The following example plugin filters the product offer services collection by active and approved merchants: `\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferServicePointStorage\MerchantProductOfferServiceStorageFilterPlugin`. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md index 838d63fd426..bdaafe48b5b 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md @@ -30,12 +30,6 @@ The `ProductOfferShipmentTypeDataImport` module lets you import the relationship ## Extension point for filtering shipment types assigned to product offers before publishing them to the Storage -This extension point provides the ability to filter the product offer shipment type collection before publishing it to storage. +This extension point provides the ability to filter the product offer shipment type collection before publishing it to storage :`\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface`. -**\Spryker\Zed\ProductOfferShipmentTypeStorageExtension\Dependency\Plugin\ProductOfferShipmentTypeStorageFilterPluginInterface** - -Example: - -**\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin** - -This plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers from inactive merchants. +The following example plugin filters out `ProductOfferShipmentTypeCollectionTransfer.productOfferShipmentTypes` with product offers from inactive merchants: `\Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\ProductOfferShipmentTypeStorage\MerchantProductOfferShipmentTypeStorageFilterPlugin`. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md index a01c828fdf2..af7bd68acae 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md @@ -32,9 +32,9 @@ At the project level, extend this capability to support more intricate scenarios 1. Receiving information from external systems about the offer intended for replacement. 2. Implementing diverse algorithms for cart item replacement based on information obtained from customers. -### How to merge cart line items with different product offers but same SKU and merchant. +### Merge cart line items with different product offers but the same SKU and merchant -The demo replacement strategy works only if a product in the cart with same SKU and merchant are represented as a single cart line item. +The demo replacement strategy works only if a product in cart with same SKU and merchant is represented as a single cart line item. To enable this behavior, follow the steps: 1. From `\Pyz\Zed\Cart\CartDependencyProvider::getExpanderPlugins()`, disable the `\Spryker\Zed\ProductOffer\Communication\Plugin\Cart\ProductOfferGroupKeyItemExpanderPlugin` plugin. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md index 69c66e34627..57a305103ac 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md @@ -1,7 +1,7 @@ --- -title: Click and Collect feature Service Points domain walkthrough +title: Service Points domain walkthrough last_updated: Nov 02, 2023 -description: Explore the Service Point domain of the Click and Collect feature, exploring the definition and functionality of service points. Learn how to install the Service Points feature and set up essential modules for seamless integration. Understand the significance of data setup and discover the available methods, including the Backend API and Data Import, to configure service points, addresses, stores, service types, and services. +description: to configure service points, addresses, stores, service types, and services. template: concept-topic-template --- @@ -43,6 +43,6 @@ The following options let you set up shipment types data: ## Address substitution during checkout -The `ServicePointWidget` module offers a mechanism to substitute the shipping address with the service point address during checkout. +The `ServicePointWidget` module provides a mechanism for substituting the shipping address with the service point address during checkout. The following plugin handles address substitution when the cart item has a service point selected and the shipment type is set to `pickup`: `\SprykerShop\Yves\ServicePointWidget\Plugin\CustomerPage\ServicePointAddressCheckoutAddressCollectionFormExpanderPlugin`. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md index dcffa428819..ce532ea433e 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md @@ -5,7 +5,9 @@ description: The Shipment Type Service Point subdomain connects shipment types a template: concept-topic-template --- -The Shipment Type Service Point subdomain establishes the connection between shipment types and service type. +The Shipment Type Service Point subdomain establishes the connection between shipment types and service points. + +## Installation [Install the Shipment Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-service-points-feature.html) @@ -24,14 +26,10 @@ Spryker provides import functionality through the `ShipmentTypeServicePointDataI ## Address substitution during checkout -The `ShipmentTypeServicePointsRestApi` module offers a mechanism to substitute the shipping address with the service point address during checkout. +The `ShipmentTypeServicePointsRestApi` module provides a mechanism for substituting the shipping address with the service point address during checkout. ### Plugins -The following plugin handles address substitution when the shipment type is set to `pickup` and a service point is selected: - -**\Spryker\Glue\ShipmentTypeServicePointsRestApi\Plugin\CheckoutRestApi\ShipmentTypeServicePointCheckoutRequestExpanderPlugin** - -Additionally, you can redefine applicable shipment type keys supporting address substitution through module configuration: +The following plugin handles address substitution when the shipment type is set to `pickup` and a service point is selected: `\Spryker\Glue\ShipmentTypeServicePointsRestApi\Plugin\CheckoutRestApi\ShipmentTypeServicePointCheckoutRequestExpanderPlugin`. -**\Spryker\Shared\ShipmentTypeServicePointsRestApi\ShipmentTypeServicePointsRestApiConfig::getApplicableShipmentTypeKeysForShippingAddress** +Additionally, you can redefine applicable shipment type keys supporting address substitution through module configuration: `\Spryker\Shared\ShipmentTypeServicePointsRestApi\ShipmentTypeServicePointsRestApiConfig::getApplicableShipmentTypeKeysForShippingAddress`. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md index 69f072a097b..6fb8de239d0 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md @@ -41,19 +41,19 @@ The following options let you set up shipment types data: ## Extension point for filtering shipment types for the quote during checkout -Filter shipment types for the quote during checkout with the following extension point: `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface` +Filter shipment types for the quote during checkout with the following extension point: `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\AvailableShipmentTypeFilterPluginInterface`. -Example of a plugin that filters out shipment types without a product offer shipment type relation: `\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin` +Example of a plugin that filters out shipment types without a product offer shipment type relation: `\Spryker\Client\ClickAndCollectExample\Plugin\ShipmentTypeStorage\ShipmentTypeProductOfferAvailableShipmentTypeFilterPlugin`. ## Extension point for expanding Shipment Type data before publishing to the Storage -Expands shipment type storage collection with additional data before publishing to the Storage. Use the expanded data after retrieving Shipment Type data from the Storage. `\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface` +Expands shipment type storage collection with additional data before publishing to the Storage: `\Spryker\Zed\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface`. Use the expanded data after retrieving Shipment Type data from the Storage. -Example of a plugin that expands shipment types with a service type: `\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin` +The following example plugin expands shipment types with a service type: `\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin`. ## 5. Extension point for expanding Shipment Type data after retrieving from the Storage -Expands shipment type storage collection with additional data after retrieving it from the Storage. `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface` +Expands shipment type storage collection with additional data after retrieving it from the Storage: `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface`. -Example of a plugin that expands shipment types with a service type: `\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin` +The following example plugin expands shipment types with a service type: `\Spryker\Client\ShipmentTypeServicePointStorage\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin`. From 2eae994154955a3dcfe6fa2738d47e92feb9d52a Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 2 Jan 2024 11:17:17 +0200 Subject: [PATCH 27/35] sidebar --- _data/sidebars/pbc_all_sidebar.yml | 21 +++++++++++++++++++ .../click-collect-domains.md} | 2 +- ...r-service-point-availability-subdomain.md} | 2 +- ...r-service-point-availability-subdomain.md} | 2 +- ...-product-offer-service-point-subdomain.md} | 2 +- ...r-shipment-type-availability-subdomain.md} | 2 +- ...-product-offer-shipment-type-subdomain.md} | 2 +- ...k-collect-service-point-cart-subdomain.md} | 2 +- .../click-collect-service-points-domain.md} | 4 ++-- ...-shipment-type-service-point-subdomain.md} | 2 +- .../click-collect-shipment-types-domain.md} | 2 +- 11 files changed, 32 insertions(+), 11 deletions(-) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/click-and-collect-feature-walkthrough.md => click-collect-domains/click-collect-domains.md} (99%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md => click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md} (92%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md => click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md} (97%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/product-offer-service-point-subdomain-walkthrough.md => click-collect-domains/click-collect-product-offer-service-point-subdomain.md} (97%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md => click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md} (90%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md => click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md} (96%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/service-point-cart-subdomain-walkthrough.md => click-collect-domains/click-collect-service-point-cart-subdomain.md} (98%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/service-points-domain-walkthrough.md => click-collect-domains/click-collect-service-points-domain.md} (93%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md => click-collect-domains/click-collect-shipment-type-service-point-subdomain.md} (96%) rename docs/pbc/all/service-point-management/202311.0/unified-commerce/{extend-and-customize/shipment-types-domain-walkthrough.md => click-collect-domains/click-collect-shipment-types-domain.md} (98%) diff --git a/_data/sidebars/pbc_all_sidebar.yml b/_data/sidebars/pbc_all_sidebar.yml index 1985f6eccf1..2d58b097ec7 100644 --- a/_data/sidebars/pbc_all_sidebar.yml +++ b/_data/sidebars/pbc_all_sidebar.yml @@ -3535,6 +3535,27 @@ entries: url: /docs/pbc/all/service-point-management/unified-commerce/service-points-customer-account-management-feature-overview.html - title: Service Points + Order Management feature overview url: /docs/pbc/all/service-point-management/unified-commerce/service-points-order-management-feature.html + - title: Click & Collect domains + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-domains.html + nested: + - title: Marketplace Merchant Product Offer Service Point subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.html + - title: Product Offer Service Point Availability subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.html + - title: Product Offer Service Point subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.html + - title: Product Offer Shipment Type Availability subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.html + - title: Product Offer Shipment Type subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.html + - title: Service Point Cart subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.html + - title: Service Points domain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-service-points-domain.html + - title: Shipment Type Service Point subdomain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.html + - title: Shipment Types domain + url: /docs/pbc/all/service-point-management/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.html - title: Enable Click & Collect url: /docs/pbc/all/service-point-management/unified-commerce/enable-click-collect.html - title: Install features diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md similarity index 99% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md index e9de6621d42..7d5e974a400 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/click-and-collect-feature-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md @@ -1,5 +1,5 @@ --- -title: Click & Collect: Domain model and relationships +title: Click & Collect domains last_updated: Sep 26, 2023 description: Learn about the domain model, database, and other technical details of Click & Collect. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md similarity index 92% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md index a2f393a214a..96e4f611ad9 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md @@ -1,5 +1,5 @@ --- -title: Click and Collect feature Marketplace Merchant Product Offer Service Point subdomain walkthrough +title: "Click & Collect: Marketplace Merchant Product Offer Service Point subdomain" last_updated: Nov 02, 2023 description: The Marketplace Merchant Product Offer Service Point Availability subdomain facilitates the calculation of merchant product availability at service points. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md similarity index 97% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md index 8b581c78c7b..459711927fc 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md @@ -1,5 +1,5 @@ --- -title: Product Offer Service Point Availability subdomain +title: "Click & Collect: Product Offer Service Point Availability subdomain" last_updated: Nov 02, 2023 description: The Product Offer Service Point Availability subdomain provides the extension points for calculating and filtering data related to the availability of a product offer at a service point. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md similarity index 97% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md index 9f8f4871912..4e6524a0ddd 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md @@ -1,5 +1,5 @@ --- -title: Click and Collect feature Product Offer Service Point subdomain walkthrough +title: "Click & Collect: Product Offer Service Point subdomain" last_updated: Nov 02, 2023 description: The Product Offer Service Point subdomain establishes the connection between product offers and service points. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md similarity index 90% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md index ef34d4d284b..6b3fdfb7d17 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-availability-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md @@ -1,5 +1,5 @@ --- -title: Click and Collect Feature Product Offer Shipment Type Availability Subdomain Walkthrough +title: "Click & Collect: Product Offer Shipment Type Availability subdomain" last_updated: Nov 02, 2023 description: The Product Offer Shipment Type Availability subdomain enables the availability calculation. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md similarity index 96% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md index bdaafe48b5b..08f3df98abd 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/product-offer-shipment-type-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md @@ -1,5 +1,5 @@ --- -title: Click and Collect feature Product Offer Shipment Type subdomain walkthrough +title: "Click & Collect: Product Offer Shipment Type subdomain" last_updated: Nov 02, 2023 description: The Product Offer Shipment Type subdomain establishes the connection between product offers and shipment types. diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md similarity index 98% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md index af7bd68acae..eb08370f61c 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-point-cart-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md @@ -1,5 +1,5 @@ --- -title: Click and Collect feature Service Point Cart subdomain walkthrough +title: "Click & Collect: Service Point Cart subdomain" last_updated: Nov 02, 2023 description: The Service Point Cart subdomain focuses on the validation of service points and the replacement of line items in shopping carts. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md similarity index 93% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md index 57a305103ac..290b9a89db9 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/service-points-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md @@ -1,7 +1,7 @@ --- -title: Service Points domain walkthrough +title: "Click & Collect: Service Points domain" last_updated: Nov 02, 2023 -description: to configure service points, addresses, stores, service types, and services. +description: Service Points domain is used to configure service points, addresses, stores, service types, and services. template: concept-topic-template --- diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md similarity index 96% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md index ce532ea433e..b4f8ba2aa04 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-type-service-point-subdomain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md @@ -1,5 +1,5 @@ --- -title: Shipment Type Service Point subdomain +title: "Click & Collect: Shipment Type Service Point subdomain" last_updated: Nov 02, 2023 description: The Shipment Type Service Point subdomain connects shipment types and service points. template: concept-topic-template diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md similarity index 98% rename from docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md rename to docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md index 6fb8de239d0..3e8a71a1440 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/extend-and-customize/shipment-types-domain-walkthrough.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md @@ -1,5 +1,5 @@ --- -title: Shipment Types domain walkthrough +title: "Click & Collect: Shipment Types domain" last_updated: Nov 02, 2023 description: Discover the key extension points for customizing the behavior of shipment types during checkout. template: concept-topic-template From d377c960347a181a94235935e5018dfb16a514fa Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 2 Jan 2024 16:02:12 +0200 Subject: [PATCH 28/35] Update click-collect-domains.md --- .../click-collect-domains/click-collect-domains.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md index 7d5e974a400..364d4747940 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md @@ -46,7 +46,7 @@ The relationships indicate how entities interact with each other. For example, a To show the introduced changes and extensions, new entities and relations are painted in green, and existing ones are painted in white. -# Entity-relationship diagram +## Entity-relationship diagram The entity-relationship diagram shows how domain entities are mapped to database tables. From 8c42c83686e5777bf73c419855a76d52b2d1f62b Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Tue, 2 Jan 2024 16:02:19 +0200 Subject: [PATCH 29/35] Update click-collect-domains.md --- .../click-collect-domains.md | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md index 364d4747940..85c33d4c625 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md @@ -7,6 +7,30 @@ template: concept-topic-template Click and Collect business models refers to a retail strategy where customers make purchases online and then collect their ordered products from a physical store or a designated pickup location. This model combines the convenience of online shopping with the immediacy of in-store pickup. +To implement this functionality effectively, retailers create product offers in service points, ensuring that the inventory reflects available products accurately and that items are ready for customers to pick them up. Furthermore, shipment types need to be configured to manage and streamline both delivery and pickup options. Delivery refers to orders sent directly to the customer's address, while pickup refers to the collection of products by the customers at the service points. + +## Service points + +* A *service point* is a physical location where services are provided. Depending on the services provided, there can be different kinds of service points, like a warehouse or a physical store. The definition of a service point ultimately depends on the services it provides. +* A *Service point address* is the address of a location where customers can pick up their orders. For example, if a customer selects a locker as a service point to pick up their order, they will be given the address of a specific locker location to pick up their order from. +* A *service type* is a classification of services that a business offers to its customers. Service types are determined by the nature of the business. Service type examples: + * Pickup service + * Return service + * Rental service + * Repair service + +* A *service* represents a specific service type that is provided at a specific service point. For example, a pickup service at a retail location located at Julie-Wolfthorn-Straße 1, 10115, Berlin. + + +# Shipment Type + +Shipment type refers to the different options available to customers for receiving their orders. +Some common shipment types include: +* Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. +* In-Store Pickup (or Click and Collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. + Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. + Shipment type is a logical grouping of the shipment methods. + ## Domain model
From cd47035ef4c99be5656d787301ade0f6876038eb Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Wed, 3 Jan 2024 10:34:40 +0200 Subject: [PATCH 30/35] finalize --- .../click-collect-domains.md | 15 ++++++++------- .../click-collect-shipment-types-domain.md | 2 +- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md index 85c33d4c625..91fbdb7dcac 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md @@ -12,7 +12,9 @@ To implement this functionality effectively, retailers create product offers in ## Service points * A *service point* is a physical location where services are provided. Depending on the services provided, there can be different kinds of service points, like a warehouse or a physical store. The definition of a service point ultimately depends on the services it provides. + * A *Service point address* is the address of a location where customers can pick up their orders. For example, if a customer selects a locker as a service point to pick up their order, they will be given the address of a specific locker location to pick up their order from. + * A *service type* is a classification of services that a business offers to its customers. Service types are determined by the nature of the business. Service type examples: * Pickup service * Return service @@ -22,14 +24,13 @@ To implement this functionality effectively, retailers create product offers in * A *service* represents a specific service type that is provided at a specific service point. For example, a pickup service at a retail location located at Julie-Wolfthorn-Straße 1, 10115, Berlin. -# Shipment Type +## Shipment type -Shipment type refers to the different options available to customers for receiving their orders. -Some common shipment types include: -* Home Delivery: This option allows customers to get their order delivered to the address they filled in during checkout. -* In-Store Pickup (or Click and Collect): This option allows customers to pick up their orders from a physical store or service point location, typically within a few hours to a day after the order is placed. - Shipment method, on the other hand, refers to how the product is physically transported from the seller to the customer. Examples of shipment methods are Next Day Delivery or Express Delivery. - Shipment type is a logical grouping of the shipment methods. +A *shipment type* is a way in which a customer receives an order after placing it. Shipment type examples: +* Home delivery: products are delivered to the customer's residence. +* In-store pickup: customer places an order online and picks it up at a selected physical store. +* Curbside pickup: customer places an order online and drives the the selected physical store. They park at a designated area, and the store's associate brings out the order directly to the car. +* Locker pickup: customer places an order online and picks it up from a selected secure locker using a key or code provided by the store. ## Domain model diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md index 3e8a71a1440..313608f6979 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md @@ -52,7 +52,7 @@ Expands shipment type storage collection with additional data before publishing The following example plugin expands shipment types with a service type: `\Spryker\Zed\ShipmentTypeServicePointStorage\Communication\Plugin\ShipmentTypeStorage\ServiceTypeShipmentTypeStorageExpanderPlugin`. -## 5. Extension point for expanding Shipment Type data after retrieving from the Storage +## Extension point for expanding Shipment Type data after retrieving from the Storage Expands shipment type storage collection with additional data after retrieving it from the Storage: `\Spryker\Client\ShipmentTypeStorageExtension\Dependency\Plugin\ShipmentTypeStorageExpanderPluginInterface`. From f181e503e3f236a2c142ad7fd1985faaa61f2101 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 8 Jan 2024 11:13:28 +0200 Subject: [PATCH 31/35] links --- .../click-collect-domains.md | 18 +++++++++--------- ...fer-service-point-availability-subdomain.md | 2 +- ...fer-service-point-availability-subdomain.md | 2 +- ...ct-product-offer-service-point-subdomain.md | 2 +- ...fer-shipment-type-availability-subdomain.md | 2 +- ...ct-product-offer-shipment-type-subdomain.md | 2 +- ...ick-collect-service-point-cart-subdomain.md | 2 +- .../click-collect-service-points-domain.md | 2 +- ...ct-shipment-type-service-point-subdomain.md | 2 +- .../click-collect-shipment-types-domain.md | 2 +- 10 files changed, 18 insertions(+), 18 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md index 91fbdb7dcac..d09ab83b444 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md @@ -81,13 +81,13 @@ The entity-relationship diagram shows how domain entities are mapped to database ## Domains and subdomains -- [Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-points-domain-walkthrough.html) - - [Service Point Cart](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/service-point-cart-subdomain-walkthrough.html) -- [Shipment Type](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-types-domain-walkthrough.html) - - [Shipment Type Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/shipment-type-service-point-subdomain-walkthrough.html) +- [Service Point](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-service-points-domain.html) + - [Service Point Cart](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.html) +- [Shipment Type](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.html) + - [Shipment Type Service Point](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.html) - [Product Offer](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-marketplace-product-offer-feature.html) - - [Product Offer Service Point](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-subdomain-walkthrough.html) - - [Product Offer Service Point Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-service-point-availability-subdomain-walkthrough.html) - - [Marketplace Merchant Product Offer Service Point Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/marketplace-merchant-product-offer-service-point-availability-subdomain-walkthrough.html) - - [Product Offer Shipment Type](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-subdomain-walkthrough.html) - - [Product Offer Shipment Type Availability](/docs/scos/dev/feature-walkthroughs/{{page.version}}/click-and-collect-feature-walkthrough/product-offer-shipment-type-availability-subdomain-walkthrough.html) + - [Product Offer Service Point](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.html) + - [Product Offer Service Point Availability](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.html) + - [Marketplace Merchant Product Offer Service Point Availability](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.html) + - [Product Offer Shipment Type](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.html) + - [Product Offer Shipment Type Availability](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.html) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md index 96e4f611ad9..b7b0f63994d 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.md @@ -9,7 +9,7 @@ The Marketplace Merchant Product Offer Service Point Availability subdomain is u ## Installation -[Marketplace Merchant Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/marketplace/install-the-marketplace-merchant-product-offer-service-points-availability-feature.html) +[Marketplace Merchant Product Offer Service Points Availability feature](/docs/pbc/all/offer-management/{{page.version}}/unified-commerce/install-features/install-the-marketplace-merchant-product-offer-service-points-availability-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md index 459711927fc..32d109d7870 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.md @@ -9,7 +9,7 @@ The Product Offer Service Point Availability subdomain is used to calculate prod ## Installation -[Install the Product Offer Service Points Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-availability-feature.html) +[Install the Product Offer Service Points Availability feature](/docs/pbc/all/offer-management/{{page.version}}/unified-commerce/install-features/install-the-product-offer-service-points-availability-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md index 4e6524a0ddd..dabed62e824 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.md @@ -10,7 +10,7 @@ The Product Offer Service Point subdomain refers to the connection between produ ## Installation -[Install the Product Offer Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-service-points-feature.html) +[Install the Product Offer Service Points feature](/docs/pbc/all/offer-management/{{page.version}}/unified-commerce/install-features/install-the-product-offer-service-points-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md index 6b3fdfb7d17..6a8943e1b22 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md @@ -9,7 +9,7 @@ The Product Offer Shipment Type Availability subdomain focuses on the availabili ## Installation -[Install the Product Offer Shipments Availability feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipments-availability-feature.html) +[Install the Product Offer Shipment Availability feature](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-product-offer-shipment-availability-feature.md.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md index 08f3df98abd..880397e35a5 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-subdomain.md @@ -10,7 +10,7 @@ The Product Offer Shipment Type subdomain establishes the connection between pro ## Installation -[Install the Product Offer Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-product-offer-shipment-feature.html) +[Install the Product Offer Shipment feature](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-product-offer-shipment-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md index eb08370f61c..6efca314238 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.md @@ -9,7 +9,7 @@ The Service Point Cart subdomain enables you to validate service points and repl ## Installation -[Install the Service Points Cart feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-cart-feature.html) +[Install the Service Points Cart feature](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/install-features/install-the-service-points-cart-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md index 290b9a89db9..57142efbf12 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-service-points-domain.md @@ -10,7 +10,7 @@ A Service Point represents a physical location, such as a store, post office, or ## Installation -[Install the Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-service-points-feature.html) +[Install the Service Points feature](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/install-features/install-the-service-points-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md index b4f8ba2aa04..876061cb170 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.md @@ -9,7 +9,7 @@ The Shipment Type Service Point subdomain establishes the connection between shi ## Installation -[Install the Shipment Service Points feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-service-points-feature.html) +[Install the Shipment Service Points feature](/docs/pbc/all/carrier-management/{{page.version}}/unified-commerce/install-features/install-the-shipment-service-points-feature.html) ## Modules diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md index 313608f6979..d054454ecb3 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.md @@ -9,7 +9,7 @@ Shipment types offer different options for customers to receive their orders. ## Installation -[Install the Shipment feature](/docs/pbc/all/install-features/{{page.version}}/install-the-shipment-feature.html) +[Install the Shipment feature](/docs/pbc/all/carrier-management/{{page.version}}/base-shop/install-and-upgrade/install-features/install-the-shipment-feature.html) ## Modules From a76e63dbf28bc3a8814cccc01b0c957966e526f7 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 8 Jan 2024 11:32:54 +0200 Subject: [PATCH 32/35] fixes --- .../manage-service-types/glue-api-retrieve-service-types.md | 4 ++-- .../glue-api-authenticate-as-a-warehouse-user.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/manage-using-glue-api/manage-service-types/glue-api-retrieve-service-types.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/manage-using-glue-api/manage-service-types/glue-api-retrieve-service-types.md index 7748c9fc2c8..1e5d70fd38e 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/manage-using-glue-api/manage-service-types/glue-api-retrieve-service-types.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/manage-using-glue-api/manage-service-types/glue-api-retrieve-service-types.md @@ -80,9 +80,9 @@ Request sample: `GET https://glue-backend.mysprykershop.com/service-points` ## Retrieve a service type ---- +*** `GET` {% raw %}**/service-types/*{{service_type_id}}***{% endraw %} ---- +*** | PATH PARAMETER | DESCRIPTION | | --- | --- | diff --git a/docs/pbc/all/warehouse-management-system/202311.0/unified-commerce/manage-using-glue-api/glue-api-authenticate-as-a-warehouse-user.md b/docs/pbc/all/warehouse-management-system/202311.0/unified-commerce/manage-using-glue-api/glue-api-authenticate-as-a-warehouse-user.md index acb7cacaed6..1631104fff2 100644 --- a/docs/pbc/all/warehouse-management-system/202311.0/unified-commerce/manage-using-glue-api/glue-api-authenticate-as-a-warehouse-user.md +++ b/docs/pbc/all/warehouse-management-system/202311.0/unified-commerce/manage-using-glue-api/glue-api-authenticate-as-a-warehouse-user.md @@ -9,7 +9,7 @@ This endpoint allows authenticating as a warehouse user. Warehouse users need to ## Installation -For detailed information on the modules that provide the API functionality and related installation instructions, see [Install the Warehouse User Management feature](/docs/pbc/all/warehouse-management-system/{{page.version}}/unified-commerce/install-and-upgrade/install-the-warehouse-user-management-feature.html). +[Install the Warehouse User Management feature](/docs/pbc/all/warehouse-management-system/{{page.version}}/unified-commerce/install-and-upgrade/install-the-warehouse-user-management-feature.html). ## Authenticate as a warehouse user @@ -27,7 +27,7 @@ Request sample: `POST http://glue-backend.mysprykershop.com/warehouse-tokens` ### Response -
Response sample: authenticate as a Back Office user +
Response sample: authenticate as a warehouse user ```json [ From 06300b1f9d8d726958501436d7c0f868278014a3 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 8 Jan 2024 11:43:25 +0200 Subject: [PATCH 33/35] Update click-collect-product-offer-shipment-type-availability-subdomain.md --- ...ollect-product-offer-shipment-type-availability-subdomain.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md index 6a8943e1b22..d17a21433aa 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-product-offer-shipment-type-availability-subdomain.md @@ -9,7 +9,7 @@ The Product Offer Shipment Type Availability subdomain focuses on the availabili ## Installation -[Install the Product Offer Shipment Availability feature](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-product-offer-shipment-availability-feature.md.html) +[Install the Product Offer Shipment Availability feature](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-product-offer-shipment-availability-feature.html) ## Modules From 3cf616c6b9baf7f8bdffe446d6ec3344423bf62c Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 8 Jan 2024 11:58:25 +0200 Subject: [PATCH 34/35] bugs --- .../manage-shipment-types/glue-api-retrieve-shipment-types.md | 2 +- .../glue-api-delete-push-notification-providers.md | 2 +- .../glue-api-retrieve-push-notification-providers.md | 2 +- .../glue-api-update-push-notification-providers.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/pbc/all/carrier-management/202311.0/base-shop/manage-using-glue-api/manage-shipment-types/glue-api-retrieve-shipment-types.md b/docs/pbc/all/carrier-management/202311.0/base-shop/manage-using-glue-api/manage-shipment-types/glue-api-retrieve-shipment-types.md index c99cea8e235..512242493b8 100644 --- a/docs/pbc/all/carrier-management/202311.0/base-shop/manage-using-glue-api/manage-shipment-types/glue-api-retrieve-shipment-types.md +++ b/docs/pbc/all/carrier-management/202311.0/base-shop/manage-using-glue-api/manage-shipment-types/glue-api-retrieve-shipment-types.md @@ -79,7 +79,7 @@ This endpoint lets you retrieve shipment types. } ``` -
+
Storefront: Retrieve shipment types 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 1f401c36443..043dd7ee76c 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 @@ -14,7 +14,7 @@ This endpoint lets you delete push notification providers. ## Retrieve push notification providers *** -`DELETE` **{% raw %}*{{backend_url}}*{% endraw %}/push-notification-providers/*{% raw %}{{push_notification_provider_id}}{% endraw %}*** +`DELETE` **{% raw %}*{{backend_url}}*{% endraw %}/push-notification-providers/*{% raw %}*{{push_notification_provider_id}}*{% endraw %}** *** 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 017e1c6569d..17050dac690 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 @@ -80,7 +80,7 @@ Request sample: `GET https://glue-backend.de.b2c.demo-spryker.com/push-notificat *** -`GET` **{% raw %}*{{backend_url}}*{% endraw %}/push-notification-providers/*{% raw %}{{push_notification_provider_id}}{% endraw %}*** +`GET` **{% raw %}*{{backend_url}}*{% endraw %}/push-notification-providers/*{% raw %}*{{push_notification_provider_id}}{% endraw %}*** *** 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 1e04d87a2b2..4609a22574b 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 @@ -14,7 +14,7 @@ This endpoint lets you update push notification providers. ## Retrieve push notification providers *** -`PATCH` **{% raw %}*{{backend_url}}*{% endraw %}/push-notification-providers/*{% raw %}{{push_notification_provider_id}}{% endraw %}*** +`PATCH` **{% raw %}*{{backend_url}}*{% endraw %}/push-notification-providers/{% raw %}*{{push_notification_provider_id}}*{% endraw %}** *** From c5f57d19ad4e85c3dab21ec02b8c51ff51ec6c74 Mon Sep 17 00:00:00 2001 From: Andrii Tserkovnyi Date: Mon, 8 Jan 2024 12:00:11 +0200 Subject: [PATCH 35/35] Update click-collect-domains.md --- .../click-collect-domains/click-collect-domains.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md index d09ab83b444..7c634901a4c 100644 --- a/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md +++ b/docs/pbc/all/service-point-management/202311.0/unified-commerce/click-collect-domains/click-collect-domains.md @@ -85,7 +85,7 @@ The entity-relationship diagram shows how domain entities are mapped to database - [Service Point Cart](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-service-point-cart-subdomain.html) - [Shipment Type](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-shipment-types-domain.html) - [Shipment Type Service Point](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-shipment-type-service-point-subdomain.html) -- [Product Offer](/docs/pbc/all/offer-management/{{page.version}}/marketplace/install-and-upgrade/install-features/install-the-marketplace-product-offer-feature.html) +- Product Offer - [Product Offer Service Point](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-subdomain.html) - [Product Offer Service Point Availability](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-product-offer-service-point-availability-subdomain.html) - [Marketplace Merchant Product Offer Service Point Availability](/docs/pbc/all/service-point-management/{{page.version}}/unified-commerce/click-collect-domains/click-collect-marketplace-merchant-product-offer-service-point-availability-subdomain.html)