ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

Message Broker

The star hub: a single exchange point instead of an N×N mesh of point-to-point connections.

Problem

An EDI chain has 50 partners and 30 internal sub-systems. Without a broker, every sender must know every receiver — unmanageable combinatorics, and a change at one partner forces recompiles at all the others.

Forces

  • An N×N integration costs O(N²) links and as many tests.
  • A broker becomes critical: its outage blocks the whole chain.
  • A broker must be highly available (cluster, multi-AZ).
  • The broker can become a single point of failure or bottleneck.

Solution

Centralize exchanges on a Message Broker: a sender publishes to a topic / queue / channel; the broker routes to recipient(s) per rules (topic-based, content-based, partner-based). Decoupling — temporal (sender and receiver not connected at the same time), spatial (sender knows a broker, not individual receivers), synchronous (sender does not wait) — is total. Implementations: IBM Sterling, Kafka, RabbitMQ, AWS SQS+SNS, Apache Pulsar.

EDI implementation

In modern EDI, the target architecture is: (1) partners → AS2/AS4 gateway → broker (Kafka, MQ) → (2) internal consumers (ERP, lake, portal); (3) reverse for outbound. The broker carries all topics by business type (`edi.orders`, `edi.invoices`, `edi.mdns`). Complementary patterns: Selective Consumer to filter on the broker, Durable Subscriber to lose nothing while offline, Dead Letter Channel for exceptions. The broker also materialises the Message Store via retention (Kafka log retention = 7 days by default).

Anti-patterns

  • Single-instance broker without HA — a crash blocks the whole chain.
  • Broker shared between prod and test — a load test breaks prod.
  • Broker as DB — storing business state in Kafka instead of a dedicated store.
  • Sender bypassing the broker via a direct call — re-coupling.

Sources