Streamlining Ecommerce Across Borders for a Renowned Beauty Retailer
From local delivery complexity to reliable multi-market checkout: controlled feature rollout inside a shared ecommerce platform.
Client
A leading global health and beauty retailer with 12 brands operating across 28 markets in Europe and Asia under a unified technical infrastructure. Each regional ecommerce platform is tailored to local markets, but all brands are built on a shared codebase to streamline development and ensure consistency.
Need
The client aimed to accelerate the development of one specific brand within a global portfolio of 12 brands operating across 28 markets. The work had to move quickly enough for a competitive local market, but every change still had to fit a shared codebase used across the wider group.
That shared-platform context made delivery and checkout features more sensitive than standalone local development. New pickup and home delivery behavior had to be introduced without disrupting other business units, and checkout still had to remain predictable when external delivery services were unstable or unavailable.
Solution
The idea behind implementing a shared codebase supporting multiple brands across diverse markets was to speed up the launch of new platforms, streamline common feature rollouts, and simplify ongoing maintenance. While future-proof, this approach came with specific limitations and required extra attention to testing and deployment pipelines.
Expert Soft’s team also had to deal with these specifics when working with one of the group’s flagship ecommerce brands: a feature-rich online beauty and pharmacy store operating in the Netherlands and Belgium.
Built on SAP Commerce Cloud, the project involved not only developing new features but also performing version upgrades and tackling five layers of caching. Each layer required careful tuning and invalidation to ensure content remained fresh and accurate.
During the project, our team led several critical system improvements that brought substantial, long-lasting enhancements to platform stability and performance.
Key milestones
Data import was overloading the main SAP Commerce Cloud app, affecting overall performance. To fix this, our team carved out the import logic into a dedicated microservice.
Offloading the heavy lifting streamlined platform operations and ensured more efficient data handling as well as reduced system strain and delivered a more responsive and future-ready architecture.
We introduced SmartEdit to give business users more control over content visibility. But one page type lost its restriction settings — critical for scheduling time-sensitive campaigns.
Our team dug into the custom SAP Commerce code, simplified the logic, and brought restrictions back to life. Now, marketers can confidently plan and launch content right on schedule, without disruptions.
The client needed a full storefront redesign to match new branding: colors, logos, banners, the works. While the visual updates were clear-cut, ensuring consistent styling across countless reusable components was the real challenge.
Our team built a custom Groovy script to automate color and style updates, applying the new brand palette across the board. This eliminated manual rework and guaranteed uniformity, ensuring a seamless rollout delivered on time.
To improve delivery flow and manage system load, we:
- Integrated address validation via PostNL with caching to reduce external system dependency.
- Rolled out a dynamic delivery pricing model to redistribute demand during peak days.
- Consolidated multiple delivery types into a unified Zone Delivery Mode with custom behavior controls.
Together, these efforts strengthened platform stability, improved customer experience, and ensured efficient, scalable operations within the constraints of a globally shared codebase.
Delivery Promise Service (DPS) Integration
Delivery options were one of the areas where local market needs met shared-platform constraints. Pickup and home delivery promises had to stay accurate, current, and usable inside checkout, where timing-sensitive customer decisions leave little room for brittle integrations. Static imported data or direct carrier behavior could not provide enough control for the flow the client needed.
Expert Soft integrated Delivery Promise Service into the SAP Commerce Cloud checkout flow through a REST API. For pickup, the platform sends the cart and nearby stores to DPS and receives availability or delivery promises per store. For home delivery, the service returns delivery time options based on the customer’s address and cart. Both options became part of one delivery promise flow rather than separate integration paths.
This gave customers more predictable choices in checkout while allowing the platform to support local delivery behavior inside the shared ecommerce environment. The integration therefore had to serve both sides of the problem: accurate customer-facing delivery promises and controlled rollout within a multi-market SAP Commerce Cloud platform.
Fallback logic for checkout continuity
Reliability could not depend on DPS being available on every checkout request. If the service timed out or returned errors, a circuit breaker detected the failure and moved the platform into a controlled fallback path instead of repeatedly calling a failing dependency. The fallback generated delivery promises from data already available in SAP Commerce Cloud, including cart contents and delivery-related information.
This made fallback a complete delivery flow rather than a small error handler: customers could still select delivery options, continue through checkout, and place orders even when the external service was unavailable.
Downstream awareness through Kafka
Downstream systems also needed to understand which path produced the selected delivery promise. When a customer selected a fallback-generated promise, the platform sent a Confluent Kafka message using an Avro schema so downstream processing could handle that state correctly.
This kept fallback behavior visible across the distributed delivery flow. The important point was not only that checkout stayed available, but that the rest of the system could distinguish a DPS promise from a fallback promise and process it with the right context.
Schema version control
During implementation, message delivery failed because the Avro schema used by the producer did not match the versions registered in the Kafka schema registry. The fix was to configure the producer explicitly to use the correct schema version instead of relying on automatic schema resolution.
That issue turned schema management into an integration-control concern. Versioned schemas can protect distributed contracts, but only when producer and consumer expectations are aligned in practice.
AI-Powered Features
As part of a broader effort to modernize the ecommerce experience and enhance customer engagement, the business introduced two AI-driven tools: a virtual makeup try-on and an AI-powered chatbot. These features were designed to enrich the online shopping journey while easing the load on customer support teams.
The virtual try-on tool enables users to preview cosmetics in real time, directly within the storefront. This required seamless integration with the existing front-end and back-end layers to ensure responsiveness, accuracy, and performance consistency across devices. Our team aligned the tool’s functionality with the current tech stack, enabling a frictionless user experience without disrupting core platform components.
In parallel, we integrated an AI-based chatbot to assist with customer inquiries, providing real-time responses and reducing reliance on human agents for routine questions. The chatbot was embedded in the storefront interface and connected to back-end services, ensuring accurate data retrieval and smooth communication across systems.
Both integrations were executed with full alignment to platform standards, allowing the business to adopt cutting-edge tools without compromising operational stability. Together, these features improved user satisfaction, increased on-site engagement, and helped cost-effectively scale support capabilities.
Challenges
Keeping shared-codebase releases stable
Regular releases had to move changes from a business-unit branch back into the shared master branch used by multiple business units. Parallel changes from other teams, especially after long merge gaps, created conflicts in overlapping logic and made the release path more sensitive than a normal single-team merge.
Expert Soft handled these merges by manually aligning the overlapping code and checking that local changes did not break existing flows for other business units. This kept the work grounded in the shared-platform reality: local feature delivery had to move forward without weakening release stability for the wider ecommerce ecosystem.
Stock synchronization challenges during peak sales events
During sales events, our team pinpointed an issue: some items were available after being sold out. This was caused by discrepancies in stock updates.
To address the issue, our team developed custom cart-cleaning scripts designed specifically for post-sale scenarios. These scripts automatically removed expired or out-of-stock items from customer carts after high-volume events, ensuring that the front-end inventory reflected actual availability. This not only reduced the risk of overselling but also helped maintain trust in the platform’s accuracy without introducing manual operational overhead.
Technologies
SAP Commerce Cloud, Java, Spring, Spring Boot, Hibernate, JPA, Kafka, ActiveMQ, Micronaut, Groovy, SmartEdit, Bloomreach, Polyglot, REST
Conclusion
For this retailer, ecommerce evolution was not a matter of adding isolated features to one brand. Expert Soft helped move several platform workstreams forward while keeping the shared SAP Commerce environment stable: data imports were separated from the core, delivery promises became more reliable in checkout, AI features were integrated into the storefront, and release work stayed aligned across business units.
The result is a more controllable platform where local market needs can evolve without weakening checkout reliability or shared-codebase stability.