Skip to main content

Integrations Overview

CommerceBridge integrates with external services through a modular integration layer. Each integration provides specific modules that fulfill system roles like queue management, data storage, logging, and notifications.

Integration Architecture​

Integrations follow a consistent pattern:

  • Integration Class - Manages connection lifecycle and configuration
  • Modules - Specialized functionality (queue, logs, data, etc.)
  • Bridge Access - Exposed through bridge.integrations.[service]

All integrations are swappable - the system doesn't care if you use Kafka or RabbitMQ for queuing, the Bridge provides interface consistency within the application.

Available Integrations​

Message Brokers​

IntegrationQueueLogsNotifications
Kafka/Redpanda✅✅✅
RabbitMQ✅✅✅

Data Storage​

IntegrationModules
MongoDBEngagement, Datastore, Inventory, Pricing, Worker, Logs, Translator, UOM, Repository, List, Management

Search & Indexing​

IntegrationPurpose
OpenSearchProduct search, spatial queries, full-text indexing

Commerce Platforms​

IntegrationPurpose
MedusaHeadless commerce platform integration (Coming soon)
StrapiCMS and content management (Coming soon)

Communication​

IntegrationPurpose
MailgunTransactional email delivery
TwilioSMS, voice, and email (SendGrid)

AI & Intelligence​

IntegrationPurpose
OpenAIEngagement generation, OMS intelligence, worker generation

Infrastructure​

IntegrationPurpose
Google Secret ManagerSecure credential storage (Coming soon)
CryptoHashing, signing, magic links (Coming soon)

Module Types​

Worker Queue​

Manages job distribution and processing:

  • Push jobs to workers
  • Fetch job batches
  • Commit completed jobs
  • Handle job failures

Providers: Kafka/Redpanda, RabbitMQ

Logs​

Centralized logging infrastructure:

  • Structured log messages
  • Error tracking
  • Performance metrics
  • Audit trails

Providers: Kafka/Redpanda, RabbitMQ, MongoDB

Notifications​

Event-driven notifications:

  • System events
  • User notifications
  • Worker alerts
  • Integration webhooks

Providers: Kafka/Redpanda, RabbitMQ

Commerce Data​

Core business data storage:

  • Engagements
  • Products (datastore)
  • Inventory
  • Pricing
  • Orders

Provider: MongoDB

Search & Discovery​

Product and data search:

  • Full-text search
  • Faceted search
  • Spatial queries
  • Autocomplete

Provider: OpenSearch

Integration Patterns​

Single Responsibility​

Each module does one thing well. The queue module only handles queuing, not logging or data storage.

Configuration-Driven​

Integrations are configured via environment variables and bridge setup. No hardcoded connections.

Health Checks​

All integrations provide health check methods for monitoring and readiness probes.

Graceful Degradation​

When an integration fails, the system degrades gracefully rather than crashing. Logs fall back, queues retry, data operations queue for later.

Choosing Integrations​

For Development​

  • Queue: RabbitMQ (simpler, easier to run locally)
  • Data: MongoDB (standard choice)
  • Search: OpenSearch (feature-rich)
  • Logs: RabbitMQ (combined with queue)

For Production​

  • Queue: Kafka/Redpanda (higher throughput, better scaling)
  • Data: MongoDB (proven at scale)
  • Search: OpenSearch (production-grade search)
  • Logs: Kafka/Redpanda (centralized, scalable)

Hybrid Approach​

Mix and match based on needs:

  • Kafka for high-volume log transport to multiple log sinks
  • RabbitMQ for worker queue and notifications
  • MongoDB for all data storage
  • OpenSearch for product discovery

Next: Explore individual integrations to understand their modules and configuration options.