For the complete documentation index, see llms.txt. This page is also available as Markdown.

Shopify

Prerequisites

You must have a minimum Shopify plan of Basic to be able to connect with Violet.

API Version Change Notices from Shopify

If you receive a notice from Shopify about future changes to the Shopify API that may impact Violet's connection to your store, you can ignore those. Shopify sends these out well in advance of deprecations and Violet will always ensure that the connection to your store remains in a healthy state.


Quick Start: Pre-Registered Merchants

If your channel partner has pre-registered your store, onboarding takes just 2 minutes:

  1. Click the Violet Connect link provided by your channel partner

  2. Verify your email with the verification code sent to you

Violet Connect Login
Violet Connect 6-digit Code Authentication
  1. Confirm your store URL is correct

Violet Connect Pre-registration Detected
  1. Click "Connect to Shopify" and authorize the app

Shopify Install App OAuth Handshake
Shopify OAuth Handshake Redirect to Violet Connect
  1. Complete payout setup if required

That's it! Your store is now connected. The manual setup below is only needed if not pre-registered.


Manual Setup Guide (Advanced)

This guide is for merchants who need to manually create a Custom App in their Shopify dashboard. Most merchants should use the pre-registration method above instead. During this process, you will create a Custom App in your Shopify dashboard and then provide the generated credentials to Violet through the Violet Connect onboarding tool. You will retain full control of the created Custom App and can modify or remove it at any time from within your Shopify dashboard. Total time for completion is around 5 minutes.


Step 1: Creating the Custom App

  1. From your Shopify dashboard navigate to Settings → Apps and sales channels → Develop Apps.

  2. Click the green Create an app button.

  3. In the modal that appears, enter an app name (ex. Violet) and select the user in your system who should be the owner of this app. Typically this is the default selected user.


Step 2: Configuring Scopes

From the App development view click on the Configuration tab.

Any topics with a write_* scope will automatically include the equivalent read_* scope. This is by design from Shopify.

Admin API Scopes

Click Configure or Edit in the Admin API integration section.

The following Admin access scopes are the minimum required for Violet to perform all necessary functions against your store. If any additional scopes are required by certain channels within Violet, these will be communicated to you when you enable the channel.

Violet uses these permissions to do three things: (1) sync your product catalog and inventory so channel partners can accurately display your products, (2) submit orders placed on those channels into your store so they appear alongside your other orders, and (3) report fulfillment and refund status back to the channel so shoppers stay informed.

Products & Inventory (read-only)

Scope
Why Violet needs it

read_products

Syncs your product titles, descriptions, images, variants, and prices so channel partners can display and sell them.

read_inventory

Keeps stock levels in sync so channels stop selling an item the moment you run out — preventing oversells.

read_locations

Shopify tracks inventory per location; this lets Violet total available stock across all of your locations.

read_metaobject_definitions, read_metaobjects

Products can reference custom data ("metaobjects") such as size charts or material details; this lets that content appear on channel listings.

read_locales, read_translations

For multi-language stores, ensures products display in the correct language on each channel.

Orders & Checkout (used only for orders placed through your connected channels)

Scope
Why Violet needs it

write_draft_orders, read_draft_orders

Draft orders are how Violet calculates shipping and taxes and places an order in your store — the same mechanism as manually creating an order in your admin.

write_orders, read_orders

After an order is placed, Violet marks it as paid, records cancellations and refunds, and keeps its status in sync with the channel. Violet only writes to orders it created.

write_merchant_managed_fulfillment_orders

Lets Violet place a fulfillment hold on an order it created when the order needs your review (e.g., suspected fraud) — so it isn't shipped before you've checked it. Never used on orders from your other sales channels.

Customers

Scope
Why Violet needs it

write_customers, read_customers

When a shopper checks out on a channel, Violet creates (or matches by email, to avoid duplicates) the customer record so the order appears in your admin like any other. Violet does not export or sync your customer list.

Shipping & Fulfillment (read-only)

Scope
Why Violet needs it

read_shipping

Reads your shipping zones and rates so shoppers see your real shipping options and prices at checkout.

read_markets

Reads the countries and regions you sell to, so checkout only accepts addresses you actually ship to.

read_fulfillments

Reads tracking numbers and fulfillment status so shoppers receive shipping updates from the channel.

Discounts (read-only)

Scope
Why Violet needs it

read_discounts, read_price_rules

When a shopper enters one of your discount codes at checkout, Violet validates it against your discount rules and applies the correct amount. Violet never creates or edits your discounts.

Optional Admin API Scopes

Scope
Why Violet needs it

read_legal_policies

Lets your refund and return policies be shown to shoppers at checkout.

read_returns

Detects when an order placed through Violet is returned, so the channel can process the matching refund.

Webhook subscriptions should be left in the default state with the latest version being selected.

Storefront API Scopes (Optional)

Click Configure or Edit in the Storefront API integration section.

The Storefront API is the same public API your online store's theme uses — it only exposes data already visible to any shopper on your site. Violet uses it for high-volume cart operations because it scales better than the Admin API.

Scope
Why Violet needs it

unauthenticated_write_checkouts

Creates shopping carts as shoppers browse on the channel.

unauthenticated_read_product_listings

Reads public product data while building carts.

unauthenticated_read_product_inventory

Checks stock availability while building carts.

Summary of access

  • All product, inventory, shipping, and discount scopes are read-only.

  • Write access is limited to orders and customer records created through Violet.

  • You retain full control: the app can be uninstalled from your Shopify admin at any time, immediately revoking all access.


Step 3: API Credentials

From the app view click API credentials then click Install App

Access Token

This token is used to authenticate requests made by Violet when interacting with your store. Important: this value can only be viewed once. It’s recommended that you copy and paste it into a temporary location until you finish the Violet onboarding process. If you lose this value before completing the Violet onboarding process you must uninstall the create app and start over.

API Key

This key is used in combination with the API Secret Key to verify and authenticate certain actions or events.

API Secret Key

This key is used in combination with the API Key to verify and authenticate certain actions or events.

Storefront API Access Token (Optional)

An optional key used for authenticating requests to the Storefront API once you've enabled Storefront API access.

Pass the Private access token generated into Violet Connect's Storefront API Access Token field


Step 4: Provide Configured App Credentials to Violet

Once your app is fully configured, it’s time to return to the Violet Connect onboarding tool and enter the following credentials created in the previous steps:

  • Access Token

  • API Key

  • API Secret Key

Once entered, click the Next button to validate the credentials and complete the connection between your store and Violet. If the credentials are invalid you should check for any spaces or other copy/paste errors and try again.

Upon success you will be redirected back to the channel who first sent you to Violet.


Last updated

Was this helpful?