Highlights
- Single entry point for webhooks from 3 external providers
- Signature validation for Stripe, Shopify, and shipping APIs
- Redis retry queue with exponential backoff
- Normalized payload format for internal consumers
- Health endpoint reporting queue depth and delivery rates
About This Project
A small Express service built for an e-commerce company that needed a single entry point for incoming webhooks from Stripe, Shopify, and their shipping provider. Previously, each internal service handled its own webhook parsing and validation, leading to duplicated logic and missed events.
The relay receives incoming webhooks, validates signatures against provider-specific secrets, normalizes the payload format, and forwards events to the appropriate internal service endpoints. Failed deliveries are queued in Redis and retried with exponential backoff. A simple health dashboard endpoint reports queue depth and recent delivery success rates.
Tech Stack
Node.jsExpressRedisDockerStripeREST API