Hi,
I don't see why that would change.
I've looked at the code of the mass action import and the only place where the product_tax_id is mentioned is in that piece:
if(!empty($data->elements[$id]->price_value_with_tax)){
$currencyHelper = hikashop_get('class.currency');
if(empty($data->elements[$id]->product_tax_id)){
if(!empty($oldElement->product_tax_id)){
$data->elements[$id]->product_tax_id = $oldElement->product_tax_id;
}else{
$data->elements[$id]->product_tax_id = $currencyHelper->getTaxCategory();
}
}
if($data->elements[$id]->product_tax_id){
if(strpos($data->elements[$id]->price_value_with_tax,'|')===false){
$data->elements[$id]->price_value = $currencyHelper->getUntaxedPrice(hikashop_toFloat($data->elements[$id]->price_value_with_tax),hikashop_getZone(),$data->elements[$id]->product_tax_id);
}else{
$price_value = explode('|',$data->elements[$id]->price_value_with_tax);
foreach($price_value as $k => $price_value_one){
$price_value[$k] = $currencyHelper->getUntaxedPrice($price_value_one,hikashop_getZone(),$data->elements[$id]->product_tax_id);
}
$data->elements[$id]->price_value = implode('|',$price_value);
}
}
unset($data->elements[$id]->price_value_with_tax);
}
What this code does is that if there is the price_value_with_tax column in the CSV, it calculates the price_value out of it based on the product_tax_id of the product. And if the product_tax_id column is not in the CSV, it tries to load it from the database, and if there isn't any in the database, it takes the default tax category id.
Do you have other filters or actions in your mass action ?
Do you have other mass actions ? Like for example one which does things on the product_tax_id when a product is updated ?