Getting started with Shopify
What is Shopify?
Section titled “What is Shopify?”Shopify is the leading e-commerce platform that powers millions of online stores worldwide. As developers at Avada, we build Shopify Apps - applications that extend Shopify’s functionality and help merchants run their businesses more effectively.
Why Build Shopify Apps?
Section titled “Why Build Shopify Apps?”| Reason | Description |
|---|---|
| Large Market | Millions of active merchants looking for solutions |
| Recurring Revenue | Subscription-based apps generate monthly income |
| App Store Distribution | Shopify App Store provides built-in distribution |
| Clear APIs | Well-documented REST and GraphQL APIs |
Types of Shopify Apps
Section titled “Types of Shopify Apps”- Public Apps - Listed on Shopify App Store, available to all merchants
- Custom Apps - Built for a specific merchant/store
- Sales Channel Apps - Integrate with external sales platforms
Official Documentation
Section titled “Official Documentation”Always refer to the official Shopify documentation - it’s comprehensive and regularly updated:
- Shopify Dev Docs - Main documentation
- All Shopify APIs - API reference
- Shopify REST API - Legacy REST API
- Shopify GraphQL API - Recommended API
- Changelog - Stay updated with changes
Shopify Introduction
Section titled “Shopify Introduction”Get familiar with the Shopify ecosystem, Partner Dashboard, and how apps interact with Shopify stores.
Key concepts covered:
- Creating a Shopify Partner account
- Setting up a development store
- Understanding OAuth and app installation flow
- Navigating the Partner Dashboard
Language Setting
It is compulsory that your store and partner account language is set to English. Change it in your Shopify account settings:


Shopify Admin REST API
Section titled “Shopify Admin REST API”While we’re moving to GraphQL, understanding REST API concepts is still valuable for maintaining legacy code.
Key concepts covered:
- Making authenticated API requests
- Understanding rate limits
- Working with pagination
- Common endpoints (Products, Orders, Customers)
Shopify GraphQL API 101
Section titled “Shopify GraphQL API 101”GraphQL is Shopify’s recommended API for all new development. It offers better performance, more flexible queries, and access to newer features.
Why GraphQL over REST?
- Fetch only what you need - No over-fetching of data
- Single request - Get related data in one call (vs multiple REST calls)
- Saves round trips - Reduce network latency by fetching everything in one request
- Strongly typed - Better tooling and error detection
- Access to new features - Some features are GraphQL-only
Key concepts covered:
- GraphQL queries and mutations
- Using GraphiQL explorer
- Understanding connections and edges
- Error handling in GraphQL
Shopify Protected Data
Section titled “Shopify Protected Data”Shopify requires apps to explicitly request access to protected customer data. This is a privacy protection measure.
How to request access:
- Development/Staging apps: Fill out the form in Partner Dashboard (no need to submit)
- Production apps: Submit for approval (takes a few days)
Key concepts covered:
- Understanding protected customer data scopes
- Requesting access in Partner Dashboard
- Handling 403 errors gracefully
Shopify Webhooks
Section titled “Shopify Webhooks”Webhooks allow your app to receive real-time notifications when events happen on a Shopify store. Instead of constantly polling the API, Shopify pushes data to your app when something changes.
When to use webhooks:
- Syncing inventory changes with external systems
- Processing new orders automatically
- Handling app uninstalls and data cleanup
- Updating records when products/customers change
Common webhook topics:
| Topic | Description |
|---|---|
orders/create | New order placed |
products/update | Product modified |
app/uninstalled | App removed from store |
customers/create | New customer registered |
See the official Shopify webhook guide for the complete list.
Key concepts covered:
- Registering webhook subscriptions
- Verifying webhook signatures (HMAC)
- Handling webhook payloads
- Dealing with retries and failures
Shopify Further Dive (Optional until Week 5)
Section titled “Shopify Further Dive (Optional until Week 5)”You should spend your time digesting Shopify development docs further more to better understand Shopify ecosystem: