PrestaShop:由于错误的国家/地区 ID,税收计算错误
PrestaShop: tax calculation wrong because of wrong country id
我在为产品数据创建 XML 导出时遇到问题。
我使用的 PrestaShop 版本是 1.7.3.1
我们的设置:
一个站点 xyz.com,我们在其中为我们的国家/地区提供了不同的路线。com/de 和 .com/at 和 .com/it
我们的需求:
我们需要一个 XML 文件,其中所有产品和 writh 价格都经过正确的税收计算(de/at 和它不同)。
当我通过浏览器调用脚本时,我没有登录。
所以我没有国家 ID,地理标记说我来自奥地利,所有产品的税率都来自奥地利——不幸的是,这是错误的。
我尝试过的(我尝试过的许多事情之一)
当我为意大利调用脚本时,我将全局上下文国家/地区设置为 IT。
switch ( $shop ) {
case "DE":
/* .... */
break;
case "AT":
/* .... */
break;
case "IT":
$id_shop = 6;
$id_lang = 4;
$replace = '.com/it/';
$country = Country::getCountriesByZoneId(10, 4);
Shop::setContext(Shop::CONTEXT_SHOP, 6);
Context::getContext()->shop->id = 6;
Context::getContext()->country = $country;
break;
}
但是税收计算有误,每个国家/地区的价格始终相同。
你有什么想法,我怎样才能达到不同的税率?
谢谢!
解决方案
解决方案是
$country = Country::getCountriesByZoneId(10, 4);
Shop::setContext(Shop::CONTEXT_SHOP, 6);
Context::getContext()->shop->id = 6;
Context::getContext()->country = $country;
我现在用这个
Context::getContext()->country = new Country(/*Enter country ID here*/);
我在为产品数据创建 XML 导出时遇到问题。
我使用的 PrestaShop 版本是 1.7.3.1
我们的设置:
一个站点 xyz.com,我们在其中为我们的国家/地区提供了不同的路线。com/de 和 .com/at 和 .com/it
我们的需求:
我们需要一个 XML 文件,其中所有产品和 writh 价格都经过正确的税收计算(de/at 和它不同)。
当我通过浏览器调用脚本时,我没有登录。
所以我没有国家 ID,地理标记说我来自奥地利,所有产品的税率都来自奥地利——不幸的是,这是错误的。
我尝试过的(我尝试过的许多事情之一)
当我为意大利调用脚本时,我将全局上下文国家/地区设置为 IT。
switch ( $shop ) {
case "DE":
/* .... */
break;
case "AT":
/* .... */
break;
case "IT":
$id_shop = 6;
$id_lang = 4;
$replace = '.com/it/';
$country = Country::getCountriesByZoneId(10, 4);
Shop::setContext(Shop::CONTEXT_SHOP, 6);
Context::getContext()->shop->id = 6;
Context::getContext()->country = $country;
break;
}
但是税收计算有误,每个国家/地区的价格始终相同。
你有什么想法,我怎样才能达到不同的税率?
谢谢!
解决方案
解决方案是
$country = Country::getCountriesByZoneId(10, 4);
Shop::setContext(Shop::CONTEXT_SHOP, 6);
Context::getContext()->shop->id = 6;
Context::getContext()->country = $country;
我现在用这个
Context::getContext()->country = new Country(/*Enter country ID here*/);