Shopify App Setup
This guide walks through creating a custom app in Shopify Partner Dashboard for a merchant you want to onboard.
Don't have a Shopify Partner account? You'll need one before proceeding. See Prerequisites or visit shopify.com/partners to sign up (free).
Step 1: Open Shopify Partner Dashboard
Go to partners.shopify.com and log in.

Step 2: Navigate to Apps
Click Apps in the left sidebar, then click Create app.

Step 3: Select Custom App
When prompted, select Custom app (also called "single-merchant app").
Step 4: Configure the App
Critical: Must uncheck "Embed app in Shopify admin"
For a smoother merchant onboarding experience, uncheck the "Embed app in Shopify admin" option (it's checked by default). If left checked, merchants will need to manually re-navigate to Violet Connect via the link you provide them after installing the app, instead of being redirected automatically.
See Send the Violet Connect Link for more details on the merchant onboarding flow.

App Name
This helps you identify which app belongs to which merchant when managing multiple apps. Use a descriptive name that identifies both your channel and the merchant:
Example:
YourChannel - Merchant Store Name
App URL
Critical: Must use Violet's domain
The App URL must be set to Violet's domain with your App Alias:
Live Mode
https://connect.violet.io/{YOUR_APP_ALIAS}
Test Mode
https://connect.violet.dev/{YOUR_APP_ALIAS}
Example: If your App Alias is acme-shopping, your Live Mode App URL is: https://connect.violet.io/acme-shopping
Why this matters: Shopify requires the App URL and Redirect URI to share the same host. Using your own domain causes a 404 error during OAuth.
Find your App Alias: Channel Dashboard → App Settings → Violet Connect
Redirect URI
The Redirect URI must match the App URL host and include the Shopify connect path:
Live Mode
https://connect.violet.io/{YOUR_APP_ALIAS}/platforms/shopify/connect
Test Mode
https://connect.violet.dev/{YOUR_APP_ALIAS}/platforms/shopify/connect
Example: If your App Alias is acme-shopping, your Live Mode Redirect URI is: https://connect.violet.io/acme-shopping/platforms/shopify/connect
Required API Scopes
Select all 20 required API scopes listed below. Missing scopes will cause features to fail after the merchant connects.
Select all scopes upfront. Changing scopes later requires the merchant to reinstall the app.
Click to expand to learn more about the API scopes
Products & Inventory
read_products
Read product catalog
read_inventory
Read inventory data
read_locations
Read inventory locations
Customers
write_customers
Create customers for non-guest checkouts
read_customers
Read customer information
Orders & Checkout
write_orders
Create and update orders
read_orders
Read orders submitted by Violet
write_draft_orders
Populate and submit orders
read_draft_orders
Read draft order data
write_merchant_managed_fulfillment_orders
Flag orders requiring review
Fulfillment & Shipping
read_fulfillments
Read fulfillment statuses
read_shipping
Read shipping policies
read_markets
Read shipping regions
Pricing & Discounts
read_price_rules
Read pricing rules
read_discounts
Read discount policies
Policies & Returns
read_legal_policies
Read refund/return policies
read_returns
Discover returned orders
Cart Operations (Unauthenticated)
unauthenticated_write_checkouts
Create carts without rate limits
unauthenticated_read_product_listings
Read product data without rate limits
unauthenticated_read_product_inventory
Read inventory without rate limits
Step 5: Release your App
This will submit and create your new App.
Step 6: Select Custom Distribution
After creating the app, you must select the distribution method to generate an Install Link.

Click "Select custom distribution" to confirm
This step is required. Without selecting "Custom distribution", you cannot generate the Install Link needed for merchant onboarding.

Step 6: Add your store domain to generate the Install Link
What is the Install Link? This is the URL merchants will use to install your custom app in their Shopify admin. Merchants must install the app via this link BEFORE completing Violet Connect onboarding.
After selecting custom distribution, add your store domain and select the CTA to generate the link. Upon success, you should see the Distribution page with your Install Link.

Click the Copy button next to the Install Link
Save this link — you'll need it when creating the pre-registration in Violet
The Install Link format should resemble this:
Step 7: Copy Credentials
After creating the app, go to "Settings" in the dev dashboard to reveal the Client ID and Client Secret. You will need this for the next step.

Step 8: Create Pre-Registration in Violet
Now that you have your Install Link, Client ID, and Client Secret, go to Channel Dashboard to create a pre-registration for this merchant.
Summary
Before moving on, confirm you have:
Once you have completed all of these items, proceed to Pre-Registration Process
Help
Have questions or running into issues? See Troubleshooting & FAQs for common problems and solutions.
Last updated
Was this helpful?