Transforming Coupon Management for Enhanced Efficiency

Discover how we improved the coupon processing system for a leading French and Belgian food distributor, driving automation and reducing manual workload.

Project Overview

Innovative Solutions for a French and Belgian Food Distributor

In collaboration with an IT consulting firm, we embarked on a project to streamline the coupon management system for a prominent Belgian client in the food distribution sector. The main business goal was to automate coupon processes, reduce manual handling, and improve maintainability of the existing solution.

Our Role in the Project

As the project lead, I was responsible for the comprehensive redesign and implementation of the new coupon management solution. My duties encompassed code refactoring, rigorous testing, and thorough documentation. I also facilitated knowledge transfer sessions and collaborated closely with the quality assurance team and the client’s representatives to ensure seamless integration and optimal performance of the new system.

Challenges & Objectives

Overcoming Obstacles

Before Implementation
  • A major performance problem stemmed from the way promotions were modeled: the system used many individual, customer-specific promotions, which resulted in thousands of active promotions running simultaneously. This caused degraded site performance when promotions were evaluated (e.g., during checkout) and made promotions searches in the Backoffice slow and inefficient.
  • Original solution was not maintainable or scalable (many hardcoded values and “magic” numbers).
  • Previous vendor and client teams had changed completely, leaving no documentation.
  • Knowledge existed only partially, scattered in poorly maintained code, often commented in French with shortened variable names.
Objectives
  • Rebuild the solution to be maintainable, scalable, and documented.
  • Improve testing, code quality, and knowledge transfer.
  • Remove dead code and simplify system logic.
  • Replace thousands of customer-specific promotions with a predefined set of reusable promotions, significantly improving Rule Engine performance.
  • Implement an automated process (triggered via a cronjob) to manage coupon assignment, promotion user groups, and inactive coupon code cleanup, ensuring the system remains efficient without manual maintenance.

Solution & Approach

Our strategic approach to enhancing the coupon management system involved several key initiatives:

  • Refactoring & Maintenance: Cleaned legacy logic, removed dead code, and externalized configurations.
  • Testing: Increased from minimal to full unit test coverage for core functionalities.
  • Documentation & Knowledge Sharing: Created solution documentation and led online sessions with devs and client teams.
  • Collaboration: Supported QA testing and ensured a smooth transition for client developers.

Technologies & Tools

SAP Commerce Cloud (Hybris)

Utilize the robust capabilities of SAP Commerce Cloud to enhance your e-commerce platform, ensuring scalability and flexibility.

Java & Spring Framework

Leverage the power of Java and Spring Framework to build secure, high-performance applications tailored to your business needs.

GitHub (version control)

Using GitHub for efficient version control, enabling seamless collaboration and streamlined code management.

JUnit Testing Framework

JUnit framework validates application functionality, ensuring reliability and promoting maintainable, high-quality code.

CI/CD via GitHub workflows

Automation of deployments processes with CI/CD pipelines using GitHub workflows

MySQL and Flexible Search

Leveraging MySQL and Flexible Search optimized data storage for swift retrieval and enhanced search capabilities, greatly improving system performance and user experience.

Key Achievements

Results & Impact

Maintainability

Fully refactored and documented codebase

Scalability

Ready for future coupon process extensions

Testing

Full coverage for all core functionalities

Clean-up

Dead code removed and complexity reduced

Knowledge Transfer

Client team trained and confident to maintain system

Performance Optimization

In addition to structural refactoring, system performance was significantly improved by automating several previously manual processes

These optimizations reduced the number of manual steps, improved processing efficiency, and minimized errors in the coupon lifecycle

Automatic coupon assignment to predefined promotion lists.

Automated user management within promotion user groups

Automatic removal of inactive coupon codes from promotions based on expiry date

Improved reporting by using a standardized promotion set instead of thousands of customer-specific promotions, reducing data volume and boosting efficiency

Key Learnings & Reflections

Legacy projects with no documentation require patience and a structured reverse-engineering approach

Full ownership reinforces the importance of end-to-end accountability

Handling multilingual, cryptic code improved analytical and debugging skills

Project Summary

Role Backend Developer & Solution Owner
Duration January – June 2024
SAP Version SAP Commerce Cloud
Focus Area Automated Coupon Processes, Refactoring, Testing, Documentation, Rule engine, Cronjobs
Result Fully maintainable and scalable solution with full test coverage and improved team knowledge

Client Feedback

“Their collaborative approach ensured that all our needs were met, and the end result was a robust system that supports our business growth.”

Interested in similar results?

Let’s discuss how I can help you build clean, maintainable, and scalable SAP Commerce solutions

Want to see more projects?

Discover how complex business processes have been optimized, performance improved, and scalable, well-documented solutions implemented