Shopify Development

Shopify Unlisted Public Apps: Navigating Billing for External SaaS Integrations

Hey there, fellow innovators and e-commerce strategists! At Shopping Cart Mover, we’re constantly helping businesses optimize their Shopify ecosystems, and a recurring theme we encounter involves the intricate dance between powerful SaaS solutions and Shopify’s robust API. Recently, a fantastic question from prithvidhelia in the Shopify Community forums perfectly encapsulated a dilemma many of you might be facing: how to scale a Shopify integration for your SaaS product without getting entangled in the traditional App Store billing mandates.

Shopify Partner dashboard showing app billing options and API configuration
Shopify Partner dashboard showing app billing options and API configuration

The Modern SaaS Dilemma: Shopify Integration Without App Store Dependency

Prithvidhelia’s situation is a textbook example of a growing trend. Imagine you've built an exceptional SaaS product—perhaps a specialized shipping logistics platform, an advanced inventory management system, or a unique customer support solution. This product needs to interact with a merchant's Shopify store, accessing critical data like orders and products via the Shopify API. However, your customer acquisition strategy is entirely independent of the Shopify App Store. Your clients discover you through your own website, sales channels, and marketing efforts.

The challenge arises when you need to scale. A custom app is excellent for a single store or a Shopify Plus organization, offering tailored access and avoiding revenue share. But for a SaaS platform aiming to serve hundreds or thousands of independent Shopify merchants, creating a separate custom app for each one quickly becomes an unmanageable nightmare. This bottleneck leads many developers to consider an unlisted public app.

Why Unlisted Public Apps Are So Appealing for SaaS Integrators

An unlisted public app offers a compelling middle ground. It provides:

  • Scalability: A single app can be installed by multiple merchants.
  • OAuth Flow: Secure and standardized authorization for API access.
  • API Access: The necessary permissions to interact with merchant data.
  • No App Store Listing: You maintain full control over your distribution and branding, avoiding the App Store's discovery mechanisms and review processes.

This sounds like the perfect solution, right? You get the technical benefits of a public app without the App Store's overhead. But then comes the million-dollar question: Are you still required to use the Shopify Billing API for an unlisted public app, or can you continue billing your customers directly through your existing system, like Stripe?

Shopify Billing API: Understanding the Mandate for Unlisted Apps

Prithvidhelia astutely pointed out that their product isn't a "Shopify app" in the traditional sense; it's a standalone SaaS platform using Shopify purely as a data connector. Merchants pay for their core services (e.g., shipping, storage), not for an "app" directly sold on Shopify. This distinction is absolutely critical.

When Shopify Billing is Mandatory (and Why)

The Shopify API Terms and Conditions, which all app developers agree to, generally stipulate that if you distribute your app through the Shopify App Store, the Shopify Billing API is mandatory. Shopify takes a revenue share (typically 15-20%) because it provides immense value:

  • Discovery: The App Store is a marketplace where millions of merchants find solutions.
  • Trust & Vetting: Shopify reviews apps, ensuring quality and security, building merchant confidence.
  • Platform & Infrastructure: Shopify provides the ecosystem, documentation, and tools for app development and distribution.
  • Simplified Merchant Billing: Integrated billing makes it easy for merchants to manage subscriptions.

If your app benefits from these services, then using Shopify Billing and sharing revenue is part of the agreement.

The Case for External Billing with Unlisted Public Apps

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, etc.), the situation changes significantly. In this scenario:

  • You are not leveraging Shopify for discovery.
  • You are not relying on Shopify's vetting process for customer acquisition.
  • Your primary value proposition and billing relationship exist independently of Shopify.

From an expert's perspective, and based on common interpretations and practices within the Shopify partner ecosystem, if your unlisted public app is purely a technical connector for a service you sell and bill for externally, then using your own billing system (like Stripe, PayPal, or your custom invoicing) is generally permissible. Shopify's revenue share obligations are typically tied to the value they provide in distributing and monetizing the app within their marketplace.

Think of it this way: If you're selling a car, and Shopify provides the GPS system, you bill for the car, not the GPS. The GPS is an integrated component, not the primary product sold through a "GPS App Store."

Key Considerations and Best Practices

While external billing for unlisted public apps is generally accepted under these conditions, it’s crucial to operate with transparency and clarity:

  1. Clear Communication: Ensure your merchants understand that they are paying you directly for your service, and the Shopify integration is a component of that service. Avoid any language that suggests your app is "sold" on Shopify.
  2. Direct Install Link: Always distribute your app via a direct install link from your own website or onboarding process. Do not attempt to get it listed or discovered on the Shopify App Store.
  3. Product Definition: Clearly define your product as a standalone SaaS with Shopify as an integration point, rather than a "Shopify app." This distinction is important for both your internal strategy and external communication.
  4. Stay Updated: Shopify’s API Terms can evolve. Regularly review the Shopify API Terms of Service to ensure ongoing compliance.
  5. Support & Onboarding: Since you're not using the App Store, you're responsible for your own onboarding, support, and uninstallation processes.

// Example of a direct install link structure (replace placeholders)
// This link would be provided on your website after a merchant signs up.
const shopDomain = 'your-merchant-store.myshopify.com';
const apiKey = 'YOUR_APP_API_KEY';
const scopes = 'read_orders,read_products'; // Required API access scopes
const redirectUri = 'YOUR_APP_REDIRECT_URI'; // Your app's OAuth callback URL

const installLink = `https://${shopDomain}/admin/oauth/authorize?client_id=${apiKey}&scope=${scopes}&redirect_uri=${redirectUri}`;

console.log("Direct Install Link:", installLink);

Alternative: The Private App for Specific Clients

While the unlisted public app is ideal for scalability, if you have a very limited number of high-value clients, or if you need highly customized permissions that don't fit the public app model, a private app (now called a custom app) remains an option. However, as prithvidhelia noted, this doesn't scale for a broad SaaS offering, as it requires individual creation and management per store or Plus organization.

Conclusion: Empowering Your SaaS with Strategic Shopify Integration

The flexibility of Shopify's API, combined with the unlisted public app model, provides a powerful pathway for SaaS companies to integrate deeply with the Shopify ecosystem without being forced into the App Store's distribution and billing framework. By understanding the nuances of Shopify's terms and clearly defining your product's relationship with the platform, you can confidently scale your solution, maintain control over your customer relationships, and utilize your preferred billing methods.

At Shopping Cart Mover, we believe in empowering businesses to leverage e-commerce platforms to their fullest potential. Navigating these integration strategies is key to unlocking new growth opportunities. If you're considering a complex Shopify integration or a migration, don't hesitate to reach out to our experts!

Share:

Use cases

Explore use cases

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

Explore use cases