As a Shopify merchant, we have an existent mobile app built with react-native and now we want to integrate a 'shop' feature within the app. We want to build it internally with our own tech guys. The problems we are facing now, is to complete the checkout within the app.
Our current situation:
- We are using React-Native to build the mobile app (no #C or Object-C, or Swift tech guys in team, so iOs or Android buy SDK is less considered.)
- We are integrating Shopify as part of the feature in the app, we now create a private app to get the access token for storefront API.
- We want to stick with this private app and not switch to public app as we do not intend to list our mobile app on the Shopify app market.
- We prefer not to use webview through web_url and want to complete the checkout within the app.
I read the checkout guide in the strorefront API page (https://help.shopify.com/en/api/storefront-api/guides/checkout-guide#completing-the-checkout), say if I want to use Stripe to complete the payment, I saw there were 3 setup requirements but none of them mentions whether the app has to be a sales channel. However, when I read posts on the Shopify community, lots of people say it needs to create a sales channel app to use the Checkout API. I presume a sales channel app is a public app and I'm pretty confused.
Does anyone know whether it's possible to complete the checkout within the app using the checkoutcompletewithtokenizedpaymentv2 mutation provided by the Storefront API with a PRIVATE app?
I can confirm that in order to gain access to payment processing permissions, you must be a sales channel app, which is something you need to enable in your partners dashboard. Access to payment processing at that point can also be requested from within your partner dashboard in the same area where you converted your app into a sales channel. Considering how access to payment processing is not guaranteed, I recommend creating a staging app specifically for the purpose of being approved for payment processing before you start building.
I don't believe sales channels need to be published, but of course I recommend going through the process and seeing where it carries you.
You can create a partner account at https://partners.shopify.com.
Hi Alex, thanks for your advice. How can I create a staging app? Does it mean being a sales channel app that is unpublished?
Cos I now have a partner account and have created an app request payment processing, but the Shopify support team emailed me saying that it is only for developers who create a marketplace for merchants.