# Move a customer's buyer from a sales agent account to a company

URL: https://docs.sparklayer.io/help/guides/move-sales-agent-buyers-to-companies
Applies to: Shopify

Replace a restricted sales agent account, used by a customer to order for their branches, with a company and locations so the buyer orders for every branch.

> **Quick summary**
>
> - Some stores give a customer's head office buyer a sales agent account, limited to their own business, so they can order for each branch. A [company](https://docs.sparklayer.io/help/customers/companies.md) with [locations](https://docs.sparklayer.io/help/customers/company-locations.md) does this job better, and this guide moves you across.
> - You'll end up with one company, a location for each branch, and the buyer as a company admin who orders for any location. Their sales agent place is free again.
> - Build the company in Shopify, and it syncs through to SparkLayer. You can build it in SparkLayer instead, but your Shopify companies replace it if you turn on the Shopify Companies integration later. See [Choose where to build the company](#choose-where-to-build-the-company).
> - Allow about 30 minutes per business. Companies and company locations are on every plan.

## Why move

A restricted sales agent account works, but it was built for your own sales team, not your customers. A company is built for a business with several branches.

| | Restricted sales agent today | Company with locations |
| --- | --- | --- |
| **Cost** | Uses a sales agent place on your plan, or $39 a month | Included on every plan |
| **Branches** | A separate customer account, and email address, for each branch | A location for each branch, all inside one company |
| **Ordering** | The buyer picks a branch from **My Customers**, as a sales rep would | The buyer picks a branch from the location chip, as a customer would |
| **Prices and pay later** | Set on each branch account | Set once on the company, and changed only on the branches that differ |
| **Credit limit** | One per branch account | One for the whole company, shared by every branch |
| **Who sees what** | Kept to their business by a sales agent group. Remove it, and they see every B2B customer | Kept to their own company by design |
| **Branch staff** | Order on the branch account, or not at all | Get their own login, added to their branch as a **Buyer**, **Approver** or **Manager** |

## Example

Northside Cafés has 3 cafés. Today, each café is a customer account in your store, and Sam, their purchasing manager, has a sales agent account limited to the `northside-cafes` sales agent group.

| | Before | After |
| --- | --- | --- |
| **The business** | 3 customer accounts in the `northside-cafes` sales agent group | The company **Northside Cafés** |
| **The cafés** | Northside Cafés - Leeds, York and Hull, as customers | The locations **Leeds**, **York** and **Hull** |
| **Sam** | A sales agent with a custom role | A company admin, who can order for every location |
| **Your sales agent places** | 1 used by Sam | 1 free |

## Before you start

- **Company locations turned on.** It's on by default at **Settings > Configurations > Ordering** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/configuration/settings/general)), or **SparkLayer Wholesale > Settings > Configurations > Ordering** in the Shopify app.
- **A list of the business's branches**, with each branch's address and any prices or payment terms that differ from the rest.
- **The buyer's account**, with the email address they sign in with. Find it at **Sales Agents > Agents** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/v2/customers/agents)), or **SparkLayer Wholesale > Sales agents** in the Shopify app.
- **A time to switch.** The buyer keeps their sales agent access until the last step, so they can order throughout. Let them know it's changing, and that they'll pick a location instead of a customer.

## Choose where to build the company

You can build the company in Shopify or in SparkLayer. Either way, you set its prices and terms in SparkLayer.

| Build it in | What happens | Choose it if |
| --- | --- | --- |
| **Shopify** (recommended) | You create the company, its locations and its contacts at **Customers > Companies** ([open in the Shopify admin](https://admin.shopify.com/companies)), and they sync through to SparkLayer. | You use Shopify Companies, or might in future. |
| **SparkLayer** | You create the company, its locations and its people at **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app. | You don't use Shopify Companies and don't plan to. |

> **The Shopify Companies integration replaces companies built in SparkLayer**
>
> If you build a company in SparkLayer and later turn on the Shopify Companies integration, your Shopify companies replace the companies you built in SparkLayer. If there's a chance you'll use Shopify Companies, build the company in Shopify now. See [Companies built in SparkLayer](https://docs.sparklayer.io/help/platforms/shopify/companies.md#companies-built-in-sparklayer).

## Move them across

### Step 1. Create the company

**In Shopify:**

In your Shopify admin, go to **Customers > Companies** ([open in the Shopify admin](https://admin.shopify.com/companies)) and add the company, for example `Northside Cafés`. It syncs to SparkLayer, where you'll find it at **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app.

**In SparkLayer:**

Go to **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app, click **Create company** and enter the **Company name**, for example `Northside Cafés`.

Then open the company at **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app and set its terms once, for every branch:

| Field | What to choose |
| --- | --- |
| **Customer group** | The group the branch accounts are in today |
| **Price list** | Leave as **Use the customer group's price list**, unless the business has its own prices |
| **Let them pay later** | On, if the branches pay by invoice today |

Click **Save**. See [Create a company](https://docs.sparklayer.io/help/customers/companies.md#create-a-company).

### Step 2. Add a location for each branch

**In Shopify:**

On the company in Shopify, add a location for each branch, for example `Leeds`, `York` and `Hull`, with the branch's shipping address. The locations sync to SparkLayer.

**In SparkLayer:**

On the company, click **Manage locations**, then **Add a location** for each branch, for example `Leeds`, `York` and `Hull`. For a business with regions, add each region first, then the branches inside it.

Each location uses the company's settings. Open a location at **Companies > Manage locations** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies > Manage locations** in the Shopify app and change its **Price list** or **Pay later** only if that branch is different. See [Add a location](https://docs.sparklayer.io/help/customers/company-locations.md#add-a-location).

Orders for a location go to that location's address, so check each branch's address is right.

### Step 3. Make the buyer a company admin

Add the buyer's existing customer account to the company. They keep the same login.

**In Shopify:**

On the company in Shopify, add the buyer as a contact. They sync to SparkLayer as one of the company's people.

**In SparkLayer:**

On the company's page at **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app, add the buyer's account to the company's people.

Then, on the company's page in SparkLayer, tick the buyer as one of the **Admins** under **People**. Choose them as the **Main contact** too if they should get the company's order and invoice emails. Click **Save**.

Admins can order for every location, so you don't need to add the buyer to each one.

### Step 4. Add branch staff, if they order themselves

Optional. If people at a branch sign in and order today, add them to the company the same way as the buyer: as contacts in Shopify, or as people on the company in SparkLayer. Then open their location in SparkLayer and, under **People**, add them and choose a role:

| Role | Use it for |
| --- | --- |
| **Buyer** | Staff who order for their branch |
| **Approver** | Staff who check and approve orders before they're placed |
| **Manager** | A branch manager who also manages the branch's people |

See [Add people to a location](https://docs.sparklayer.io/help/customers/company-locations.md#add-people-to-a-location). People only see the locations they're added to.

### Step 5. Check the buyer can order for every branch

Sign in to your store as the buyer, or ask them to. The location chip in the widget's top bar shows a location. Click it, and **Choose a location** lists every branch.

Pick a branch and add a product. The cart shows that branch's prices, and checkout delivers to its address. See [How buyers order for a location](https://docs.sparklayer.io/help/customers/company-locations.md#how-buyers-order-for-a-location).

### Step 6. Remove their sales agent access

Once the buyer can order through the company, go to **Sales Agents > Agents** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/v2/customers/agents)), or **SparkLayer Wholesale > Sales agents** in the Shopify app, click their name, choose **Customer** under **Role** and click **Save**.

They keep their account and their company access, and the sales agent place is free for someone on your team. See [Change or remove a sales agent](https://docs.sparklayer.io/help/sales-reps.md#change-or-remove-a-sales-agent).

### Step 7. Tidy up the old set-up

Once you're happy:

- **Clear the sales agent group** from each branch account's `sparklayer.sales_agent_groups` metafield, and remove the choice, such as `northside-cafes`, from the metafield's definition.
- **Delete the custom role** at **Sales Agents > Roles** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/roles)), or **SparkLayer Wholesale > Sales agents > Roles** in the Shopify app if no one else uses it. **Used by** shows "No one".
- **Keep the old branch accounts** until you've checked their order history.

## Check it worked

- **The company's page** at **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app lists the buyer under **Admins**, and the **Locations** card names every branch.
- **The Sales agents screen** at **Sales Agents > Agents** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/v2/customers/agents)), or **SparkLayer Wholesale > Sales agents** in the Shopify app no longer lists the buyer, and the "used" count on **Your agents** has gone down by 1.
- **The buyer signs in** and sees the location chip, not a **My Customers** tab.
- **A test order for one branch** shows that branch's prices and address, and the confirmation names the branch.

## If something's not right

- **The buyer sees "No location".** They're not an admin and haven't been added to a location. Tick them under **Admins** on the company. See [Why can't someone see a location?](https://docs.sparklayer.io/help/customers/company-locations.md#why-cant-someone-see-a-location)
- **The buyer isn't in the Admins list.** They're not in the company yet. Add them as a contact of the company in Shopify, or to the company's people at **Companies** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/customers/companies)), or **SparkLayer Wholesale > Companies** in the Shopify app.
- **The buyer still sees My Customers.** They still have a sales agent role. Change it to **Customer** at **Sales Agents > Agents** in the SparkLayer Dashboard ([open](https://app.sparklayer.io/v2/customers/agents)), or **SparkLayer Wholesale > Sales agents** in the Shopify app, then ask them to sign out and back in.
- **A branch has the wrong prices.** Check the location's **Price list**, then the locations above it and the company. See [Why don't the prices match the customer group's price list?](https://docs.sparklayer.io/help/customers/company-locations.md#why-dont-the-prices-match-the-customer-groups-price-list)
- **The buyer can't pay on account.** **Pay later** is off on that location, or the level above it.

## FAQs

**Do I have to move customers off sales agent accounts?**

No, the old set-up keeps working. We recommend companies because they don't use a sales agent place, they keep the buyer to their own business without a sales agent group, and they let you set prices and terms once for every branch.

**Can my own sales reps still order for the company?**

Yes. Choose them under **Sales agents who look after them** on the company, or leave **Any sales agent**. A sales agent can order for any of the company's locations.

**Does the buyer need a new login?**

No. They sign in with the same account and email as before. Instead of choosing a customer, they choose a location.

**Can someone at a branch only see their own branch?**

Yes. Add them to their branch's location and nowhere else. Only company admins see every location.

**Does each branch still have its own credit limit?**

No. A company has one credit limit, shared by every location. Each location shows what it owes, and **Financials** shows how much of the company's limit is left.

**We're not on Shopify. What should we use?**

Companies is only on Shopify. On other platforms, [company users](https://docs.sparklayer.io/help/customers/company-users.md) let several people share one account, or keep the restricted sales agent set-up.

## Next steps

- [Company locations](https://docs.sparklayer.io/help/customers/company-locations.md): Everything about locations, roles and how buyers switch between them
- [Companies](https://docs.sparklayer.io/help/customers/companies.md): Set a company's prices, pay later, people and sales agents
- [Invite buyers](https://docs.sparklayer.io/help/customers/invite-buyers.md): Add branch staff to the company with their own logins
