OURQUILANE: Yalidine Delivery
Orders Microservice: Multi-Channel Fulfillment
Event-driven orders microservice for a national delivery company, ingesting HMAC-validated webhooks from Shopify, WooCommerce, and Google Sheets and orchestrating fulfillment end to end.

Overview
A production orders microservice powering multi-channel e-commerce fulfillment at Yalidine Delivery. Merchant orders arrive through HMAC-validated webhooks from Shopify, WooCommerce, and Google Sheets, flow through an API gateway into the orders service, and are executed by a fulfillment orchestrator that reconciles stock and records failures. Built as a NestJS 11 monorepo with RabbitMQ messaging, Redis caching, and PostgreSQL persistence.
What I Did
- →Architected a NestJS 11 monorepo: API gateway, orders service, fulfillment orchestrator, and shared libraries (common enums, interfaces, and a reusable microservice client module)
- →Built the API gateway handling routing, authentication, and rate limiting for all inbound traffic
- →Implemented the orders service owning the full order lifecycle, tracking codes, and draft reasons
- →Built HMAC-validated webhook ingestion for Shopify, WooCommerce, and Google Sheets order sources
- →Designed the fulfillment orchestrator with lifecycle hooks, snapshot/delta diffing, stock reconciliation, and failure recording
- →Set up RabbitMQ RPC messaging between services with per-client timeouts to isolate slow consumers
- →Used Redis for caching and session state to keep hot paths off the database
- →Modeled orders and fulfillment plans in PostgreSQL
Challenges
- •Keeping stock consistent while orders arrive concurrently from three external platforms
- •Processing webhooks idempotently so retries from Shopify/WooCommerce never duplicate orders
- •Diffing order snapshots against deltas to compute the minimal fulfillment work on each update
- •Recording and surfacing fulfillment failures without blocking the ingestion pipeline
Results
- ✓Single source of truth for orders across three sales channels
- ✓Snapshot/delta diffing avoids reprocessing entire orders on every merchant update
- ✓HMAC validation and gateway rate limiting protect the pipeline from spoofed or abusive traffic
- ✓Shared microservice client module standardized inter-service communication across the monorepo
Tech Stack
NestJS 11
Modular monorepo structure with first-class microservice transport support
RabbitMQ
RPC between services with per-client timeouts and reliable delivery
PostgreSQL
Transactional storage for orders and fulfillment plans
Redis
Cache and session state for high-traffic order ingestion