Outcomes
Envisioned Solution
Evergreen Systems built a multi-platform catalog ingestion system that allows merchants on Salesforce Commerce Cloud (SFCC) and Shopify to connect their stores and automatically publish selected product catalogs to Generous's AI-powered gifting marketplace.
The solution separates platform-specific and platform-agnostic concerns across four stages:
1. Source Layer: Platform Connectors
Native merchant plugins (Salesforce Cartridge and Shopify Admin app) live inside the merchant's existing environment. Merchants authenticate, select products, and push catalog data without leaving their admin tools.
2. Security Gate: API & OAuth 2.0
All data is transmitted through a versioned REST API secured with OAuth 2.0, ensuring strict merchant data isolation and preventing unauthorized access across the platform.
3. Backend Processing: Validation & Job Queue
A queue-backed asynchronous processing layer (Redis + BullMQ) picks up catalog uploads as background jobs. A validation and normalization engine converts platform-specific data into Generous's Universal Product Schema.
4. Database Library: Persistent Storage
Standardized product data, ingestion job history, and sync metadata are stored in MongoDB, giving merchants full visibility into sync progress, item-level errors, and past outcomes.
This architecture allows Generous to onboard merchants faster, eliminate manual data reformatting, and scale from dozens of brands to thousands, while keeping platform connectors lightweight and the core ingestion pipeline stable and extensible for future integrations.
Technologies
The project spans platform connector development, a secure REST API, asynchronous job processing, and persistent storage, each layer using purpose-fit tools.
JavaScript
Used for all connector logic across both platform plugins, the ingestion API, and background job processing, providing a consistent language across the full stack.
Salesforce Commerce Cloud (SFCC)
The SFCC cartridge is built using Salesforce APEX and Business Manager extensions, enabling merchants to configure, schedule, and export product feeds directly from their existing admin environment.
Shopify
The Shopify Admin app allows merchants to select products, manage Generous-specific attributes, and export catalog feeds, with automatic re-export triggered on inventory or catalog updates.
MongoDB & Mongoose
MongoDB stores products, catalogs, ingestion jobs, and sync history. Mongoose adds schema validation and structure on top, ensuring consistent data persistence across all connector platforms.
Redis & BullMQ
Redis-backed BullMQ powers the asynchronous job queue, ensuring large catalog uploads are processed as background workers without blocking the merchant-facing API or timing out.
OAuth 2.0 & Stytch M2M Auth
All data transfer between connectors and the Generous backend is secured with OAuth 2.0. Stytch provides machine-to-machine authentication, guaranteeing strict merchant data isolation.
Jest & Mocha
Unit and integration testing are implemented with Jest on the backend and Mocha/Chai/Sinon in the Salesforce B2C repository, following a red/green/refactor test-driven development workflow.
Schedule, Resources, and Budget
The project was delivered across three sprints aligned with capstone milestones, moving from core SFCC integration through Shopify connectivity to full system integration and delivery.
| Milestone | Deadline | Status |
|---|---|---|
| Research & Tech Feasibility | November 13, 2025 | Complete |
| Engineering Fest Poster Presentation | November 21, 2025 | Complete |
| Salesforce Plugin Prototype & Requirements Document | December 10, 2025 | Complete |
| Software Design Document | February 6, 2026 | Complete |
| Sprint 1: SFCC Cartridge & Alpha Demo I | February 13, 2026 | Complete |
| Sprint 2: Shopify Connector, Ingestion API & Alpha Demo II | March 20, 2026 | Complete |
| Software Testing Plan | March 29, 2026 | Complete |
| UGRADS Symposium Presentation & Poster | April 2026 | Complete |
| Sprint 3: Full Integration, Testing & Acceptance Demo | May 1, 2026 | Complete |
Progress: All milestones delivered on schedule. Weekly sponsor meetings with Kyle Montgomery via Google Meet throughout the project. Budget: $0; all development used free tools, open-source libraries, and sponsor-provided Salesforce Commerce Cloud and Shopify sandbox resources.
Testing Outcomes
The project followed a red/green/refactor TDD workflow across all development cycles, with layered testing covering isolated logic, system boundaries, and client-facing usability.
14 test suites across merchant auth middleware, feed validation, normalization, job processing, S3 configuration, and Salesforce B2C setup helpers.
End-to-end coverage of retailer catalog retrieval & handoff, merchant onboarding & persistence, and the full feed upload to job processing to status retrieval pipeline.
A task-based usability session with sponsor Kyle Montgomery validated that onboarding, feed management, and ingestion workflows match real operational expectations.
Codebase & Demo
The completed codebase includes the Salesforce Commerce Cloud cartridge, the Shopify Admin connector app, and the shared ingestion backend API. The full source is archived as a zip file available in the Archive.
Three product demonstrations were delivered throughout the project:
- Alpha Demo I: Demonstrated SFCC cartridge feed export, Business Manager product controls, scheduled export jobs, and Generous-compatible JSONL feed output.
- Alpha Demo II: Demonstrated the Shopify Admin app installation, product catalog selection, feed export, schema validation, and automatic re-export on catalog updates.
- Acceptance Demo: Full end-to-end demonstration covering both connectors, the ingestion API pipeline, OAuth authentication, background job processing, and final delivery to the Generous backend.