From the perspective of a dev starting a new app, it's a great trend.
From the perspective of a dev maintaining a Stripe integration first built in 2014, the breaking changes and migrations haven't always been fun. Stripe circa 2016 "just worked". Today, we regularly run into stripe issues (ie. irregularities in webhook data structure) as a result of new edge cases introduced when Stripe has added new functionality + features.
Then again, I think we're at a point in technology where we basically need to assume that nearly 100% of an application's code will need a significant refactor (or complete rewrite) at least every few years in order to remain maintainable.
We're not actively having problems. It was a few months ago. Refreshing myself on the technical details of the payload inconsistency and its cause would take a couple hours. But I believe it was related to us using a 3rd party service (that integrates with Stripe) sending out emails to customers whose charges failed, with a form to collect updated credit card info. The form for updating cc info used payment intents (may be using the wrong term) which is delivered differently than the (old) payment sources type.
The edge case being now there exists 2 groups of customers, 1 group who have a payment method attached under the new payment method / payment intent architecture, and a 2nd group with payment methods attached using the original / old method.
Webhooks often include the payment method, and the data structure for the payment method differs depending on how the payment method was attached to the customer.
As a shopify store operator, I'm super frustrated at a few things that we can't edit. This looks like it's not editable, but BETTER from a conversion standpoint, which could be a significant impact to profits.
How so? To me it looks like Stripe is just providing a checkout experience, while Shopify is a complete ecommerce system for online and retail stores.