Solving the Mystery: Why Shopify Partner Apps Ask for Credit Cards on Development Stores

Hey fellow Shopify partners and app developers!

Ever been there? You're diligently testing your awesome new app on a development store, expecting smooth sailing, and then BAM! Shopify hits you with a prompt asking for credit card information to install it. It's a head-scratcher, right? Development stores are supposed to be free zones for testing, so why the billing roadblock?

This exact scenario popped up recently in the Shopify community, with a partner, PartnerApp, asking, "Recently Shopify changed it so partner store apps require credit card information to install my app. Is there any way around this?" It's a common point of confusion, and thankfully, the community quickly jumped in with some excellent insights and solutions. Let's dive into what we learned.

Understanding the "Why" Behind the Credit Card Prompt

The core of the issue, as Priyasha pointed out, isn't necessarily a "change" by Shopify, but rather how your app's billing is configured. Shopify treats app installations as potentially billable events unless explicitly told otherwise. Even on a development store, if your app tries to create a "real" charge, Shopify will naturally ask for a payment method.

The good news? Development stores are absolutely designed to install apps without needing a real card. The trick is making sure your app's billing setup is communicating this intent correctly.

The Fix: Two Paths to Free Development Store Installs

The community discussion highlighted two primary ways to ensure your app can be installed on development stores without hitting that credit card wall. Which path you take depends on how your app handles its billing – whether you're using Shopify's managed pricing in the Partner Dashboard or custom billing logic in your app's code.

Path 1: Using Shopify's Managed Pricing (Recommended for Most)

This is often the most straightforward solution, especially if you're managing your app's pricing plans directly through your Shopify Partner Dashboard. The key here is to set up a specific "development store pricing plan."

Ellie-BOGOS kicked off the discussion by suggesting you check if your app's pricing clearly shows "Free for development stores" like in this screenshot:

Screenshot showing 'Free for development stores' text in app pricing

If you don't see that line, it means you likely need to configure a development store pricing plan. ajaycodewiz provided excellent step-by-step instructions for this process. Here's how you do it:

  1. Navigate to Your App's Distribution Settings: Log into your Shopify Partner Dashboard.
  2. Edit Your App Listing: Go to Distribution, then choose Edit Listing for the app in question.
  3. Access Pricing: Click on the Pricing section.
  4. Create a Private Test Plan: Here, you'll create a private test plan, typically priced at $0. This is your special plan for development stores.
  5. Add Specific Development Stores to the Plan: Crucially, you then need to add the specific development store(s) to that plan's access list. This is often an "enable it for a specific store" toggle or setting you might remember seeing.

ajaycodewiz included a helpful screenshot showing where to find these settings:

Screenshot of Shopify Partner Dashboard Pricing section with Development Store Pricing options

Once this is configured, your development stores should be able to install the app without needing credit card details. As ajaycodewiz wisely noted, this approach also helps prevent people from installing your app on a dev store and using it indefinitely without payment, which is a fair concern for app developers.

Path 2: For Custom Billing Logic (Code-based Solution)

If your app uses custom billing code rather than Shopify's managed pricing, Priyasha offered a crucial piece of advice: make sure you're passing test: true when creating charges for development stores. If the charge is created as a "real" one, Shopify will ask for a card, even on a dev store.

// Example (pseudo-code, actual implementation varies by language/library)
if (isDevelopmentStore) {
  createShopifyCharge({ amount: 0, currency: 'USD', test: true });
} else {
  createShopifyCharge({ amount: 9.99, currency: 'USD', test: false });
}

This ensures that Shopify's billing system understands it's a test installation and bypasses the credit card requirement.

When to Contact Support

Both Priyasha and websensepro suggested that if you've checked all your settings and it's still asking for a card, the best next step is to raise the issue with Shopify Partner Support. They have the tools to see exactly why the billing prompt is triggering for your specific app and store.

So, there you have it! The consensus from the community is clear: that pesky credit card prompt on development stores isn't a bug or a new restriction, but usually a sign that your app's billing configuration needs a little tweak to explicitly allow free installations for testing environments. By following these steps, especially setting up that dedicated development store pricing plan in your Partner Dashboard, you'll be back to smooth, credit-card-free testing in no time!

Share:

Use cases

Explore use cases

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

Explore use cases