Sometimes it's not about the "edge cases" and handling Stripe quirks. The main design consideration for global Stripe integrations is SCA/3DS or "payment confirmations".
If you implement something, then add SCA/3DS "payment confirmations" later on, I think it's impossible to fix that.
The main pain point I remember from my biggest integration was getting all the webhook events right. There was also a thing about the order in which the events were received sometimes.
If you implement something, then add SCA/3DS "payment confirmations" later on, I think it's impossible to fix that.