Not all integrations are built the same. The right pattern depends on your data volume, latency requirements, and system capabilities.
Pattern 1: Point-to-Point API Integration (EUR 400-800 per connection)
- How it works: System A calls System B's API directly. Example: when a new order is placed in Shopify, call the accounting API to create an invoice in Xero.
- Best for: 2-3 systems with simple, well-defined data flows. Low volume (under 1,000 events/day).
- Limitation: Does not scale. Connecting 5 systems point-to-point means 10 separate integrations to maintain. Adding a 6th system requires 5 new connections.
Pattern 2: Hub-and-Spoke (EUR 1,500-3,000 for the hub + EUR 300-500 per spoke)
- How it works: A central integration hub receives data from all systems and distributes it. Each system connects only to the hub, not to each other.
- Best for: 4-8 systems. Medium volume (1,000-50,000 events/day). Most small-to-mid businesses.
- Advantage: Adding a new system means one new connection, not N-1. The hub handles data transformation, conflict resolution, and error retry.
Pattern 3: Event-Driven Architecture (EUR 3,000-6,000)
- How it works: Systems publish events to a message queue (RabbitMQ, Redis Streams, or AWS SQS). Consumers subscribe to relevant events and process them independently.
- Best for: High volume (50,000+ events/day), real-time requirements, or systems that need to react to changes instantly.
- Advantage: Fully decoupled. Systems do not need to know about each other. Handles spikes gracefully with queue buffering.
Pattern 4: Batch ETL (EUR 800-2,000)
- How it works: Data is extracted from source systems on a schedule (hourly, daily), transformed to match the target schema, and loaded into the destination.
- Best for: Reporting and analytics, data warehouse population, systems without real-time APIs, large historical data migrations.
- Limitation: Data is never fully real-time. Minimum latency is typically 15-60 minutes.
My recommendation: Start with hub-and-spoke for most businesses. It balances simplicity, scalability, and cost. Move to event-driven only when you have genuine real-time requirements or high data volumes.