The price_tiers.csv
file is used to update different prices to different customers using price tiers. Each tier contains a set of prices for specific products. You assign price tiers to customers through the customers.csv
file.
When customers log into Kimelo, they see prices based on the tier they're assigned to. Each seller can create up to 999 tiers.
Upload your price_tiers.csv
file to your FTP folder. Kimelo only consumes this file — it won’t send anything back.
price_tiers_yyyy-mm-dd-hh-mm-ss.csv
Filename pattern | price_tiers.csv |
---|---|
ERP to Kimelo | Y |
Kimelo to ERP | |
System of record | ERP |
Status | Available |
Frequency | 30 minutes |
These attributes provide the pricing rules for products. The model supports optional pricing tiers with quantity breaks, also called volume-based discounts. Each distinct product may have different price tiers for different ranges of purchase units (for example 0-9, 10-99, and 100+)
erp_tier_id | erp_product_id | pack_type | quantity | price | |
---|---|---|---|---|---|
base | s100 | case | 0 | 50.00 | Base price for a case of product |
base | s100 | case | 10 | 40.00 | Tier price discounted for 10 or more |
base | s100 | case | 100 | 25.50 | Tier price discounted for 100 or more |
Column Name | Data Type | Required | Description |
---|---|---|---|
erp_tier_id | String | Required | The unique identifier of the price tier in the ERP system. Multiple rows may use the same ID, to define price rules for multiple products (SKUs). |
tier_name | String | Required | The name of the price tier. Displays in the Kimelo distributor center. |
erp_product_id | String | Required | Distributor's identifier of a given product. |
pack_type | String | Required | Defines how the product is sold (e.g., Case or Each). |
quantity | Integer | Required | The starting quantity for a price level. If zero, it is the price before any quantity breaks apply. If >0 it defines the minimum amount for the unit price at this tier. Each price tier:product:pack_type requires to have at least one row with quantity = 0 |
price | Currency | Required if not catchweight | Price per unit when the ordered quantity is at least the quantity specified in this row. |
catchweight_price | Currency | Required if not price per item | Price per pound(lb) for quantities at least quantity but less than the quantity of the next tier for this SKU. |
If a product isn’t included in a customer's assigned price tier, the customer will still see it — at the default price listed in products.csv.
Kimelo offers an ability to adjust prices based on ordered quantity. Each line in the .csv file needs to specify a minimum quantity from which a given price applies for each product and pack_type. Prices can increase or decrease based on quantity.
The quantity field defines the minimum quantity that needs to be ordered within a single order by a customer within a given price tier for a defined price to be applied. The most common use case is to offer volume discounts which incentivize customers to place larger orders. Note that customers will see in Kimelo that a lower price is explicitly applied starting at a defined quantity.
<aside> 💡
Imagine the following .csv file provided to Kimelo
erp_tier_id | erp_product_id | packaging_type | quantity | price |
---|---|---|---|---|
test_tier | A | each | 0 | $5 |
test_tier | A | each | 10 | $4 |
test_tier | A | each | 20 | $3 |
test_tier | A | case | 0 | $50 |
test_tier | A | case | 10 | $55 |
For customers assigned price tier test_tier
buying product A the following orders will yield the following prices:
Ordered packaging_type | Ordered quantity | Unit price | Total price |
---|---|---|---|
each | 1 | 5 | 5 |
each | 2 | 5 | 10 |
each | 5 | 5 | 25 |
each | 10 | 4 | 40 |
each | 11 | 4 | 44 |
each | 20 | 3 | 60 |
each | 50 | 3 | 150 |
case | 1 | 50 | 50 |
case | 2 | 50 | 100 |
case | 10 | 55 | 550 |
case | 11 | 55 | 605 |
</aside> |
For each price_tier:product:pack_type pairing there needs to be precisely one row with quantity = 0
. Otherwise the prices for a given product in this price tiers will not be updated and customers will order it by the base price. Any other quantities are optional.
To create a price tier a price_tiers.csv file needs to be uploaded to Kimelo. If the file contains an erp_tier_id
that has not existed in Kimelo a new tier will be created. Each price tier can define prices for a subset of products and packaging_types that are sold by a given seller. There needs to be at least one product with a non-zero price for a price tier to be created.
Price tiers can be updated on demand by uploading a new price_tiers.csv
file. If that file contains at least one row with a erp_tier_id
the whole tier will be updated. Kimelo does not support partial tier updates - a whole tier has to be provided within a single file.
<aside> 💡
Assume there is a price tier erp_tier_id = test_tier
defining prices for products A, B and C to be $1, $2 and $3 respectively.
Assume that next time a price_tiers.csv
is uploaded it contains only one row:
erp_tier_id | tier_name | erp_product_id | pack_type | quantity | price |
---|---|---|---|---|---|
test_tier | test_tier | A | each | 0 | 2 |
After this file is processed products B and C will not have prices defined in price tier ‘test_tier’. This means that customers who have price tier ‘test_tier’ assigned to them will be offered products B and C according to prices from the products.csv
file.
</aside>
There is no way to create a volume discount for a default price tier created through the products.csv
that will be visible to anonymous user.