Integration debugging: time, money, and retries
Table of Contents
Integrations fail when two systems give the same value different meanings. A timestamp becomes a local calendar date. An order total cannot be divided into equal whole-cent unit prices. A timeout hides a payment that already succeeded.
Choose the boundary you are debugging
- Go and MongoDB timezone mismatch: inspect the instant and location, then choose the timezone before formatting a date.
- Fractional cents in a POS integration: preserve the total by representing the remainder explicitly.
- Judging generated retry logic: use payment idempotency to question whether a retry is safe.
The useful question is often simple: which assumption does each side make, and where is that assumption written down? My backend and platform work is largely about making those boundaries visible.