Product Price Tables
A Product Price Table list allows owners/merchants to set custom prices for products through discounts applied at different levels: storewide, specific categories, or individual products. Additionally, it's possible to define business rules such as minimum cart value and minimum product quantity for authenticated customers associated with the price list.
Properties
| Property | Explanation | Type | Required |
|---|---|---|---|
| id | The unique identifier for the price table | String | false |
| verification_code | Unique Code that identifies a price table in the client self-registration link | UUID | false |
| store_id | The unique identifier of the store that owns this price table | String | false |
| name | Name of the price table | String | true |
| default_discount | Discount percentage applied to all existing products in the store | String | true |
| cart_minimum_price | Minimum cart value required to apply this price table | String | false |
| cart_minimum_quantity | Minimum quantity of products required in cart to apply this price table | Integer | false |
| categories | List of Product Price Table Categories objects representing the different categories | Array | false |
| product_variants | List of Product Price Table Product Variants objects representing the different products variants | Array | false |
| active | Whether the price table is currently active and can be applied | Boolean | false |
| created_at | Timestamp when the price table was created in ISO 8601 format | Timestamp | false |
| updated_at | Timestamp when the price table was last updated in ISO 8601 format | Timestamp | false |
| has_categories | Indicates if this price table has specific category configurations | Boolean | false |
| has_products_variants | Indicates if this price table has specific product/variant configurations | Boolean | false |
| has_customers | Indicates if this price table has specific customer associations | Boolean | false |
Endpoints
POST /products/price-tables
Create a specific product price table
POST /products/price-tables
{
"name": "Price Table",
"default_discount": "7.00",
"cart_minimum_price": "250.00",
"cart_minimum_quantity": 30,
"categories": [
{
"id": "135796548",
"discount": "15.00"
},
{
"id": "542635852",
"discount": "30.00"
}
],
"product_variants": [
{
"product_id": "84682548",
"product_variant_id": "234098766",
"discount": "10.00",
"price": null
},
{
"product_id": "34567892",
"product_variant_id": "38946272",
"discount": "7.00",
"price": null
}
]
}
HTTP/1.1 201 OK
{
"id": "1",
"verification_code": "5a23d45e-52b4-470f-8cf8-ff959b9ef0fa",
"store_id": "3776871",
"name": "Price Table",
"default_discount": "7.00",
"cart_minimum_price": "250.00",
"cart_minimum_quantity": 30,
"active": true,
"created_at": "2025-11-17T15:12:39.396Z",
"updated_at": "2025-11-17T15:12:39.396Z",
"has_categories": true,
"has_products_variants": true,
"has_customers": false
}
HTTP/1.1 400 Bad Request
{
"code": 400,
"message": "Bad Request",
"description": "Invalid input parameters",
"errors": {
"name": ["The name field is required."],
"default_discount": ["The default_discount field is required"]
}
}
GET /products/price-tables/{id}
Return a specific product price table
GET /products/price-tables/1
HTTP/1.1 200 OK
{
"id": "1",
"verification_code": "5a23d45e-52b4-470f-8cf8-ff959b9ef0fa",
"store_id": "3776871",
"name": "Price Table",
"default_discount": "7.00",
"cart_minimum_price": "250.00",
"cart_minimum_quantity": 30,
"active": true,
"created_at": "2025-11-17T15:12:39.396Z",
"updated_at": "2025-11-17T15:12:39.396Z",
"has_categories": true,
"has_products_variants": true,
"has_customers": true
}
GET /products/price-tables
Return a paginated list of product price tables
| Parameter | Explanation |
|---|---|
| page | Page to show |
| per_page | Amount of results |
GET /products/price-tables?page=1&per_page=10
HTTP/1.1 200 OK
{
"total": 2,
"page": 1,
"price_tables": [
{
"id": "1",
"verification_code": "5a23d45e-52b4-470f-8cf8-ff959b9ef0fa",
"store_id": "3776871",
"name": "Price Table",
"default_discount": "7.00",
"cart_minimum_price": "250.00",
"cart_minimum_quantity": 30,
"active": true,
"created_at": "2025-11-17T15:12:39.396Z",
"updated_at": "2025-11-17T15:12:39.396Z",
"has_categories": true,
"has_products_variants": true,
"has_customers": true
},
{
"id": "2",
"verification_code": "4f3ba8f8-5698-47d8-9117-547165c42041",
"store_id": "3776871",
"name": "Special Price Table",
"default_discount": "15.00",
"cart_minimum_price": "399.00",
"cart_minimum_quantity": 15,
"active": true,
"created_at": "2025-11-20T12:47:13.786Z",
"updated_at": "2025-11-20T12:47:13.786Z",
"has_categories": false,
"has_products_variants": true,
"has_customers": true
}
]
}
PUT /products/price-tables/{id}
Update a specific product price table
PUT /products/price-tables/1
{
"name": "Price Table",
"default_discount": "10.00",
"cart_minimum_price": "350.00",
"cart_minimum_quantity": 20,
"active": true,
"categories": [
{
"id": "135796548",
"discount": "50.00"
}
],
"product_variants": [
{
"product_id": "84682548",
"product_variant_id": "234098766",
"discount": "15.00",
"price": "487.50"
},
{
"product_id": "34567892",
"product_variant_id": "38946272",
"discount": "20.00",
"price": "699.90"
}
]
}
HTTP/1.1 200 OK
{
"id": "1",
"verification_code": "5a23d45e-52b4-470f-8cf8-ff959b9ef0fa",
"store_id": "3776871",
"name": "Price Table",
"default_discount": "10.00",
"cart_minimum_price": "350.00",
"cart_minimum_quantity": 20,
"active": true,
"created_at": "2025-11-17T15:12:39.396Z",
"updated_at": "2025-11-27T12:15:48.654Z",
"has_categories": true,
"has_products_variants": true,
"has_customers": false
}
HTTP/1.1 400 Bad Request
{
"code": 400,
"message": "Bad Request",
"description": "Invalid input parameters",
"errors": {
"name": ["The name field is required."],
"default_discount": ["The default_discount field is required"]
}
}
FAQ
How to clear all category exceptions of a Product Price Table
If you would like to update to clear all categories in a Product Price table, the following body should be sent:
{
"name": "Price Table",
"default_discount": "10.00",
"cart_minimum_price": "350.00",
"cart_minimum_quantity": 20,
"active": true,
"categories": [],
"product_variants": [
{
"product_id": "84682548",
"product_variant_id": "234098766",
"discount": "15.00",
"price": "487.50"
},
{
"product_id": "34567892",
"product_variant_id": "38946272",
"discount": "20.00",
"price": "699.90"
}
]
}
HTTP/1.1 200 OK
{
"id": "1",
"verification_code": "5a23d45e-52b4-470f-8cf8-ff959b9ef0fa",
"store_id": "3776871",
"name": "Price Table",
"default_discount": "10.00",
"cart_minimum_price": "350.00",
"cart_minimum_quantity": 20,
"active": true,
"created_at": "2025-11-17T15:12:39.396Z",
"updated_at": "2025-11-27T12:15:48.654Z",
"has_categories": false,
"has_products_variants": true,
"has_customers": false
}
How to clear all product variant exceptions of a Product Price Table
If you would like to update to clear all product variants in a Product Price table, the following body should be sent:
{
"name": "Price Table",
"default_discount": "10.00",
"cart_minimum_price": "350.00",
"cart_minimum_quantity": 20,
"active": true,
"categories": [
{
"id": "135796548",
"discount": "50.00"
}
],
"product_variants": []
}
HTTP/1.1 200 OK
{
"id": "1",
"verification_code": "5a23d45e-52b4-470f-8cf8-ff959b9ef0fa",
"store_id": "3776871",
"name": "Price Table",
"default_discount": "10.00",
"cart_minimum_price": "350.00",
"cart_minimum_quantity": 20,
"active": true,
"created_at": "2025-11-17T15:12:39.396Z",
"updated_at": "2025-11-27T12:15:48.654Z",
"has_categories": true,
"has_products_variants": false,
"has_customers": false
}
How to set up discounts for specific categories
In this case, see the documentation on how to configure the discount in a specific category for a product price table list (link with documentation).
How to set up discounts for specific products and variants
In this case, see the documentation on how to configure the discount in a specific product and variant for a product price table list (link with documentation).
How to associate or disassociate a client in a specific price table?
In this case, see the documentation on how to associate or disassociate customers from a product price table (link with documentation).