The recurring nightmare. Implementing cross platform in-app subscription purchases
summary
Built a backend that validates subscriptions for iTunes, Google Play and Amazon and it works but not without hacks: server posts base64 Apple receipt to iTunes and must parse odd non‑JSON payloads, check product and transaction IDs to block fake receipts (huge surge of fraud days after launch), use a cron job because there are no webhooks, and handle iTunes sandbox 2107 redirects. On Android use developer payload to bind tokens to users and check new paymentState to avoid fake renewals. Amazon’s sandbox is unreliable so live app testing and a Heroku proxy are used. Tools: iTunes/Google/Amazon APIs, Ruby backend, Braintree for other payments.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:29What are in-app purchases
- 3:38Expected API features
- 5:25iTunes implementation struggles
- 12:53iTunes external actions trap
- 18:54Google Play improvements
- 24:38Google Play external actions
- 27:06Amazon App Store challenges
- 34:10Windows Store limitations
- 34:53Testing and future work
- 40:51Open source plans
related talks
44miOS Subscriptions are Hard
44mTaking your users’ money: In-app billing from start to best practices
29mMoney Makes Your App Go Round
47mBe rational. Stop paying Apple & Google 30% of your revenue
15mKeynote: The Operating System of Payments, UX and Security in Modern Apps
33mMonetize your Android app the right way
17mUnveiling the Future of In-App Payments in Europe: The Evolution of app Stores
25mOptimizing your app’s revenue: flexible monetization tools
