Skip to main content

Price Lists

Manage pricing for products in different stores.

Overview

Price lists are prices applied to products based on a set of conditions, such as store, country and currency. If you want to apply store level specific pricing, add pricing for additional countries, or add more complex pricing types e.g. graduated and volume pricing, then you can create new price lists.

The B2B relationship is very different to the B2C relationship in that there is a need for auditability and approval of all price changes from procurement. When creating price lists for a particular store, these 'offers' must go through a procurement approval flow before becoming live in the store. This is handled through offer approvals, where an offer is a product at a particular price.

Pricing by Country

Pricing can be provided for different countries by creating multiple price lists for the product or variant.

Pricing by Region

Pricing can be provided for specific regions within countries (e.g. the U.S. state of California) by including the region field when creating a price list.

Pricing by Store

Price lists can be created for specific stores for a country. These price lists have to be approved through the procurement approvals process before becoming available in the store for that product or variant.

Pricing by Date

Price lists can be given a start date and an end date. If no start date is provided, it begins immediately. A price list without an end date will last indefinitely. If a new price list is created for the same currency/country/store/dates then this will take precedent over the previously created one/s. Dates are in the format YYYY-MM-DD e.g. 2024-01-31.

Pricing by Catalogue

Price lists can be created for a specific catalogue by giving it a catalogue identifier. In general, price lists will not need a catalogue identifier as most suppliers will not need to segregate some or all products and services into catalogues.

Tax

The amount of tax can be specified for each price list, along with whether it is inclusive or exclusive of the provided price. This can be done using the two fields of tax_rate and tax_behaviour - see here for more information.

Mininum Order Quantity

The mininum_order_quantity field can be used to specify the mininum quantity of the product that must be ordered for this particular price list.

Guides

I am a supplier, how do I upload additional prices for my client?

To upload additional prices for a store:

  1. Head over to the Products page or the File Imports page within the Products area of the platform.

  2. Click Import then select Prices CSV file

  3. Download the provided CSV template (if required)

  4. Populate the CSV file with your prices, making sure that the store_id column is populated with the appropriate Store ID. To find the Store ID for a particular store, search for the store on the Stores page. See here for information on all of the other columns. :::info-tip If Store ID is empty, the prices will be created for all the stores you are currently connected to. If not connected to any store, no prices would be created. :::

  1. Drag & drop or click Click to Browse to select the populated file, then click Continue

I am a supplier, how do I upload additional prices for different countries?

To upload additional prices for different countries:

  1. Head over to the Products page or the File Imports page within the Products area of the platform.

  2. Click Import then select Prices CSV file

  3. Download the provided CSV template (if required)

  4. Populate the CSV file with your prices, making sure that the country column is populated with the appropriate differing country codes. For a list of all country codes, click here. Additionally, see here for information on all of the other columns.

  5. Drag & drop or click Click to Browse to select the populated file, then click Continue

I am a supplier, how do I upload additional prices for a specific catalogue?

To upload prices for a specific catalogue:

  1. Head over to the File Imports page.

  2. Click Import then select Prices CSV file

  3. Download the provided CSV template (if required)

  4. Populate the CSV file with your prices, making sure that the catalogue_identifier column is populated with the appropriate catalogue identifier. See here for information on all of the other columns.

  5. Drag & drop or click Click to Browse to select the populated file, then click Continue

How do I see if my prices have been approved?

Navigate to the Approvals page. Here you can see the status of each price: Pending, Approved or Rejected.

Other Common Scenarios

QuestionAnswer
How do I change a price?Create a new price for the same country and currency combination
How do I create a store specific price?When creating a new price, the store ID must be included, the store operator will then be notified and must approve it

|

Pricing Model Types

  • Standard Pricing - Select standard pricing if you charge the same price for each unit.
  • Graduated Pricing - Select graduated pricing if you use pricing tiers that may result in a different price for some units in an order. For example, you might charge £10.00 per unit for the first 100 units and then £5.00 per unit for the next 50. You can also set an additional flat amount for each tier.
  • Volume Pricing - Select volume pricing if you charge the same price for each unit based on the total number of units sold. For example, you might charge £10.00 per unit for 50 units, and £7.00 per unit for 100 units. You can also set an additional flat amount for each tier of total units sold.

View Prices for a Product

To view prices for a product, scroll down to the prices island on a product page. Prices can be filtered by approval status (Pending, Approved or Rejected) and a range of other filter options.

Create a New Price List

To create a new price list for a product, follow these steps:

  1. Click the + Price button in the prices island of the product page.
  2. Choose which connected store the price is for, along with which country or country & region.
  3. Choose the appropriate pricing model and enter the relevant price information, including currency and public price. For more information on complex pricing models see here.
  4. Optionally choose a start date and end date. If no start date is provided it will begin from the moment of creation. End dates are only indicative, as regardless of end date, prices will continue indefinitely until replaced. Dates are in the format YYYY-MM-DD e.g. 2024-01-31.
  5. Optionally provide any necessary tax information by specifying whether it is inclusive or exclusive of the price, and what the tax rate percentage is.
  6. Optionally provide a mininum order quantity that must be ordered for this price list.
  7. Click Save in the bottom right
  8. The price will now be pending in the price lists island.

Complex Pricing Models

If volume or graduated pricing models are selected, the currency must be selected, and then the table can be populated.

New rows/tiers can be added to the table by clicking + Add another tier, and can be deleted with the trash icon.

For each row of a volume pricing model table, the last unit value refers to the inclusive cutoff quantity for that tier. Per unit is the price per unit for all units, if the total quantity falls within that tier, and flat amount is an optional additional price for that tier.

For each row of a graduated pricing model table, the last unit value refers to the inclusive cutoff quantity for that tier. Per unit is the price per unit for just the units within that tier, and flat amount is an optional additional price for that tier.

Importing Price Lists

To import price lists from a CSV file, go to the File Imports tab on the products page, select Import, then select Prices CSV file.

On the price lists import page you can download the prices template if required. Once you have completed your prices file by populating all of the relevant columns, it can be uploaded via the same page.

Price List Fields

When creating a price list, you will be asked to provide certain information. Here is a description of each field:

  • Type: Either product or product_variant.
  • Identifier: The product or product_variant identifier.
  • Currency: This is the currency in which the prices are listed. It's important to select the correct currency to avoid any confusion or errors.
  • Country: This is the country where the price list is applicable
  • Region: This is the specific region within a country where the price list is applicable
  • Store ID: The ID of the store the price corresponds to. Can be found on the stores page. :::info-tip If the Store ID field is not specified, prices will be created for all the stores you are currently connected to. If you are not connected to any store, no prices will be created. :::
  • Catalogue Identifier: The identifier of the catalogue that this price list is for.
  • Billing Scheme: If you want to offer different prices for different quantities or types of customers, you can set up standard, volume or graduated pricing.
  • Price: This is the cost of the product specific to the store the price list is for. This field is only relevant for billing schemes of type standard.
  • Public Price: This is your public price for the product.
  • Tax Rate: A percentage rate of tax based on the provided price. Minimum is 0, maximum is 100.
  • Tax Behaviour: Whether the tax is inclusive or exclusive of the provided price.
  • Mininum Order Quantity: The minimum quantity that can be ordered.
  • Start Date (optional): If you want the prices in this price list to be valid from a specific date, you can specify that date here. If you leave this field blank, the prices will be valid from the time of creation. Dates are in the format YYYY-MM-DD e.g. 2024-01-31.
  • End Date (optional): If you want to indicate that the price in this price list is valid until a specific date, you can specify that date here. Note that the price will continue indefinitely until replaced or archived.
  • Price Tiers (optional): If you want to offer different prices for different quantities or types of customers, you can set up price tiers. Each tier can have its own minimum quantity, maximum quantity, and price.

Create a Price List with the API

  1. You can create one or more price lists per product
  2. Every product has a default price list for a country, this is a price where a store is not specified and can be regarded as the public or list price for that country. The first price created for the product will automatically be set as the default price for that country.
  3. Prices cannot be edited or deleted, only overridden by new prices.
  4. If a price is created for a specific store this price must first be approved by the supplier (if required) and then by the store. Until the price is approved the status will be "pending".
  5. Prices created without a store specified are automatically approved.

Examples

Standard Price List - Public

New price list for the public pricing of a specific product in a specific country and currency

curl --location --request POST 'https://api.axiomdata.io/api/suppliers/price-lists' \
--data-raw '{
"name": "New Price List", //optional
"priceable_type": "product",
"priceable_identifier": "testproduct",
"billing_scheme":"standard",
"unit_amount" : "300.00",
"currency_code" : "CHF",
"country_code": "CH",
"tax_behaviour": "inclusive"
}'

Standard Price List - Store

New price list for the store pricing of a specific product in a specific country and currency

curl --location --request POST 'https://api.axiomdata.io/api/suppliers/price-lists' \
--data-raw '{
"name": "New Price List", //optional
"priceable_type": "product",
"priceable_identifier": "testproduct",
"billing_scheme":"standard",
"unit_amount" : "300.00",
"currency_code" : "CHF",
"country_code": "CH",
"tax_behaviour": "inclusive",
"store_id": 1
}'

Volume Price List - Store

New price list for the pricing of a specific product in a specific store, country and currency, with volume pricing.

curl --location --request POST 'https://api.axiomdata.io/api/suppliers/price-lists' \
--data-raw '{
"name": "New Price List", //optional
"priceable_type": "product",
"priceable_identifier": "testproduct",
"billing_scheme":"volume",
"tiers": [
{
"up_to" : 100, //integer only
"flat_amount" : 50, //accept digit and decimal
"unit_amount": 50 //accept digit and decimal
},
{
"up_to" : 200, //integer only
"flat_amount" : 50, //accept digit and decimal
"unit_amount": 50 //accept digit and decimal
}
],
"currency_code" : "CHF",
"country_code": "CH",
"tax_behaviour": "inclusive",
"store_id": 1
}'

Graduated Price List - Store

New price list for the pricing of a specific product in a specific store, country and currency, with graduated pricing.

curl --location --request POST 'https://api.axiomdata.io/api/suppliers/price-lists' \
--data-raw '{
"name": "New Price List", //optional
"priceable_type": "product",
"priceable_identifier": "testproduct",
"billing_scheme":"graduated",
"tiers": [
{
"up_to" : 100, //integer only
"flat_amount" : 50, //accept digit and decimal
"unit_amount": 50 //accept digit and decimal
},
{
"up_to" : 200, //integer only
"flat_amount" : 50, //accept digit and decimal
"unit_amount": 50 //accept digit and decimal
}
],
"currency_code" : "CHF",
"country_code": "CH",
"tax_behaviour": "inclusive",
"store_id": 1
}'

Create Price for a Store

When creating a new price list you must specify the store where the price is applicable. Once the price list has been created and approved by one of the store administrators it will become live in the store.

Delete a Price

In order to make it easy for suppliers and store operators to maintain trust in their pricing it is not possible to fully delete approved prices. If you would like to update your pricing for a particular store you will have to upload new pricing and have it approved. If you would like to remove your pricing for a particular country or if it is incorrect, then you can archive it.

Archive Prices with Files

Prices can be archived, allowing incorrect pricing to be removed from the store, or for a product price to be removed from the store for a particular country, or catalogue.

To archive prices with a CSV file:

  1. Head over to the Products page or the File Imports page within the Products area of the platform.

  2. Click Import then select Prices CSV file

  3. Download the provided CSV template (if required)

  4. Populate the CSV file with the prices you wish to archive. Only the type, identifier, store and country fields must be populated. The other columns can be left empty, but the headers must remain in the file. If you are archiving a catalogue specific price, include the catalogue_identifier field.

  5. Add an additional column with a header of command and a value of archive for each row.

  6. Drag & drop or browse for the populated CSV file, then click Continue to begin the import and the archiving of prices.

INFORMATION

When archiving the price for a product, it will be most recently created price that is archived (for the selected store and country, or store, country and catalogue).

Price Resolution

The resolution of multiple price lists for one supplier over time, for a specific product and store/country/currency can be found below.