Prerequisites
Before you can pre-register merchants, you need credentials from the Shopify Partner Dashboard. This is a one-time setup per merchant.
Required Access
Shopify Partner Dashboard account with permission to create custom apps
Access to your channel's Violet account (Channel Dashboard)
Getting Your Credentials
For each merchant you want to onboard, you'll need two pieces of information from Shopify:
Client ID: OAuth client identifier (identifies your app)
Client Secret: OAuth secret key (authenticates your app)
Install Link: Merchant-specific Shopify authorization URL
How to get these credentials:
Log in to Shopify Partner Dashboard
Navigate to App Distribution → Create an app
Note: you may need to navigate to Visit Dev Dashboard, if prompted.
Choose Create an app and select Custom app
Configure the app:
App name: Use a descriptive name (e.g., "Your Channel Name - Merchant Name")
Admin API access scopes: Select required permissions (see list below)
Save: Click to generate credentials
Copy credentials immediately (before navigating away):
Copy the Client ID
Copy the Client Secret — This appears only once. If you lose it, you must regenerate it.
Copy the Install link
Immediately go to Violet Channel Dashboard and paste all three credentials into the pre-registration form while they're fresh
Do not wait or close Shopify without saving these values
Step-by-Step Instructions
1. Log in to Shopify Partner Dashboard

2. Navigate to Apps → Create an app

3. Choose "Create an app" and select "Custom app"
4. Configure the app:

App name
Use a descriptive name (e.g., "Your Channel - Merchant Name")
Admin API access scopes
Select all required permissions from the API Scopes section below
Redirect URI
See redirect URI format below
5. Copy credentials immediately (before navigating away)

Copy the Client ID
Copy the Client Secret — This appears only once. If you lose it, you must regenerate it.
6. Go to Violet Channel Dashboard and paste both credentials into the pre-registration form while they're fresh
Critical: The Client Secret can only be viewed once in Shopify. Copy both credentials immediately after creating the app. If you navigate away or refresh without saving them, you'll need to regenerate the secret. See Troubleshooting & FAQs for recovery steps.
Required API Scopes
Your custom app must have the following Shopify Admin API scopes. These permissions allow Violet to perform checkout and catalog operations on behalf of your channel.
Core Product & Inventory Scopes
read_products
Used to read your product catalog
read_inventory
Used to read inventory data related to your products
read_locations
Used to read inventory location data related to your products
Customer Scopes
write_customers
Used to add new customers when performing non-guest checkouts
read_customers
Used to read customer information for order processing
Order & Checkout Scopes
write_orders
Used to create and update orders during checkout
read_orders
Used to read orders previously submitted by Violet into your system
write_draft_orders
Used to populate and submit orders into your system
read_draft_orders
Used to read draft order data
write_merchant_managed_fulfillment_orders
Used to alert you when an order placed through Violet requires additional review before being fulfilled. This can be useful in mitigating fraud.
Fulfillment & Shipping Scopes
read_fulfillments
Used to read and communicate order fulfillment statuses to the channel
read_shipping
Used to understand your shipping policies
read_markets
Used to understand the regions you ship to
Pricing & Discount Scopes
read_price_rules
Used to understand the pricing rules related to your discounts
read_discounts
Used to understand the combination policies of your discounts
Policy & Returns Scopes
read_legal_policies
Used to understand your refund and return policies
read_returns
Used to discover when a Violet-sourced order has been returned
Unauthenticated Scopes (for Cart Operations)
unauthenticated_write_checkouts
Used to create carts without being subjected to Shopify's rate limits
unauthenticated_read_product_listings
Used to read basic product data when creating carts without being subjected to Shopify's rate limits
unauthenticated_read_product_inventory
Used to read product inventory data when creating carts without being subjected to Shopify's rate limits
Plan for future needs: Permission changes require the merchant to reinstall the app. Select all scopes you might need upfront rather than adding them incrementally.
Summary Checklist
Before proceeding to pre-registration, confirm you have:
Next step: Go to Pre-Registration Process to register merchants in Channel Dashboard.
Last updated
Was this helpful?