Links

Price Lists

🎉 Coming Soon: our new Pricing Engine! Learn more in our roadmap updates

Introduction

Price lists are a central feature to SparkLayer and they allow you to set specific pricing for specific customer groups. The Price List tool within the SparkLayer Dashboard lets you manage your available price lists and gives you powerful tools to set the exact pricing you want for your B2B customers.
With SparkLayer, you can support the following types of B2B pricing structure:
Pricing Type
Text
Customer-specific
  • Price lists can be assigned at a product variant level
  • Multiple price lists can be assigned at a customer group level or specific customer level
  • Price lists can be set up in different currencies. Learn more
  • Discounts can be assigned at a customer-level on top of assigned price list. Learn more
Quantity pricing
  • The ability to set volume-based discounts (e.g. Buy 1 at $10, Buy 10 at $8). Learn more
  • The ability to set quantity pricing at a variant level but for quantity calculations to work at parent level
Advanced settings
  • The ability to configure rules such as minimum order quantities, pack sizes and more at a per customer group level. Learn more

Getting started

First, go to the Price Lists section within the Dashboard and you'll see the Price List area. In order to get started with Price lists, there are a number of steps to follow:
  1. 1.
    First, you either need to use the default "Base" price list or a new price list needs to be created
  2. 2.
    Next, prices then need to be imported into the price list. A price list comprises of a product SKU and and associated price. You can upload price lists manually using our built-in CSV import tool, automate this from your backend system (learn more here), or use our Price Editor to manually add pricing.
  3. 3.
    Finally, the price list needs to be assigned to a Customer Group in order for customers to see these prices when they login to your website.
If you're looking to also set up pack sizing along with your price lists, you can read our guide for Shopify here.

Using the 'Base' price list or creating a new price list

The base price list is a default price list that is enabled for all SparkLayer accounts. It’s there to allow you to test how SparkLayer works and lets you set up your default B2B pricing for your customers. If your B2B pricing is very simple and you have need for just one price list for B2B customers, you could use the base price to manage all your pricing rules.
Please note, the Base price list acts as your default and cannot be deleted

Creating a new price list

If you require additional price lists (e.g you need to specify different pricing for different customers), you can do this via creating new price lists.
To create a new price list, click the Create Price List button on the top right.
You'll then be prompted to complete the following information
Item
Details
Name
The price list name as displayed in SparkLayer. You'll use this name to assign it to a Customer Group.
Handle
The unique handle (i.e. ID) of the price list that is sent to the backend system. This should match what is set up in the backend system, e.g. base-list
Currency
The default currency, e.g. GBP
Finally, when you click the Create price list button, the newly created price list will then show in the list available.
Item
Details
Name
The price list name
Handle / ID
The ID of the price list
Currency
The default currency, e.g. GBP
Actions
The ability to manually upload prices via a CSV file or delete an existing price list
Please note, if you're connecting your backend system to SparkLayer, price lists should only be manually added if they aren't automatically imported via your backend system.

Importing a price list

Importing prices in bulk via a CSV

Please note, if you're looking to automate your pricing from your backend system (e.g. an ERP), this can also be done via the SparkLayer API.
To get started, click Upload prices on the Price list you want to add prices to. You'll then be prompted with the following screen and asked to upload a CSV file.

Saving a CSV file

A CSV file (or comma-separated values file) is a common format that is used to quickly import structured data. All software systems used for creating spreadsheets will allow you to save a file as a CSV and typically you can do this from the "File" menu. In our example below, we've illustrated how this works in Google Sheets

Use our template CSV file

You can save time and use our ready-made template CSV file and then adapt for your specific pricing structure:
The structure of a price list is very simple and simply comprises of two columns: a sku and a price. In order for the CSV file to import successfully, you simply need to set up the following columns:
Column
Details
Required
sku
The product SKU as set up in your eCommerce platform or backend system
Yes
price
The unit price for the SKU (e.g. 14.99). Note: this must not include a currency symbol (e.g. $, £)
Yes
Time-saving tip: if you only need to upload prices for certain products, you can do this with 'partial CSV uploads'. Simply create a CSV file with the product SKU and price (as noted above) and this will update any existing pricing SparkLayer holds. You can also use the Price Editor tool to edit prices rapidly.
Having issues? Check our price list troubleshooting guide.

The Price Editor

The Price Editor tool compliments the pricing import tool, allowing you to easily add and edit pricing in a more "adhoc" manner. For example, perhaps you need to edit a single price for product and add a new one, and you'd prefer not to upload a new CSV file to do this.
The Price Editor tool works by letting you search for a product SKU and then edit and add pricing inline (learn how to find a product SKU)

Editing and adding pricing

When you search for a product, you'll see all associated pricing grouped by your price lists. For example, if you're using the Base price list, you'll see this listed first. From there, you can quickly edit pricing or "Add a new price" to add a brand new one.
It's important to note, when adding pricing for a product, there must always be at least one entry for a single unit quantity and it's not possible to remove this.

Adding a new price list

You can also associated a new price list to a product from the "Select a Price List" section at the bottom. This will show you a list of all active price lists you've set up within the Price Lists area of the Dashboard.

Uploading tiered quantity pricing

SparkLayer also supports the option to have tiered pricing allowing you to offer discounted prices based on the unit quantities ordered. For example, for 1 unit, the price may be £14.99, but for 5 units the price may be £10.99.
The quantity field in the sample CSV file (named qty) lets you define the price the customer pays for that specific quantity of the item.
In order for the CSV file to import your tiered pricing successfully, it must have the following columns:
Column
Details
Required
sku
The product SKU as set up in your eCommerce platform or backend system
Yes
price
The unit price for the SKU at the quantity set in column 3 (qty)
Yes
qty
The quantity of the SKU for the specified price for tiered pricing (see below)
No (defaults to 1)
You can also configure tiered pricing manually via the Price Editor tool
On set up, the SparkLayer Product Purchasing Interface will clearly show the tiered pricing to your customers. By default, the tiered pricing will show a 'Savings' amount based off the single unit price of the product (or variant). If you'd prefer for the savings amount to be based off the RRP (i.e. retail price), you can configure this here.
How tiered pricing works with variants

Tiered pricing for multi-variant products

When setting up tiered pricing for products that have variants (e.g. colour, size), it's possible to configure how the tiered pricing gets applied.
Type
Behaviour
Applying across all variants
Default behaviour The tiered pricing will take affect across all variants of the product. For example, if a product comes in Small, Medium, and Large and you've set up tiered pricing to take effect with a quantity of 5, the customer would receive the discounted pricing no matter the combination. e.g. 1 x Small 2 x Medium 3 x Large
Applying to a single variant
Configuration If you'd prefer to restrict tiered pricing to a specific variant, you can do this by disabling a special setting within the SparkLayer Dashboard. In this example, if a product comes in Small, Medium, and Large, you can set the tiered pricing to only apply to the Large size. To disable this, please click here.

Display a tiered pricing widget

It's also possible to display the tiered pricing breaks table anywhere on your product detail page by adding the following code:
<spark-variant-price-breaks
variant-sku="{{ product.selected_or_first_available_variant.sku }}"
parent-id="{{ product.id }}"
></spark-variant-price-breaks>

Setting tax types

You can optionally also set the tax type against your prices, such as gross or net simply by adding a new column named tax.
Please note: For merchants using Shopify, the gross tax type is unsupported currently.

Setting up multiple currencies

If you're looking to enable multiple currencies from a single store, please read our guide here.

Importing a price list: validating the CSV file

When you upload the CSV file, you'll then be shown validation messages based on the content of the file. If the CSV file successfully passes validation, you'll be notified and shown a sample of what has been imported.
Clicking Save Price List will then import the file into SparkLayer and customers will then see these prices when logged in.

Validation warnings

If the file cannot be imported, e.g. missing prices or an incorrectly formatted file, you'll be notified with relevant details.
It's important to note that a file can be successfully imported but include missing data, e.g. perhaps a product SKU doesn't exist and prices cannot be matched. You'll be notified of affected SKUs and notes on how to remedy the issue.

Synchronising price lists with your backend system

If you're looking to import your price lists into SparkLayer automatically from your backend system (e.g. ERP), you'll need to send price list data via the SparkLayer API.
Learn more about how this works in our guide here.

Assigning price lists to customers

Once you've created and uploaded prices for your Price list(s), you can then assign these to different customer groups. This means you can control which customers see which prices when they sign into your website.
Learn more about how to set up customer groups in our guide here.

Applying customer-specific discounts to price lists

Once you've created a price list and assigned it to a customer group, it's also possible to set up customer-specific discounts on top of the price list giving you even more flexibility in the prices your customers see.
See our guide here on how to set up customer-specific discounts

Product data errors

If SparkLayer is unable to process product(s) within the feed, you can find further details within the product feed status box. The product ID (or SKU) is listed along with the associated error that can then be further diagnosed.
Learn more about common errors you may encounter

Importing products from Shopify

SparkLayer will automatically import products once you've connected your Shopify store. By default, all products will be imported however if you want to exclude certain SKUs, you can simply untick the SparkLayer B2B Ordering sales channel within a product to prevent it being imported

Diagnosing price list data

You can check if price list data has been assigned to an individual product by using the Data Sync tool. From the Data Sync Tab, click Products and from within the Product Data Lookup tool, search for the Product External ID you have just modified. In the Pricing Data section of the returned JSON, you should then see the pricing data you’ve sent to SparkLayer via the API.
In this example, prices have been sent with tiered pricing
If you can see the pricing data, this confirms that price list data has successfully been sent.
Learn more about diagnosing product data.
Last modified 3d ago