When creating a PaymentIntent with manual capture, record the authorization timestamp and the expected expiry window for the card network and card type
Build a scheduled job that queries open uncaptured PaymentIntents and compares their creation time against the network-specific capture expiry (commonly 7 days for most cards, longer for some card types)
For PaymentIntents approaching expiry, trigger a business logic decision: capture if goods are ready to ship, or cancel and re-authorize if they are not
If re-authorization is needed, cancel the expiring PaymentIntent and create a new one; communicate any new authorization hold to the customer if applicable
Set up alerts for payment intents that remain uncaptured beyond a safe threshold (e.g., 80% of the expiry window) to allow for manual review
Log capture latency metrics to identify fulfillment bottlenecks that repeatedly cause near-expiry or expired authorizations
Known gotchas
Capture expiry windows differ by card type and region: some debit cards expire authorization holds in as few as 3-5 days; always use the most conservative window when scheduling captures
Stripe may adjust or expire authorizations slightly before the network's stated maximum; do not rely on the full network window as your capture deadline
Canceling and re-authorizing at a different amount requires presenting new authorization to the cardholder; issuers will see a new authorization and the original hold may not release instantly
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp