Pricing profiles allows you to create a formula using a set of predefined tokens.
This feature may not be activated in your account as standard. If you are interested in adding this feature then please contact our support team who will be happy to enable this for you.
Pricing profiles can be linked to listings and a dynamic price will be calculated. Anytime that a token changes the price will be recalculated. This could come in useful for example if you have supplier feeds which update the cost price of a product, if your formula is using the cost price token then that means the price of any linked listings will update and push to channel.
Once you have the feature, to create new profiles you will need to navigate to Settings ->Pricing -> Pricing Profiles.
Example Tokens:
- Price
- AverageCost
- RRP
- Margin
- Sold Last 7 Days
- Weight
- PackagingCosts
When you are creating your pricing profiles you'll be able to see the full list of available tokens.
Example Formulas:
- [AverageCost] + [Margin] + [PackagingCosts]
- ([PrioritySupplierCost] + [PackagingCosts]) * (1 + ([Margin] / 100))
- [RRP] + [Margin] + [PackagingCosts]
- [AverageCost] + [Margin] + [PackagingCosts] + if([Inventory]<10, 5,0)
Creating Formulas for your pricing profile
Formulas can be built up using a set of tokens, functions, operators very similarly to formulas in excel. Below you can find a list of operators and functions that pricing profiles supports.
Operators
Logical
or, ||, and, &&
Relational
=, ==, !=, <>,<, <=, >, >=
Additive
+, -
Multiplicative
*, /, %
Bitwise
& (bitwise and), | (bitwise or), ^(bitwise xor), << (left shift), >>(right shift)
Unary
!, not, -, ~ (bitwise not)
Maths Functions
Abs(x)
Get the absolute value of a number. For instance Abs(-1.5) will result in 1.5, Abs(1.5) will result in 1.5
Ceiling(x)
Returns the smallest integer greater than or equal to the specified number. Ceiling(1) = 1, Ceiling(1.5) = 2
Floor(x)
Returns the smallest integer less than or equal to the specified number. Floor(1) = 1, Floor(1.5) = 1
Max(x,y)
Returns the larger of two specified numbers.
Min(x,y)
Returns the smaller of two numbers.
Pow(x,y)
Returns a specified number raised to the specified power.
Round(x)
Rounds a decimal value to the nearest integral value.
Round(x,y)
Rounds a decimal value to a specified number of fractional digits.
Sqrt(x)
Returns the square root of a specified number.
Truncate(x)
Calculates the integral part of a number. Truncate(1) = 1, Truncate(1.5) = 1
Other Functions
in(valueToCheck, x,y,z)
Checks whether a value is in a list of values. For instance In(5, 0 ,5,10,15) this will check if 5 is in the list of values (0,5,10,15) and will equal true.
if(condtion, trueResult, falseResult)
Checks whether a condition is true or false and then returns either the true value or false value.
Price End Strategy
Price Ends (sometimes called physiological or charm pricing) lets users decide what decimal value they would like their prices to come out at. This is because customers prefer prices like £1.00 £1.50 £1.99 over prices like £1.37, £1.77 etc.
For each pricing profile the user can input a list of price ends that they would like so instance: 0, 25, 50, 99.
They can then choose a rounding strategy that they would like:
- Round Down
- Round Up
- Mid Point Rounding
Round Down
If using Round Down and the following price ends: 25, 50, 99. When the price is calculated as:
- 1.67 it will round to 1.50
- 1.99 will round to 1.99
- 2.00 will round to 1.99
- 1.33 will round to to 1.25
Round(x,y)
If using Round Up and the following price ends: 25, 50, 99. When the price is calculated as:
- 1.67 it will round to 1.99
- 1.99 will round to 1.99
- 2.00 will round to 2.25
- 1.33 will round to to 1.50
Midpoint
Midpoint will round to the closest value. So if using Midpoint and the following price ends: 25, 50, 99. When the price is calculated as:
- 1.67 it will round to 1.50
- 1.99 will round to 1.99
- 2.00 will round to 1.99
- 1.43 will round to to 1.50
Comments
0 comments
Please sign in to leave a comment.