Please refer to our Shipping guide for further information.
Tax configurations
Introduction
In the context of B2B, it's really important to understand the two types of pricing available to customers:
Price type
Tax setup
Gross
The pricing will include tax. For example, if the price is $20.00, this price will include any tax calculations
Net
The pricing will exclude tax. For example, if the price is $20.00, this price will exclude any tax calculations
B2B customers typically make payments in one of these ways:
either with tax included (Gross Pricing)
or tax excluded (Net pricing)
How SparkLayer handles pricing
In the context of SparkLayer, SparkLayer will always output the prices in the Net amounts, regardless of the tax status you set on your website. In effect, when you upload your B2B pricing via SparkLayer, the customer will see the exactly the same prices on your website.
When the customer then proceeds through the checkout, they will then see the tax calculations added.
How SparkLayer calculates tax
Simply put, SparkLayer calculates tax based on the setup you have on your website and you can see full information for specific platforms below.
🛍️ Using Shopify
🌐 Other platforms
Before starting, there are two important resources to review:
Your specific Shopify store set up: by visiting this link, you can see how your tax is setup
Shopify help guides: Shopify how their own guides on setting up tax, please see here.
Broadly speaking, Shopify lets you configure tax rules at a global level but also apply specific edits against customers and products.
To help set the scene, we've summarised some of the key ways you can configure tax below. Please note: If you're using SparkLayer to power your B2B store alongside your B2C (retail), you'll need to check carefully before making any edits.
Setting a customer to be tax-exempt
It's possible to set a customer within Shopify to be 'Tax exempt'. Within Shopify, click edit on a Customer and under Tax Settings you can untick "Collect tax". Once done, the customer will then be exempt from any tax charges on your website.
In the context of SparkLayer, they'll see all your pricing as net and on the final step of the checkout, the tax will be set to zero.
Setting up tax settings for products (including variants)
Shopify has the ability to set tax rules on a product and product-variant basis, giving you a great deal of flexibility on how tax is charged. When editing a product, you'll see a checkbox 'Charge tax on this product' which, when ticked, will use the tax settings you've configured here.
You can also configure this on a product-variant level.
In the context of SparkLayer, if you have specific products that are set to not charge tax, this will be factored in when the customer gets to the final step of the checkout to see their overall tax charges.
Setting up country-level tax settings
It's also possible to set up country-level rules for tax which will apply to customers based on their shipping destination country. You can manage country-level tax settings from the Markets area of Shopify.
In the context of SparkLayer, if your store is setup to allow shipping to multiple countries, this will be factored in when the customer gets to the final step of the checkout to see their overall tax charges.
Draft orders and collecting tax
If you've set up SparkLayer to send orders into Shopify as "Draft Orders", it's also possible to change the tax charges against an order.
When tax is removed, this will adjust the "Estimated tax" calculation in the order totals for the Draft order.
In the context of SparkLayer, if you remove tax against a draft order, this will only apply to the "Estimated tax" calculation. It will not retrospectively apply this against specific products in the order.
Displaying gross pricing (tax inclusive) and net pricing (tax exclusive)
If there are circumstances where you do want to show Gross pricing AND Net pricing to your B2B customers, you can consider the following approach.
By default, SparkLayer will always output the pricing as net pricing (see above to learn more). When a B2B customer sees pricing, it will always be tax exclusive
Within your storefront theme, you could use custom coding to display a custom price on the page, shown only to logged in customers. This could use the metafields system available within platforms such as Shopify and BigCommerce.
To show gross pricing, you could potentially make use of our RRP (MSRP) feature that lets you set a price independent to the B2B price. Note: this is not the intended use but can act as a workaround
Displaying gross pricing
If there are circumstances where you do want to show Gross pricing to your B2B customers, there is a potential way around this.
It's possible to set a customer within Shopify to be 'Tax exempt' (see above). This would mean their order would be zero tax rated.
In the price lists you upload to SparkLayer, set the prices to be the "gross" amounts (even though they don't technically include tax).
As to reporting, you would need to report on the tax amounts after the fact (e.g. via your accounting system)
For locations within the Frontend Interfaces where the word "tax" is displayed, it's possible to customise this and adjust the wording.
JS
/* Add the below code into the SparkLayer Core Script *//* Please refer to our help guide on how to do this */translations:{en:{"global.totals.tax":"Tax","cart.tax-shipping-note":"Tax and shipping costs calculated during checkout","cart.tax-shipping-message":"Tax and shipping costs shown on next step"}},/* End of code */