New orders placed through Shopify will be created in Brightpearl. The order download can be activated and deactivated at any time from within Shopify.
Order download triggers
Brightpearl’s Shopify integration attempts to download orders on the following cadence:
- Real time
When an Order Created webhook is received from Shopify, Brightpearl attempts to download the new order.
- Hourly reconciliation
If no webhooks are received within an hour, an hourly reconciliation is performed to continue order download in the event of webhook failure by Shopify.
- Nightly reconciliation
An additional nightly reconciliation run at (3am Brightpearl server time) to see if any orders were missed in the last 24 hours.
- Manual
A manual order download can be triggered for a single order from the Brightpearl Shopify app.
Single order download
If for any reason an order fails to download, an order download can be forced via single order import:
In the Shopify Order ID field enter the Shopify Internal ID (this is found in the URL when you're viewing the order in Shopify (eg if your order URL is http://mystore.myshopify.com/admin/orders/123456789 then the Shopify Order ID is 123456789) click 'Import order' and the order should appear in Brightpearl.
New order status
New orders will be created with the order status chosen in the Orders configuration tab.
New and existing customers
If a new email address is found on the order, a customer will be created in Brightpearl, regardless of whether they chose “guest” or “account” during checkout.
Email address 2 and email address 3 in Brightpearl are not checked when searching for existing customers to assign the order to.
An order from a repeat customer will be added to their existing account. By default, the customer’s contact record will be updated with the most recent information from that order. Currently, integration does not capture a company for new contacts that are not already in Brightpearl.
Addresses
Brightpearl has 3 address fields on an order:
- Primary
- Invoice
- Delivery
Primary address is mapped to the delivery address.
You can also choose a contact email for an anonymous customer for orders in the Orders configuration tab.
SKUs and product description
On order download, Brightpearl attempts to match a product’s SKU in Shopify to a SKU in Brightpearl. If a match is found, that product is added to the order in Brightpearl. If it cannot be found, the product will be added as a miscellaneous line item. It is recommended to add the missing product in Brightpearl, delete the sales order in Brightpearl and then re-download using Single Order Import. This ensures that the fulfillments post correctly to Shopify.
Bundles
When an order for the item is downloaded, Brightpearl will use the bundle item and add on all the separate components. The inventory will be automatically allocated to reserve the bundle for the order.
Price, tax, and order total
Brightpearl will always respect the item price and tax collected on Shopify. In rare cases, a reconciliation line may be required to ensure the order total matches Shopify.
The price list on new orders can be selected in the Orders tab in the app.
Tax code
The tax code assigned to an order row will be selected based on the Brightpearl sales tax rules.
Shopify multi-currency
Read about multi-currency support here.
Inventory allocation
When an order is downloaded, any inventory in the channel's default allocation warehouse will be allocated to the order. There may have been more inventory visible on Shopify (from other warehouses), but this will not be automatically allocated.
Brightpearl automation rules can be used to create goods out note for any warehouse, so you could use that to reduce the risk of double selling inventory in warehouses other than the default allocation warehouse.
Discounts, coupons, and promotions
All discounts, excluding shipping, will be spread across products using a weighted average based on price. The following table is applicable to both Shopify and Shopify Plus accounts.
Discount Line |
Item Line |
||||
Type |
Displayed as |
Details |
Account code |
List price and price |
List price and price |
Order level discounts, % |
Additional line |
Discount or coupon description |
Sales discounts |
List price: 0 Price: 0 |
List price: original Price: discounted |
Item level discounts, % |
Additional line |
Discount or coupon description |
Sales discounts |
List price: 0 Price: 0 |
List price: original Price: discounted |
Shipping discounts will only discount the shipping line item as opposed to all products.
Shipping method
Shipping methods must be defined within Shopify to be used on sales. Shipping charges will download as additional line items.
If a shipping method of the exact same name exists in Brightpearl it will be assigned to the order in the “Shipping Method” field. If the name cannot be matched, the default shipping method selected in the Orders tab will be used. This allows sales to be filtered by the shipping method to prioritize and batch fulfill orders. The goods-out note will inherit the order shipping method unless specified otherwise.
Custom items
The integration supports customizable products, adding any Shopify custom items to the order in Brightpearl.
Cart attribute mapping
Shopify allows you to create cart attributes which are custom fields used for collecting additional information from customers when they checkout, such as gift messages. To bring those additional details into Brightpearl the Shopify cart attribute can be mapped to a Brightpearl sales order custom field. And if the attribute isn't mapped it will get captured in the Brightpearl order notes. Read more about cart attribute mapping with Shopify here.
Enter the Shopify attribute field name and specify which Brightpearl custom field the information should be captured in.