#jessie_docs
1 messages · Page 1 of 1 (latest)
👋 Welcome to your new thread!
⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1450347310335660133
📝 Have more to share? Add more details, code, screenshots, videos, etc. below.
Hey! Could you include the rest of the message after
Because of this, we wan...
Yes!
This is my question.
We currently have an existing web service where payments are handled via Stripe Checkout, and the purchase state is finalized using Stripe webhooks.
We are planning to release iOS and Android apps that are essentially WebView-based apps for the same service.
The product we sell is digital consumable credits, which are used for AI image generation. Users purchase credits, and those credits are then consumed when features are used in the app.
Our primary target market is the United States, but we are also considering supporting customers in other regions in the future. Because of this, we want to design a payment architecture that works well globally while following Stripe best practices for mobile apps.
Based on Stripe’s documentation, we understand that:
- iOS apps (US only) can redirect users to an external Stripe Checkout page for digital goods.
- Android apps can support Stripe payments either in-app or via redirect.
Our main questions are:
- Is it acceptable and recommended to reuse our existing web-based Stripe Checkout flow for both iOS and Android apps by redirecting users to a Stripe-hosted Checkout page?
- For iOS (US App Store), is redirecting users from the app to an external browser (Safari or SFSafariViewController) to complete Stripe Checkout the correct and recommended approach for selling digital consumable credits?
- When expanding to non-US regions, is it reasonable to continue using the same web-based Stripe Checkout flow and allow users to consume previously purchased credits in the app?
- Are there any Stripe-specific requirements or best practices we should follow when using Stripe Checkout for mobile apps, particularly around deep linking back to the app and webhook-based fulfillment?
Additionally, we would appreciate any high-level guidance on common patterns you see among Stripe customers with similar mobile app setups.
For example, how do apps selling digital credits typically structure payments across web and mobile while keeping their payment logic unified?
We want to ensure our integration follows Stripe best practices and scales cleanly across platforms and regions.
Is it acceptable and recommended to reuse our existing web-based Stripe Checkout flow for both iOS and Android apps by redirecting users to a Stripe-hosted Checkout page?
Yup, what you are asking here is basically what is covered in the docs that you sent here: https://docs.stripe.com/mobile/digital-goods/checkout.
For iOS apps selling digital products, content, and subscriptions in the US, you can redirect customers to an external payment page to accept payments using Stripe Checkout. This guide describes how to accept payments for purchasing credits in your iOS app by redirecting customers to a Stripe-hosted payment page.
However for Android, you would have to use to use of the the payment surfaces listed here: https://docs.stripe.com/payments/mobile and wont be able to use deep links to redirect Customers to the Stripe hosted payment page
For Android developers in the US, you can process payments directly in-app with a third-party payment processor. To accept payments directly in-app with Stripe, see In-app payments.
For iOS (US App Store), is redirecting users from the app to an external browser (Safari or SFSafariViewController) to complete Stripe Checkout the correct and recommended approach for selling digital consumable credits?
Yup, Opening the checkout page in Safari is one of the steps listed here: https://docs.stripe.com/mobile/digital-goods/checkout#open-checkout
When expanding to non-US regions, is it reasonable to continue using the same web-based Stripe Checkout flow and allow users to consume previously purchased credits in the app?
The use of Universal links to redirect your users to the Stripe Hosted checkout page is mainly available in the US, so I dont think it would be feasible for places outside of the US. Although, you can redirect them to a Payment Link in iOS, it is also supported in the European Economic Area (EEA) as noted here: https://docs.stripe.com/mobile/digital-goods/payment-links
Are there any Stripe-specific requirements or best practices we should follow when using Stripe Checkout for mobile apps, particularly around deep linking back to the app and webhook-based fulfillment?
I think some of the points that we have discussed:
- For webhooks, I would think that listening for the right webhook events, acknowledging you receieved the event, understanding that Checkout redirects the customer to the success_url 10 seconds after a successful payment etc...
https://docs.stripe.com/mobile/digital-goods/checkout#webhooks - To ensure that Universal links/deep links work correcting, there are a few setup steps that you need to follow here: https://docs.stripe.com/mobile/digital-goods/checkout#testing-universal-links