Implementation of Shopify

We recommend that you read our prerequisites and guide available  here before attempting an implementation.

Install the Shopify app

To begin connecting Brightpearl and Shopify you will need to install the app. This will create a new sales channel in Brightpearl for reporting on sales from the Shopify account.

How to install the Shopify app

  1. In Brightpearl, go to  App Store .
  2. Find the Shopify app and click  Turn on .
  3. In the pop-up window enter the details of your first Shopify sales channel. Each field is described below:
  • Channel Name
    Enter a name for this channel. This is how you will identify the sales channel throughout Brightpearl; in menus, on reports, orders and accounting.
  • Brand
    Select a channel brand for this sales channel. Orders downloaded from this store will automatically take the company and logo set against this channel brand.
  • Price list
    Prices are not synchronized with Shopify. This price list is used only as the default price list assigned to new customer records created through the integration. Every contact record requires a price list, which can also be considered a “customer group” in Brightpearl. Typically you’d use something like “Retail” - or you could create a dedicated price list.

Note : Additional settings for bank accounts order statuses and warehouses  are defined within the ecommerce connector.

shopify settings.png

Connect a Shopify account

Once the app has been installed you can begin connecting Shopify accounts. If you don't yet have a Shopify account, start with a free trial  here .

Each account to be connected will need its own sales channel in Brightpearl - installing the app creates one for you. If you have additional accounts to integrate you can manually create more sales channels for Shopify.

How to connect a Shopify account

  1. Brightpearl is linked to Shopify via the ecommerce connector. Go to the App Store , locate the Shopify App and click on the Set Up button.

Screen Shot

  1. Log into the connector using your Brightpearl user login details.
  2. Once logged into the connector click to add a new store. Each ecommerce sales channel that exists in your Brightpearl account is listed.
  3. Select the Shopify channel your wish to connect first (remember you can add more later).
  4. Enter the URL for the Shopify store.

Shopify Install

  1. You are now taken to the Shopify app install page (you may need to log into your Shopify account). Install the Brightpearl app onto your Shopify account. Click Install to continue.

Shopify Install app

The account is added. A successful connection is indicated on the connector dashboard:

Shopify Install OK

Your Brightpearl and Shopify accounts are now connected but the integration remains inactive at this stage. You will be able to import products before activating the inventory and order syncing.

For each of your Shopify accounts you will need to create a sales channel in Brightpearl and complete the connection within the connector.

Shopify store settings

Before you begin using the Shopify channel you will need to define the following within the connector:

  • Bank accounts
    Two bank accounts can be assigned to each Shopify channel - one for PayPal payments, and one for all other payment methods. The Brightpearl account (nominal) codes for these bank accounts must be typed into the ecommerce connector.
  • Order status
    When new orders download they will be automatically assigned the status chosen within the ecommerce connector.
    Remember you don't need to use a new status for every channel to see where it came from, instead you can add the channel column to your sales list within My Preferences (per user).

Note that  warehouses  and  price lists  are controlled on the sales channel in Brightpearl. 

How to define Shopify bank accounts

  1. Log into the the connector from the setup button on the app in the App Store. Log in using your Brightpearl user details.
  2. Once logged into the connector select Actions > Settings for the relevant ekmPowershop store.

connector settings1

  1. Enter the account (nominal) code for the bank accounts to post payments into (find these in Brightpearl at Accounting > List bank accounts).

bg bank accounts

  1. Save the settings.

How to define Shopify new order status

  1. Log into the the connector from the setup button on the app in the App Store. Log in using your Brightpearl user details.
  2. Once logged into the connector select Actions > Settings for the relevant Shopify store.

connector settings1

  1. Select the status new orders should be created on.

bg bank accounts

  1. Save the settings.

Transfer Shopify products into Brightpearl

Brightpearl is going to be your “master product list”, and your inventory levels will be managed from Brightpearl. All other product attributes, such as price, images, description and so on will be managed on your Shopify store. Each product needs to exist in both Shopify and Brightpearl with the same SKU so that they are able to be linked.

Products which only exist in Brightpearl will need to be exported and then imported to Shopify.

Products which only exist in Shopify will need to be imported into Brightpearl.

Shopify importing products diagram

Shopify products can be downloaded into Brightpearl, creating the necessary product types, brands, options and option values, as well as weight, at the same time. If a product already exists in Brightpearl with the same SKU it won't be downloaded. All downloaded products will be added to a category in Brightpearl called "Shopify products". If this category doesn't exist it will be created during the product import.

Tax settings

Shopify lets you create a number of different tax rates for different regions. Orders will be downloaded into Brightpearl with the tax amount as defined by Shopify, and the tax code as per your Brightpearl default tax code - but only if the product is taxable and the customer is in a taxable region .

There are a few settings that you should check in your Brightpearl account before the product or order import processes are activated. This is because products and prices use the tax settings in your account.

  • Check that you are on the correct Tax mode at  Settings > Company > Accounting: Tax
  • Check your default tax code at  Settings > Company > Accounting: Tax
  • Check your tax rates at  Settings > Localization > Tax codes

You should also check the setting in Shopify at  Settings > Taxes  to see if your products are tax-inclusive (generally for b2c sites for VAT based stores) or tax-exclusive (Sales Tax based stores, and b2b VAT based stores).

Brightpearl stores and synchronizes product prices without tax, but Shopify can be set up to “show prices including tax”. We use the Brightpearl default tax rate to do the calculations, since the accounting will all be happening in Brightpearl. If you can’t edit the existing default tax rate in your Brightpearl account, create a tax code and set it as the default rate.

Price lists

When downloading products, the sell price on Shopify will be entered into the price list you have set for the channel.

Shopify does not have a field for cost prices, but since cost prices are important in Brightpearl for accounting you should ensure that you create an up to date cost price list for buying your products. This will ensure that inventory is added with an asset value and ensure that profit is calculated on your sales.

Inventory levels

The product download will only create products, it will not add inventory.


If a Shopify product has multiple variants, such as sizes and colors, the import will create a Brightpearl product for each separate SKU (one product per variant). The products are all created using the same product name which causes them to form a product group, each variant is assigned the relevant option value (e.g. Small or Medium or Large). If an option (e.g. "Color") and option value (e.g. "Red") of the same name already exists in Brightpearl it will be used for the product creation, where they don't already exist (or the names do not match) they will be created as part of the import.

Product options

Shopify is not strict with option values when you create variants, so you may have products with a variety of terms, such as "Small", "S", "Sm" and so on. When your products are downloaded into Brightpearl, we create the options and option values automatically - and each of these will be created as separate option values - but they all mean the same thing. Similarly, if you have products with "Option one = xxx", then update "Option one" to be something more relevant. It's harder to correct this once your products have been imported, so fix your Shopify data before you import into Brightpearl.  You can fix your Shopify data easily using their export / import process and some Excel tweaking. 

Non-stock tracked products

When you download products into Brightpearl, all items are downloaded as stock tracked items, even if they are set to "do not track inventory" in Shopify. This is because only stock tracked items can be fulfilled or drop-shipped in Brightpearl. If you never need to ship an item - perhaps it's a downloadable product - then you can set the Brightpearl product to "not stock tracked".

How to import Shopify products to Brightpearl

  1. Access the ecommerce connector via Brightpearl, go to App Store and click Setup  for Shopify.
  2. Log into the connector using your Brightpearl staff login.
  3. Once in the connector select Action for the relevant channel.
  4. Select Import Products from the drop-down.
    Shopify products import
  5. Review the Brightpearl settings on the right-hand side.
  6. Select whether to download all products or only those added into Shopify since the last download.
  7. Check the box to confirm that your SKUs meet Brightpearl requirements.
  8. Click the Download Products button to begin the download. The download will begin to work. You are able to carry on working in Brightpearl.

Activate the Shopify integration

No data will be uploaded or downloaded until the integration is activated from with the ecommerce connector.

There are three separate options to activate:

  • Inventory
    Activating inventory sync will mean Brightpearl will keep your Shopify stock levels the same as they are in Brightpearl.
  • Orders
    Activating order sync will mean any new orders received through your Shopify store will automatically download into Brightpearl. This will also create new customer records.
  • Sales receipts
    Activating sales receipt sync will mean that orders are automatically marked as paid and the necessary accounting is created in Brightpearl.

How to activate the Shopify integration

  1. Access the ecommerce connector via Brightpearl, go to App Store  and click Setup  for Shopify.
    Screen Shot
  2. Log into the connector using your Brightpearl staff login.
  3. Once in the connector select Action > Settings  for the relevant channel.
    Shopify Activate Settings
  4. Check the channel settings on the right-hand side are correct.
    Shopify Activate Settings
  • New order status
    This is the sales order status downloaded orders will be placed on. This is the default "New sale (quote) status" set in Brightpearl at Setup > Sales > Sales workflow .
  • Warehouse for allocation
    This is the warehouse selected for inventory syncing on the sales channel in Brightpearl. New orders will also be assigned to this warehouse and inventory will be allocated to the order from this warehouse.
  1. Select which options to activate. Note that once an order is marked as paid in Brightpearl accounting entries will be made and the payment will have to be reversed in order to cancel the order. If you plan on placing test orders you might want to activate sales receipt downloads later on.

Shopify Activate Options

  • Brightpearl manages inventory for this store
    Select to update Shopify inventory levels each time the on-hand inventory level (of the same SKU) in Brightpearl changes. Inventory levels will not be updated until the next change is made.
  • Download orders into Brightpearl
    Select to automatically download new orders received through your Shopify store into Brightpearl.
  • Create sales receipts in Brightpearl
    Select to automatically mark downloaded orders as paid. This will create sales receipts and accounting for each order whether a payment has been received or not.
  • Bank account for sales receipt & PayPal sales receipts
    Enter the nominal code for the bank account into which you want payments to be posted in Brightpearl, and another one for PayPal Payments - this can be the same. Find the code in Brightpearl at Accounting > List bank accounts .

Activate nominal code

Bringing your inventory levels in line

On hand inventory levels are sent to Shopify from the warehouse selected against the Shopify sales channel in within Brightpearl. Only inventory levels for matching SKUs will be uploaded to Shopify.

Inventory levels won't automatically become in sync across all your products since Brightpearl will only send inventory updates when the quantities change, for example, when items are received into stock, items are allocated to a sale or stock corrections are made.

This is a good time to run a stock take and update Brightpearl inventory levels, which will automatically push inventory levels to Shopify (for any that change). However, over time Brightpearl and Shopify will gradually come in line. Alternatively, we can run a full inventory level sync for you. Please speak to your implementation consultant or contact our Support team.

Inventory value & cost prices

It is important that you assign cost prices to products when updating inventory levels as these are used to calculate the value of your inventory and create accounting journals.

When these items are sold the value is used to record cost of sales and your overall profit on the sale of the item (except where cost of sales accounting = "No").

Cost prices are also needed when purchasing and receiving inventory from your suppliers. These values are, again, used for updating stock assets in accounting.

How to synchronize inventory levels on Shopify

This functionality has been temporarily disabled

Your Brightpearl implementation consultant can do this for you, otherwise, please contact our Support team who will be able to assist.

  1. Access the ecommerce connector via Brightpearl, go to App Store and click Setup  for Shopify.
  2. Log into the connector using your Brightpearl staff login.
  3. Once in the connector select Action > Update Inventory Levels  for the relevant channel.
    Update inventory refresh

Connect additional Shopify accounts

Each Shopify account is added as a separate sales channel in Brightpearl allowing you to separate sales reporting. When the Shopify app is installed it creates a sales channel which is used for connecting to your Shopify account. To integrate additional accounts you will need to create more Shopify sales channels in Brightpearl.

You will then be able to repeat the same set up implementation steps.

How to create a new sales channel

  1. Go to  Channels > Manage Channels .
  2. Click the  Add Channel  button.
  3. Select the type of channel you wish to create.
  4. Enter a name for the channel - this is how it will be displayed throughout Brightpearl and how you will recognize where sales have been made.
  5. Depending on the channel type, make the other necessary entries. Read the relevant channel implementation guide for field descriptions.
  6. Save the channel.
Have more questions? Submit a request


Please sign in to leave a comment.