Dev Tools · 2h ago
NestJS bug caused phantom refunds: money moved, system never knew
A founder discovered refunds processed via NestJS were disappearing because the code assumed both the payment provider call and database update would succeed together. In reality, if the server restarted after the provider refunded but before the database updated, the internal ledger never recorded the refund. The bug left customers without refunds and support unable to trace the issue.
Meridian48 take
This is a classic distributed systems failure that NestJS's synchronous-looking code masked — a reminder that even simple payment flows need transactional guarantees or compensating actions.
Read the full reporting
A founder once asked me why refunds kept disappearing, here is what NestJS was actually doing →
DEV Community
nestjspayment-refund-bug