Use gift cards.
Can't comment on apple, but I use gift cards on android because I don't trust using my debit/credit card. Once it's run out it's run out! Can always get another for myself as the cost is the same, penny for penny.
My daughter is not old enough yet to want in app game purchases, but when she is, it's up to her whether she wants to blow her full monthly "gift card" allowance in one go. She'll learn. And if she doesn't, tough! Seems to me as much about bad parenting, as well as deception/misdirection from the software companies - platform or app.