Specialty Wholesale Food Distributor

Solutions Stack

Business Model

B2B

Annual Revenue

3.43 B USD

Regions Operating In

United States
Canada
Middle East

Industry

Food Distributor

# of ERPs

8


Challenge

The client, a rapidly expanding Specialty Wholesale Food Distributor with multiple brands, faced a significant challenge. Their brands, obtained mostly through acquisitions, each had their unique Enterprise Resource Planning (ERP) system. The traditional approach required each ERP to be integrated with their main website, which ran on Optimizely. This method was neither scalable nor efficient, especially given the client's trajectory of continued growth

Multiple ERPs

With the acquisition of different brands, the client's technological landscape expanded, inheriting various ERPs - three distinct systems from the Middle East acquisitions alone.

Security Concerns

The IT team was keen on ensuring that all data traffic remained closed to their clientele and wasn't public. This meant additional security configurations with every new integration.

Non-Uniform Data Handling

Some of the older ERP systems worked differently - some exported only files, leading to inconsistencies in data handling and integration.

Solution

Decoupling Optimizely and ERPs: The first step was to make Opti agnostic to the various ERPs, which meant building an architecture that was independent of the specific ERP being used.

  1. Azure API Gateway: Instead of Opti directly communicating with each ERP, an Azure API Gateway was introduced as a middleman. The gateway served as a front-end API, handling all routing and security implementations. This ensured that regardless of where the data originated, there was a standardized method for the website to pull or push information.

  2. Back-end API Integration: With the API gateway in place, when a new brand is onboarded, the middleware requires minimal adjustments. Opti communicates with the gateway, which in turn, integrates with the back-end API.

      • Azure Technologies: Multiple Azure tools were utilized to enhance and secure the integration process:Azure Key Vault: Centralized storage for credentials and URLs.

      • Azure Function & Service Bus: Vital building blocks to structure the architecture, ensuring flexibility and scalability.

      • Redis Cache: Used to cache data, making sure the system runs efficiently.