This page is to clarify how tax calculation works in SRM 4.0 and SRM 5.0.
Here you will find how the system works and which are the options to determine the Tax calculation through settings and Badis available.
SRM Standard determination
The system determines the tax code for the new item as follows:
1. If the BADI BBP_DET_TAXCODE_BADI is implemented, the tax code would set as the one returned by this BADI
2. If the BADI could not determine a tax code, the tax code set in the customizing for product category would be taken
3. If there is no customizing maintained, then the tax code is taken as the default one set in 'Tax Code Calculation -> Enter Tax Code'
As per standard SAP logic, if a tax code is maintained as default in the configuration, it will be populated as soon as you initiate a SC. When it is completed the vendor and cost assignment details, the redetermination of the tax code happens from the BADI and the new tax code replaces the old tax code.
Regarding to the fm BBP_TAX_UPDATE_TAX_SEG please see note 1039435 and relative notes described on it.
-> go to SPRO transaction -> IMG -> SRM -> SRM-SERVER -> Cross Appl-Basic Settings -> Tax Calculation -> Determine System for Tax Calculation
Badis and Pilot notes
As per the standard behavior, the tax calculation would be triggered and updated only if there is a change in the product category, currency price or ship-to address of an item.
However there is a modification note available which triggers the tax calculation whenever there is a change to the SC item.
You could implement the pilot note 909552 manually and this would make sure that the tax gets recalculated for a change in accounting object as well. The note description says change in location, however this would work for accounting object also.
Please be aware that in case of external tax system (e.g. Vertex) ERP Badi EXTENSION_US_TAXES could be used for accounting dependent tax determination.
Related SAP Notes/KBAs
SAP Note: 909552 Shopping Cart Tax is not recalculated when location is changed
SAP Note: 1039435 FAQ: Trigger of tax update