{"section":"tutorials","requestedLocale":"en","requestedSlug":"setting-up-price-tables-for-specific-users","locale":"en","slug":"setting-up-price-tables-for-specific-users","path":"docs/en/tutorials/prices/price-list/setting-up-price-tables-for-specific-users.md","branch":"main","content":"A price table is a set of SKU prices that can be applied to specific contexts. These tables store the price information that is displayed on a store's page.\n\nUnlike trade policies, which can also be used to segment prices, there is no limit to the number of Price Tables that can be created. **The only limitation is a maximum of 100 fixed prices for the same SKU**.\n\nFor example, let's say you want customers in São Paulo to see a price different from the price seen by customers in Rio de Janeiro. In this case, you can create two different price lists, and associate the first one to the customers in São Paulo, and the second to those in Rio de Janeiro.\n\n> ℹ️ You can define fixed prices or price rules to modify the price of an SKU in a price table.\n\nThis gives the retailer more freedom to handle contextual information from their customers. \n\n## How to set up Price Tables\n\nTo set up Price Tables, you need to:\n\n1. [Set up the `priceTables` field in Master Data](#set-up-the-pricetables-field-in-master-data)\n2. [Define prices in the Prices module](#define-the-prices-in-the-prices-module) \n\nPlease follow the instructions detailed below.\n\n### Setting up the `priceTables` field in Master Data\n\nTo use Price Tables, you must enable the `priceTables` field in the __Client__ entity in __Master Data__, which means that each customer in your store will have an attribute that indicates if it is associated with a specific price table.\n\nTo do this, follow the steps below.\n\n1. In the VTEX Admin, go to *Store Settings > Storefront > Master Data*, or type *Master Data* in the search bar at the top of the page.\n2. Click on the gear icon next to __Profile System__.\n3. In the __Clientes__ row, click on the __pencil button__.\n4. Check the box next to __priceTables__.\n5. Now click on the __Schemas de Layout__ tab and drag the `priceTables` field from the __Campos disponíveis__ section to wherever you want - for example, to the box __Campos da coluna 1__. \n6. Click on __Save__.\n\nNow let's configure the new field for your __Customers__ entity.\n\n1. In Master Data, click on __Advanced settings__.\n2. Click on __Estrutura de dados__.\n3. Select the __Data entities__ tab.\n4. On the CL (Customers) entity row, click on the __pencil button__.\n5. In the priceTables row, click on the __gear icon__.\n6. Check the box next to __Is filterable?__.\n7. In the __Domain__ field, you can enter a domain name for each price table. Press Enter to display additional fields. In the example in the image below, we entered two domains: `Gold` and` Silver`.\nAnother way to use Price Tables is by declaring them directly on the customer form. If a new Price Table value is entered for a customer, that Price Table will be automatically created, without having been previously declared in Domains. To create more than one, separate them by commas. For example: `gold, silver`.\n9. When you finish, click on __Save__.\n10. In the row of the entity you have edited, click on the floppy disk icon to publish it.\n11. Then, click on the arrows icon to reindex it.\n\n> ℹ️ Each customer can have up to 5 Price Tables associated with them. When the customer has more than one Price Table linked to them, the system will follow the order in which the Price Tables were created to determine the price of each SKU. If the SKU does not have a price configured in the first Price Table, the system will look for a price in the second one, and so on. In case there is no price configured in any of the Price Tables, the base price will be applied.\n\nNow your Customers entity has a `priceTables` attribute, which can be populated directly in the Master Data UI or via API.\n\n### Defining prices in the Prices module\n\nOnce you have created your price tables, you can see the price of each product in the store separated by price table, in the same way as with trade policies.\n\nIn the Admin, go to __Prices__ > __Price List__.\n\nIn the search filter, enter the names of the tables created in __Master Data__.\n\n![Filtros](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/en/tutorials/prices/price-list/setting-up-price-tables-for-specific-users_1.png)\n\nPrice tables are shown as columns of the price list, as are trade policies.\n\n![Lista preços- EN](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/en/tutorials/prices/price-list/setting-up-price-tables-for-specific-users_2.png)\n\nTo update a fixed price in a specific table, on the column corresponding to that table, and then on __Define fixed prices__. \n\nTo enter and update prices from a specific table via API, check out the [Pricing API documentation](https://developers.vtex.com/docs/api-reference/prices-and-fixed-prices#createeditfixedpricesonapricetableortradepolicy).\n\n> ℹ️ The Price Table has priority over the prices from the trade Policy. If a given Price Table applies to a user's context, the price set in it will be used, even if that customer is also within the context of a trade policy with a different price.\n\n## Displaying different prices for different users\n\nWhen a user is not logged into your store, the default prices set by the trade policy will be displayed.\n\nIf the user is logged in, they will see the prices corresponding to the price table with which their email is associated.\n\nFor example, these two clients are linked to different price tables:\n![Clients](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/en/tutorials/prices/price-list/setting-up-price-tables-for-specific-users_3.png)\n\nWhen Daniel, who is linked to the Silver price table, is logged into the store, he will see the prices set on this table. The backpack in the example above will cost USD 50.00.\n\nBreno, who is linked to the Gold price table, will see the prices set on this table. He would pay USD 60.50 for the same backpack.\n\n> ⚠️ The customer <strong> must </ strong> be authenticated — through token, password, Google, or Facebook — to see the prices that apply to them. Otherwise, the price shown will be the default price. Please note that entering the email address at checkout is not enough, since in this process the customer is identified, but not authenticated."}