Shopify API Billing for Your SaaS: Unlisted Public Apps & External Payments

Hey everyone! I was just browsing through the community forums and spotted a really excellent question from prithvidhelia that I know many of you running SaaS products with Shopify integrations might be pondering. It's a classic scenario: you've built an amazing service that needs to tap into Shopify data, but your customers find you *outside* the Shopify App Store. So, do you still have to jump through all the Shopify App Store hoops, especially when it comes to billing?

The Dilemma: Scaling Your Shopify Integration Beyond Custom Apps

Prithvidhelia's situation is common: a SaaS product (like shipping or support) needs read access to Shopify orders and products via the API. Their clients come directly from their own website, not the App Store. Custom apps, while useful, don't scale efficiently for multiple merchants, creating a major bottleneck. Their proposed solution? An unlisted public app. This approach offers OAuth and API access for many stores without full App Store listing. But the core question is crucial: for an unlisted public app, are you *required* to use the Shopify Billing API, or can you use your own solution like Stripe?

Shopify Billing API: Understanding the Mandate

Prithvidhelia rightly highlighted that their product isn't a "Shopify app" in the traditional sense; it's a standalone SaaS platform using Shopify as a data connector. Merchants pay for their core services, not an "app" directly sold on Shopify.

From an expert's view, the key distinction is *how* your app is distributed and *how* you acquire customers. If you distribute an app *through the Shopify App Store*, the Shopify Billing API is mandatory, and Shopify takes its revenue share because it facilitates discovery, platform, and billing.

However, for an unlisted public app that is *never* listed on the Shopify App Store, and for which you acquire customers directly through your own channels (website, sales team), the Shopify Billing API is generally not mandatory for your core SaaS service billing. You can absolutely bill your customers directly through Stripe or your preferred payment gateway.

Shopify's revenue share primarily targets services monetized *directly through their platform*. If your SaaS product is a separate entity, and the Shopify integration is merely a component, you're using the API as a data pipe, not a sales channel for the "app" itself.

Important Caveat: Always refer to the latest Shopify API Terms and the Shopify Partner Program Agreement. Policies can evolve, and compliance is your responsibility. However, the spirit of the rules has consistently allowed external billing for services not primarily sold *as* Shopify apps on their marketplace.

Your Path Forward: Unlisted Public App with External Billing

Prithvidhelia's intuition was correct. An unlisted public app is the recommended pattern for scalable API access without App Store listing. Here's how:

1. Create Your Unlisted Public App

  • In your Shopify Partner Dashboard, create a new app and choose "Public app." This enables multi-store OAuth and API access.

  • Configure its name, URLs, and essential API scopes (e.g., read_orders, read_products). Ensure your OAuth callback URLs are correct.

  • Crucially, do NOT submit it for App Store review. You'll distribute it via a direct install link.

2. Implement a Direct Merchant Install Flow

  • Generate your public app's direct install URL (e.g., https://{shop}.myshopify.com/admin/oauth/authorize?client_id={api_key}&scope={scopes}&redirect_uri={redirect_uri}).

  • When a new client signs up for your SaaS, guide them to this link from your own website. This begins the OAuth flow for API permissions.

  • After authorization, they redirect to your redirect_uri. Exchange the authorization code for an access token, which you'll securely store for API calls.

3. Continue External Billing for Your SaaS

  • Since clients come via your sales channels, continue using your existing billing system (Stripe, Paddle, etc.) for your SaaS product.

  • The Shopify integration is a feature within your product, not the primary product sold *on* Shopify itself.

This strategy offers scalability and API access for multiple merchants, bypassing custom app limitations while giving you control over customer acquisition and billing. Shopify generally supports you using their API to power external services, provided you're not trying to bypass revenue share for apps *sold* on their platform. If your product's primary value and transactions occur outside Shopify, you're typically clear to use your own billing.

Always keep those Shopify legal documents handy. They're the ultimate guide, and staying informed is always the best policy!

Share:

Use cases

Explore use cases

Agencies, store owners, enterprise — find the migration path that fits.

Explore use cases