Мне не очень нравится, что в коробочной версии при изменении количества цена остаётся прежней на экране в карточке товара. Решил исправить этот момент. Для исправления нужно внети изменения в файл product.js и product.tpl

Для Prestashop 1.5

В product.js находим строку $('#our_price_display').text(our_price); и комментируем её

// $('#our_price_display').text(our_price);

После неё вставляем код:

$(document).ready(function(){
$('#quantity_wanted').change(function(){
$('#our_price_display').html(formatCurrency(productPrice*$("#quantity_wanted").val(), currencyFormat, currencySign, currencyBlank));
});
});

приводим product.tpl  в соответствие

<p id="quantity_wanted_p"{if (!$allow_oosp && $product->quantity <= 0) OR $virtual OR !$product->available_for_order OR $PS_CATALOG_MODE} style="display: none;"{/if}>

{literal}
<script type="text/javascript">
$(document).ready(function(){

$('#quantity_wanted').val(1);
$('.qty_up img').on('click',function(){
if (isNaN(parseInt($('#quantity_wanted').val()))){$('#quantity_wanted').val(1);}
else {$('#quantity_wanted').val(parseInt($('#quantity_wanted').val())+1);
$("#our_price_display").html(((productPrice*$("#quantity_wanted").val()).toFixed(2)+" "+currencySign).replace('.',','));}
});
$('.qty_down img').on('click',function(){
if (isNaN(parseInt($('#quantity_wanted').val()))){$('#quantity_wanted').val(1);}
else { if(parseInt($('#quantity_wanted').val())<=1){ }
else {$('#quantity_wanted').val(parseInt($('#quantity_wanted').val())-1);
$("#our_price_display").html(((productPrice*$("#quantity_wanted").val()).toFixed(2)+" "+currencySign).replace('.',','));}}
});
});
</script>
{/literal}
<label>
{l s='Quantity:'}
</label>
<span class="qty_down floatleft">
<img src="/{$img_dir}minus.png" width="12" height="12" alt="" title="" />
</span>
<input
type="text"
name="qty"
id="quantity_wanted"
class="text"
value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}{if $product->minimal_quantity > 1}{$product->minimal_quantity}{else}1{/if}{/if}"
size="2"
maxlength="3" {if $product->minimal_quantity > 1}onkeyup="checkMinimalQuantity({$product->minimal_quantity});"{/if} />
<span class="qty_up floatleft">
<img src="/{$img_dir}plus.png" width="12" height="12" alt="" title="" />
</span>
</p>

Чистим кеш и проверяем результат :)

Для Prestashop 1.6

находим строки и удаляим их 

if (!isNaN(currentVal) && currentVal < quantityAvailableT)
$('input[name='+fieldName+']').val(currentVal + 1).trigger('keyup');
else
$('input[name='+fieldName+']').val(quantityAvailableT);
});

вместо них вставляем:

if (!isNaN(currentVal) && currentVal < quantityAvailableT) {
$('input[name='+fieldName+']').val(currentVal + 1).trigger('keyup');
var total = (productPrice * (currentVal + 1));
var total = total.toFixed(2);
$('p.our_price_display').fadeOut();
$('span#our_price_display').text(total + ' ' + currencySign)
$('p.our_price_display').fadeIn();
} else {
$('input[name='+fieldName+']').val(quantityAvailableT);
}
});

находим строки и снова удаляем:

if (!isNaN(currentVal) && currentVal > 1)
$('input[name='+fieldName+']').val(currentVal - 1).trigger('keyup');
else
$('input[name='+fieldName+']').val(1);

вместо них вставляем:

if (!isNaN(currentVal) && currentVal > 1) {
$('input[name='+fieldName+']').val(currentVal - 1).trigger('keyup');
var total = (productPrice * (currentVal - 1));
var total = total.toFixed(2);
$('p.our_price_display').fadeOut();
$('span#our_price_display').text(total - ' ' + currencySign)
$('p.our_price_display').fadeIn();
} else {
$('input[name='+fieldName+']').val(1);
}

с продукт.tpl аналогично.

Чистим кеш и радуемся результатом