Which tells you everything. There's a stocking fee you pay to be on the Apple Store. I never hear the HN crowd complaining about the hoops you have to jump through to get your product on Walmart's shelves. It's almost like the entity owning the retail channel and the customers gets to set the T's and C's. You always have the option for not targeting Apple's customers and building your app for Android only - just like you can tell Walmart where to shove it and only sell your product at Costco. It's how retail works.
But if you make a purchase within the app, the developer should be able to charge their user however they want (Apple Pay, Paypal, CC directly). Wal-Mart doesn't get a share of every game I buy on my Xbox even if I bought the console off a shelf at Wal-Mart.