Not every integration needs to be instant. Choosing the right pattern for each flow of information keeps systems reliable and avoids unnecessary complexity and cost.

Real-time integration

In real-time integration, one system notifies or calls another as soon as something happens, often through an API request or a webhook.

Use it when a delay would cause a real problem, such as confirming a payment, checking stock before an order or updating a customer’s status during a conversation. Consider that both systems must be available, and failures need immediate handling and retries.

Scheduled batch integration

Batch integration moves information at set intervals, such as every hour or overnight.

Use it when some delay is acceptable, such as daily reporting, payroll preparation or synchronising reference data. Benefits include simpler error handling, fewer requests and predictable timing that can be scheduled outside busy periods.

File-based exchange

Some systems can only export and import files such as CSV or XML. Files are placed in an agreed location, collected and processed on a schedule.

Use it when a system offers no API, or a partner prefers file exchange. Take care with file formats, naming conventions, character encoding and secure transfer. Validate every file before processing it.

Event-driven integration

In larger environments, systems can publish events, such as “order created”, to a message queue that other systems subscribe to. This decouples systems so they do not depend on each other being available at the same moment.

Use it when several systems need to react to the same events, or volumes are high.

Choosing a pattern

For each information flow, ask:

  1. How fresh must the data be?
  2. What happens if the receiving system is unavailable?
  3. How much data moves, and how often?
  4. What do the systems support?

A single organisation often uses several patterns: real-time for payments, batch for reporting and files for a partner who supplies data weekly.

Common requirements for every pattern

  • Validate data before accepting it.
  • Make processing safe to repeat, so retries do not create duplicates.
  • Log what was exchanged.
  • Alert someone when an exchange fails or stops arriving.

The best integration is the simplest one that meets the business need reliably.

Discuss your software project

Tell us what you need to build, connect or improve. We will review the requirements and identify the appropriate engineering work.