Calling the Tax Determination Process
You can determine tax default parameters and calculate taxes online or in batch by calling two common routines—the tax determination function and the tax calculation function. When you determine tax defaults and calculate taxes online, the calling application must use rowsets. When you determine tax defaults and calculate taxes in batch, the calling application must use temporary tables.
The Tax Determination process is a common routine that determines tax applicability, tax calculation codes, and component codes. Calling applications can call this function in batch mode, or online from the header or transaction line level. Calling this function online from the header level enables the transaction to track at the header level tax determination information that might not vary by transaction line, such as the supplier tax transaction type.
When the calling application passes tax determination information (such as supplier tax transaction type), the tax determination function does not overwrite the value initially passed.
This section provides an overview of the Tax Determination process, and discusses:
Preparations necessary before calling the Tax Determination process.
Reapplying default tax parameters.
Validating transaction lines.
Tax Determination input parameters.
Tax Determination output parameters.
When an application calls the tax determination function, the process compares the ship from and ship to country, and performs the following for each row the calling application passes:
If the ship from and ship to country are not the same.
If the tax transaction type is defined as Interunit Transfer, no customs duty is applicable.
If the ship from and ship to country are the same:
The process checks the Business Unit Tax Applicability table to determine whether the business unit is customs duty applicable.
If the business unit is not applicable for either type of tax, the function marks the appropriate tax applicable flags as No and exits.
If the business unit is tax applicable, the process checks the trading partner tax applicability table to determine if the trading partner is customs duty applicable.
If tax is applicable, the process retrieves the default tax transaction type and the trading partner's tax category. If the tax is not applicable to the trading partner for either type of tax, the function marks the appropriate tax applicable flags as No and exits.
If both the business unit and the trading partner are tax applicable, and if an item or product ID were provided by the calling application, the process checks the item or product tax applicability table to determine if the item or product is customs duty applicable.
If tax applicable, the process retrieves the item tax category. If the item or product is not applicable for any type of tax, the function marks the appropriate tax applicable flags as No and exits.
If the business unit, trading partner, and item or product (if applicable) are all customs duty applicable, the process:
Checks the Tax Determination table to determine the tax calculation code applicable for customs duty.
Accesses the Tax Rate Code table and inserts a row into the Tax Detail child rowset for every tax detail row associated with the tax calculation code.
Prior to calling the Tax Determination process, the calling application must determine which business unit value the tax determination will use, and determine the ship from country, ship from state, ship to country, and ship to state.
Determining the Business Unit for Tax Determination
Refer to the following table to determine the correct business unit to use for tax determination:
Application |
Use Business Unit |
---|---|
Inventory |
Ship From Inventory |
Order Management |
|
Billing |
Bill Header: Billing business unit (used only for online manual bill entry) |
|
Bill Line:
|
Receivables |
Group Control: Use the Receivables business unit (used for online pending item entry only). |
|
Pending Item:
|
Purchasing |
|
Payables |
Header: Payables business unit (for online manual entry only). |
|
Transaction Lines:
|
Determining the Ship From Country and State
Refer to the following table to determine the correct ship from country and state to use:
Application |
Use Ship From Country, State |
---|---|
Inventory and Order Management |
|
Billing |
|
Receivables |
|
Purchasing and Payables |
Use the country and state from the ordering supplier location. |
Determining the Ship To Country and State
Refer to the following table to determine the correct ship to country and state:
Application |
Use Ship From Country, State |
---|---|
Inventory, Order Management, Billing, and Receivables |
|
Purchasing and Payables |
Access the ship to location.
|
If you make changes to the trading partner information, item or product ID, tax transaction type, or to any of the tax calculation codes, you are required to call the tax determination function again to reapply defaults based on the new values.
Preparing Fields for Updated Tax Parameters
The calling application must blank out the fields related to modified information prior to calling the tax determination function.
Change To |
Calling Application Responsibilities |
---|---|
Trading Partner |
Note: Taxability rules may differ for trading partners. Consequently, the Tax Determination process may blank out fields related to the item (when the new trading partner is not taxable), or populate fields related to the item (when the new trading partner is taxable), even if the item did not change. |
Ship To Location (for procure to pay) or Ship From Location (for order to cash) |
Note: The last step is applicable only when items are specified on the transaction line. Item tax applicability may be specified by Inventory business unit, or at the item master level. If you change the ship to or ship from location, the Tax Determination process might use a different business unit to determine taxability—a different Inventory business unit, an Inventory business unit where a product-specific business unit was previously used, or a product-specific business unit where an Inventory business unit was previously used. Consequently, the Tax Determination process must recheck the tax applicability of the item, even if the item had not changed. Note: Taxability rules may differ for business units. Consequently, the tax determination function may blank out fields related to the trading partner or item (when the new business unit is not taxable), or populate fields related to the trading partner or item (when the new business unit is taxable), even if the trading partner or item did not change. |
Item or Product Kit |
|
Tax Transaction Type |
|
Tax Calculation (Rate) Code |
|
The Tax Determination routines accept as input one or more rows of transaction line data using rowsets for online processing, and temporary tables for batch processing. Each row should be populated with the following values, if available:
Field |
Notes (if applicable) |
---|---|
Tax Defaulting Rowset/Table |
Name of the Tax Defaulting rowset (online) or temporary table (batch) |
Tax Default Option (online processing only) |
The calling application must populate this option with one of the following values: H (header): The tax determination function returns only the additional values on each row in the parent rowset. It returns no rows in the child rowset. D (detail line): The tax determination function returns additional values on each row in the parent rowset and additional rows in the child rowset. |
Tax Calc Date (tax calculation date) |
Used for effective date processing. |
Business Unit |
Refers to the transaction business unit. |
Tax Calc Transaction ID |
For example, the invoice number for shipment. |
Receiver ID |
Applicable for receiving materials |
Tax Calc Transaction Line Number |
|
Tax Calc Schedule Line Number |
If applicable. |
Business Unit Type |
Specifies the type of business unit associated with the customs duty business unit fields. Valid values are: IN: inventory. PO: purchasing. OM: order management. BI: billing. AR: accounts receivable. AP: accounts payable. |
Trading Partner Type: |
Valid values are: V: supplier. C: customer. |
Trading Partner Setid |
|
Trading Partner ID |
|
Location or Address Seq Num |
For customer, the address sequence number. For supplier, the location. |
Item or Product Kit Flag |
Valid values are: I: item P: kit N: not applicable |
Item or Product Kit ID |
|
Benefit ID |
For customs duty only. |
Ship From Country |
|
Ship From State |
|
Ship To Country |
|
Ship To State |
Note: The following values can be copied from a prior transaction; they can be header defaults applied to the line and populated from a prior function call; or, you can manually overwrite them (specific to tax transaction type and tax rate codes). The Tax Determination process will not overwrite these values if provided by the calling application. The Tax Determination process returns these values if they are not populated by the calling function.
Field |
Notes (if applicable) |
---|---|
Tax Transaction Type |
Valid values are: DEB: direct export with bond. DEWB: direct export without bond. DIMP: direct import. DOM: domestic. IUT: InterUnit transfer. LEB: local export with bond. LEWB: local export without bond. LIMP: local import. |
Trading Partner Tax Category - Customs duty |
|
The Tax Determination process returns the following values, using rowsets for online processing, and temporary tables for batch processing:
Field |
Notes (if applicable) |
---|---|
Business Unit Tax and Customs Duty Applicability (online processing only) |
Applicable only when the Tax Default Option is defined as header. |
Trading Partner Tax and Customs Duty Applicability (online processing only) |
Applicable only when the Tax Default Option is defined as header. |
Organization SetID |
|
Organization Code |
|
Organization Tax Location Code |
|
Tax Transaction Type |
If the calling application passes a value to the function in this field, the process does not overwrite the value. Valid values are: DEB: direct export with bond. DEWB: direct export without bond. DIMP: direct import. DOM: domestic. IUT: InterUnit transfer. LEB: local export with bond. LEWB: local export without bond. LIMP: local import. |
Trading Partner Tax Category - Customs Duty |
If the calling application passes a value to the function in this field, the process does not overwrite the value. |
Item/Product Kit Tax Item Type |
Valid values are: C: capital goods. R: raw materials. F: finished goods. |
Tax Calculation Code |
|
Customs Duty Applicability Flag |
Indicates whether the row is customs duty applicable. |
Customs Duty Calculation Code |
|
Use Assessable Value flag |
The system calculates excise duty based on the assessable value. When no sales value is applied to a shipment, excise duty may still be applicable based on the value of the items. Assessable value is based on customer category, item category, or item ID. |
Assessable Value |
The assessable value in the currency associated with the tax location. |
Conversion Rate |
Conversion rate between standard unit of measure and excise unit of measure. |
Service Tax Flag |
|
Tax Location Reporting Currency |
|