Skip to main content
Before deploying the Shopify Subscriptions Reference App, ensure you have all the necessary tools, accounts, and system requirements in place.

System Requirements

1

Node.js and Package Manager

The application requires Node.js to run. Based on the project dependencies:
  • Node.js: Version 18.x or higher (recommended: 20.x LTS)
  • Package Manager: One of the following:
    • pnpm (recommended)
    • npm
    • yarn
The project uses pnpm workspaces. While npm and yarn work, pnpm is recommended for optimal compatibility.
2

TypeScript Support

The application is built with TypeScript 5.8.3 and requires TypeScript support in your development environment.
# TypeScript is included as a dev dependency
# No separate installation needed
3

Database

A database is required for storing:
  • Session data
  • Billing schedules
  • Dunning tracker information
Supported databases:
  • SQLite (development only)
  • PostgreSQL (recommended for production)
  • MySQL
  • Other Prisma-compatible databases
SQLite is NOT recommended for production deployments. Use PostgreSQL or MySQL instead.

Shopify Requirements

1

Shopify Partner Account

Create a Shopify Partner account to develop and deploy Shopify apps:
  1. Visit partners.shopify.com
  2. Sign up for a free Partner account
  3. Complete the account verification process
If you already have a Shopify Partner account, you can skip this step.
2

Create Shopify App

Set up your app in the Shopify Partner Dashboard:
  1. Log in to your Partner Dashboard
  2. Click Apps in the left sidebar
  3. Click Create app
  4. Select Create app manually
  5. Enter your app name and select App Store distribution
Save your API credentials (API Key and API Secret). You’ll need these for environment configuration.
3

Development Store

Create a development store for testing:
  1. In your Partner Dashboard, go to Stores
  2. Click Add storeCreate development store
  3. Fill in store details and create the store
  4. Use this store for testing subscription functionality
4

Required Scopes

The app requires the following OAuth scopes:
customer_read_customers
customer_read_orders
customer_read_own_subscription_contracts
customer_write_customers
customer_write_own_subscription_contracts
read_all_orders
read_locales
read_locations
read_themes
write_customer_payment_methods
write_customers
write_metaobject_definitions
write_metaobjects
write_orders
write_own_subscription_contracts
write_products
write_translations
read_analytics
These scopes are configured in shopify.app.toml and will be requested during app installation.

Required Tools and Services

1

Shopify CLI

Install the Shopify CLI for app development and deployment:
npm install -g @shopify/cli@latest
# or
pnpm add -g @shopify/cli@latest
# or
yarn global add @shopify/cli@latest
Verify installation:
shopify version
2

Prisma CLI

Prisma is included as a project dependency for database management:
# Run Prisma commands using package.json scripts
pnpm prisma
The following Prisma commands are available:
  • prisma generate - Generate Prisma Client
  • prisma migrate deploy - Run database migrations
  • prisma studio - Open Prisma Studio GUI
3

Git

Version control is essential for deployment:
# Verify Git installation
git --version
If not installed, download from git-scm.com
4

SSL Certificate (Production)

For production deployment, you’ll need:
  • Valid SSL certificate for your domain
  • HTTPS-enabled hosting environment
  • Custom domain (optional but recommended)
Shopify requires all embedded apps to use HTTPS in production.

Optional Services

Google Cloud Platform (Production)

For production deployments using Cloud Tasks for background jobs:
  • Google Cloud Platform account
  • Cloud Tasks API enabled
  • Service account with appropriate permissions
  • Cloud Storage (if using file uploads)
The app includes @google-cloud/tasks and @google-cloud/storage dependencies for optional GCP integration.

Monitoring and Logging

Consider setting up:
  • Error tracking (e.g., Sentry, Bugsnag)
  • Application Performance Monitoring (APM)
  • Log aggregation service
  • Uptime monitoring

Verification Checklist

Before proceeding to deployment, verify:
  • Node.js 18+ installed
  • Package manager (pnpm/npm/yarn) installed
  • Shopify Partner account created
  • Shopify app created in Partner Dashboard
  • API credentials saved securely
  • Development store available for testing
  • Shopify CLI installed and working
  • Database provider selected
  • Hosting provider selected
  • Domain and SSL certificate ready (production)

Next Steps

Once you’ve met all prerequisites:
  1. Set up your database
  2. Configure environment variables
  3. Deploy to production

Build docs developers (and LLMs) love