Channels: Price rules

// Contents

Introduction
Pricing options
Currency conversion
Copy existing rules
Examples:

// Introduction

ChannelEngine has multiple options to adjust the price of a product that’s being sent to a channel. Price rules will add or subtract an amount in the used currency. It is also possible to add or subtract a percentage of the price. The price rules for all channels can be managed via the left side menu and selecting ' Channels' > 'Price rules'. If you only want to manage the price rules for a specific channel, you can navigate to the tab 'Pricing' > 'Price Rules' in the top menu that's visible when you open a channel.

Regardless of the view, it’s always possible to add a price rule or a currency conversion or change existing ones. Select  “+ Add price rule” / “+ Add currency conversion” to add a new price rule.

The price rules can be applied on two levels:

Channel = Applicable on all products for a certain channel
Listing = Applicable on a specific listing for a certain channel

Three very important things to take into account: 
  1. Multiple price rules are allowed as long as these rules only consist of one type. This means you can have an unlimited amount of channel price rules and listing price rules, but not combined. You can chain multiple price rules on one listing or channel, but not crossed.
  2. If a product is included in more than one listing, there is a very high chance that for both listings different prices will be calculated (based on applied price rules). In that case, the highest calculated price will be used for the export, so if you set a discount in a price rule for such a product it will not be applied in the export.
  3. If you use multiple rules, the order is important for the result! Rule 1 is applied first, then 2, then 3, etc.

    To show this with an example (example does not use the math order of operations) :  20 * 1.10 + 2.50 * 1.25 has a different end result (30,63) as 20 + 2.50 * 1.25 * 1.10 (30,94)

// Pricing options

When adding a price rule it’s possible to pick your own fixed amount (left) or percentage (right) to add or subtract. There is an additional option to exclusively apply the rules to products within a certain price range. It is also possible to select a range of dates so it’ll automatically go back to the normal price after a set date. 

This way, you can offer discounts for a certain amount of time, without having to change everything back at the end. At “ level” you pick the channel or listing level of your pricing. After applying the price rules, it’s also possible to round the number using one of the options that are available to avoid weird prices. For example, round UP to .99 (€2,64 -> €2,99) or DOWN to nearest .05 (€6,83 -> €6,80).

To explain all the options for the price rules in detail:

  • Name: This is the name of your price rule. This can be used to identify the price rule overview and it is advised to make this a descriptive name like "Amazon 10% discount".

  • Input: This is the name of the attribute you want to set your price rule for. By default, this will be (ChannelEngine) Price, but it is possible to select other default price fields or one of your custom fields. Please make sure this is an attribute that has a valid price (number) value, otherwise, price rules will logically have no effect.
  • Output: This is the name of the attribute you want to set the output of the price rule too. By default, this will be (ChannelEngine) Price but is depending on whatever price field you are mapping as the price field that needs to be used at a specific channel. So if you have a custom attribute name 'Amazon Price' and you use that attribute in the offer mapping for Amazon as well, both the input and the output should be mapped to 'Amazon Price'.
  • Fixed Amount: This is a fixed amount you want to add or subtract from the input price. If you want to subtract a fixed amount, please add a minus at the start of the value. Example: -4.85 or 10. Please note: a dot should be used as the decimal separator for these price rules.
  • Percentage: This is a percentage of the input price you want to add or subtract from the input price. If you want to subtract a percentage, please add a minus at the start of the value. Example: -20 or 15.

  • From date: This is the 'start date' (and time) for which you want the price rule to apply. If you add this rule on 13-2 and set the From date to 16-2 14:29, it will not immediately be applied, but starting from the first export after 16-2 14:29 CE(S)T (depending on DST). In the future, it will become possible to set the timezone but our current framework does not yet support this.
  • To date: This is the 'end date' (and time) for which you want the price rule to apply. If the date is 16-2 and the To date is set to 13-2 02:05, the price rule will no longer be applied starting from the first export done after 13-2 02:05:00 CE(S)T (depending on DST). In the future, it will become possible to set the timezone but our current framework does not yet support this.
Please note:  Please be aware that any date and time you submit is saved on our server time (Amsterdam timezone). If you want a price rule to be applied for a specific time in a certain timezone, please convert the date to take the correct offset in account!
  • From price: The is the input price from which a price rule is applied. If your value is set to '20', a price of 19.99 will not trigger the rule, if it's 20 or higher it will be applied.
  • To price: The is the output price to which a price rule is applied. If your value is set to '50', a price of 50 will trigger the rule, if it's 50.01 or higher it will not be applied.

  • Rounding: The rounding option can be used to commercially round the output of a price rule. Adding a percentage-based rule might result in a price of 19.83, which is not commercially attractive. By using a 'Round UP to nearest .99' the result would be 19.99.
  • Level: This is where you select if the price rule is applied to a specific listing, or to all the products for an entire channel. Please be aware that listing and channel price rules can't be used combined - if both are active for a product, only the listing rule(s) will be applied.
Please note:  Percentage applies to the current input price. Example: The original price is € 2,-. Filling in a value of 30 in the percentage field will result in the new price being € 2.60 euro.

// Currency conversion

It is also possible to convert the currency to the local currency of a channel or specific country-based prices of a channel (this is relevant for multi-country channels like Spartoo and Miinto). By choosing which currency to convert to, ChannelEngine will regularly update the exchange rate, so prices will always be up-to-date. Please note that the currency that is being converted from, is always the default currency set for your account. If that is set to EUR, you can set conversion to GBP. If your default account currency is set to GBP, there (logically) will not option to convert to GBP but will be an option to convert to EUR.

The way this works is almost identical to the way price rules work. There is no option to set from and to date or price, these are replaced by the option to set the conversion to a specific currency.

To explain all the options for the currency conversion rules in detail:

  • Name: This is the name of your price rule. This can be used to identify the price rule overview and it is advised to make this a descriptive name like "Amazon CO.UK currency conversion".
  • Input: This is the name of the attribute you want to set your conversion rule for. By default, this will be (ChannelEngine) Price, but it is possible to select other default price fields or one of your custom fields. Please make sure this is an attribute that has a valid price (number) value, otherwise, the conversion will logically have no effect.
  • Output: This is the name of the attribute you want to set the output of the conversion rule too. By default, this will be (ChannelEngine) Price but is depending on whatever price field you are mapping as the price field that needs to be used at a specific channel. So if you have a custom attribute name 'Amazon Price' and you use that attribute in the offer mapping for Amazon as well, both the input and the output should be mapped to 'Amazon Price'. If you want to use multiple currency conversions for 1 channel (as the mapping has options for several currencies) it's advised to make a price attribute for all these different prices to output to. If you make several rules all outputting to Price, it will not work.
  • To currency: The currency you wish to convert your input price to. This has to be a different currency as your from currency and has to be relevant for the price mapping you want to use this for.
  • Rounding: The rounding option can be used to commercially round the output of a conversion rule. Adding a percentage-based rule might result in a price of 19.83, which is not commercially attractive. By using a 'Round UP to nearest .99' the result would be 19.99. For some countries, decimal prices are not desired, so select a proper rounding like 'ROUND up to nearest whole number' in that case.
  • Level: This is where you select if the conversion rule is applied to a specific listing, or to all the products for an entire channel. Please be aware that listing and channel rules can't be used combined - if both are active for a product, only the listing rule(s) will be applied.
Note:  your default currency can not be managed from your ChannelEngine account at this time. If you would like this changed, please contact our customer success or support team.

// Copy existing rules

When setting up price rules, especially if you have multiple rules based on price ranges, it can be timesaving to copy existing price rules and use them (as a template for) new price rules.

The option to copy prices can be found in the price rule overview (Channels > Price rules). Select the "Copy existing price rule" option and you will get a popup modal.

Here you can select the price rule you wish to copy, if you want to copy this on a channel or listing level, and to which specific channel (or listing) this needs to be copied. Please note: if you select a listing, this will also copy that listing to the channel so be aware of this behavior.

Alternatively, you can also copy a price rule from the price rules of a specific channel.

This will also open a popup modal, but with only the option to select the specific existing price rule you wish to copy - it will automatically copy the price rule to this channel.

Once you select a price rule and pressed "Ok" the price rule will be copied. 

This new price rule will also copy the name but add a [COPY] prefix to it. You will automatically be redirected to editing this copied price rule so you can edit it if desired. If you make any changes do not forget to save the new (copied) price rule.

// Examples

/ Example 1: Listing + channel price rules

/ Input: 
Price: 20 EUR
Catalog Price: 30 EUR
Rule 1 (Price --> Price): + 5 EUR
Rule 2 (Price --> Price): +15%
Rule 3 (Catalog --> Price): -25%

/ Result:
1. 20 + 5  = 25 --> [Price] (as this is a channel rule, it will not be applied as there are also listing rules)
2. 20 * 1.15 = 23 --> [Price] (the original price value of 20 is used)
3. 30 * 0.75 = 22.50 EUR --> [Price] (this will also be the output, as the rule uses a different input attribute and this is the last rule to be applied)

/ Exported Price:

22.50 EUR

/ Example 2: Currency conversion

/ Input
Price
: 20 EUR 
Rule 1 (Price --> Price): Convert to GBP
Rule 2 (Price --> Price): +10%

/ Result:
1. 20 * 0.8769 = 17.54 (GBP) --> [Price]
2. 17.54 * 1.10 = 19.30 --> [Price] 

/ Exported Price:

19.30 GBP

/ Example 3: Chaining price rules

Input

Prijs Spanje: 20 EUR
Price: 17.50 EUR
Rule 1 (Prijs Spanje --> Price): +1.75%
Rule 2 (Price --> Price): +15%
Rule 3 (Price --> Price): +21%

/ Result:
1. 20 * 1.0175  = 20.35 --> [Price]
2. 20.35 * 1.15 = 23.40 --> [Price]  (if the input would be anything else as Price, the chaining would fail and this will result in a different output)
3. 23.40 * 1.21 = 28.32 EUR

/ Exported Price:

28.32 EUR