Да, проблема с tax существует(на 1.4.х.х не замечено).
В файл "system/library/tax.php" после:
$address_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "address WHERE address_id = '" . (int)$this->customer->getAddressId() . "'");
вставьте:
if ($address_query->num_rows > 0) {
$this->setShippingAddress($address_query->row['country_id'], $address_query->row['zone_id']);
} else {
$this->setShippingAddress($this->config->get('config_country_id'), $this->config->get('config_zone_id'));
}
} elseif ($this->config->get('config_tax_default') == 'shipping') {
$this->setShippingAddress($this->config->get('config_country_id'), $this->config->get('config_zone_id'));
}
if (isset($this->session->data['payment_address_id'])) {
$address_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "address WHERE address_id = '" . (int)$this->session->data['payment_address_id'] . "'");
$this->setPaymentAddress($address_query->row['country_id'], $address_query->row['zone_id']);
} elseif (isset($this->session->data['guest']['payment'])) {
$this->setPaymentAddress($this->session->data['guest']['payment']['country_id'], $this->session->data['guest']['payment']['zone_id']);
} elseif ($this->customer->isLogged() && ($this->config->get('config_tax_customer') == 'payment')) {
$address_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "address WHERE address_id = '" . (int)$this->customer->getAddressId() . "'");
if ($address_query->num_rows > 0) {
$this->setPaymentAddress($address_query->row['country_id'], $address_query->row['zone_id']);
} else {
$this->setPaymentAddress($this->config->get('config_country_id'), $this->config->get('config_zone_id'));
}