shopify-multi-env-setup

'Configure Shopify apps across development, staging, and production environments

4 Tools
shopify-pack Plugin
saas packs Category

Allowed Tools

ReadWriteEditBash(shopify:*)

Provided by Plugin

shopify-pack

Claude Code skill pack for Shopify (30 skills)

saas packs v1.0.0
View Plugin

Installation

This skill is included in the shopify-pack plugin:

/plugin install shopify-pack@claude-code-plugins-plus

Click to copy

Instructions

Shopify Multi-Environment Setup

Overview

Configure Shopify apps with isolated development, staging, and production environments. Each environment uses a separate Shopify app instance, development store, and credentials.

Prerequisites

  • Shopify Partner account
  • Multiple development stores (free to create in Partner Dashboard)
  • Secret management solution for production (Vault, AWS Secrets Manager, etc.)

Instructions

Step 1: Create Separate App Instances

Create one app per environment in your Partner Dashboard:

Environment App Name Store Purpose
Development My App (Dev) dev-store.myshopify.com Local development
Staging My App (Staging) staging-store.myshopify.com Pre-prod testing
Production My App live-store.myshopify.com Live traffic

Each app gets its own APIKEY, APISECRET, and ACCESS_TOKEN.

Step 2: Environment Configuration Files

Create .env.* files for each environment and corresponding Shopify CLI TOML configs. Production secrets should never be stored on disk -- use a secret manager.

See Environment Config Files for the complete .env and .toml configuration templates.

Step 3: Environment-Aware Configuration

TypeScript config module that loads environment-specific settings (debug mode, session storage type) with LATESTAPIVERSION from @shopify/shopify-api.

See Environment-Aware Config for the complete implementation.

Step 4: Environment Guards

Safety functions that prevent dangerous operations from running in the wrong environment (e.g., blocking test data seeding in production, requiring production for billing activation).

See Environment Guards for the complete implementation.

Output

  • Isolated environments with separate app instances
  • Environment-specific configuration loading
  • Shopify CLI configured for multi-env workflow
  • Safety guards preventing cross-environment mistakes

Error Handling

Issue Cause Solution
Wrong store in dev Using prod .env Verify SHOPIFY_STORE in your .env file
OAuth fails on staging Wrong redirect URL Update redirect_urls in staging app config
Webhooks not received URL mismatch Each environment needs its own webhook URLs
Production guard triggered Wrong NODE_ENV Set NODE_ENV correctly in deployment platform

Examples

Development Store Quick Setup


# Create a development store from Partner Dashboard
# Partners > Stores > Add store > Development store

# Install your dev app on the dev store
shopify app dev --store=dev-store.myshopify.com

# Populate test data
shopify populate products --count=25
shopify populate orders --count=10
shopify populate customers --count=20

Resources

Ready to use shopify-pack?