# Merchant Onboarding

## Merchant Onboarding

After you've pre-registered a merchant in the Channel Dashboard, they complete onboarding through a single Violet Connect flow that handles both account creation and Shopify app installation. This page explains what the merchant experiences.

The merchant can onboard with the [Violet Connect Link](#using-violet-connect-link) or via the alternative path using [store URL lookup](#alternative-path-using-store-url-lookup).

## The Onboarding Flow

### Your Steps (Channel)

1. **Pre-register merchant** in Channel Dashboard with Store URL, Install Link, Client ID, and Client Secret
2. **Copy the Violet Connect link** from the Pre-Registered tab (Actions menu → Copy Violet Connect Link)
3. **Send Violet Connect link to merchant**

***

### Using Violet Connect Link

The merchant receives your Violet Connect link and completes the entire onboarding in one seamless flow:

**1. Open the Violet Connect Link**

* Merchant clicks the Violet Connect link you sent
* They're taken to the Violet Connect onboarding page

**2. Authenticate with Violet**

* Enter email address
* Receive and enter 6-digit verification code

![Violet Connect Login](/files/zdWNkKD2s6GwIZEvvICR)

![Violet Connect 6-digit Code Authentication](/files/zdTK4cHfaNPFYjzwkk6v)

**3. Review Pre-filled Details (Store Found)**

* Because the Violet Connect link contains the encoded pre-registration data, the merchant is taken directly to the "Store Found" screen
* They see their store name and URL already filled in
* Pre-registration detected automatically

![Violet Connect Store Found](/files/2tls0LYuEcfeih39o8R9)

**4. Install the Shopify App**

{% hint style="danger" %}
**Critical:** When installing the app, merchants should leave **"Embed app in Shopify admin"** unchecked (it's checked by default).
{% endhint %}

* Merchant clicks the **"Connect to Shopify"** button
* They're redirected to Shopify to authorize the app installation
* Merchant sees the "Install app" confirmation screen showing your app name and required permissions
* Merchant clicks **"Install"** button

![Install Custom App Screen](/files/cTFXP7ExllfaNPiPpcFL)

**5. Return to Violet Connect**

* After installation, merchant is automatically redirected back to Violet Connect
* Violet completes the OAuth handshake in the background

**6. Complete Setup**

* Set up payout account (if required)
* Configure commission settings (if applicable)

**7. Done!**

* Store is connected
* Merchant automatically moves to your Connected Merchants tab
* You receive webhook notification of successful connection

***

#### Why This Flow Works

| Benefit              | Description                                                 |
| -------------------- | ----------------------------------------------------------- |
| ✅ **Single link**    | Merchants only need one link to complete the entire process |
| ✅ **Seamless**       | App installation happens within the Violet Connect flow     |
| ✅ **Fast**           | Entire onboarding takes just a few minutes                  |
| ✅ **Error-free**     | No manual credential entry or typos                         |
| ✅ **Pre-configured** | All OAuth settings handled during pre-registration          |
| ✅ **Trackable**      | Real-time status updates in your Channel Dashboard          |
| ✅ **Secure**         | OAuth credentials never exposed to merchant                 |

***

#### Violet Connect Link Format

Your merchant-specific Violet Connect links should follow this format:

```
https://connect.violet.io/YOUR_APP_ALIAS/platforms/shopify/connect?preregistration=ENCODED_DATA
```

The encoded pre-registration data automatically connects everything to your pre-registration in the Channel Dashboard.

***

### Alternative Path: Using Store URL Lookup

The merchant loses the Violet Connect link or navigates directly to `https://connect.violet.io/{your_app_alias}`:

1. Merchant creates an account or logs in
2. Merchant selects **"Shopify"** as their platform
3. Merchant enters their store URL (e.g., `acme.myshopify.com`)
4. Violet detects the pre-registration and shows **"Store Found"** confirmation
5. Merchant clicks **"Connect to Shopify"** and is redirected to Shopify for app installation
6. After installation, merchant is redirected back to Violet Connect to complete setup

{% hint style="info" %}
**When to use this path**: If a merchant is not provided or loses their Violet Connect link, they can still complete onboarding by entering their store URL manually.
{% endhint %}

***

### Behind the Scenes

When a merchant completes onboarding, Violet automatically:

1. **Completes OAuth handshake** with Shopify using your pre-registered credentials
2. **Validates the connection** to ensure everything is working
3. **Updates merchant status** from "Pre-Registered" to "Connected"
4. **Sends webhook** to notify you of successful connection
5. **Begins catalog sync** to make products available in your channel

You don't need to handle any technical OAuth details — Violet manages the entire process using the Client ID and Client Secret you provided during pre-registration.

***

**Next steps:**

* [Troubleshooting & FAQs](/ecom-platforms/shopify/troubleshooting-faqs.md) — Common issues and solutions
* [Back to Pre-Registration](/ecom-platforms/shopify/pre-registration.md) — Set up more merchants


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.violet.io/ecom-platforms/shopify/merchant-onboarding.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
