[eluser]haseydesign[/eluser]
@koichirose,
From the code you have posted, you look like you worked it out that it is the config setting
Code:
$config['defaults']['shipping']['tax_rate']
that defines the tax rate for manual shipping options (Database shipping option tax are defined via the table).
However, by default, that config setting is defined as FALSE (Not '0' as you have), which means that the default cart tax rate is used.
If '0' is set, then it defines that no tax should be applied to the shipping rate.
I see that you dismissed this with your EDIT2 comment, but that is how it is intended to work, and from my testing within the available demo example, it proves to work as expected.
One note that I must warn that always throws me off, is that internally, the cart calculates all pricing excluding tax.
The all important config setting to understanding this is:
Code:
$config['defaults']['configuration']['price_inc_tax']
If set to TRUE and a $10.00 shipping option is added including 10% tax, the cart will calculate the shipping rate excluding tax as $9.09 ($10 / 10%) and $10.00 including tax.
If the config setting was FALSE, the the shipping option excluding tax would be $10.00 and including tax would be $11.00 ($10 x 10%).
To further complicate matters, remember that you can then further manually define whether to
display pricing inc/excluding tax.