# Updating prices based on competitors' prices

Competitor prices can be obtained from various sources, such as:

- A file with a competitor's price list in one of the XLS, XML formats. CSV etc. For example, if a competitor's website has a link to such a price list, you can use it to compare your prices and competitor's prices, see how to add a competitor's price to the Elbuz Jumper system.
- Competitor's website as a source of prices and product availability. How to configure the download of products from any site is described in this section .
- Marketplaces that provide information on a product for several stores at once. How to get competitor prices from the Yandex Market website. How to get competitors' prices from the Hotline website

After receiving the prices of competitors, the question arises how to process this information. There is no single answer here, it all depends on your imagination, you can simply subtract 10 from the competitor's price and make your price lower or use your individual pricing strategy based on market prices.

**Formula Examples**

If the price is higher than the price of a competitor whose ID = 1 (ID from the list of counterparties), then minus 10 from the competitor's price

`IF( {Товар БК: Цена} > [[ОтКонтрагента_1 {Price list: Price}]] [[ОтКонтрагента_1 {Price list: Price}]] - 10, {Товар БК: Цена})`

If you want to select min. price among all competitors, then compare it with your price and subtract 10 from the competitor's price

`IF( {Товар БК: Цена} > [[ОтГруппыКонтрагента_2 MIN(IF({Price list: Price}=0, NULL, {Price list: Price}))]] [[ОтГруппыКонтрагента_2 MIN(IF({Price list: Price}=0, NULL, {Price list: Price}))]] - 10, {Товар БК: Цена})`

If you want to select min. price among all competitors, then compare it with your price, if it is higher than that of a competitor, then subtract 10 from the competitor’s price, but the competitor’s price should not be cheaper than the purchase price (cost) + 3%

```
IF( {Товар БК: Цена} > [[ОтГруппыКонтрагента_2 MIN(IF({Price list: Price}=0, NULL, {Price list: Price}))]] AND
[[ОтГруппыКонтрагента_2 MIN(IF({Price list: Price}=0, NULL, {Price list: Price}))]] >= {Товар БК: Цена себестоимость} * 1. 03,
[[ОтГруппыКонтрагента_2 MIN(IF({Price list: Price}=0, NULL, {Price list: Price}))]] - 10,
{Товар БК: Цена})
```

**Macro substitutions for working with competitors' prices received from the trading platform**

```
{ПрайсКонкурентовТП: ЦенаМин}
{ПрайсКонкурентовТП: ЦенаСред}
{ПрайсКонкурентовТП: ЦенаМакс}
{ПрайсКонкурентовТП: Наименование}
{ПрайсКонкурентовТП: Статус наличия}
{ПрайсКонкурентовТП: Гарантия}
{ПрайсКонкурентовТП: Контрагент}
{ПрайсКонкурентовТП: Артикул производителя}
{ПрайсКонкурентовТП: Артикул продавца}
{ПрайсКонкурентовТП: Описание}
{ПрайсКонкурентовТП: Доставка}
```

**Formula for getting the values of products from price lists from the specified row.**

Can be used if there are several offers of a product in the base catalog.

Where N is the line number + field name where you want to take the value from

`[[ОтКонкурентаСтрока_N{Price list: Price}]]`

For example, there are several offers of products from the price lists of suppliers at different prices, the task is to get the second minimum price, then the formula will look like

`[[ОтКонкурентаСтрока_2{Price list: Price}]]`

Get average price based on 1st low price and 2nd low price

`( [[ <code>ОтКонкурентаСтрока_1`

{Price list: Price}]] + [[ `ОтКонкурентаСтрока_2`

{Price list: Price}]] ) / 2Get the average price based on the 1st minimum price and the 2nd minimum price, checking if there is a 2nd price among the products from the price lists or if there is only one offer of the product from the 1st supplier

`IF( [[ <code>ОтКонкурентаСтрока_2`

{Price list: Price}]] >0, ( [[ <code>ОтКонкурентаСтрока_1 {Price list: Price}]] + [[ `ОтКонкурентаСтрока_2`

{Price list: Price}]] ) / 2, {Price list: Price})[[RowFromCompetitorTP_N{PriceCompetitorsTP: Price}]]

**Formula for getting product values from sellers from the specified row (when receiving data from marketplaces). **

Where N is the line number + field name where you want to take the value from

`[[RowFromCompetitorTP_N{PriceCompetitorsTP: Price}]]`

For example, to get the second price (1341) from the list, use the formula

`[[ОтКонкурентаТПСтрока_2{ПрайсКонкурентовТП: Цена}]]`