Мой итоговый вариант.
Похоже на правду?
elseif (Tools::isSubmit('submitCarrierNumber') && isset($order)) {
$carrier_date_update = Tools::getValue('carrier_date_update');
$id_carrier_update = (int)Tools::getValue('id_carrier_update');
$id_order_carrier = (int)Tools::getValue('id_order_carrier');
if ($id_order_carrier) {
// Update order_carrier
$shipping_cost = Tools::getShippingCost($id_carrier_update, $id_order_carrier); //вычисляем стоимость доставки
$shipping_cost = number_format($shipping_cost, 6, '.', '');
$order_carrier = new OrderCarrier($id_order_carrier);
$order_carrier->date_add = $carrier_date_update;
$order_carrier->id_carrier = $id_carrier_update;
$order_carrier->shipping_cost_tax_excl = $shipping_cost;
$order_carrier->shipping_cost_tax_incl = $shipping_cost;
$order_carrier->id_order_invoice = 0;
$order_carrier->update();
// Update order
$order->id_carrier = $id_carrier_update;
$order->delivery_date = $carrier_date_update;
$order->total_shipping = $shipping_cost;
$order->total_shipping_tax_incl = $shipping_cost;
$order->total_shipping_tax_excl = $shipping_cost;
$total_paid = $order->total_products - $order->total_discounts + $order->total_shipping;
$total_paid = number_format($total_paid, 6, '.', '');
$order->total_paid = $total_paid;
$order->total_paid_tax_incl = $total_paid;
$order->total_paid_tax_excl = $total_paid;
$order->update();
}
}