How a 2% capture failure rate exposed hidden authorization hold expiry gaps
A developer working on a subscription billing system discovered that roughly 2% of payment captures were failing in production due to expired authorization holds, despite successful testing. While Visa's guideline allows holds to last up to 7 days for most merchant categories, individual card issuers were releasing holds anywhere between 3 and 10 days, with no advance warning in the original authorization response. The root cause was a fraud review queue whose tail-end manual reviews stretched 4 to 6 days, pushing some captures past issuer-specific expiry windows. The team resolved the issue by separately tracking authorization timestamps, automatically re-authorizing when a capture fails with that specific decline pattern on holds older than 3 days, and no longer treating an authorized state as stable beyond 72 hours. The post invites other engineering teams to share whether they handle such cases through automatic re-authorization or by routing delays back to the review queue.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.



Discussion (0)
Log in to join the discussion and vote.
Log in