The worst part about Transparent Redirect is that you can't run any server-side callbacks (like confirming inventory is still available) at the point of sale, you have to run it when they first load the checkout page. Why? Because by the time the checkout page data hits your server, Braintree has already charged the customer's card. If you need to abort the transaction at that point it's frustrating at best.
Maybe there's a really obvious way to work-around that but multiple emails to their developer support weren't helpful.
With Stripe, you can run callbacks and validations all day long and you'll never capture your customer's money until you explicitly say "do it." Much cleaner.