Shopify FAQs
We've included some of our most commonly asked questions below. If you can't find the answer you're after, please contact us and we'll be happy to help.
What Shopify plan do I need to be on to use SparkLayer?
SparkLayer works on all versions of Shopify, from Shopify Basic right through to Shopify Plus. All you need is an active Shopify store and you're good to go.
Can I use SparkLayer with my development website?
Yes! If you're setting up SparkLayer on a development store (e.g. a test account), we can enable a special developer-mode that lets you use SparkLayer until you're ready to activate a billing plan. Please contact us for more details.
Can I have DTC and B2B on the same Shopify website?
Yes, It's possible to install SparkLayer onto your existing Shopify DTC store (i.e. retail), meaning you can run both DTC and B2B on the same store. We call this a 'hybrid setup' and we've a guide here that explains how works. When your B2B customers sign in, they simply see the special SparkLayer Frontend interface that allow them to see their prices and place orders.
If you want to see this in action, you can try our B2B/B2C demo store here Sometimes it can be better to separate out your B2B store onto a secondary Shopify store and we've detailed some of the common reasons.
Which version of Shopify "Customer Accounts" is SparkLayer compatible with?
When setting up your Shopify store, it's possible to choose from two types of 'Customer Accounts' within Shopify:
- Classic customer accounts: this is how most Shopify stores are set up and allows compatibility with third-party apps and the ability to customise the look and feel
- New customer accounts: this uses a 'password-less login' and has a locked down account area that uses Shopify's 'out of the box' functionality (very similar to the checkout)
Compatibility with SparkLayer
When setting up SparkLayer, you'll need to ensure the 'Classic customer accounts' option is selected within Shopify.

There are a number of reasons for this:
- SparkLayer has a B2B-optimised My Account Interface that replaces the existing account area on the Shopify store. When using the "New customer accounts", customers get directed to a separate portal which prevents this from loading
- B2B processes typically require an account application process and some variety of account moderation. When using "New customer accounts", the concept of account registration is no longer possible and it's not possible to set up an account moderation flow
To check which version you're using, within your Shopify admin, click Settings and go to Checkout and accounts. Under 'Customer accounts', simply click the Edit button to change the version.
Future Compatibility
In the future, it may be possible to "combine" both SparkLayer and the "New customer accounts" but at this time, this isn't an option for merchants. You can learn more about the differences between the account types in Shopify's guide.
How do I set up a B2B registration form?
If you're looking to enable a wholesale/B2B registration form there are a few good options for this and we've written a full guide here!
In summary, these are the options we recommend:
- If you have someone who has development experience, they could start with our our example code login code and apply this to your theme
- You could use your current login/registration page and enhance the registration page with some custom coding (see this guide)
- You could use the highly-rated Customer Fields app; this lets you create custom registration forms really easily and it integrates very nicely with existing storefronts. We've used this to create an example registration form here (we've also attached a screenshot of how it can work). We've more details how it works in our guide here
- If you're looking to use the Shopify Dawn theme as the starting point to your B2B store, you can use our ready made Shopify B2B Dawn Theme which has a login/registration form built in
It's also worth noting that you can manually add customers via the Shopify Customers admin and from there you could moderate your wholesale applications.
Can you help me install SparkLayer on my Shopify website?
Yes! Within the SparkLayer Dashboard, you'll see an option to request our team to install SparkLayer for you. Typically we can do this within 1-2 working days and you're then good to go. We then offer an onboarding session to walk you through how everything works.
Does SparkLayer work on any Shopify theme, include Online Store 2.0?
Yes! SparkLayer is compatible with all Shopify themes, even fully customised. If you need help in the setup, our team can add all the code snippets for you. You can even try our Shopify B2B Dawn Theme
If I update my Shopify theme, will I need to re-install SparkLayer?
SparkLayer requires adding specific code to your Shopify store and normally involves updating 3 or 4 files within your theme. When you perform a theme update, it's likely that these changes will be removed and the SparkLayer code will need adding back in. We are always happy to perform this re-install for you, please get in touch and we'll be happy to help.
How does SparkLayer affect my current Shopify theme?
The SparkLayer B2B widgets, including B2B pricing, cart and my account area, are only loaded once a customer who has been tagged with b2b successfully signs in to your store.
For all other users, your store will remain completely unaffected.
This allows you to have full control over which customers are able to see your B2B pricing and place B2B orders.
What if I'm already using a wholesale B2B app on my website?
If you already have a B2B / Wholesale app installed on your store, SparkLayer can work alongside this. It's a great way to test out SparkLayer and, once you're happy, you can simply uninstall any previous B2B apps you were using. If your previous B2B app has made code changes to your Shopify store, you may want to ask the app developer to remove these although this is optional.
Will SparkLayer slow down my Shopify website?
No. For performance, the SparkLayer Frontend only loads when a valid B2B customer successfully logs into a website; for your standard (B2C) customers, no code is loaded at all. When a B2B customer logs in, all loading of the interfaces is asynchronous which means a negligible impact on page load times and performance even though SparkLayer is a hosted third-party solution. The result is the end customer will have a rapid experience browsing products and placing orders.
How do I set up discount promotional codes at checkout?
Currently, it's not possible to use Shopify discounts in parallel to SparkLayer (e.g. using coupon or promotional codes). The reason for this is we make use of a Shopify feature called 'Draft orders' and it's not possible to apply discounts at the same time as the B2B pricing due to a limitation within Shopify. There are a few good workarounds we recommend:
- You could apply the discounts to the price list itself (e.g. say you want to apply a 10% discount, you could reduce your prices by 10% in your price list and then upload this)
- You could create a promo price list and use this for all customers, placing any promo pricing on that price list so that all customers can have access to this. We recommend applying a tag on the product so either these promo products can be placed in a category or the product page can have a sticker to show the further promotional pricing.
- You could set up a customer-specific discount that gets applied on top of a price list. We've a guide here on how it works and it can be a powerful way to do customer-level discounts
One other solution we have is to use our special checkout custom fields feature as a workaround. This would allow you to show a 'Promotional code' field in the SparkLayer checkout and then apply a discount after the order is placed. So the flow would work as follows:
- After adding the checkout custom field, this would show on the checkout (see below). The customer would enter a code here and place the order. Note: the code would not apply any discounts at this point.
- The order would then come into Shopify. You can apply discounts after a B2B order is placed providing it comes through as a Draft order within Shopify. If you click into the order, you can apply percentage or specific discounts against the order (see attached image)


We are hopeful that in the near future there will be a better way of doing this!
How do I set up discounts to apply across a product range?
Currently, it's not possible to apply tiered discounts across products (e.g. buy 3 from XYZ range and save 10%). The reason for this is we make use of a Shopify feature called 'Draft orders' and it's not possible to apply discounts at the same time as the B2B pricing due to a limitation within Shopify. There is however a good workaround we recommend:
- You could create a brand new product in Shopify and set up a range of variants within it (e.g. all the products you want to offer within the discount)
- We have a special setting called minimum product quantity (See our guide here) which forces the customer to order at least X of the product (e.g. 3)
- Using the Quantity Pricing & Rules, you can then set up your discounted rates (e.g. buy 3 and the price is 10% cheaper)
- Within Shopify, you could make these products 'hidden' from standard B2C customers simply by not associating them to a collection
How do I set up discounts based on an order total?
At the moment, I'm afraid we don't support discounts based on order totals (e.g. 20% off if you spend over $X amount). This is an area we are actively exploring but there's a lot of complexity involved which makes it difficult (e.g. there may be certain products you want to exclude from the discount calculations).
For now, our pricing is based on specific discounting on a product level and we've a summary here of what's possible.
Can I use my existing payment methods on the checkout?
In terms of payment methods supported by SparkLayer and Shopify. If your customers choose "Pay Online by Card" during the SparkLayer checkout process, they will simply be taken to the Shopify checkout. From there, any payment methods you have set up in Shopify (e.g. Paypal, Shop Pay, Affirm Pay) will show up, allowing the customers to pay by this method. We've attached a screenshot to illustrate this.
In short, if Shopify support this payment method, your B2B customers could select it during the checkout providing they choose "Pay Online by Card".
How do I hide products or set up B2B-only products?
At the moment, Shopify has no built-in way to easily show/hide products based on a customer type (i.e. B2B vs B2C). So when a B2B customer signs in, they will technically see all products on your Shopify store.
There are a few things we recommend to make the experience better:
- You could create a B2B-only collection and redirect customers to this once they login. If you wanted to show special B2B-only products, you would need to create these as separate products within Shopify (i.e. with unique SKUs, etc)
- With SparkLayer pricing, if you don't upload a price against a SKU, the B2B customer won't be able to purchase it. So this is a way to prevent them from adding items you don't want them to purchase
- You can use the popular Shopify app, locksmith. Once installed, you'll be able to hide / show products based on customer tags set up in Shopify
- Finally, it is possible to adapt the Shopify themes to hide/show products. We've a modified version of the Shopify Dawn theme that has it built-in, or you can view our article on 3 powerful ways to configure B2B-only products and collections on Shopify here
Sometimes merchants may opt to create an entirely separate Shopify store for their B2B customers just to make the management a little easier.
Can I use my Shopify prices for my B2B pricing?
Yes! SparkLayer allows you to automatically synchronise your Shopify prices (e.g. your main Shopify price, Compare-at price), making it really easy to set up B2B pricing for your customers. For example, you could set your B2B prices to be 20% off your Shopify prices and we can even make provisions for your tax set up in Shopify (e.g. exclusive or inclusive of tax).
How do I set up pre-order and backorder products?
In terms of pre-ordering, SparkLayer has full support for different stock status messages and it's possible to set up products as pre-order/back-order easily - it does rely on some configuration within Shopify, but it's relatively easy to do!
We've full information here on how it works and you can even set up "due in" dates to give your customers visibility.
Do I need to use product SKUs?
In terms of product SKUs, SparkLayer relies on these being added to your products within Shopify so that we can display the correct B2B pricing when your customers log in. Without a unique SKU, there's no way for SparkLayer to do this.
If you don't already have SKUs in Shopify, it's relatively quick to do. You can either edit individual products and add them manually, or you can use Shopify's 'Import' or 'Edit products' feature to do this in bulk.
How do I restrict B2B customers from DTC inventory (and vice versa)
If you're installing SparkLayer on a single website and you are looking to run both DTC and B2B at the same time, it will be necessary to use the same stock pool behind the scenes. From an inventory point of view, this essentially means that both DTC and B2B customers will be ordering from the same stock source which can pose challenges.
SparkLayer has a way to "reserve" stock for your DTC customers, essentially blocking B2B customers from ordering too much inventory for a specific product. Learn more
Important It is not possible to block DTC customers from ordering from your inventory and there is no mechanism in Shopify to do this. If you are wanting to implement this, you will need to consider:
- Creating B2B-specific products on your store (e.g. you could use an app such as Locksmith to do this)
- Creating a separate store just for your B2B customers, effectively separating out your inventory completely. Learn more in our guide here
How do I set up a customer in Shopify as B2B
To enable a customer as B2B, this works by adding a special tag in Shopify against their customer record. This tag by default is always b2b and you can add additional tags based on the rules you've set for the customer in the SparkLayer Customer Groups admin.
To learn more about setting up customers as B2B, see our guide here.
How do I invite a B2B customer to my website?
Please refer to our guide here.
Where do I find my B2B orders in Shopify?
For non-card payment orders (e.g. Payment by Invoice), the order is saved as a "Draft order".
- You can then convert these into approved orders by marking them as paid or marking them with payment terms (please see this guide for more details).
- It's also possible to automatically convert Draft Orders into Completed Orders with our feature here "Auto-complete Shopify Draft orders"
- By default Shopify will not send an email for Draft orders but we have a guide here that explains how to do this.
It's important to note that once an order has been approved, it will only then show in the customers My Account section and the SparkLayer Dashboard.
How do I edit orders?
Firstly, it is possible to edit orders within Shopify when an order is placed via SparkLayer. If you have it configured to create orders as 'Draft orders' you can go into the order and make changes. If you subsequently then manually complete the order (i.e. Mark as paid), you can still edit the order up until the point of fulfilment.
The issue arises in one scenario we know about which is a limitation of Shopify. If you have 'Auto-complete Shopify Draft orders' turned on within the SparkLayer Dashboard > Settings this will skip the ability to make subsequent orders. This is why, when you try and edit a 'Completed order', you are seeing the "Unable to edit order" message. At this point in time, we don't have a solution to this, other than switching 'off' the SparkLayer setting that automatically completes a draft order.
Can I stop pricing showing as a discount within a Shopify order?
When an order arrives into Shopify, if your B2B selling price is lower than your standard Shopify retail price, you will notice that it is shown with a "Discount".

Due to how SparkLayer works in the context of Shopify, there isn't a way to adjust this. In order to display the correct B2B pricing to a customer, SparkLayer essentially applies a "line item discount" behind the scenes. When this arrives into Shopify, it is then treated as a standard discount when viewing an order.
Shopify additionally fully locks down any code edits to their admin system and there is no way to adjust this behaviour at this time.
How do I send an invoice?
In terms of invoicing, SparkLayer doesn't send invoices directly but there are some good ways to do this within Shopify or using our recommended partner app.
When a customer places an order via your website, it's possible to have this order come into Shopify as a 'Draft' order. Shopify then has the ability to 'Send an invoice' which allows you to send a customise message and a link to the Shopify checkout to make payment (see their guide here). It's not really an 'invoice' as such, but it can be adapted to work as one.
A better option would be to use a dedicated app, Sufio. SparkLayer integrates really nicely with Sufio and you can use their system to send customised invoices, accept payments, and more. You can even let customers download invoice PDFs directly from the SparkLayer My account area (see our guide here).
How do I set a minimum order quantity?
Within SparkLayer, we do have support for minimum (and maximum) quantities, but you're only able to set these at a product or product-variant level. It's not possible to currently set minimum order-level quantities but it's something we are considering as part of a future update!
There is a potential workaround for product-variant requirements and we've included our recommend approach
- You could create a brand new product in Shopify and set up a range of variants within it (e.g. all the products you want to offer within the discount)
- We have a special setting called Minimum product quantity which forces the customer to order at least X of the product (e.g. 3)
- Using the Quantity Pricing & Rules, you can then set up your discounted rates (e.g. buy 3 and the price is 10% cheaper)
How do I set up multi-currency using Shopify Markets?
Please refer to Shopify Markets & Currencies
How do I send order notifications to customers and my team?
At the moment, Shopify doesn't have a built-in 'notification' for when a draft order is placed so it does require workarounds for now. There are a few options:
Receive notifications as store owner:
- if you are a merchant on the Shopify, Advanced or Shopify Plus plans, you can use Shopify Flow to do this. We've an example you can download here
- It's also possible to automatically convert Draft Orders into Completed Orders with our feature here
Receive notifications as a customer:
- If you want your customers to receive a notification, there are a few ways to do this. As above, you could activate the auto-complete orders feature above.
- We also recommend a really good one called Mechanic that lets you set rules/flows based on criteria. We have some ready-made templates you can use here
Can I import historic B2B orders into Shopify
Yes, there are methods to do this. Please refer to our guide here