Skip to content
Back to insights

Integration engineering

Webhooks are not enough: designing reconciliation for external systems

Real integrations need a repair path for missed events, stale state and partial failure.

July 2026 · 7 min read

A webhook is an excellent signal that something changed. It is not a guarantee that your system will always receive, process and persist that change exactly once.

Production integrations need a second mechanism that periodically compares important external state against local state. This is reconciliation, and it is one of the differences between a demo integration and an operationally reliable one.

A reconciliation loop should be boring

The job should be idempotent, observable and narrow in scope. It should identify drift, repair what can be repaired safely, and surface what requires human attention.

  • Read the intended state.
  • Read or infer the actual state.
  • Calculate the difference.
  • Apply only safe, idempotent corrections.
  • Record failures where an operator can see them.

Have an operational version of this problem?

Let’s look at the system behind it.

Start a conversation