Integration patterns
Integration patterns
Why two-way sync fails, and the four conflict rules that fix it
Most bidirectional integrations are built as two one-way flows pointed at each other. That works until both systems change the same record in the same minute. Here is how to decide which side wins, and how to prove it afterwards.
Integration patterns
Idempotency in practice: stopping duplicate orders and invoices
Webhooks are delivered at least once, not exactly once. A short guide to keys, dedupe windows and replay safety.
Integration patterns
Warehouse to storefront: an eventual consistency integration that converges
A warehouse and a storefront will never agree at every instant. The useful question is how long they are allowed to disagree, how you detect it when they do not converge, and who is told.
Integration patterns
Designing an api versioning integration that fails loudly, not silently
Most internal API changes do not cause an outage. They cause a field that quietly stops being populated, and a month of numbers nobody trusts. This is how to version an internal API so breakage is visible on the day it happens.
Integration patterns
Rate limits and backoff: designing an api rate limit integration for someone else’s ceiling
Every connected system imposes a ceiling on how often you may call it. The difference between an integration that survives that ceiling and one that stalls is a handful of design decisions made before any code is written.
Integration patterns
Partial failure integration: keeping a three-system order flow honest
When an order has to touch a storefront, a warehouse system and a ledger, the interesting question is not what happens when everything works. It is what happens when step two succeeds and step three does not.