CS-Cart "Product price calculator" add-on is a must-have solution for online stores selling products with custom dimensions - fabrics, building materials, blinds, carpets, banners, etc. This add-on adds a calculator functionality allowing users to type in their own product measurements and get a price according to them.

Features:
- "Product price calculator" tab in the admin panel on a product editing page.
- Ability for an administrator to create dimension names (width, height, length, etc.) and specify default values for the dimensions.
- Ability to set maximum and minimum limits for the numeric values entered by a customer.
- Ability to use different units of measurement (meter, centimeter, inch, yard, etc).
- Ability for an administrator to specify a formula for the price calculation.
- Formula supports options.
- Ability to add a formula description that will be displayed in the storefront below a product title.
- Ability to apply a formula to several products at once.
- Ability for a customer to type in necessary dimensions and automatically get a price according to them.
- The entered dimensions are displayed in the cart, on the checkout page, in the invoice.
Notice! You can get a complete e-commerce solution CS-Cart with one storefront + Product price calculator module at a discount price here.
Compatibility:
- This add-on works correctly in Internet Explorer, Mozilla Firefox, Safari, Google Chrome and Opera latest browser versions.
- The add-on is compatible with 4.x.x.
Notes:
1. "Product price calculator" add-on uses the following hooks:
- products:view_main_info
- products:buttons_block
- products:prices_block
that is why the add-on can be incompatible with other add-ons which use the same hooks.
2. We offer free installation of this add-on only for the default CS-Cart versions (that don't have any file changes and additional modules). Otherwise, the installation may require additional charge.
3. After the payment is confirmed, you will be able to download the add-on from the order details page.
4. Please remember that we can make any changes in this add-on due to your demands.
Don't hesitate to contact us if you have any questions about this product.
How to enable the Product price calculator for a certain product?
1. After the add-on installation, go to Products → Products. Press the Add product button in the top right corner to create a new product or click Edit next to the necessary product.
2. On the product editing page click the Add-ons tab.
3. Scroll down the page to find the Product Price Calculator section. You will see the following settings:
Product price calculator - check this checkbox to enable the Product price calculator for this product.
Minimal calculated product price - here you can enter the minimum product price that can be allowed after the calculation. If the calculated product price is below a set minimum, it will be changed to a set minimum automatically. Don't enter anything in this field if you don't want to set a minimal calculated product price.
4. Don't forget to save changes. After saving, the Product price calculator tab will appear.
The Product price calculator tab on a product editing page and its features
After enabling the Product price calculator for a certain product, administrator should do all necessary actions in the Product price calculator tab on a product editing page.
1. Click the Product price calculator tab and you will see the following sections:

2. In the Fields section please specify:
Name - the name of a dimension parameter (for example, width).
Position - the position of the dimension parameter in the formula.
Default value - specify a default numeric value for a dimension parameter which will be shown in the storefront for a customer.
Abbreviation - the name for the unit of measurement (for example, cm, meter, inch, etc.).
Minimum – the minimum allowed numeric value which can be entered by a customer. If a customer enters a number that is less than the allowed minimum, he will see an error message and his number will be replaced with the allowed minimum.
Maximum - the maximum allowed numeric value which can be entered by a customer. If a customer enters a number that is bigger than the allowed maximum, he will see an error message and his number will be replaced with the allowed maximum.
Selectbox - Use this field if you would like to allow customers to choose necessary dimensions from a selectbox (customers won't be able to enter them manually). Note! First you need to fill out all fields in the Fields section and enter a Formula, press Save and the checkbox below the Selectbox will appear. Tick this checkbox to use the selectbox. Don't tick it, if you don't need to use it.
Step - Use this field if you choose the Selectbox. Type in the step for numeric values which will be chosen by a customer from a selectbox.
Additional - Use this field for inches or yards. Here type in the part which goes after /. In the storefront the selectbox for a fractional part will appear. For example, if you entered 2 in the Additional field in the admin back-end, fractional part will look like 0, 1/2. If you entered 4, the fractional part in the storefront will be 0, 1/4, 1/2 (namely 2/4), 3/4. Thus, the figure which goes before / starts from 0 till the Additional - 1 (step is always 1). The figure that goes after / is the Additional value.
Additional Abbreviation - the name for the additional unit of measurement (inch).
Click on the plus icon to add a new field.
3. Options section
If the product has options, you will see the Options section. Option section includes the option values how they should be used in a formula.
4. Formula section
Create a formula in the Formula section according to the examples provided below on this page.
5. Formula description
Here you can input the description of the formula. This formula description will be displayed in the storefront below a product title, explaining customers how the calculator works. If you leave this section empty, customers will see the “Calculate your price” line below a product title.
6. Apply formula to other product
Click the Add product link to choose the products where you would like to apply the created formula.
Please note! Only a formula without options will be applied correctly. If a formula has options and you applied this formula to other products, please check and change the options id values in the formula or remove them if they are not necessary. Also, if you apply a formula to a product that already has a formula, it will be rewritten.
Formula example for width and height dimensions in meters (initial price is per a square meter)

Formula explanation:
[val_1] is the value for the dimension Name with the Position 1;
[val_2] is the value for the dimension Name with the Position 2;
[price] is the price per unit specified by the administrator in the price field on a product editing page, General tab.
Note! The same formula is for centimetres with the initial price for a square cm and for inches with the initial price for a square inch.
Formula example for width and height dimensions in centimetres (initial price is per a square meter)

Formula explanation:
The basic formula [val_1]*[val_2]*[price] is divided into [10000] because the price on a product editing page is entered per a square meter but calculator uses values in centimetres.
Formula example for a product with width, height and thickness dimensions in centimetres (initial price is per a cubic centimetre)

Formula explanation:
[val_1] is the value for the dimension Name with the Position 1;
[val_2] is the value for the dimension Name with the Position 2;
[val_3] is the value for the dimension Name with the Position 3;
[price] is the price per unit specified by the administrator in the price field on product editing page, General tab.
Note! The same formula is for meters with the initial price for a cubic meter and for inches with the initial price for a cubic inch.
Formula example for a product with width, height and thickness dimensions in centimetres (initial price is per a cubic meter)

Formula explanation:
The basic formula [val_1]*[val_2]*[val_3]*[price] is divided into [1000000] because the price on a product editing page is entered per a cubic meter but calculator uses values in centimetres.
Formula example for a product with width and height dimensions in inches with a fractional part (initial price is per inch)

Formula explanation:
[val_1] is the value for the dimension Name with the Position 1;
[addval_1]/[4] - is the fractional part for the Position 1. The figure 4 is used after / because it is entered in the Additional field in the Fields section.
[val_2] is the value for the dimension Name with the Position 2;
[addval_2]/[4] - is the fractional part for the Position 2. The figure 4 is used after / because it is entered in the Additional field in the Fields section.
[price] is the price per unit specified by the administrator in the price field on product editing page, General tab.
Note! You can use such standard symbols in the formula as “+” “-” "*" "/".
How to create a formula that will work with options
Product price calculator works correctly with options. It allows to add options on base of entered dimensions.
For example, you sell a table board, it has such options as a Top material (Oak, Birch, etc) and a Color (While, Black, etc.). Top material price depends on a price per a square meter. Color price is a fixed price that will be added to the final product price.
Let's see the formula example for this situation (initial price is per a square meter):

Once you have created the options for a product in the admin back-end, option values how they should be used in a formula appear in the Options section as it is shown on the screenshot above.
Formula explanation:
[val_1] is the value for the dimension Name with Position 1;
[val_2] is the value for the dimension Name with Position 2;
[opt_15] is the id value of the created Table top material option. Remember, in our example, this option has price modifiers that depend on a price per a square meter.
[opt_16] is the id value of the created Color option. Remember, in our example, this option has price modifiers that are fixed and should be added to the final product price.
[price] is the price per a square meter.
The formula looks as follows:
[val_1]*[val_2]*([opt_15]+[price])+[opt_16]
It means that Table top material option price [opt_15] is added to price per a square meter [price] then it is multiplied by the table area [val_1]*[val_2] and the Color option price [opt_16] is added to the final price.
Formula with complex conditions |
This feature allows you to use conditions for the formula.
You can add additional fields on a product details page in the Product price calculator tab such as
See the example screenshots below:

To create a new Subfield, click on the Add Subfields link in the Subfields section and fill out the appeared form:

To create a field with conditions, click the Add field with condition link in the Fields with conditions section and fill out the appeared form:

After the creation of the Subfields and the Fields with condition you can create a formula using new parameters. See the screenshot below:

Please note! If you have problems with creating a correct formula, we will help you to do it free of charge.
Installation instruction
1. Download the archive with the Product price calculator add-on.
2. Unpack the archive's content and upload files to your server in the root directory with the installed CS-Cart.
3. Log into the administration panel of your store, go to the Administration -> Add-ons page.
4. In the list of add-ons find the Product price calculator add-on and click Install opposite to its name.
5. Make sure the status is Active.
Order editing in the admin back-end |
This modification allows the administrator to edit the calculated product price and customer-specified size on the order editing page in the admin back-end. Also, it allows to create a new order for products with custom dimensions in the admin back-end.
To edit an order, go to Orders -> View orders -> click Edit next to the necessary order.
To create an order, go to Orders -> View orders -> click the Add order button in the top right corner.
See the screenshot below:

On the order editing page the administrator can
-
edit the size and press the Recalculate button to recalculate the price;
-
enter his own final price in the Price box by disabling the formula (check Don't use formula checkbox);
-
set a custom price per unit and recalculate the final price. It is necessary to check the Use custom price checkbox, enter the price per unit in the Price box and press the Recalculate button.
This modification can be useful
Please, contact us if you would like to order this extension or have any questions about it.