How do you add new features to a published Shopify app without affecting live users?

I have a Shopify app built with Remix that’s already deployed and published in the Shopify App Store. I want to add new features and make changes, but I don’t want to risk breaking anything for live users while I’m working on it.

For those of you who have gone through this, how do you usually handle it? Do you set up a separate staging app in the Partner Dashboard? Do you use feature flags or some kind of preview deployment?

I’m especially curious about:

  • How you separate staging and production environments (API keys, webhooks, databases, etc.)
  • How you test new features with real Shopify data without impacting actual merchants
  • Any tips for rolling out new code gradually

I’d love to hear about your workflow or best practices for this.

Thanks in advance.

Hi @Josh_C

Usually, I create a testing app to develop new features or to handle bugs.

2 Likes

We maintain two partners accounts, one for the dev the other one for customers.

We test everything on the dev account, if everything is good we upload to the main account.

This is just an overview, we still use git for version control, and containerization + load balancing for deploying new versions.

2 Likes

We have a separate staging environment (servers, database, etc.) that we deploy to before deploying to production.

The staging environment is connected to an unpublished app in Shopify that we install on development stores.

I was actually wondering, if anyone has managed to run automated end to end tests on their embedded app?

1 Like