You are on page 1of 71

Table of Contents Oracle Corporation Confidential - For Oracle internal use only Page 1 of 71

ORACLE FUSION APPLICATIONS


TAX PARTNER INTEGRATION COOKBOOK
Applications Release: Fusion V1
Author: Desh Deepak & Steven Chi
Creation Date: 11-May-11
Update Date: 15-Jan-13
Draft / Version: 5.0

Change Record
Date Author Version Change Reference

11-May-11

Desh Deepak 1.0 First draft
01-Feb-12 Steven Chi 2.0 Party creation API calling syntax added. Appendix for running the
Fusion Tax Content Upload Program added for regular partner data
content file quality assurance purposes.
19-Sept-12 Steven Chi 3.0 Alternatives for, and importance of, creating taxes using the Global
Configuration Owner for use with tax partner content added. Tax
Partner Party Creation & Registration Section added with detailed
steps and screen prints applicable to different Fusion Applications
Releases. Importance of identifying and addressing the need for
raised exceptions emphasized for selected PL/SQL package
procedures used for tax partner integrations. Appendix for running
the Fusion Tax Content Upload Program expanded with detailed
steps and screen prints applicable to different Fusion Applications
Releases for both On Premise and Cloud Deployments.
05-Nov-12 Steven Chi 4.0 Enhanced execution steps and screen prints added to the Fusion Tax
Content Upload Program Appendix for (1) Oracle Fusion On Premise
Deployments involving tax partner content, tax partner calculation
services, or both, (2) Oracle Fusion Cloud Deployments involving
only tax partner content, and (3) Oracle Fusion Cloud Deployments
involving only tax partner calculation services or tax partner content
and tax partner calculation services. Key tax regime start date
prerequisite necessary for the Fusion Tax Content Upload Program
added to the Configuring Fusion Tax for Partner Integration Section.
15-Jan-13 Steven Chi 5.0 ZX_REGISTER_TAX_PARTNER API calling script details expanded for
different cases to create and register a tax partner as a party for
Oracle Fusion Applications On Premise Deployments.
Table of Contents Oracle Corporation Confidential - For Oracle internal use only Page 2 of 71
Table of Contents
1 Introduction ...........................................................................................................................................4
2 Configuring Fusion Tax for Partner Integration ...................................................................................5
3 Tax Partner APIs Integration Overview ................................................................................................7
4 Tax Partner APIs ..................................................................................................................................10
4.1 Tax Calculation API ...................................................................................................................10
4.2 Tax Synchronization API ...........................................................................................................14
4.3 Global Document Update API ..................................................................................................15
5 Partner Calculated Tax Lines Processing by Fusion Tax .....................................................................17
6 Tax Partner Repository Consistency Check ........................................................................................18
7 Tax Partner Party Creation & Registration .........................................................................................19
8 Tax Partner Installation & Integration ...............................................................................................27
8.1 Create and Register Tax Partner as a Party .............................................................................27
8.2 Tax Partner APIs Plug-in ...........................................................................................................27
8.3 User Extensible Procedures .................................................................................................... 30
9 Vertex Q-Series and ADP-Taxware Sales and Use Tax (SUT) Integration .........................................33
9.1 Vertex Q-Series ........................................................................................................................33
9.2 Taxware SUT.............................................................................................................................34
10 Appendix A Data Types and Database Views ..................................................................................35
10.1 zx_tax_partner_pkg.messages_tbl_type .................................................................................35
10.2 zx_tax_partner_pkg.output_sync_tax_lines_tbl_type ............................................................36
10.3 zx_tax_partner_pkg.tax_currencies_tbl_type .........................................................................37
10.4 zx_tax_partner_pkg.tax_lines_tbl_type ..................................................................................37
10.5 zx_tax_partner_pkg.trx_rec_type ...........................................................................................42
10.6 zx_api_prvdr_pub.error_messages_tbl ...................................................................................42
10.7 ZX_IMPORT_TAX_LINES_INPUT_V ..........................................................................................42
10.8 ZX_O2C_CALC_TXN_INPUT_V..................................................................................................43
10.9 ZX_SYNC_HDR_INPUT_V..........................................................................................................57
10.10 ZX_SYNC_LINES_INPUT_V ........................................................................................................58
10.11 ZX_SYNC_TAX_LINES_INPUT_V ...............................................................................................60
Table of Contents Oracle Corporation Confidential - For Oracle internal use only Page 3 of 71
11 Appendix B Important Changes for Tax Partners between EBS R12 and Fusion ...........................62
12 Appendix C Recommended Configuration ......................................................................................63
13 Appendix D Document Types ...........................................................................................................64
14 Appendix D Tax Partner Integration Validation ..............................................................................65
15 Appendix E Running the Fusion Tax Content Upload Program ......................................................67






Introduction Oracle Corporation Confidential - For Oracle internal use only Page 4 of 71
1 Introduction
This document is intended for the tax partner integrators to build integration of a third party transaction
(indirect) tax calculation application with Oracle Fusion Tax. Oracle Fusion Tax provides a set of tax interfaces
to enable tax partner agnostic integration. Tax partners services/API must conform to the tax interfaces
described in this document.

The integration described in this document, with Fusion Tax, acts as a gateway to all Order-to-Cash
applications integrated for tax calculation.


Configuring Fusion Tax for Partner Integration Oracle Corporation Confidential - For Oracle internal use only Page 5 of 71
2 Configuring Fusion Tax for Partner Integration

The objective is to keep tax configuration in the tax partner application so that users are required to configure
taxes at one place. However, the integration with tax partners does require a minimal configuration of Fusion
Tax. In order to maintain referential integrity of mandatory attributes of a tax line, following configuration
must be done by users in Fusion Tax.

Tax Regime Users must create a tax regime for which tax partner services would to be used for tax
calculation. The Regime level can either be Country or Tax Zone. When using regime at Tax Zone level,
only a tax zone with the boundary as World must be used. Tax partner API is called once for a regime.

So, if a single tax partner API can calculate taxes of United States, Canada and Mexico, define a tax regime
for a tax zone comprising of United States, Canada and Mexico. If a transaction involves any one or more
of these countries, tax partner API would be invoked just once to calculate applicable taxes of all of the
countries in the zone.

Finally, when using the Fusion Tax Content Upload Program to upload a tax partner content file, it is
important to create a tax regime with a Start Date = 1/1/51 (January 1, 1951) or earlier to ensure that
there are no conflicts with specific tax partner content start dates. In practice, this consideration is critical
when uploading a tax partner content file for the United States.

Tax Users must create all the taxes of the tax regime. There can be more than one tax for a tax regime.
Tax accounts must be defined for each tax for general ledger accounting. These accounts are copied from
the tax to the tax jurisdictions.

Tax Status Users must create at least one tax status for each tax. Each tax must have one default tax
status.

Tax Partner Party Create tax partner as a party as explained in the Tax Partner Party Creation &
Registration Section. This should be done as an automatic installation step in partner installation process.

Tax Jurisdiction Users must create at least one tax jurisdiction for each tax. Alternatively, for United
States sales/use taxes, tax partners can also provide tax jurisdiction and tax rates content file for loading
in Fusion Tax. Tax accounts are copied from the tax and users are allowed to change them.

Tax Rates Define at least one tax rate code for the default tax status. Each tax status is required to have
a default tax rate code. For the default tax rate code, tax jurisdiction must be left NULL and Allow ad hoc
tax rate flag should be checked. Tax accounts are copied from the tax or tax jurisdiction and can be
changed by the user.

Tax Regime Configuration Options and Service Subscriptions Create configuration option and service
subscription for Business Units and/or Legal Entities that would be using tax partner services for tax
calculation for this regime.

Tax Content For United States sales tax, users can upload geography, tax zones, tax jurisdictions, and tax
rates from a tax partner content file. This enables partner calculated tax lines to have the same tax
jurisdiction codes and tax rate codes as returned by a tax partner application. This step for uploading a tax
partner content file can be completed only after a tax partner has been created as a party and after a tax
regime has been created for the United States. As outlined above, when using the Fusion Tax Content
Upload Program to upload a tax partner content file, it is important to create a tax regime with a Start
Date = 1/1/51 (January 1, 1951) or earlier to ensure that there are no conflicts with specific tax partner
content start dates.



Configuring Fusion Tax for Partner Integration Oracle Corporation Confidential - For Oracle internal use only Page 6 of 71


A user can elect to directly create the STATE, COUNTY, and CITY Taxes upfront in Fusion Tax prior to
executing the content upload program to allow for more detailed control of tax-level configuration
settings. In all cases in which the STATE, COUNTY, and CITY Taxes are directly created upfront in Fusion
Tax prior to executing the content upload program, please note (1) all three taxes must be created using
the Global Configuration Owner to prevent the creation of duplicate taxes downstream by the content
upload program and (2) none of the taxes should be enabled for either Simulation or Transactions until a
user completely understands the impacts to tax-level configuration settings (i.e. some tax-level
configuration settings can only be changed when the taxes are not enabled for either Simulation or
Transactions, whereas other tax-level configuration settings can still be changed as long as taxes are only
enabled for Simulation, but not enabled for Transactions).

If a user does not create STATE, COUNTY or CITY taxes for the tax regime upfront in Fusion Tax prior to
executing the content upload program, the content upload program will automatically create these three
taxes using the Global Configuration Owner and specific tax-level configuration settings (ex. specific Tax
Controls Functionality Options, Tax Accounts Creation Methods, Tax Rule Defaults, etc.). The content
upload program also creates three default tax status codes as STANDARD for each of these three taxes.
Finally, it also creates four default tax rate codes for each default tax status for storing sales, use, lease,
and rental tax rates.

Steps to Run Content Upload Program
o Please reference Appendix E for the detailed steps in running the Fusion Tax
Configuration Content Upload Program for different Fusion Applications Releases.
o On Premise and Cloud Deployment considerations are also outlined in Appendix E.

Fusion Functional Setup Manager lets a user uncheck the features that are not to be configured for a tax
regime. This presents user with a list of minimal tasks required. Following features can be optionally turned off
for a tax regime -

Party Fiscal Classifications
Legal Fiscal Classifications
Product Fiscal Classifications
Product Category Classifications
Transaction Business Categories
Transaction Fiscal Classifications
Document Fiscal Classifications
Intended Use Fiscal Classifications
User-Defined Fiscal Classifications
Multiple Tax Jurisdictions
Tax Exemptions
Tax Rate Exceptions
Tax Recovery
Tax Registration Statuses
Offset Taxes

Offset Taxes, Tax Rate Exceptions, and Tax Recovery must not be configured when using a tax partner. Tax
Exemptions should optionally be configured, only if using Vertex Inc. Q-Series or ADP-Taxware SUT
applications. If a tax partner decides to leverage any other feature listed above, tax partner must explain its
usage to the Fusion customers via tax partner documentation.



Tax Partner APIs Integration Overview Oracle Corporation Confidential - For Oracle internal use only Page 7 of 71
3 Tax Partner APIs Integration Overview
Tax Partners integrate with Fusion applications through Fusion Tax. Fusion Tax has encapsulated all
transaction events into three API calls to the tax partners.

The diagram below shows a typical tax calculation/re-calculation and tax amount update flow for a Fusion
Receivables transaction. This diagram explains the interaction between Fusion Receivables, Fusion Tax and a
tax partner.
Tax Partner APIs Integration Overview Oracle Corporation Confidential - For Oracle internal use only Page 8 of 71



























































No
Yes
User enters or updates a
Transaction in Fusion
Receivables
Invoke a Fusion Tax
Integration API


Determine Applicable
Tax Regimes
Determine Applicable
Tax Regimes
Is it a Tax Partner
Subscribed Tax
Regime?
Invoke User Extensible
APIs
Continue with Fusion
Tax Processing
Invoke Tax Partners
Tax Calculation API
Populate Mandatory Tax
Lines Attributes
Store Tax Lines in Fusion
Tax Repository
Store Tax Lines in Fusion
Receivables
Store Tax Lines in Fusion
Receivables
User overrides Tax
Amount in Fusion
Receivables
Invoke a Fusion Tax
Integration API
Invoke Tax Partners
Tax Synchronization API

Store Tax Lines in Fusion
Tax Repository
Store Tax Lines in Fusion
Receivables
Tax Partner APIs Integration Overview Oracle Corporation Confidential - For Oracle internal use only Page 9 of 71

Some other common scenarios are

- Update of a transaction line attribute that does not re-require tax re-calculation e.g. transaction_number
- Deletion of a transaction
- Entry of a manual tax line
- Entry of a tax only invoice
- Successful validation of a transaction

Next section provides details of the three APIs tax partners are required to provide and how these APIs handle
various transaction events (scenarios).

Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 10 of 71
4 Tax Partner APIs

Following three PL/SQL APIs are to be provided by a tax partner adhering to the parameters specified by
Fusion Tax. The API names can be anything as long as the specification of the API is same as described here.

Tax Calculation
Tax Synchronization
Global Document Update

Fusion Tax calls a tax partners at transaction level. All transaction lines requiring tax handling for a transaction
are passed in a single call.

Tax partners can calculate taxes for multiple countries in a single call if a tax regime is defined at a Tax Zone
level and a partner API is capable of handling multiple countries in a single API call.
4.1 Tax Calculation API
This API is used to calculate and re-calculate transaction taxes for manually entered and imported transactions
with or without tax lines.

Following are the parameters for this API.

Parameter Usage Data Type Description
Currencies
Table
IN OUT
zx_tax_partner_pkg.
tax_currencies_tbl_type
PL/SQL collection for passing transaction to tax
currency exchange rate information when
transaction currency is not same as tax currency.
It is also used for receiving the precision for tax
currency applied by the tax partner for rounding
the tax amounts in tax currency.
Resultant Tax
Lines
OUT
zx_tax_partner_pkg.
tax_lines_tbl_type
PL/SQL collection for retuning tax lines
determined by the tax partner API.
Error Status OUT VARCHAR2
API Return Status. The possible Values are:
Success S,
Error - E,
Unexpected error - U
Error / Debug
Messages
OUT
zx_tax_partner_pkg.
messages_tbl_type
PL/SQL collection for retuning error and/or
debug messages.
For a detailed description of zx_tax_partner_pkg.tax_currencies_tbl_type,
zx_tax_partner_pkg.tax_lines_tbl_type, and zx_tax_partner_pkg.messages_tbl_type data types, refer to
Appendix A.
The transaction header and lines details are available through ZX_O2C_CALC_TXN_INPUT_V view. For
imported transactions, the imported tax lines are available through ZX_IMPORT_TAX_LINES_INPUT_V view.
These views are also described in Appendix A. Few critical attributes of ZX_O2C_CALC_TXN_INPUT_V are
discussed below.
Transaction (Document) Level Actions
o QUOTE Transaction is being sent for tax quote. This transaction is not supposed to be
recorded in tax partners repository.
Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 11 of 71
o CREATE Transaction is being sent for tax calculation and recording in tax partners
repository first time.
o UPDATE A transaction, already stored in tax partner repository, is being sent for re-
calculation of taxes. Transaction lines may or may not have changed.
Line Level Actions
Following table explains the valid line level actions in conjunction with transaction level actions.
Document
Level Action
Line Level Action Business Scenario
Example
Expected behavior by Tax
Partner
CREATE
CREATE Create new
transaction line.
Calculate taxes for the
transaction line; Record
the transaction line and
calculated tax lines in the
repository.
CREATE_WITH_TAX Import transaction
line with taxes.
Record associated
imported tax lines as is.
QUOTE Request a tax
estimate for a
transaction line.
Calculate taxes for the
transaction line. Do not
record the transaction line
and tax lines in the
repository. A tax
calculation call may have
some transaction lines with
QUOTE line level action
while other transaction
lines with some other line
level actions.
RECORD_WITH_NO_TAX Fusion Receivables
lets a user credit
transaction lines
only without
requiring
calculation of tax.
Do not calculate taxes on
the transaction line. Only
record the transaction line
information in the
repository.
LINE_INFO_TAX_ONLY User enters a tax
only line without a
transaction line. A
dummy
transaction line
with a tax line is
created.
Store dummy transaction
line as is without tax
calculation. For imported
transactions, a tax line is
also sent for recording as
is.

For manually entered
invoices, first a call is made
to store transaction line as
is. A subsequent
synchronize call would
synchronize the tax line.
UPDATE
CREATE Create a new line
transaction line in
an existing
transaction.
Calculate taxes for the
newly added transaction
line. Record transaction
line and calculated tax lines
in the repository.
Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 12 of 71
UPDATE Update a
transaction header
or a transaction
line attributes that
have tax
implications.
Recalculate taxes for the
changed transaction line.
Record the transaction line
and calculated tax lines in
the repository.
DELETE Delete a
transaction line.
Physically delete the
transaction line and
associated tax lines from
the repository.
QUOTE Request a tax
estimate for a
transaction line.
Calculate taxes for the
transaction line. Do not
record the transaction line
and tax lines in the
repository. A tax
calculation call may have
some transaction lines with
QUOTE line level action
while other transaction
lines with some other line
level actions.
SYNCHRONIZE Update a
transaction header
or a transaction
line attributes that
does not require
tax re-calculation.
Do not recalculate taxes on
the changed transaction
line. Record the changes to
the transaction line in the
repository.
LINE_INFO_TAX_ONLY User enters a tax
only line without a
transaction line. A
dummy
transaction line
with a tax line is
created.
Store dummy transaction
line as is without tax
calculation.

A subsequent synchronize
call would synchronize the
tax line.
QUOTE
N/A User enters a sales
order.
Calculate taxes for all the
transaction lines. Do not
record transaction lines
and tax information in the
repository.
Max Tax Handling
Tax Partners may support transaction header or transaction line level max tax or threshold. If a
transaction header level max tax is incurred on a transaction, the tax partner API is expected to
communicate it back to Fusion Tax by setting the attribute threshold indicator flag to Y on all
tax lines for that tax.
Exemptions and Exceptions Handling
Exemptions or exceptions must be configured in the tax partner software.
Fusion applications allow users to enter exemption certificate number and exemption reason on
a transaction line if a user wants to enforce a specific exemption certificate. User can type any
Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 13 of 71

exemption certificate number or select an existing exemption certificate number using a List of
Values. In order to get the List of Values, the exemptions must also be defined in Fusion Tax.
Tax partners should perform validation of the exemption certificate number, check existence
and/or create a new exemption certificate number entered by the user.
Optionally, one more attribute, called exemption_control_flag, can also be passed on a
transaction line. Following table shows the possible values of this flag and its intended behavior.
Value Meaning Intended Behavior
R Required Tax should be determined, ignoring the exemptions
defined.
S Standard Taxes are determined taking into account any
exemptions that are configured in the tax partner
application.
E Exempt This option is accompanied by Exemption Certificate
and Exempt Reason Code values. Exemption certificate
specified on the transaction line must be applied. If the
exemption certificate is not defined in the tax partner
application, 100% exemption should be applied.
Inclusive Taxes Handling
Transaction line attribute Line Amount Includes Tax Flag informs tax partner API if tax amount
is already included in the transaction line amount. This attribute indicates whether all taxes (i.e.
both inclusive and exclusive) are included in the transaction line amount or only inclusive taxes
are included in the transaction line amount or no taxes are included in the transaction line
amount.
There is another attribute called Other Inclusive Tax Amount passed to the tax partner API. This
attribute is populated only if the value of Line Amount Includes Tax Flag is Only Inclusive Taxes
are Included. This attribute contains the total included tax amount for one or more taxes that
are not calculated by the tax partner, but included in the line amount.
On the inclusive tax lines calculated by the tax partners, Inclusive Tax Line Flag must be set to
Y.
Rounding
For converting tax amounts to one or more reporting currencies, Fusion Tax uses unrounded
transaction currency tax amounts. Tax partner API must return both rounded and un-rounded tax
amounts in the transaction currency.
Partners should advise mutual customer to configure same or more precise rounding precision in
Fusion Tax than in partner application. By doing so, Fusion Tax rounding process would not do
further rounding on partner calculated rounded tax amounts.
Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 14 of 71
4.2 Tax Synchronization API
This API is used to update information in the tax partner repository for the transaction line attributes that do
not influence tax calculation, but are used in tax reports. Another use of this API is to synchronize the tax
partner repository for the tax amount overrides made in Fusion applications.
Tax partner API can return the changed effective tax rate and/or taxable basis for the overridden tax lines as a
result of tax lines synchronization.
Following are the parameters for this API.
Parameter Usage Data Type Description
Resultant
Synchronized
Tax Lines
OUT
zx_tax_partner_pkg.
output_sync_tax_lines_tbl_type
PL/SQL collection for returning
synchronized tax lines back to Fusion
Tax. Tax partner API may update
effective tax rate and/or taxable
basis.

The parameter value is expected to
be NULL if synchronization is for
transaction attributes only.
Error Status OUT VARCHAR2
API Return Status. The possible
Values are:
Success S,
Error - E,
Unexpected error - U
Error / Debug
Messages
OUT
zx_tax_partner_pkg.
messages_tbl_type
PL/SQL collection for returning error
and/or debug messages.
For a detailed description of zx_tax_partner_pkg.output_sync_tax_lines_tbl_type and
zx_tax_partner_pkg.messages_tbl_type data types, refer to Appendix A.
The transaction specific synchronization inputs for this API are available through ZX_SYNC_HDR_INPUT_V and
ZX_SYNC_LINES_INPUT_V views. The tax line specific synchronization inputs for this tax API are available
through ZX_SYNC_TAX_LINES_INPUT_V view. These views are also described in Appendix A.
Transaction (Document) Level Actions
Document Level Action Business Scenario Example Expected Behavior by Tax Partner
SYNCHRONIZE_HEADER_ONLY Update one or more
reporting only attributes of
the transaction header,
which does not require tax
re-calculation.
Do not recalculate taxes for the
changed transaction. Record changes
to transaction header information in
the repository.
Reporting-only attributes at the
transaction header level are -
Transaction Number
Transaction Description
Document Sequence Value
Transaction Due Date
Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 15 of 71
SYNCHRONIZE_TRX_LINES Update one or more
reporting only attributes of
a transaction line, which
does not require tax re-
calculation.
Do not recalculate taxes on the
changed transaction line. Record the
changes to transaction line
information in the repository.
Reporting-only attributes at the
transaction line level are
Transaction Line Description
Product Description
SYNCHRONIZE_TAX_LINES User updates tax amount
or manually enters one or
more tax lines.
Manual Tax line that is not
associated with any
transaction line is referred
as tax only line and is
identified by setting Tax
Only Line Flag attribute to
Y on the tax line.

Do not recalculate taxes for the
transaction. Record changes to the
tax line in the repository. Optionally,
determine effective tax rate and/or
effective taxable basis for the
changed tax lines.

In certain situations, Fusion Tax does
call tax partners for tax re-calculation
even when no transaction line
attribute has changed. Tax partner
must ensure that previously user
entered/ overridden tax amount are
not changed during such calls.
Tax Only Invoice Handling
A tax only invoice comprises of tax only lines. There is a dummy transaction line created for such
an invoice. For imported transactions, the dummy transaction line with the line level action
LINE_INFO_TAX_ONLY is passed and the associated tax only line is also passed for the dummy
line. For manually entered transactions, first a dummy transaction line with the line level action
as LINE_INFO_TAX_ONLY is passed through Tax Calculation API. Tax partner is expected to simply
store the dummy transaction line at this time. Subsequently, another call is made using tax
synchronization API, to store the tax only line associated with the dummy transaction line in the
tax partners repository.
4.3 Global Document Update API
This API handles transaction level actions.
Following are the parameters for this API.
Parameter Usage Data Type Description
Transaction Record IN
zx_tax_partner_pkg.
trx_rec_type
Identifies transaction and the transaction
level action on the transaction.
Error Status OUT VARCHAR2
API Return Status. The possible Values are:
Success S,
Error - E,
Unexpected error - U
Error / Debug
Messages
OUT
zx_tax_partner_pkg.
messages_tbl_type
PL/SQL collection for returning error and/or
debug messages.
Tax Partner APIs Oracle Corporation Confidential - For Oracle internal use only Page 16 of 71

For a detailed description of zx_tax_partner_pkg.trx_rec_type and
zx_tax_partner_pkg.messages_tbl_type data types, refer to Appendix A.
Transaction (Document) Level Actions
Transaction Level
Action
Expected Behavior by Tax Partner
DELETE Physically delete transaction lines and tax lines
FREEZE_FOR_TAX Mark the transaction as ready to report
UNFREEZE_FOR_TAX If the transaction is not yet reported, then mark it as not ready to report. If
it is already reported, then return an error to indicate that the unfreeze
process is not successful.
Partner Calculated Tax Lines Processing by Fusion Tax Oracle Corporation Confidential - For Oracle internal use only Page 17 of 71
5 Partner Calculated Tax Lines Processing by Fusion Tax
Tax partner calculated tax lines are validated before storing in Fusion Tax repository. If the value of a
mandatory attribute of a tax line is invalid but can be replaced by a default value, a message is inserted in the
debug log file; otherwise an error is raised to the user along with inserting the cause of the error in the debug
log file.
Following attribute values are defaulted by Fusion Tax if not correctly populated by tax partner in
tax_lines_tbl_type.
TAX_STATUS_CODE Populated with tax status code marked as a default tax status code.
JURISDICTION_CODE Populated with the jurisdiction code derived based on the tax regime, tax and situs. If
not found, jurisdiction_code is stored as NULL.
TAX_RATE_CODE Populated with tax rate code for the tax_status_code with no associated
tax_jurisdiction_code.
Default accounting code combination for tax liability account is taken from the source tax jurisdiction first. If
the tax has no associated source tax, then it is taken from the tax jurisdiction configuration. If it is not
configured at tax jurisdiction level then it is taken from tax rate configuration. Users can decide to ignore
default accounting code combination value by defining Sub-Ledger Accounting rules to derive accounting code
combinations.
Tax Partner Repository Consistency Check Oracle Corporation Confidential - For Oracle internal use only Page 18 of 71
6 Tax Partner Repository Consistency Check
Tax partners must check consistency of transaction and tax lines in their repository with Fusion Receivables
and Fusion Tax. There may be situations such as user session timeout, system crash or unexpected error that
may result in not committing a transaction in Fusion after a tax partner API has been successfully called. If the
tax partner API has already committed the transaction in tax partner repository, there would be inconsistency
between Fusion Applications and Tax Partner repository. Tax Partner must provide scripts to the customers to
perform data consistency check and cleanup tax partner repository periodically or at least prior to generating
tax returns.

Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 19 of 71
7 Tax Partner Party Creation & Registration

A tax partner must be created and registered as a party in Oracle Fusion Applications anytime the partner
provides a data content file and/or provides a transaction tax calculation software application for use with
Fusion. For tax partners whose metadata has been upgraded from Oracle E-Business Suite to Oracle Fusion
Applications, such tax partners may already exist as a party in Oracle Fusion Applications as a result of the
upgrade process.

At the time of initial deployment, the tax partner installation process or project deployment process should
create and register the tax partner as a party in Fusion if such a record does not already exist.

The applicable steps will depend upon the specific type of Oracle Fusion Applications deployment and the
Oracle Fusion Applications Release involved.

Oracle Fusion On Premise Deployments: Required Steps for Utilizing Tax Partner Content and/or Services

Case 1 On Premise Deployments using Oracle Fusion Releases 1 through 4

For all Oracle Fusion on premise deployments in which tax partner content, tax partner calculation services, or
both tax partner content and calculation services will be utilized, tax partner party creation and registration is
performed using a standard PL/SQL API.

The standard Oracle API, ZX_REGISTER_TAX_PARTNER.register_tax_partner, allows the creation and
registration of a tax partner as a party in Oracle Fusion Applications.

To accomplish this task for Oracle Fusion on premise deployments using Fusion Releases 1 through 4, tax
partners will be specifically responsible for providing the script below to all of their applicable clients upfront
that will properly invoke a call to the standard Oracle API ZX_REGISTER_TAX_PARTNER.register_tax_partner to
create and register the tax partner as a party as outlined in the sample calling syntax below:

DECLARE
x_err_message VARCHAR2(100);
x_return_status VARCHAR2(10);
BEGIN
ZX_REGISTER_TAX_PARTNER.register_tax_partner
(p_party_name => 'Partner Name',
p_provider_type_code => 'Provider Type',
x_err_message => x_err_message,
x_return_status => x_return_status);
IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
DBMS_OUTPUT.put_line('Error: ' || x_err_message);
ELSE
DBMS_OUTPUT.put_line('Party Created successfully');
END IF;
END;
/
COMMIT;
EXIT;







Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 20 of 71


In the API calling syntax outlined above, the tax partner must decide how to populate the Partner Name and
Provider Type API Input Parameters based on an individual clients tax deployment needs as well as the
following attribute table:

Sequence Attribute Data Type Required Description
1 Partner Name STRING Y Company name of the tax partner.
2 Provider Type STRING Y
The three possible values are BOTH,
CONTENT, and SERVICES.

CONTENT Tax partner provides only
tax content for loading into Fusion Tax.

SERVICES Tax partner provides only
tax calculation services for Fusion
customers.

BOTH Tax partner provides both tax
content and tax calculation services for
Fusion customers.

Case 2 On Premise Deployments using Oracle Fusion Release 5 and Subsequent Releases

Similar to Case 1 outlined above, for all Oracle Fusion on premise deployments in which tax partner content,
tax partner calculation services, or both tax partner content and calculation services will be utilized, tax
partner party creation and registration is performed using the standard Oracle API,
ZX_REGISTER_TAX_PARTNER.register_tax_partner.

However, in on premise deployment situations which involve Oracle Fusion Release 5 and subsequent
Releases, the API calling script will be different in structure. Tax partners will be specifically responsible for
providing a script to all of their applicable clients upfront that will properly invoke a call to the standard Oracle
API ZX_REGISTER_TAX_PARTNER.register_tax_partner to create and register the tax partner as a party as
outlined in the sample calling syntax below for on premise deployments which involve Oracle Fusion Release 5
and subsequent releases:

DECLARE
x_err_message VARCHAR2(100);
x_return_status VARCHAR2(10);
x_party_tax_profile_id NUMBER;
BEGIN
ZX_REGISTER_TAX_PARTNER.register_tax_partner
(p_party_name => 'Partner Name',
p_party_code => 'Partner Code',
p_provider_type_code => 'Provider Type',
x_party_tax_profile_id => x_party_tax_profile_id,
x_err_message => x_err_message,
x_return_status => x_return_status);
IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
DBMS_OUTPUT.put_line('Error: ' || x_err_message);
ELSE
DBMS_OUTPUT.put_line('Party Created successfully');
END IF;
END;
/
Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 21 of 71
COMMIT;
EXIT;

In the API calling syntax outlined above, the tax partner must decide how to populate the Partner Name and
Provider Type API Input Parameters based on an individual clients tax deployment needs as well as the
following attribute table:

Sequence Attribute Data Type Required Description
1 Partner Name STRING Y Company name of the tax partner.
2 Partner Code STRING Y
Company name of the tax partner. In
practice, the Partner Name and Partner
Code can be initialized as the same value.
3 Provider Type STRING Y
The three possible values are BOTH,
CONTENT, and SERVICES.

CONTENT Tax partner provides only
tax content for loading into Fusion Tax.

SERVICES Tax partner provides only
tax calculation services for Fusion
customers.

BOTH Tax partner provides both tax
content and tax calculation services for
Fusion customers.

Oracle Fusion Cloud Deployments: Required Steps for Utilizing Tax Partner Content Only
For Oracle Fusion cloud deployments in which only tax partner content will be utilized, tax partner party
creation and registration is performed using a two-step sequential process as outlined below. This approach is
valid for all Oracle Fusion cloud deployments that are available with Fusion Applications Release 5 and
subsequent releases.
1. Creation of a standard lookup code value within the ZX_SERVICE_PROVIDER Lookup Type
a. The existing ZX_SERVICE_PROVIDER Lookup Type is accessible by:
Selecting Navigator > Tools > Setup and Maintenance.
Entering Manage Standard Lookups as the Name in the All Tasks UI Tab.
Selecting the Search Button and the Go to Task Icon for Manage Standard Lookups in sequence.
Entering ZX_SERVICE_PROVIDER as the Lookup Type before selecting Search:






Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 22 of 71


b. After retrieving the existing ZX_SERVICE_PROVIDER Lookup Type by selecting Search as outlined above:
Enter a Lookup Code for a tax partner.
Check the Enabled Box.
Enter a Start Date.
Enter a Meaning and Description for a tax partner name.
Save the information entered. A sample illustration is provided below:

2. Execution of the tax data upload process
Oracle Fusion Cloud clients will utilize the Import Tax Configuration Content Job in order to initiate the Fusion
Tax data content upload of a particular tax partner data file. The Import Tax Configuration Content Job is
accessed using the Scheduled Processes User Interface Page from the Tools group in the Fusion Navigator
Menu.
Please reference Appendix E Running the Fusion Tax Content Upload Program for all of the detailed
navigation and steps on how to execute the tax content upload.



Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 23 of 71

Fusion Cloud Deployments: Required Steps for Utilizing Tax Partner Services Only or Content and Services

For all Oracle Fusion cloud deployments in which only tax partner calculation services or both tax partner
content and calculation services will be utilized, tax partner party creation and registration is performed using
an inline create option available within the Tax Regime Service Subscriptions User Interface (UI). This
approach is valid for all Oracle Fusion cloud deployments that are available with Fusion Applications Release 5
and subsequent releases. The procedures for tax partner party creation and registration are outlined below.
1. Using the Navigator > Tools > Setup and Maintenance path, perform a task name search for Manage Tax
Regimes:

2. Select the Go to Task Icon for Manage Tax Regimes to retrieve the Manage Tax Regimes UI:








Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 24 of 71

3. Create an appropriate tax regime based on client requirements:

4. Select the Service Subscriptions UI Tab and then select the Add a New Record Icon (Green Plus Sign):




Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 25 of 71

5. With the exception of the Service Provider, enter in all service subscription information:

6. Use the drop-down listing for the Service Provider to select the inline Create option assuming the specific
Service Provider has not been previously created:




Tax Partner Party Creation & Registration Oracle Corporation Confidential - For Oracle internal use only Page 26 of 71

7. Enter the required information for the Create Service Provider UI (Note: The Type Field may either be
populated with a value of Both or Services. A value of Both indicates that the tax partner will be used for both
tax content and tax calculation services whereas a value of Services indicates that the tax partner will only be
used for tax calculation services):

8. Select Save and Close from the Create Service Provider UI, which will result in navigation back to the Create
Tax Regime UI as shown below. (Note: Once the final review of the new tax regime has been completed, you
may select Save and Close on the Create Tax Regime UI as well):

Tax Partner Installation & Integration Oracle Corporation Confidential - For Oracle internal use only Page 27 of 71
8 Tax Partner Installation & Integration

Tax partner integration with Fusion Tax is a three-step process:

1. Create and register tax partner as a party
2. Plug-in tax partner API calls in a Fusion Tax pl/sql procedure
3. Optionally, create user extensible procedures

Since partner objects are to be installed in partner schema, execute permission on tax partner APIs must be
granted to Fusion schema.
8.1 Create and Register Tax Partner as a Party

Please reference the Tax Partner Party Creation & Registration Section for specific steps.

8.2 Tax Partner APIs Plug-in
Calls to tax partner APIs for tax calculation, tax synchronization, and global document update need to be
placed in the pl/sql procedure ZX_PTNR_SRVC_INTGRTN_PKG.invoke_third_party_interface. This procedure is
shipped with a sample commented code for guidance. As a post tax partner installation step, implementation
consultants should copy the commented code and modify the copied code by changing the partner name and
regime code.

-- Following is the sample code that is written for Vertex Q Series and Taxware SUT Integration
-- Implementation consultants should copy and modify this code for any other tax software
-- p_partner_name and p_tax_regime_code values would vary based on tax partner and regime
configuration


IF p_partner_name = 'Vertex Inc' THEN
IF p_tax_regime_code = <tax regime code for which service subscription is done> AND p_business_flow =
'O2C' THEN
IF p_service_type_code = 'CALCULATE_TAX' THEN

-- APIs used in Vertex Q Series
-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_VERTEX_TAX_SERVICE_PKG.calculate_tax_api
(ZX_PTNR_SRVC_INTGRTN_PKG.G_TAX_CURRENCIES_TBL, --IN
ZX_PTNR_SRVC_INTGRTN_PKG.G_TAX_LINES_RESULT_TBL, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT

IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSIF p_service_type_code = 'SYNCHRONIZE_FOR_TAX' THEN

-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
Tax Partner Installation & Integration Oracle Corporation Confidential - For Oracle internal use only Page 28 of 71
ZX_VERTEX_TAX_SERVICE_PKG.SYNCHRONIZE_VERTEX_REPOSITORY
(ZX_PTNR_SRVC_INTGRTN_PKG.G_SYNC_TAX_LINES_TBL, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSIF p_service_type_code = 'DOCUMENT_LEVEL_CHANGES' THEN

-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_VERTEX_TAX_SERVICE_PKG.GLOBAL_DOCUMENT_UPDATE
(ZX_PTNR_SRVC_INTGRTN_PKG.G_TRX_REC, --IN
ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSE
Raise InvalidServiceType;
END IF;
--ELSIF **************** Add separate code here for different Regime and Business Flow if needed*****
ELSE
Raise InvalidContextCcid;
END IF;
END IF;




IF p_partner_name = 'Adp Inc.' OR p_partner_name = 'Taxware, LP - A First Data Company' THEN
IF p_tax_regime_code = <tax regime code for which service subscription is done> AND p_business_flow =
'O2C' THEN
IF p_service_type_code = 'CALCULATE_TAX' THEN

-- APIs used in ADP-Taxware SUT
-- This is an example and end users can call their own API's here as well.
-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_TAXWARE_TAX_SERVICE_PKG.calculate_tax_api
(ZX_PTNR_SRVC_INTGRTN_PKG.G_TAX_CURRENCIES_TBL, --IN
ZX_PTNR_SRVC_INTGRTN_PKG.G_TAX_LINES_RESULT_TBL, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT

IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;
Tax Partner Installation & Integration Oracle Corporation Confidential - For Oracle internal use only Page 29 of 71

ELSIF p_service_type_code = 'SYNCHRONIZE_FOR_TAX' THEN

-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_TAXWARE_TAX_SERVICE_PKG.SYNCHRONIZE_TAXWARE_REPOSITORY
(ZX_PTNR_SRVC_INTGRTN_PKG.G_SYNC_TAX_LINES_TBL, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSIF p_service_type_code = 'DOCUMENT_LEVEL_CHANGES' THEN

-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_TAXWARE_TAX_SERVICE_PKG.GLOBAL_DOCUMENT_UPDATE
(ZX_PTNR_SRVC_INTGRTN_PKG.G_TRX_REC, --IN
ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSE
Raise InvalidServiceType;
END IF;
--ELSIF **************** Add code here for more tax regimes if needed************
ELSE
Raise InvalidContextCcid;
END IF;
END IF;

IMPORTANT NOTE: When no tax partner application is implemented, this procedure raises an exception
RAISE CODE_NOT_GENERATED;. Tax partners or implementers should comment this line of code after
inserting a call to a tax partner application. In practice, failure to comment out this exception can result in
transaction runtime errors.



Tax Partner Installation & Integration Oracle Corporation Confidential - For Oracle internal use only Page 30 of 71
8.3 User Extensible Procedures
For tax partner integration, Fusion Tax provides ninety user extensible attributes. Forty five extensible
attributes are available at transaction header level and another forty five attributes are present at transaction
line level. These attributes are not persistent in any Fusion Tax table but are available in
ZX_O2C_CALC_TXN_INPUT_V view for tax calculation purposes. The attributes are
header_char1 to header_char30
header_numeric1 to header_numeric10
header_date1 to header_date5

line_char1 to line_char30
line_numeric1 to line_numeric10
line_date1 to line_date5
Header extensible attributes are also available in ZX_SYNC_HDR_INPUT_V and lines extensible attributes are
available in ZX_SYNC_LINES_INPUT_V for synchronizing the header and line attributes with the tax partner
repository, if a tax partner wishes to use these attributes for tax reporting.
If a tax partner decides to use extensible attributes, tax partner must explain how these attributes are used by
tax partner application. It should be in tax partner documentation for the mutual customers. Users must know
the sources for these attributes in the Fusion Applications as users are expected to populate the value in those
source attributes.
These attributes are populated by user procedures. Package and procedure name is decided by the user. If the
logic to derive values of these attributes varies by business unit/first party legal entity, users can create
separate user procedures for each business unit/first party legal entity or can have conditional logic in one
procedure itself.
Calls to user extensible procedures must be placed in ZX_USER_EXT_PKG.invoke_third_party_interface
procedure. This procedure is shipped with a sample commented code for guidance. Implementation
consultants should copy the commented code and modify the copied code by changing the partner name and
regime code.

-- Following is the sample code that is written for Vertex Q Series and Taxware SUT Integration
-- Implementation consultants should copy and modify this code for any other tax software
-- p_partner_name and p_tax_regime_code values would vary based on tax partner and regime
configuration

-- If you write separate procedures for different Business Units/Legal Entities,
-- you would need to add conditions for checking Business Unit/Legal Entity in the IF statement
-- You can use as many OR clauses as needed as per your situation

IF p_partner_name = 'Vertex Inc' AND ((p_bu_or_le_name = <enter business unit or legal entity name> AND
p_party_type = <enter OU for Business Unit and FIRST_PARTY for Legal Entity>) OR
(p_bu_or_le_name = < enter business unit or legal entity name> AND
p_party_type = <enter OU for Business Unit and FIRST_PARTY for Legal Entity>) OR )
THEN
IF p_tax_regime_code = <tax regime code for which service subscription is done> AND p_business_flow =
'O2C' THEN
IF p_service_type_code = 'DERIVE_HDR_ATTRS' THEN

-- APIs used in Vertex Q Series
-- ***************Replace with your package.procedure
name************************************--

Tax Partner Installation & Integration Oracle Corporation Confidential - For Oracle internal use only Page 31 of 71
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_VTX_USER_PKG.derive_hdr_ext_attr
(ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSIF p_service_type_code = 'DERIVE_LINE_ATTRS' THEN

-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_VTX_USER_PKG.derive_line_ext_attr
(ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS, --OUT
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL); --OUT
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSE
Raise InvalidServiceType;
END IF;
--ELSIF **************** Add separate code here for different Regime and Business Flow if needed
ELSE
Raise InvalidContextCcid;
END IF;
END IF;
IF (p_partner_name = 'Adp Inc.' OR p_partner_name = 'Taxware, LP - A First Data Company') AND
((p_bu_or_le_name = <enter business unit or legal entity name> AND
p_party_type = <enter OU for Business Unit and FIRST_PARTY for Legal Entity>) OR
(p_bu_or_le_name = < enter business unit or legal entity name> AND p_party_type
= <enter OU for Business Unit and FIRST_PARTY for Legal Entity>) OR )
THEN

IF p_tax_regime_code = <tax regime code for which service subscription is done> AND p_business_flow =
'O2C' THEN
IF p_service_type_code = 'DERIVE_HDR_ATTRS' THEN

-- APIs used in Taxware SUT
-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_TAXWARE_USER_PKG.derive_hdr_ext_attr
(ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS,
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL);
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSIF p_service_type_code = 'DERIVE_LINE_ATTRS' THEN

Tax Partner Installation & Integration Oracle Corporation Confidential - For Oracle internal use only Page 32 of 71

-- ***************Replace with your package.procedure
name************************************--
-- ***************Ensure that OUT parameters are as per API
specification**************************--
ZX_TAXWARE_USER_PKG.derive_line_ext_attr
(ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS,
ZX_PTNR_SRVC_INTGRTN_PKG.G_MESSAGES_TBL);
IF ZX_PTNR_SRVC_INTGRTN_PKG.G_ERROR_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
x_return_status := FND_API.G_RET_STS_ERROR;
RETURN;
END IF;

ELSE
Raise InvalidServiceType;
END IF;
--ELSIF **************** Add code here for more tax regimes if needed***************
ELSE
Raise InvalidContextCcid;
END IF;
END IF;

IMPORTANT NOTE: When no user procedure is implemented in conjunction with the deployment of a tax
partner application, this procedure raises an exception RAISE CODE_NOT_GENERATED;. In such cases, tax
partners or implementers should comment this line of code. In practice, failure to comment out this
exception can result in transaction runtime errors.


Vertex Q-Series and ADP-Taxware Sales and Use Tax (SUT) Integration Oracle Corporation Confidential - For Oracle internal use only Page 33 of 71
9 Vertex Q-Series and ADP-Taxware Sales and Use Tax (SUT) Integration

In EBS R12, Oracle pre-packaged Vertex Inc. Q-Series and ADP-Taxware SUT zip files and provided a shell script
to unzip and install partner software. This process installed database objects only. Customers had to install
Vertex Inc./ADP-Taxware client software using Vertex Inc./ADP-Taxware installation process.

In Fusion, Vertex Inc. Q-Series and ADP-Taxware SUT software are not shipped as zip files. Customers must get
both backend and client software from Vertex Inc./ADP-Taxware. Vertex Inc. and ADP-Taxware are responsible
for providing installation and integration manual to customers. This section explains additional steps required
for Vertex Inc. Q-Series and ADP-Taxware SUT. It is recommended that these steps are done in a script to
make installation easier for the customers. Oracle Fusion would not publish any document on Vertex Inc. Q-
Series and ADP-Taxware implementation. So, Vertex Inc. and ADP-Taxware must publish their integration
manual for mutual customers.

Note that for all other tax partner software integration other than Vertex Inc. Q-Series and ADP-Taxware SUT,
this section must be skipped.

9.1 Vertex Q-Series
1. After creating Vertex Inc. as a party as per the instructions given in Tax Partner Installation &
Integration section and after installing Q-Series software, re-create following synonyms

CONNECT <Fusion_Schema User>/<Password>
CREATE OR REPLACE SYNONYM ZX_TAX_VERTEX_QSU FOR <Vertex Schema>.QSU;
CREATE OR REPLACE SYNONYM ZX_TAX_VERTEX_GEO FOR <Vertex Schema>.GEO;
CREATE OR REPLACE SYNONYM ZX_TAX_VERTEX_AUDIT FOR <Vertex Schema>.REGPRERETURNSTBL;

2. Provide grants to FUSION schema on the required Q-Series objects.
3. Create index on Vertex Audit Table
CREATE INDEX <INDEX_NAME> ON REGPRERETURNSTBL (TRANSUSERAREA);
4. Vertex Inc. Q-Series APIs do not follow APIs specification described in Tax Partner APIs section of this
document. Oracle Fusion provides three wrappers APIs over Vertex Inc. Q-Series APIs to meet Oracle
specifications. Vertex Inc. can either use the same for integrating with Fusion, can change these
wrappers or can re-write Q-Series APIs as per the APIs specification.
o Tax Calculation API - ZX_VERTEX_TAX_SERVICE_PKG.CALCULATE_TAX_API
o Tax Synchronization API -
ZX_VERTEX_TAX_SERVICE_PKG.SYNCHRONIZE_VERTEX_REPOSITORY
o Global Document Update API -
ZX_VERTEX_TAX_SERVICE_PKG.GLOBAL_DOCUMENT_UPDATE
5. To invoke ZX_VERTEX_TAX_SERVICE_PKG.CALCULATE_TAX_API,
ZX_VERTEX_TAX_SERVICE_PKG.SYNCHRONIZE_VERTEX_REPOSITORY and
ZX_VERTEX_TAX_SERVICE_PKG.GLOBAL_DOCUMENT_UPDATE API wrapper APIs, modify
ZX_PTNR_SRVC_INTGRTN_PKG.invoke_third_party_interface procedure as explained in Tax Partner
Installation and Integration section.
6. Customizable functions that were made available in EBS R12 are still available in ZX_VTX_USER_PKG.
Refer Oracle E-Business Tax: Vertex Q-Series and Taxware Sales/Use Tax System Implementation
Guide, Release 12 for more information on customizable functions and explain the same in an
implementation guide for the mutual customers.







Vertex Q-Series and ADP-Taxware Sales and Use Tax (SUT) Integration Oracle Corporation Confidential - For Oracle internal use only Page 34 of 71

7. Customizable functions are called from ZX_VTX_USER_PKG.DERIVE_HDR_EXT_ATTR and
ZX_VTX_USER_PKG.DERIVE_LINE_EXT_ATTR procedures. Implementation consultant should change
ZX_USER_EXT_PKG.invoke_third_party_interface procedure to un-comment the commented code
that calls the ZX_VTX_USER_PKG.DERIVE_HDR_EXT_ATTR and ZX_VTX_USER_PKG.
DERIVE_LINE_EXT_ATTR procedures. Implementation consultant must follow instructions provided
in User Extensible Attributes section specifically p_partner_name and p_tax_regime_code values.
8. Profile options provided for Vertex Q-Series integration in EBS R12 continue to exist in Fusion.
9.2 Taxware SUT
1. After creating ADP-Taxware as a party as per the instructions given in Tax Partner Installation &
Integration section and after installing ADP-Taxware SUT software, re-create following synonyms

CONNECT <Fusion Schema User>/<Password>
CREATE OR REPLACE SYNONYM ZX_TAX_TAXWARE_010 FOR <Taxware Schema>.TAXPKG_10;
CREATE OR REPLACE SYNONYM ZX_TAX_TAXWARE_GEN FOR <Taxware Schema>.TAXPKG_GEN;
CREATE OR REPLACE SYNONYM ZX_TAX_TAXWARE_AUDIT_HEADER FOR <Taxware
Schema>.TAXAUDIT_HEADER;
CREATE OR REPLACE SYNONYM ZX_TAX_TAXWARE_AUDIT_DETAIL FOR <Taxware
Schema>.TAXAUDIT_DETAIL;
CREATE OR REPLACE SYNONYM ZX_TAX_TAXWARE_AUDIT_JURIS FOR <Taxware
Schema>.TAXAUDIT_JURIS;
CREATE OR REPLACE SYNONYM ZX_TAX_TAXWARE_AUDIT_TAX FOR <Taxware
Schema>.TAXAUDIT_TAX;
2. Provide grants to FUSION schema on the required SUT objects.
3. ADP-Taxware SUT APIs do not follow APIs specification described in Tax Partner APIs section of this
document. Oracle wrote three wrappers APIs over ADP-Taxware SUT APIs to meet Oracle
specifications. ADP-Taxware can either use the same for integrating with Fusion, can change these
wrappers or can re-write SUT APIs as per the APIs specification.
o Tax Calculation API - ZX_TAXWARE_TAX_SERVICE_PKG.CALCULATE_TAX_API
o Tax Synchronization API -
ZX_TAXWARE_TAX_SERVICE_PKG.SYNCHRONIZE_TAXWARE_REPOSITORY
o Global Document Update API -
ZX_TAXWARE_TAX_SERVICE_PKG.GLOBAL_DOCUMENT_UPDATE
4. To invoke ZX_TAXWARE_TAX_SERVICE_PKG.CALCULATE_TAX_API,
ZX_TAXWARE_TAX_SERVICE_PKG.SYNCHRONIZE_TAXWARE_REPOSITORY and
ZX_TAXWARE_TAX_SERVICE_PKG.GLOBAL_DOCUMENT_UPDATE wrapper APIs, modify
ZX_PTNR_SRVC_INTGRTN_PKG.invoke_third_party_interface procedure as explained in Tax Partner
Installation and Integration section.
5. Customizable functions that were made available in EBS R12 are still available in
ZX_TAXWARE_USER_PKG. Refer Oracle E-Business Tax: Vertex Q-Series and Taxware Sales/Use Tax
System Implementation Guide, Release 12 for more information on customizable functions and
explain the same in an implementation guide for the mutual customers.
6. Customizable functions are called from ZX_TAXWARE_USER_PKG.DERIVE_HDR_EXT_ATTR and
ZX_TAXWARE_USER_PKG.DERIVE_LINE_EXT_ATTR procedures. Implementation consultant should
change ZX_USER_EXT_PKG.invoke_third_party_interface procedure to un-comment the commented
code that calls ZX_TAXWARE_USER_PKG.DERIVE_HDR_EXT_ATTR and
ZX_TAXWARE_USER_PKG.DERIVE_LINE_EXT_ATTR procedures. Implementation consultant must
follow instructions provided in User Extensible Attributes section specifically p_partner_name and
p_tax_regime_code values.
7. Profile options provided for ADP-Taxware SUT integration in EBS R12 continue to exist in Fusion.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 35 of 71
10 Appendix A Data Types and Database Views
Transaction header, transaction line and tax lines are uniquely identified with following composite unique keys
in the data types and views explained in this section.
Transaction Header composite unique key is document_type_id and transaction_id.
Transaction Line composite unique key is document_type_id, transaction_id, transaction_line_id and
trx_level_type.
Tax Line composite unique key is document_type_id, transaction_id, transaction_line_id, trx_level_type,
country_code (represents tax regime code), tax and situs.
10.1 zx_tax_partner_pkg.messages_tbl_type
A table of this data type is used for receiving errors returned by tax partner APIs. Each error should be
returned in one of the following three contexts:
Transaction Header
Transaction Line
Tax Line
messages_tbl_type is a PL/SQL table that contains following columns:
Sequence Attribute Data Type Required Description
1 document_type_id NUMBER Y
Document type identifier. Document
type represents Sales Invoice, Credit
Memo etc. All possible values are
listed in Appendix D.
2 transaction_id NUMBER Y
Primary transaction identifier that
distinguishes a transaction/document
uniquely in the context of a document
type.
3 transaction_line_id NUMBER N
Primary transaction line identifier that
represents a transaction line uniquely
within a transaction.
4 trx_level_type VARHCAR2(30) N
Transaction level type. Possible values
are LINE, FREIGHT.

This column is only for the purposes of
uniquely identifying a transaction line.
It does not have any implications for
the tax processing.
5 country_code VARCHAR2(30) N Tax Regime Code
6 tax VARCHAR2(30) N
Represents a classification of the
charges imposed by a government
through a fiscal or tax authority. For
example, it can be STATE, COUNTY,
CITY, DISTRICT COUNTY, DISTRICT
CITY, etc.
7 situs VARCHAR2(30) N
Represents the location to which the
Tax applies. Possible values are
SHIP_TO, BILL_TO, SHIP_FROM,
BILL_FROM, POA and POO.
8 error_message_type VARCHAR2(30) Y
Represents the severity of the error
message returned by the tax partner

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 36 of 71
service. Possible values are ERROR
and INFORMATION.
9 error_message_string VARCHAR2(240) Y Error message text

10.2 zx_tax_partner_pkg.output_sync_tax_lines_tbl_type

A table of this data type is used by tax synchronization API to return effective tax rate percentage and/or
effective taxable basis determined by tax partner API for the tax lines that are being synchronized in the tax
partners repository. output_sync_tax_lines_tbl_type is a PL/SQL table of records sync_tax_lines_rec_type
having following columns:

Sequence Attribute Data Type Required Description
1 document_type_id NUMBER Y
Document type identifier. Document type
represents Sales Invoice, Credit Memo
etc. All possible values are listed in
Appendix D.
2 transaction_id NUMBER Y
Primary transaction identifier that
distinguishes a transaction/document
uniquely in the context of a document
type.
3 transaction_line_id NUMBER Y
Primary transaction line identifier that
represents a transaction line uniquely
within a transaction.
4 trx_level_type
VARHCAR2(30
)
Y
Transaction level type. Possible values are
LINE, FREIGHT.

This column is only for the purposes of
uniquely identifying a transaction line. It
does not have any implications for the tax
processing.
5 country_code
VARCHAR2(30
)
Y Tax Regime Code
6 tax
VARCHAR2(30
)
Y
Represents a classification of the charges
imposed by a government through a fiscal
or tax authority. For example, it can be
STATE, COUNTY, CITY, DISTRICT
COUNTY, DISTRICT CITY, etc.
7 situs
VARCHAR2(30
)
Y
Represents the location to which the Tax
applies. Possible values are SHIP_TO,
BILL_TO, SHIP_FROM, BILL_FROM,
POA and POO.
8 tax_rate_percentage NUMBER N
Effective tax rate percentage determined
by the tax partners synchronization API.
9 taxable_amount NUMBER N
Effective taxable amount determined by
the tax partners synchronization API.

Tax Partner API must return either tax_rate_percentage or taxable_amount or both for each output line.



Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 37 of 71
10.3 zx_tax_partner_pkg.tax_currencies_tbl_type

A table of this data type is used by tax calculation API to pass exchange rate information to the tax partner if
transaction currency is different from the tax currency. The same table is also used to receive precision
information from the tax partner for tax currency.

tax_currencies_tbl_type is of record tax_currencies_rec_type having following columns:

Sequence Attribute Data Type Required Description
1 tax VARCHAR2(30) Y
Represents a classification of the
charges imposed by a government
through a fiscal or tax authority. For
example, it can be STATE, COUNTY,
CITY, DISTRICT COUNTY, DISTRICT
CITY, etc.
2 tax_currency_code VARCHAR2(15) Y
Currency code of tax currency or
currency of the taxation country. For
example, USD represents US Dollars
and it is the currency for US Sales and
Use Tax.
3 trx_line_currency_code VARCHAR2(15) Y
Currency code of transaction line
currency.
4 exchange_rate NUMBER Y
Exchange rate between the transaction
line currency and the tax currency. Tax
partner can use an exchange rate
specified by a tax authority instead of
the exchange rate passed by Oracle. If
another exchange rate is used, tax
partner should return the exchange
rate in this attribute. The value of this
attribute is 1, if the two currencies are
the same.
5 tax_currency_precision NUMBER Y
Precision used by tax partner for
rounding the tax amounts in the tax
currency.

10.4 zx_tax_partner_pkg.tax_lines_tbl_type
A table of this data type is used by tax calculation API to receive tax lines determined by the tax partner.
tax_lines_tbl_type contains following columns:
Sequence Attribute Data Type Required Description
1. document_type_id NUMBER Y
Document type identifier.
Document type represents
Sales Invoice, Credit Memo
etc. All possible values are
listed in Appendix D.
2. transaction_id NUMBER Y
Primary transaction identifier
that distinguishes a
transaction/document
uniquely in the context of a
document type.
3. transaction_line_id NUMBER Y
Primary transaction line
identifier that represents a

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 38 of 71
transaction line uniquely
within a transaction.
4. trx_level_type VARHCAR2(30) Y
Transaction level type.
Possible values are LINE,
FREIGHT.

This column is only for the
purposes of uniquely
identifying a transaction line.
It does not have any
implications for the tax
processing.
5. country_code VARCHAR2(30) Y Tax Regime Code
6. Tax VARCHAR2(30) Y
Represents a classification of
the charges imposed by a
government through a fiscal
or tax authority. For example,
it can be STATE, COUNTY,
CITY, DISTRICT COUNTY,
DISTRICT CITY, etc.
7. Situs VARCHAR2(30) Y
Represents the location to
which the Tax applies.
Possible values are SHIP_TO,
BILL_TO, SHIP_FROM,
BILL_FROM, POA and
POO.
8. tax_jurisdiction VARCHAR2(30) N Tax Jurisdiction Code
9. tax_status_code VARCHAR2(30) N Tax status code
10. tax_rate_code VARCHAR2(30) N Tax rate code
11. tax_amount NUMBER Y
Rounded tax amount in
transaction currency.
12. unrounded_tax_amount NUMBER Y
Un-rounded tax amount in
transaction currency.
13. tax_currency_code VARCHAR2(30) Y Tax Currency
14. tax_curr_tax_amount NUMBER Y
Rounded tax amount in tax
currency.
15. tax_rate_percentage NUMBER Y
Tax rate %, which when
applied on taxable amount
gives tax amount.
16. taxable_amount NUMBER Y
Taxable amount in
transaction currency.
17. Tax_Exemption_id NUMBER N
Tax Exemption unique
identifier
18. exempt_certificate_number VARCHAR2(80)
N Tax exemption certificate
number
19. exempt_rate_modifier NUMBER N
Percentage of the original tax
rate that is exempt.
20. exempt_reason VARCHAR2(240) N Tax exemption reason
21. Exemption_reason_code VARCHAR2(30) N Exempt reason code
22. tax_only_line_flag VARCHAR2(1) N
Flag to indicate this is a tax
only line. Possible values are
Y and N. Tax partner is
expected to return the same
value as passed by E-Business
Suite during tax calculation
interface.
23. inclusive_tax_line_flag VARCHAR2(1) N Flag to indicate if this tax line

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 39 of 71
is of inclusive taxes. Possible
values are Y and N.
24. line_amt_includes_tax_flag VARCHAR2(1) N
An internal attribute to be
populated for Fusion use
only. This is needed to
enhance the overall
performance of tax
calculation interface.

Tax partners must provide
the value of this attribute
from the input transaction
line information. This value is
same for all the tax lines
associated with a transaction
line.
25. use_tax_flag VARCHAR2(1) N
For Future Use. Pass N
always.
26. user_override_flag VARCHAR2(1) N
Indicates if the tax line
calculated by the tax partner
service is overridden by the
end user. Possible values are
Y and N.
27. last_manual_entry VARCHAR2 N
Indicates which value the end
user has overridden -
whether the tax amount or
the tax rate %. Possible
values are TAX_RATE and
TAX_AMOUNT.
28. manually_entered_flag VARCHAR2(1) N
Flag to indicate if the tax line
is manually entered by the
user. Possible values are Y
and N. Please note that
user_override_flag is set
when a calculated tax line is
changed by the user, whereas
manually_entered_flag is set
when a new tax line is
created by the user.
29. registration_party_type VARCHAR2(30) N
Party type whose registration
was used for tax calculation.
SHIP_TO, BILL_TO,
SHIP_FROM, BILL_FROM,
POA and POO.
30. party_tax_reg_number VARCHAR2(50) N
Tax registration number of
the first party.
31. threshold_indicator_flag VARCHAR2(1) N
Indicates if a header level
max tax has been applied to
one or more transaction lines
during tax processing.
Possible values are Y and
N.

This value should be the same
for all tax lines of a tax.
32. Attribute_category VARCHAR2(600) N
Descriptive flexfield context
column
33. Attribute_date1 DATE N Descriptive flexfield segment
34. Attribute_date2 DATE N Descriptive flexfield segment

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 40 of 71
35. Attribute_date3 DATE N Descriptive flexfield segment
36. Attribute_date4 DATE N Descriptive flexfield segment
37. Attribute_date5 DATE N Descriptive flexfield segment
38. Attribute_number1 NUMBER N Descriptive flexfield segment
39. Attribute_number2 NUMBER N Descriptive flexfield segment
40. Attribute_number3 NUMBER N Descriptive flexfield segment
41. Attribute_number4 NUMBER N Descriptive flexfield segment
42. Attribute_number5 NUMBER N Descriptive flexfield segment
43. Attribute1 VARCHAR2(600) N Descriptive flexfield segment
44. Attribute2 VARCHAR2(600) N Descriptive flexfield segment
45. Attribute3 VARCHAR2(600) N Descriptive flexfield segment
46. Attribute4 VARCHAR2(600) N Descriptive flexfield segment
47. Attribute5 VARCHAR2(600) N Descriptive flexfield segment
48. Attribute6 VARCHAR2(600) N Descriptive flexfield segment
49. Attribute7 VARCHAR2(600) N Descriptive flexfield segment
50. Attribute8 VARCHAR2(600) N Descriptive flexfield segment
51. Attribute9 VARCHAR2(600) N Descriptive flexfield segment
52. Attribute10 VARCHAR2(600) N Descriptive flexfield segment
53. Attribute11 VARCHAR2(600) N Descriptive flexfield segment
54. Attribute12 VARCHAR2(600) N Descriptive flexfield segment
55. Attribute12 VARCHAR2(600) N Descriptive flexfield segment
56. Attribute13 VARCHAR2(600) N Descriptive flexfield segment
57. Attribute15 VARCHAR2(600) N Descriptive flexfield segment
58. Char1 VARCHAR2(600) N
User extensible attribute for
future use.
59. Char2 VARCHAR2(600) N
User extensible attribute for
future use.
60. Char3 VARCHAR2(600) N
User extensible attribute for
future use.
61. Char4 VARCHAR2(600) N
User extensible attribute for
future use.
62. Char5 VARCHAR2(600) N
User extensible attribute for
future use.
63. Char6 VARCHAR2(600) N
User extensible attribute for
future use.
64. Char7 VARCHAR2(600) N
User extensible attribute for
future use.
65. Char8 VARCHAR2(600) N
User extensible attribute for
future use.
66. Char9 VARCHAR2(600) N
User extensible attribute for
future use.
67. Char10 VARCHAR2(600) N
User extensible attribute for
future use.
68. Date1 DATE N
User extensible attribute for
future use.
69. Date2 DATE N
User extensible attribute for
future use.
70. Date3 DATE N
User extensible attribute for
future use.
71. Date4 DATE N
User extensible attribute for
future use.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 41 of 71
72. Date5 DATE N
User extensible attribute for
future use.
73. Date6 DATE N
User extensible attribute for
future use.
74. Date7 DATE N
User extensible attribute for
future use.
75. Date8 DATE N
User extensible attribute for
future use.
76. Date9 DATE N
User extensible attribute for
future use.
77. Date10 DATE N
User extensible attribute for
future use.
78. Numeric1 NUMBER N
User extensible attribute for
future use.
79. Numeric2 NUMBER N
User extensible attribute for
future use.
80. Numeric3 NUMBER N
User extensible attribute for
future use.
81. Numeric4 NUMBER N
User extensible attribute for
future use.
82. Numeric5 NUMBER N
User extensible attribute for
future use.
83. Numeric6 NUMBER N
User extensible attribute for
future use.
84. Numeric7 NUMBER N
User extensible attribute for
future use.
85. Numeric8 NUMBER N
User extensible attribute for
future use.
86. Numeric9 NUMBER N
User extensible attribute for
future use.
87. Numeric10 NUMBER N
User extensible attribute for
future use.
88. Global_Attribute_Category VARCHAR2(150) N For Internal use.
89. Global_Attribute2 VARCHAR2(150) N For Internal use.
90. Global_Attribute4 VARCHAR2(150) N For Internal use.
91. Global_Attribute6 VARCHAR2(150) N For Internal use.
92. Legal_justification_text1 VARCHAR2(4000) N Legal justification text 1
93. Legal_justification_text2 VARCHAR2(4000) N Legal justification text 2
94. Legal_justification_text3 VARCHAR2(4000) N Legal justification text 3
95. Legal_message_appl_2 NUMBER N
Legal message for tax
applicability.
96. Legal_message_basis NUMBER N
Legal message for taxable
basis.
97. Legal_message_calc NUMBER N
Legal message for tax
calculation.
98. Legal_message_excpt NUMBER N Legal message for exceptions.
99. Legal_message_exmpt NUMBER N
Legal message for
exemptions.
100. Legal_message_pos NUMBER N
Legal message for place of
supply.
101. Legal_message_rate NUMBER N
Legal message for rate
determination.
102. Legal_message_status NUMBER N Legal message for status

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 42 of 71
determination.
103. Legal_message_threshold NUMBER N Legal message for thresholds.
104. Legal_message_trn NUMBER N
Legal message for tax
registration number.

10.5 zx_tax_partner_pkg.trx_rec_type
A record of this data type is used by global document API to pass transaction identifiers and corresponding
document level action. trx_rec_type contains following columns:
Sequence Attribute Data Type Description
1 document_type_id NUMBER
Document type identifier. Document type
represents Sales Invoice, Credit Memo etc. All
possible values are listed in Appendix D.
2 transaction_id NUMBER
Primary transaction identifier that distinguishes a
transaction/document uniquely in the context of a
document type.
3 document_level_action VARCHAR2(30)
Document level action for the document type /
transaction.

10.6 zx_api_prvdr_pub.error_messages_tbl
A table of this data type is used for returning errors by Fusion to tax partners while registering a tax partner
service.
The type error_messages_tbl is a TABLE OF VARCHAR2(1000) INDEX BY BINARY_INTEGER
10.7 ZX_IMPORT_TAX_LINES_INPUT_V
This view is used in tax calculation API to pass imported tax lines to the tax partners. The columns of the view
are:
Sequence Attribute Data Type Description
1. document_type_id NUMBER
Document type identifier. Document type
represents Sales Invoice, Credit Memo etc. All
possible values are listed in Appendix D.
2. transaction_id NUMBER
Primary transaction identifier that distinguishes
a transaction/document uniquely in the context
of a document type.
3. transaction_line_id NUMBER
Primary transaction line identifier that
represents a transaction line uniquely within a
transaction.
4. trx_level_type VARHCAR2(30)
Transaction level type. Possible values are LINE,
FREIGHT.

This column is only for the purposes of uniquely
identifying a transaction line. It does not have
any implications for the tax processing.
5. country_code VARCHAR2(30) Tax Regime Code
6. tax VARCHAR2(30) Represents a classification of the charges

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 43 of 71
imposed by a government through a fiscal or tax
authority. For example, it can be STATE,
COUNTY, CITY, DISTRICT COUNTY, DISTRICT
CITY, etc.
7. situs VARCHAR2(30)
Represents the location to which the Tax
applies. Possible values are SHIP_TO, BILL_TO,
SHIP_FROM, BILL_FROM, POA and POO.
8. tax_jurisdiction VARCHAR2(30) Tax Jurisdiction Code
9. tax_currency_code VARCHAR2(15) Tax Currency Code
10. tax_amount NUMBER Rounded tax amount in transaction currency.
11. Tax_amount_tax_currency NUMBER Rounded tax amount in tax currency.
12. Tax_rate_percentage NUMBER
Tax rate %, which when applied on taxable
amount gives tax amount.
13. taxable_amount NUMBER Taxable amount in transaction currency.
14. exempt_rate_modifier NUMBER
Percentage of the original tax rate that is
exempt.
15. exempt_reason VARCHAR2(240) Tax exemption reason.
16. Tax_only_line_flag VARCHAR2(1)
Flag to indicate this is a tax only line. Possible
values are Y and N. If the value is Y, then the
corresponding transaction_line_id can be NULL.
17. inclusive_tax_line_flag VARCHAR2(1)
Flag to indicate if this tax line is of inclusive
taxes. Possible values are Y and N.
18. use_tax_flag VARCHAR2(1) For Future Use. Value is always N.
19. manually_entered_flag VARCHAR2(1)
Flag to indicate if the tax line has been manually
entered by the end user. Possible values are Y
and N.
20. Overridden_flag VARCHAR2(1)
Flag to indicate if the tax line has been manually
overridden by the end user. Possible values are
Y and N.
21. Last_manual_entry VARCHAR2(30)
Indicates which value the end user has
overridden - whether the tax amount or the tax
rate %. Possible values are TAX_RATE and
TAX_AMOUNT.
22. Tax_registration_number VARCHAR2(50)

10.8 ZX_O2C_CALC_TXN_INPUT_V
This view is used by tax calculation API for providing transaction information to the tax partners. The columns
of this view are:
Sequence Attribute Data Type Description
Header Level Tax Calculation Attributes
1. internal_organization_id NUMBER
Internal organization identifier of the
transaction.
2. document_type_id NUMBER
Document type identifier. Document
type represents Sales Invoice, Credit
Memo etc. All possible values are
listed in Appendix D.
3. transaction_id NUMBER
Primary transaction identifier that
distinguishes a
transaction/document uniquely in
the context of a document type.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 44 of 71
4. document_level_action VARCHAR2(30)
Document level action for the
document type / transaction.
5. trx_date DATE Transaction date
6. legal_entity_number VARCHAR2(30) Legal entity number
7. establishment_number VARCHAR2(30)
First party legal entitys
establishment number
Header Level Reporting-Only Attributes
8. transaction_number VARCHAR2(150)
Transaction number, typically the
number that enables a user to
identify a transaction.
9. transaction_description VARCHAR2(240) Description for the transaction.
10. document_sequence_value VARCHAR2(240)
Document sequence number for the
transaction.
11. transaction_due_date DATE Payment due date of the transaction.
12. allow_tax_calculation VARCHAR2(1)
Flag to indicate if the transaction
requires tax calculation or not.
Possible values are Y and N.
Header Level Additional Attributes for tax partners use
13. header_char1
VARCHAR2(150) Extensible attribute for tax partner
integration
14. header_char2
VARCHAR2(150) Extensible attribute for tax partner
integration
15. header_char3
VARCHAR2(150) Extensible attribute for tax partner
integration
16. header_char4
VARCHAR2(150) Extensible attribute for tax partner
integration
17. header_char5
VARCHAR2(150) Extensible attribute for tax partner
integration
18. header_char6
VARCHAR2(150) Extensible attribute for tax partner
integration
19. header_char7
VARCHAR2(150) Extensible attribute for tax partner
integration
20. header_char8
VARCHAR2(150) Extensible attribute for tax partner
integration
21. header_char9
VARCHAR2(150) Extensible attribute for tax partner
integration
22. header_char10
VARCHAR2(150) Extensible attribute for tax partner
integration
23.
header_char11
VARCHAR2(150) Extensible attribute for tax partner
integration
24.
header_char12
VARCHAR2(150) Extensible attribute for tax partner
integration
25.
header_char13
VARCHAR2(150) Extensible attribute for tax partner
integration
26.
header_char14
VARCHAR2(150) Extensible attribute for tax partner
integration
27.
header_char15
VARCHAR2(150) Extensible attribute for tax partner
integration
28.
header_char16
VARCHAR2(150) Extensible attribute for tax partner
integration
29.
header_char17
VARCHAR2(150) Extensible attribute for tax partner
integration
30.
header_char18
VARCHAR2(150) Extensible attribute for tax partner
integration

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 45 of 71
31.
header_char19
VARCHAR2(150) Extensible attribute for tax partner
integration
32.
header_char20
VARCHAR2(150) Extensible attribute for tax partner
integration
33.
header_char21
VARCHAR2(150) Extensible attribute for tax partner
integration
34.
header_char22
VARCHAR2(150) Extensible attribute for tax partner
integration
35.
header_char23
VARCHAR2(150) Extensible attribute for tax partner
integration
36.
header_char24
VARCHAR2(150) Extensible attribute for tax partner
integration
37.
header_char25
VARCHAR2(150) Extensible attribute for tax partner
integration
38.
header_char26
VARCHAR2(150) Extensible attribute for tax partner
integration
39.
header_char27
VARCHAR2(150) Extensible attribute for tax partner
integration
40.
header_char28
VARCHAR2(150) Extensible attribute for tax partner
integration
41.
header_char29
VARCHAR2(150) Extensible attribute for tax partner
integration
42.
header_char30
VARCHAR2(150) Extensible attribute for tax partner
integration
43.
header_numeric1
NUMBER Extensible attribute for tax partner
integration
44.
header_numeric2
NUMBER Extensible attribute for tax partner
integration
45.
header_numeric3
NUMBER Extensible attribute for tax partner
integration
46.
header_numeric4
NUMBER Extensible attribute for tax partner
integration
47.
header_numeric5
NUMBER Extensible attribute for tax partner
integration
48.
header_numeric6
NUMBER Extensible attribute for tax partner
integration
49.
header_numeric7
NUMBER Extensible attribute for tax partner
integration
50.
header_numeric8
NUMBER Extensible attribute for tax partner
integration
51.
header_numeric9
NUMBER Extensible attribute for tax partner
integration
52.
header_numeric10
NUMBER Extensible attribute for tax partner
integration
53.
header_date1
DATE Extensible attribute for tax partner
integration
54.
header_date2
DATE Extensible attribute for tax partner
integration
55.
header_date3
DATE Extensible attribute for tax partner
integration
56.
header_date4
DATE Extensible attribute for tax partner
integration
57.
header_date5
DATE Extensible attribute for tax partner
integration

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 46 of 71
Line Level Tax Calculation Attributes
58. transaction_line_id NUMBER
Primary transaction line identifier
that recognizes a transaction line
uniquely within a transaction.
59. trx_level_type VARHCAR2(30)
Transaction level type. Possible
values are LINE, FREIGHT.

This column is only for the purposes
of uniquely identifying a transaction
line. It does not have any
implications for the tax processing.
60. line_level_action VARCHAR2(30)
Action at the transaction line level.
Possible values for this element are
CREATE, CREATE_WITH_TAX,
UPDATE, QUOTE, DELETE,
CANCEL, SYNCHRONIZE,
LINE_INFO_TAX_ONLY and
RECORD_WITH_NO_TAX.
61. line_class VARCHAR2(30)
This field specifics the type a
transaction line represents within a
transaction:

INVOICE_ADJUSTMENT - Invoice
Adjustment
INVOICE - Invoice
CREDIT_MEMO - Credit Memo
DEBIT_MEMO - Debit Memo
62. trx_line_currency_code VARCHAR2(15) Transaction line currency code
63. transaction_shipping_date DATE
Shipping date identified at the
transaction header/line/shipment.
64. transaction_receipt_date DATE
Receipt date of the transaction at
header or line level If NULL,
Transaction Date is passed as Receipt
Date.
65. transaction_line_date DATE Transaction line date
66. provnl_tax_determination_date DATE
Date other than the transaction date
to be used for tax calculation. For
example, when a Lease Contract is
revised, a new transaction is created
in the Lease Management. The
transaction date of the new
transaction is not the tax
determination date for tax
calculation purposes, instead, the tax
determination date is the date of the
original transaction.
67. trx_business_category VARCHAR2(240)
Transaction business category code
of the transaction line. Examples are
SALES_TRANSCTION,
PURCHASE_TRANSACTION etc. Users
can create more categories and/or
sub categorization.
68. line_intended_use VARCHAR2(240)
Intended use code of the transaction
line. This identifies the purpose for
which the product is used.
69. line_amt_includes_tax_flag VARCHAR2(1)
This flag can have the following
values:
A all taxes (both exclusive and
inclusive) are included in the line

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 47 of 71
amount and unit price.
N no tax is included in the line
amount and unit price.
S only inclusive taxes are included
in the line amount and unit price.
70. line_amount NUMBER
Transaction line amount. This
amount is before any discounts or
exceptions or exemptions or charges,
but it may include all taxes or
inclusive taxes if Line Amount
Includes Tax Flag is A or S.
71. other_inclusive_tax_amount NUMBER
Inclusive tax amount that might be
determined for a country not being
processed by the tax partner. This
amount is included in the line
amount. This amount is passed only
if Line Amount Includes Tax Flag is
S.
72. transaction_line_quantity NUMBER Transaction line quantity
73. unit_price NUMBER
Unit price of the transaction line
item/product.
74. exemption_control_flag VARCHAR2(1)
This flag controls the application of
exemptions to the transaction line
during tax calculation. Possible
values are -
R Forces tax calculation,
irrespective of the Exemptions Setup
S Tax should be calculated, taking
into account the exemptions set up
in the tax partner application
E Forces a specific tax exemption
on the transaction line. This option is
accompanied by the
exempt_certificate_number and
exempt_reason_code values.

75. exempt_certificate_number VARCHAR2(80) Tax exemption certificate number
76. exempt_reason VARCHAR2(240) Tax exemption reason
77. cash_discount NUMBER Cash discount amount
78. volume_discount NUMBER Volume discount quantity
79. trading_discount NUMBER Trading discount amount
80. transportation_charge NUMBER Transportation charge
81. insurance_charge NUMBER Insurance charge
82. other_charge NUMBER Other charge
83. product_id NUMBER
Internal identifier of the inventory
item or memo line used on this
transaction line.
84. uom_code VARCHAR2(30) Unit of measure code
85. product_type VARCHAR2(240)
Values could be GOOD', 'MEMO'
(text description), 'SERVICE', based
on the source/type of the Product.
86. product_code VARCHAR2(30) Inventory item code
87. fob_point VARCHAR2(30) Free on Board point
88. ship_to_party_number VARCHAR2(30)
The party number of the party that
receives products and/or services.
89. ship_to_party_name VARCHAR2(30)
The name of the party that receives
products and/or services.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 48 of 71
90. ship_from_party_number VARCHAR2(30)
The party number of the party that
supplies or delivers products and/or
services.
91. ship_from_party_name VARCHAR2(30)
The name of the party that supplies
or delivers products and/or services.
92. bill_to_party_number VARCHAR2(30)
The party number of the party that is
responsible for paying the invoice.
93. bill_to_party_name VARCHAR2(30)
The name of the party that is
responsible for paying the invoice.
94. bill_from_party_number VARCHAR2(30)
The party number of the party that
bills the invoice.
95. bill_from_party_name VARCHAR2(30)
The name of the party that bills the
invoice.
96. ship_to_loc_id NUMBER
The identifier of the location that
receives the shipment.
97. ship_to_geography_type1 VARCHAR2(30)
The geography type of a location
element.
98. ship_to_geography_value1 VARCHAR2(30)
The location value for
ship_to_geography_type1.
99. ship_to_geography_type2 VARCHAR2(30)
The geography type of a location
element.
100. ship_to_geography_value2 VARCHAR2(30)
The location value for
ship_to_geography_type2.
101. ship_to_geography_type3 VARCHAR2(30)
The geography type of a location
element.
102. ship_to_geography_value3 VARCHAR2(30)
The location value for
ship_to_geography_type3.
103. ship_to_geography_type4 VARCHAR2(30)
The geography type of a location
element.
104. ship_to_geography_value4 VARCHAR2(30)
The location value for
ship_to_geography_type4.
105. ship_to_geography_type5 VARCHAR2(30)
The geography type of a location
element.
106. ship_to_geography_value5 VARCHAR2(30)
The location value for
ship_to_geography_type5.
107. ship_to_geography_type6 VARCHAR2(30)
The geography type of a location
element.
108. ship_to_geography_value6 VARCHAR2(30)
The location value for
ship_to_geography_type6.
109. ship_to_geography_type7 VARCHAR2(30)
The geography type of a location
element.
110. ship_to_geography_value7 VARCHAR2(30)
The location value for
ship_to_geography_type7.
111. ship_to_geography_type8 VARCHAR2(30)
The geography type of a location
element.
112. ship_to_geography_value8 VARCHAR2(30)
The location value for
ship_to_geography_type8.
113. ship_to_geography_type9 VARCHAR2(30)
The geography type of a location
element.
114. ship_to_geography_value9 VARCHAR2(30)
The location value for
ship_to_geography_type9.
115. ship_to_geography_type10 VARCHAR2(30)
The geography type of a location
element.
116. ship_to_geography_value10 VARCHAR2(30)
The location value for
ship_to_geography_type10.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 49 of 71
117. ship_from_loc_id NUMBER
The identifier of the location from
which the shipment is made.
118. ship_from_geography_type1 VARCHAR2(30)
The geography type of a location
element.
119. ship_from_geography_value1 VARCHAR2(30)
The location value for
ship_from_geography_type1.
120. ship_from_geography_type2 VARCHAR2(30)
The geography type of a location
element.
121. ship_from_geography_value2 VARCHAR2(30)
The location value for
ship_from_geography_type2.
122. ship_from_geography_type3 VARCHAR2(30)
The geography type of a location
element.
123. ship_from_geography_value3 VARCHAR2(30)
The location value for
ship_from_geography_type3.
124. ship_from_geography_type4 VARCHAR2(30)
The geography type of a location
element.
125. ship_from_geography_value4 VARCHAR2(30)
The location value for
ship_from_geography_type4.
126. ship_from_geography_type5 VARCHAR2(30)
The geography type of a location
element.
127. ship_from_geography_value5 VARCHAR2(30)
The location value for
ship_from_geography_type5.
128. ship_from_geography_type6 VARCHAR2(30)
The geography type of a location
element.
129. ship_from_geography_value6 VARCHAR2(30)
The location value for
ship_from_geography_type6.
130. ship_from_geography_type7 VARCHAR2(30)
The geography type of a location
element.
131. ship_from_geography_value7 VARCHAR2(30)
The location value for
ship_from_geography_type7.
132. ship_from_geography_type8 VARCHAR2(30)
The geography type of a location
element.
133. ship_from_geography_value8 VARCHAR2(30)
The location value for
ship_from_geography_type8.
134. ship_from_geography_type9 VARCHAR2(30)
The geography type of a location
element.
135. ship_from_geography_value9 VARCHAR2(30)
The location value for
ship_from_geography_type9.
136. ship_from_geography_type10 VARCHAR2(30)
The geography type of a location
element.
137. ship_from_geography_value10 VARCHAR2(30)
The location value for
ship_from_geography_type10.
138. poa_loc_id NUMBER
The identifier of the location of the
party that accepts (the legal liability
for) an order for products and/or
services.
139. poa_geography_type1 VARCHAR2(30)
The geography type of a location
element.
140. poa_geography_value1 VARCHAR2(30)
The location value for
poa_geography_type1.
141. poa_geography_type2 VARCHAR2(30)
The geography type of a location
element.
142. poa_geography_value2 VARCHAR2(30)
The location value for
poa_geography_type2.
143. poa_geography_type3 VARCHAR2(30) The geography type of a location

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 50 of 71
element.
144. poa_geography_value3 VARCHAR2(30)
The location value for
poa_geography_type3.
145. poa_geography_type4 VARCHAR2(30)
The geography type of a location
element.
146. poa_geography_value4 VARCHAR2(30)
The location value for
poa_geography_type4.
147. poa_geography_type5 VARCHAR2(30)
The geography type of a location
element.
148. poa_geography_value5 VARCHAR2(30)
The location value for
poa_geography_type5.
149. poa_geography_type6 VARCHAR2(30)
The geography type of a location
element.
150. poa_geography_value6 VARCHAR2(30)
The location value for
poa_geography_type6.
151. poa_geography_type7 VARCHAR2(30)
The geography type of a location
element.
152. poa_geography_value7 VARCHAR2(30)
The location value for
poa_geography_type7.
153. poa_geography_type8 VARCHAR2(30)
The geography type of a location
element.
154. poa_geography_value8 VARCHAR2(30)
The location value for
poa_geography_type8.
155. poa_geography_type9 VARCHAR2(30)
The geography type of a location
element.
156. poa_geography_value9 VARCHAR2(30)
The location value for
poa_geography_type9.
157. poa_geography_type10 VARCHAR2(30)
The geography type of a location
element.
158. poa_geography_value10 VARCHAR2(30)
The location value for
poa_geography_type10.
159. poo_loc_id NUMBER
The identifier of the location of the
party that initiates or negotiates a
sales order for products and/or
services.

160. poo_geography_type1 VARCHAR2(30)
The geography type of a location
element.
161. poo_geography_value1 VARCHAR2(30)
The location value for
poo_geography_type1.
162. poo_geography_type2 VARCHAR2(30)
The geography type of a location
element.
163. poo_geography_value2 VARCHAR2(30)
The location value for
poo_geography_type2.
164. poo_geography_type3 VARCHAR2(30)
The geography type of a location
element.
165. poo_geography_value3 VARCHAR2(30)
The location value for
poo_geography_type3.
166. poo_geography_type4 VARCHAR2(30)
The geography type of a location
element.
167. poo_geography_value4 VARCHAR2(30)
The location value for
poo_geography_type4.
168. poo_geography_type5 VARCHAR2(30)
The geography type of a location
element.
169. poo_geography_value5 VARCHAR2(30) The location value for

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 51 of 71
poo_geography_type5.
170. poo_geography_type6 VARCHAR2(30)
The geography type of a location
element.
171. poo_geography_value6 VARCHAR2(30)
The location value for
poo_geography_type6.
172. poo_geography_type7 VARCHAR2(30)
The geography type of a location
element.
173. poo_geography_value7 VARCHAR2(30)
The location value for
poo_geography_type7.
174. poo_geography_type8 VARCHAR2(30)
The geography type of a location
element.
175. poo_geography_value8 VARCHAR2(30)
The location value for
poo_geography_type8.
176. poo_geography_type9 VARCHAR2(30)
The geography type of a location
element.
177. poo_geography_value9 VARCHAR2(30)
The location value for
poo_geography_type9.
178. Poo_geography_type10 VARCHAR2(30)
The geography type of a location
element.
179. Poo_geography_value10 VARCHAR2(30)
The location value for
poo_geography_type10.
180. bill_to_loc_id NUMBER
The identifier of the location of the
bill to party
181. bill_to_geography_type1 VARCHAR2(30)
The geography type of a location
element.
182. bill_to_geography_value1 VARCHAR2(30)
The location value for
bill_to_geography_value1.
183. bill_to_geography_type2 VARCHAR2(30)
The geography type of a location
element.
184. bill_to_geography_value2 VARCHAR2(30)
The location value for
bill_to_geography_value2.
185. bill_to_geography_type3 VARCHAR2(30)
The geography type of a location
element.
186. bill_to_geography_value3 VARCHAR2(30)
The location value for
bill_to_geography_value3.
187. bill_to_geography_type4 VARCHAR2(30)
The geography type of a location
element.
188. bill_to_geography_value4 VARCHAR2(30)
The location value for
bill_to_geography_value4.
189. bill_to_geography_type5 VARCHAR2(30)
The geography type of a location
element.
190. bill_to_geography_value5 VARCHAR2(30)
The location value for
bill_to_geography_value5.
191. bill_to_geography_type6 VARCHAR2(30)
The geography type of a location
element.
192. bill_to_geography_value6 VARCHAR2(30)
The location value for
bill_to_geography_value6.
193. bill_to_geography_type7 VARCHAR2(30)
The geography type of a location
element.
194. bill_to_geography_value7 VARCHAR2(30)
The location value for
bill_to_geography_value7.
195. bill_to_geography_type8 VARCHAR2(30)
The geography type of a location
element.
196. bill_to_geography_value8 VARCHAR2(30) The location value for

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 52 of 71
bill_to_geography_value8.
197. bill_to_geography_type9 VARCHAR2(30)
The geography type of a location
element.
198. bill_to_geography_value9 VARCHAR2(30)
The location value for
bill_to_geography_value9.
199. bill_to_geography_type10 VARCHAR2(30)
The geography type of a location
element.
200. bill_to_geography_value10 VARCHAR2(30)
The location value for
bill_to_geography_value10.
201. bill_from_loc_id NUMBER
The identifier of the location of the
bill from party
202. bill_from_geography_type1 VARCHAR2(30)
The geography type of a location
element.
203. bill_from_geography_value1 VARCHAR2(30)
The location value for
bill_from_geography_type1.
204. bill_from_geography_type2 VARCHAR2(30)
The geography type of a location
element.
205. bill_from_geography_value2 VARCHAR2(30)
The location value for
bill_from_geography_type2.
206. bill_from_geography_type3 VARCHAR2(30)
The geography type of a location
element.
207. bill_from_geography_value3 VARCHAR2(30)
The location value for
bill_from_geography_type3.
208. bill_from_geography_type4 VARCHAR2(30)
The geography type of a location
element.
209. bill_from_geography_value4 VARCHAR2(30)
The location value for
bill_from_geography_type4.
210. bill_from_geography_type5 VARCHAR2(30)
The geography type of a location
element.
211. bill_from_geography_value5 VARCHAR2(30)
The location value for
bill_from_geography_type5.
212. bill_from_geography_type6 VARCHAR2(30)
The geography type of a location
element.
213. bill_from_geography_value6 VARCHAR2(30)
The location value for
bill_from_geography_type6.
214. bill_from_geography_type7 VARCHAR2(30)
The geography type of a location
element.
215. bill_from_geography_value7 VARCHAR2(30)
The location value for
bill_from_geography_type7.
216. bill_from_geography_type8 VARCHAR2(30)
The geography type of a location
element.
217. Bill_from_geography_value8 VARCHAR2(30)
The location value for
bill_from_geography_type8.
218. bill_from_geography_type9 VARCHAR2(30)
The geography type of a location
element.
219. bill_from_geography_value9 VARCHAR2(30)
The location value for
bill_from_geography_type9.
220. bill_from_geography_type10 VARCHAR2(30)
The geography type of a location
element.
221. bill_from_geography_value10 VARCHAR2(30)
The location value for
bill_from_geography_type10.
222. account_ccid NUMBER
Code combination identifier of the
GL account associated with the
transaction line, this is the identifier
of the Revenue GL Account.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 53 of 71
223. adjusted_doc_document_type_id NUMBER
Document type identifier of the
adjusted transaction. Adjusted
transaction example is a sales invoice
to a credit memo or adjustment.
224. adjusted_doc_transaction_id NUMBER
Transaction identifier of the adjusted
transaction.
225. adjusted_doc_trx_level_type VARCHAR2(30)
Transaction level type. Possible
values are LINE, FREIGHT.
226. adjusted_doc_line_id NUMBER
Transaction line identifier of the
adjusted transaction line.
227. adjusted_doc_number VARCHAR2(150)
Transaction number for adjusted
transaction.
228. adjusted_doc_date DATE Adjusted transactions date.
229. assessable_value NUMBER
Assessable value is the deemed price
at which a item/product is valued, by
a tax authority for a given tax, for tax
calculation purposes.
Line Level Reporting-Only Attributes
230. trx_line_number NUMBER Transaction line number.
231. trx_line_description VARCHAR2(240) Description for the transaction line.
232. product_description VARCHAR2(240)
Description of the inventory item or
memo line used on the transaction
line.
Line Level Additional Attributes for tax partners use
233. line_char1 VARCHAR2(150)
Extensible attribute for tax partner
integration
234. line_char2 VARCHAR2(150)
Extensible attribute for tax partner
integration
235. line_char3 VARCHAR2(150)
Extensible attribute for tax partner
integration
236. line_char4 VARCHAR2(150)
Extensible attribute for tax partner
integration
237. line_char5 VARCHAR2(150)
Extensible attribute for tax partner
integration
238. line_char6 VARCHAR2(150)
Extensible attribute for tax partner
integration
239. line_char7 VARCHAR2(150)
Extensible attribute for tax partner
integration
240. line_char8 VARCHAR2(150)
Extensible attribute for tax partner
integration
241. line_char9 VARCHAR2(150)
Extensible attribute for tax partner
integration
242. line_char10 VARCHAR2(150)
Extensible attribute for tax partner
integration
243. line_char11 VARCHAR2(150)
Extensible attribute for tax partner
integration
244. line_char12 VARCHAR2(150)
Extensible attribute for tax partner
integration
245. line_char13 VARCHAR2(150)
Extensible attribute for tax partner
integration
246. line_char14 VARCHAR2(150)
Extensible attribute for tax partner
integration
247. line_char15 VARCHAR2(150)
Extensible attribute for tax partner
integration

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 54 of 71
248. line_char16 VARCHAR2(150)
Extensible attribute for tax partner
integration
249. line_char17 VARCHAR2(150)
Extensible attribute for tax partner
integration
250. line_char18 VARCHAR2(150)
Extensible attribute for tax partner
integration
251. line_char19 VARCHAR2(150)
Extensible attribute for tax partner
integration
252. line_char20 VARCHAR2(150)
Extensible attribute for tax partner
integration
253. line_char21 VARCHAR2(150)
Extensible attribute for tax partner
integration
254. line_char22 VARCHAR2(150)
Extensible attribute for tax partner
integration
255. line_char23 VARCHAR2(150)
Extensible attribute for tax partner
integration
256. line_char24 VARCHAR2(150)
Extensible attribute for tax partner
integration
257. line_char25 VARCHAR2(150)
Extensible attribute for tax partner
integration
258. line_char26 VARCHAR2(150)
Extensible attribute for tax partner
integration
259. line_char27 VARCHAR2(150)
Extensible attribute for tax partner
integration
260. line_char28 VARCHAR2(150)
Extensible attribute for tax partner
integration
261. line_char29 VARCHAR2(150)
Extensible attribute for tax partner
integration
262. line_char30 VARCHAR2(150)
Extensible attribute for tax partner
integration
263. line_numeric1
NUMBER Extensible attribute for tax partner
integration
264. line_numeric2
NUMBER Extensible attribute for tax partner
integration
265. line_numeric3
NUMBER Extensible attribute for tax partner
integration
266. line_numeric4
NUMBER Extensible attribute for tax partner
integration
267. line_numeric5
NUMBER Extensible attribute for tax partner
integration
268. line_numeric6
NUMBER Extensible attribute for tax partner
integration
269. line_numeric7
NUMBER Extensible attribute for tax partner
integration
270. line_numeric8
NUMBER Extensible attribute for tax partner
integration
271. line_numeric9
NUMBER Extensible attribute for tax partner
integration
272. line_numeric10
NUMBER Extensible attribute for tax partner
integration
273. line_date1 DATE
Extensible attribute for tax partner
integration
274. line_date2 DATE
Extensible attribute for tax partner
integration

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 55 of 71
275. line_date3 DATE
Extensible attribute for tax partner
integration
276. line_date4 DATE
Extensible attribute for tax partner
integration
277. line_date5 DATE
Extensible attribute for tax partner
integration
278. Exempt_certificate_number VARCHAR2(80) Tax exemption certificate number
279. Exempt_reason VARCHAR2(240) Tax exemption reason
280. Exempt_reason_code VARCHAR2(30) Exempt reason code
281. Exempt_control_flag VARCHAR2(1)
Exemption control flag. See
Calculation Tax API for detailed
description of this flag.
282. Tax_code VARCHAR2(50) Tax Code
283. Doc_seq_name VARCHAR2(150) Name of the document sequence.
284. Batch_source_name VARCHAR2(150)
Batch source name for Receivables
transactions.
285. Trx_type_description VARCHAR2(240)
Transaction type description for
Receivables transactions.
286. Trx_line_gl_date DATE
Accounting date for the transaction
line.
287. Product_org_id NUMBER
Identifier of the organization for the
inventory item.
288. Trx_line_mau NUMBER
Minimum accountable unit of the
transaction line currency.
289. Trx_line_precision NUMBER
Precision of the transaction line
currency.
290. Trx_line_currency_conv_rate NUMBER
This is an obsolete column. It was
not available in EBS R12 as well.
291. Trx_line_currency_conv_date DATE
This is an obsolete column. It was
not available in EBS R12 as well.
292. Trx_line_currency_conv_type VARCHAR2(30)
This is an obsolete column. It was
not available in EBS R12 as well.
293. Currency_conversion_rate NUMBER
This is an obsolete column. It was
not available in EBS R12 as well.
294. Currency_conversion_date DATE
This is an obsolete column. It was
not available in EBS R12 as well.
295. Currency_conversion_type VARCHAR2(30)
This is an obsolete column. It was
not available in EBS R12 as well.
296. Char1 VARCHAR2(150) User Extensible Attribute
297. Char2 VARCHAR2(150) User Extensible Attribute
298. Char3 VARCHAR2(150) User Extensible Attribute
299. Char4 VARCHAR2(150) User Extensible Attribute
300. Char5 VARCHAR2(150) User Extensible Attribute
301. Char6 VARCHAR2(150) User Extensible Attribute
302. Char7 VARCHAR2(150) User Extensible Attribute
303. Char8 VARCHAR2(150) User Extensible Attribute
304. Char9 VARCHAR2(150) User Extensible Attribute
305. Char10 VARCHAR2(150) User Extensible Attribute
306. Date1 DATE User Extensible Attribute
307. Date2 DATE User Extensible Attribute
308. Date3 DATE User Extensible Attribute
309. Date4 DATE User Extensible Attribute

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 56 of 71
310. Date5 DATE User Extensible Attribute
311. Date6 DATE User Extensible Attribute
312. Date7 DATE User Extensible Attribute
313. Date8 DATE User Extensible Attribute
314. Date9 DATE User Extensible Attribute
315. Date10 DATE User Extensible Attribute
316. Numeric1 NUMBER User Extensible Attribute
317. Numeric2 NUMBER User Extensible Attribute
318. Numeric3 NUMBER User Extensible Attribute
319. Numeric4 NUMBER User Extensible Attribute
320. Numeric5 NUMBER User Extensible Attribute
321. Numeric6 NUMBER User Extensible Attribute
322. Numeric7 NUMBER User Extensible Attribute
323. Numeric8 NUMBER User Extensible Attribute
324. Numeric9 NUMBER User Extensible Attribute
325. Numeric10 NUMBER User Extensible Attribute
326. Document_sub_type VARCHAR2(240) Document sub type code.
327. First_pty_org_id NUMBER
Identifier for the first party of the
transaction.
328. Establishment_id NUMBER First party establishment Identifier.
329. Internal_org_location_id NUMBER
Internal organization location
identifier of the transaction.
330. Supplier_tax_invoice_date DATE
Transaction number on the supplier
tax invoice.
331. Supplier_tax_invoice_number VARCHAR2(150)
Transaction number on the supplier
tax invoice.
332. Supplier_exchange_rate NUMBER
Exchange rate on the supplier tax
invoice.
333. Tax_invoice_number VARCHAR2(150)
Number for tax invoice generated by
Receivables.
334. Tax_invoice_date DATE
Transaction date for tax invoice
generated by Receivables.
335. Merchant_party_country VARCHAR2(2) Merchant party country code.
336. Merchant_party_document_number VARCHAR2(150)
Merchant party document number
recorded for the Payables expense
report.
337. Merchant_party_name VARCHAR2(150)
Merchant party name recorded for
the Payables expense report.
338. Merchant_party_reference VARCHAR2(250)
Merchant party reference recorded
for the Payables expense report.
339. Merchant_party_tax_reg_number VARCHAR2(150)
Merchant party tax registration
number recorded for the Payables
expense report.
340. Merchant_party_taxpayer_id VARCHAR2(150)
Merchant party taxpayer ID recorded
for the Payables expense report.
341. User_Defined_fisc_class VARCHAR2(30)
User defined fiscal classification code
of the transaction line.
342. Product_category VARCHAR2(240)
Product category code of the
transaction line.
343. Product_fisc_classification VARCHAR2(240)
Product fiscal classification code of
the inventory item.
344. Transfer_charge NUMBER Transfer charge

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 57 of 71
345. Start_expense_date DATE
Start expense date of a Payables
Invoice distribution.
10.9 ZX_SYNC_HDR_INPUT_V
This view is used by tax synchronization API to pass reporting-only attributes of the transaction header to tax
partners. The columns of this view are:
Sequence Attribute Data Type Description
1. internal_organization_id NUMBER
Internal organization identifier of the
transaction.
2. document_type_id NUMBER
Document type identifier. Document type
represents Sales Invoice, Credit Memo etc. All
possible values are listed in Appendix D.
3. transaction_id NUMBER
Primary transaction identifier that
distinguishes a transaction/document
uniquely in the context of a document type.
4. document_level_action VARCHAR2(30)
Document level action for the document type
/ transaction.
5. transaction_number VARCHAR2(150)
Transaction number, typically the number that
enables a user to identify a transaction This is
for use in reports only.
6. transaction_description VARCHAR2(240)
Description for the transaction. This is for use
in reports only.
7. document_sequence_value VARCHAR2(240)
Document sequence number for the
transaction. This is for use in reports only.
8. transaction_due_date DATE
Payment due date of the transaction. This is
for use in reports only.
9. legal_entity_number VARCHAR2(30) Legal entity number
10. establishment_number VARCHAR2(30) First party legal entitys establishment number
Additional Attributes for tax partners use
11. header_char1 VARCHAR2(150) Extensible attribute for tax partner integration
12. header_char2 VARCHAR2(150) Extensible attribute for tax partner integration
13. header_char3 VARCHAR2(150) Extensible attribute for tax partner integration
14. header_char4 VARCHAR2(150) Extensible attribute for tax partner integration
15. header_char5 VARCHAR2(150) Extensible attribute for tax partner integration
16. header_char6 VARCHAR2(150) Extensible attribute for tax partner integration
17. header_char7 VARCHAR2(150) Extensible attribute for tax partner integration
18. header_char8 VARCHAR2(150) Extensible attribute for tax partner integration
19. header_char9 VARCHAR2(150) Extensible attribute for tax partner integration
20. header_char10 VARCHAR2(150) Extensible attribute for tax partner integration
21. header_char11 VARCHAR2(150) Extensible attribute for tax partner integration
22. header_char12 VARCHAR2(150) Extensible attribute for tax partner integration
23. header_char13 VARCHAR2(150) Extensible attribute for tax partner integration
24. header_char14 VARCHAR2(150) Extensible attribute for tax partner integration
25. header_char15 VARCHAR2(150) Extensible attribute for tax partner integration
26. header_char16 VARCHAR2(150) Extensible attribute for tax partner integration
27. header_char17 VARCHAR2(150) Extensible attribute for tax partner integration
28. header_char18 VARCHAR2(150) Extensible attribute for tax partner integration
29. header_char19 VARCHAR2(150) Extensible attribute for tax partner integration

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 58 of 71
30. header_char20 VARCHAR2(150) Extensible attribute for tax partner integration
31. header_char21 VARCHAR2(150) Extensible attribute for tax partner integration
32. header_char22 VARCHAR2(150) Extensible attribute for tax partner integration
33. header_char23 VARCHAR2(150) Extensible attribute for tax partner integration
34. header_char24 VARCHAR2(150) Extensible attribute for tax partner integration
35. header_char25 VARCHAR2(150) Extensible attribute for tax partner integration
36. header_char26 VARCHAR2(150) Extensible attribute for tax partner integration
37. header_char27 VARCHAR2(150) Extensible attribute for tax partner integration
38. header_char28 VARCHAR2(150) Extensible attribute for tax partner integration
39. header_char29 VARCHAR2(150) Extensible attribute for tax partner integration
40. header_char30 VARCHAR2(150) Extensible attribute for tax partner integration
41. header_numeric1 NUMBER Extensible attribute for tax partner integration
42. header_numeric2 NUMBER Extensible attribute for tax partner integration
43. header_numeric3 NUMBER Extensible attribute for tax partner integration
44. header_numeric4 NUMBER Extensible attribute for tax partner integration
45. header_numeric5 NUMBER Extensible attribute for tax partner integration
46. header_numeric6 NUMBER Extensible attribute for tax partner integration
47. header_numeric7 NUMBER Extensible attribute for tax partner integration
48. header_numeric8 NUMBER Extensible attribute for tax partner integration
49. header_numeric9 NUMBER Extensible attribute for tax partner integration
50. header_numeric10 NUMBER Extensible attribute for tax partner integration
51. header_date1 DATE Extensible attribute for tax partner integration
52. header_date2 DATE Extensible attribute for tax partner integration
53. header_date3 DATE Extensible attribute for tax partner integration
54. header_date4 DATE Extensible attribute for tax partner integration
55. header_date5 DATE Extensible attribute for tax partner integration

10.10 ZX_SYNC_LINES_INPUT_V
This view is used by tax synchronization API to pass reporting-only attributes of transaction lines. The columns
of this view are:
Sequence Attribute Data Type Description
1. document_type_id NUMBER
Document type identifier. Document type
represents Sales Invoice, Credit Memo etc. All
possible values are listed in Appendix D.
2. transaction_id NUMBER
Primary transaction identifier that
distinguishes a transaction/document uniquely
in the context of a document type
3. transaction_line_id NUMBER
Primary transaction line identifier that
recognizes a transaction line uniquely within a
transaction
4. trx_level_type VARHCAR2(30)
Transaction level type. Possible values are
LINE, FREIGHT.

This column is only for the purposes of
uniquely identifying a transaction line. It does
not have any implications for the tax
processing.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 59 of 71
5.
trx_line_number NUMBER Transaction line number. This is for use in
reports only.
6. trx_line_description VARCHAR2(240)
Description for the transaction line. This is for
use in reports only.
7. product_description VARCHAR2(240)
Description of the inventory item or memo line
used on the transaction line. This is for use in
reports only.
Additional Attributes for tax partners use
8. line_char1 VARCHAR2(150) Extensible attribute for tax partner integration
9. line_char2 VARCHAR2(150) Extensible attribute for tax partner integration
10. line_char3 VARCHAR2(150) Extensible attribute for tax partner integration
11. line_char4 VARCHAR2(150) Extensible attribute for tax partner integration
12. line_char5 VARCHAR2(150) Extensible attribute for tax partner integration
13. line_char6 VARCHAR2(150) Extensible attribute for tax partner integration
14. line_char7 VARCHAR2(150) Extensible attribute for tax partner integration
15. line_char8 VARCHAR2(150) Extensible attribute for tax partner integration
16. line_char9 VARCHAR2(150) Extensible attribute for tax partner integration
17. line_char10 VARCHAR2(150) Extensible attribute for tax partner integration
18. line_char11 VARCHAR2(150) Extensible attribute for tax partner integration
19. line_char12 VARCHAR2(150) Extensible attribute for tax partner integration
20. line_char13 VARCHAR2(150) Extensible attribute for tax partner integration
21. line_char14 VARCHAR2(150) Extensible attribute for tax partner integration
22. line_char15 VARCHAR2(150) Extensible attribute for tax partner integration
23. line_char16 VARCHAR2(150) Extensible attribute for tax partner integration
24. line_char17 VARCHAR2(150) Extensible attribute for tax partner integration
25. line_char18 VARCHAR2(150) Extensible attribute for tax partner integration
26. line_char19 VARCHAR2(150) Extensible attribute for tax partner integration
27. line_char20 VARCHAR2(150) Extensible attribute for tax partner integration
28. line_char21 VARCHAR2(150) Extensible attribute for tax partner integration
29. line_char22 VARCHAR2(150) Extensible attribute for tax partner integration
30. line_char23 VARCHAR2(150) Extensible attribute for tax partner integration
31. line_char24 VARCHAR2(150) Extensible attribute for tax partner integration
32. line_char25 VARCHAR2(150) Extensible attribute for tax partner integration
33. line_char26 VARCHAR2(150) Extensible attribute for tax partner integration
34. line_char27 VARCHAR2(150) Extensible attribute for tax partner integration
35. line_char28 VARCHAR2(150) Extensible attribute for tax partner integration
36. line_char29 VARCHAR2(150) Extensible attribute for tax partner integration
37. line_char30 VARCHAR2(150) Extensible attribute for tax partner integration
38. line_numeric1 NUMBER Extensible attribute for tax partner integration
39. line_numeric2 NUMBER Extensible attribute for tax partner integration
40. line_numeric3 NUMBER Extensible attribute for tax partner integration
41. line_numeric4 NUMBER Extensible attribute for tax partner integration
42. line_numeric5 NUMBER Extensible attribute for tax partner integration
43. line_numeric6 NUMBER Extensible attribute for tax partner integration
44. line_numeric7 NUMBER Extensible attribute for tax partner integration
45. line_numeric8 NUMBER Extensible attribute for tax partner integration
46. line_numeric9 NUMBER Extensible attribute for tax partner integration
47. line_numeric10 NUMBER Extensible attribute for tax partner integration
48. line_date1 DATE Extensible attribute for tax partner integration

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 60 of 71
49. line_date2 DATE Extensible attribute for tax partner integration
50. line_date3 DATE Extensible attribute for tax partner integration
51. line_date4 DATE Extensible attribute for tax partner integration
52. line_date5 DATE Extensible attribute for tax partner integration

10.11 ZX_SYNC_TAX_LINES_INPUT_V
This view is used by tax synchronization API to pass tax lines to be synchronized with the tax partner
repository. The columns of this view are:
Sequence Attribute Data Type Description
1. document_type_id NUMBER
Document type identifier. Document type
represents Sales Invoice, Credit Memo etc. All
possible values are listed in Appendix D.
2. transaction_id NUMBER
Primary transaction identifier that
distinguishes a transaction/document uniquely
in the context of a document type.
3. transaction_line_id NUMBER
Primary transaction line identifier that
recognizes a transaction line uniquely within a
transaction.
4. trx_level_type VARHCAR2(30)
Transaction level type. Possible values are
LINE, FREIGHT.

This column is only for the purposes of
uniquely identifying a transaction line. It does
not have any implications for the tax
processing.
5. country_code VARCHAR2(30) Tax Regime Code
6. tax VARCHAR2(30)
Represents a classification of the charges
imposed by a government through a fiscal or
tax authority. For example, it can be STATE,
COUNTY, CITY, DISTRICT COUNTY,
DISTRICT CITY, etc.
7. situs VARCHAR2(30)
Represents the location to which the Tax
applies. Possible values are SHIP_TO,
BILL_TO, SHIP_FROM, BILL_FROM, POA
and POO.
8. tax_jurisdiction VARCHAR2(30) Tax Jurisdiction Code
9. tax_currency_code VARCHAR2(15) Tax Currency Code
10. tax_curr_tax_amount NUMBER Rounded tax amount in tax currency.
11. tax_amount NUMBER Rounded tax amount in transaction currency.
12. tax_rate_percentage NUMBER
Tax rate %, which when applied on taxable
amount gives tax amount.
13. taxable_amount NUMBER Taxable amount in transaction currency.
14. exempt_certificate_number VARCHAR2(80) Tax exemption certificate number.
15. exempt_rate_modifier NUMBER
Percentage of the original tax rate that is
exempt.
16. exempt_reason
VARCHAR2(240
)
Tax exemption reason
17. tax_only_line_flag VARCHAR2(1)
Flag to indicate this is a tax only line. Possible
values are Y and N. If the value is Y, then
the corresponding transaction_line_id can be
NULL.

Appendix A Data Types and Database Views Oracle Corporation Confidential - For Oracle internal use only Page 61 of 71
18. inclusive_tax_line_flag VARCHAR2(1)
Flag to indicate if this tax line is of inclusive
taxes. Possible values are Y and N.
19. use_tax_flag VARCHAR2(1) For Future Use. Value is always N.
20. ebiz_override_flag VARCHAR2(1)
Indicates whether the tax amount is
overridden by a Fusion application process.
21. user_override_flag VARCHAR2(1)
Indicates if the tax line is overridden by the
end user. Possible values are Y and N.
22. last_manual_entry VARCHAR2(30)
Indicates which value the end user has
overridden - whether the tax amount or the
tax rate %. Possible values are TAX_RATE and
TAX_AMOUNT.
23. manually_entered_flag VARCHAR2(1)
Flag to indicate if the tax line has been
manually entered by the end user. Possible
values are Y and N.
24. cancel_flag VARCHAR2(1)
Indicates that the tax line is canceled by the
end user. Possible values are Y and N.
25. delete_flag VARCHAR2(1)
Indicates that the tax line is physically deleted
by the end user. Possible values are Y and N.



Appendix B Important Changes for Tax Partners between EBS R12 and Fusion Oracle Corporation Confidential - For Oracle internal use only Page 62 of 71
11 Appendix B Important Changes for Tax Partners between EBS R12 and Fusion

Some important changes to note are

Oracle does not pre-package Vertex Inc. Q-Series and ADP-Taxware SUT with Fusion.
Oracle objects are installed under FUSION schema.
All NUMERIC data types holding sequence generated identifier values were of maximum 15 digits size in
EBS R12. In Fusion, these could hold up to 18 digits value.
The input and output tables/views for the tax partner integration APIs have additional optional attributes
that can be used by tax partners. Please review Appendix A carefully.
Attribute sizes have increased for some attributes. Please review Appendix A carefully.

Appendix C Recommended Configuration Oracle Corporation Confidential - For Oracle internal use only Page 63 of 71
12 Appendix C Recommended Configuration

Tax partners are advised to note following recommendations -

Configure tax accounts for each tax prior to creating tax jurisdictions and rates. If it is not done, tax
accounts would not get copied to tax jurisdictions and tax rates. Users would have to manually enter tax
accounts for tax jurisdictions and tax rates. It is extremely important when tax content is uploaded using
tax partner provided tax content file. In United States, there are thousands of tax jurisdictions and rates.
None of them would have tax accounts copied from tax, if tax accounts are not configured for your taxes.
Tax accounts are required at tax jurisdiction or tax rate level for tax accounting.
Tax partner API is called once for a tax regime for an event. If your API can calculate taxes of multiple
countries for a transaction in single call, your API must not be called multiple times. To achieve this, first,
define tax zone comprising of all the countries for which you have a single API and then define a tax
regime for the tax zone you have created. If you do not do it, your API would be called once for each
country involved in a transaction, returning same taxes multiple times, causing unique index violation.

Appendix D Document Types Oracle Corporation Confidential - For Oracle internal use only Page 64 of 71
13 Appendix D Document Types

Tax Partner APIs are called for the following document types.

Document Type
Id
Document Type
0 Sales Quote
4 Sales Invoice
5 Sales Debit Memo
6 Sales Credit Memo
8 Sales Adjustment

Appendix D Tax Partner Integration Validation Oracle Corporation Confidential - For Oracle internal use only Page 65 of 71
14 Appendix D Tax Partner Integration Validation

The list of test scenarios below would assist a tax partners to test their software integration with Fusion
Receivables.

1. Create a sales invoice with multiple item lines. Verify that correct taxes are calculated based on the
locations specified on the transaction lines.
2. Create an on-account credit memo with multiple item lines. Verify that correct taxes are calculated based
on the locations specified on the transaction lines. Calculated tax amounts should be negative.
3. Create a debit memo with multiple item lines. Verify that correct taxes are calculated based on the
locations specified on the transaction lines.
4. Create and complete an invoice with multiple item lines. Create line only adjustment for this invoice.
Verify transaction and credit memo taxes in tax partner repository and in Fusion tax repository.
5. Create and complete an invoice with multiple item lines. Create positive tax only adjustment for this
invoice. Verify transaction and adjustment taxes in tax partner repository and in Fusion tax repository.
6. Create and complete an invoice with multiple item lines. Create negative tax only adjustment for this
invoice. Verify transaction and adjustment taxes in tax partner repository and in Fusion tax repository.
7. Create and complete an invoice with multiple item lines. Create line adjustment followed by tax
adjustment. Verify transaction and adjustments taxes in tax partner repository and in Fusion tax
repository.
8. Create and complete an invoice with multiple item lines. Create line only credit memo for this invoice.
Verify transaction and credit memo taxes in tax partner repository and in Fusion tax repository.
9. Create and complete an invoice with multiple item lines. Create tax only credit memo for this invoice.
Verify transaction and credit memo taxes in tax partner repository and in Fusion tax repository.
10. Create and complete an invoice with multiple item lines. Incomplete Invoice and update tax amount.
Complete again. Verify transaction lines and taxes in tax partner repository and in Fusion tax repository.
11. Create an invoice with two item lines. Complete the invoice and then incomplete it. Enter a new invoice
line. Complete the invoice again. Verify transaction lines and taxes in tax partner repository and in Fusion
tax repository.
12. Create an invoice with two item lines. Complete the invoice and then incomplete it. Update one invoice
line by changing quantity. Verify transaction lines and taxes in tax partner repository and in Fusion tax
repository.
13. Create an invoice with two item lines. Complete the invoice and then incomplete it. Update one invoice
line by changing unit price. Verify transaction lines and taxes in tax partner repository and in Fusion tax
repository.
14. Create an invoice with two item lines. Complete the invoice and then incomplete it. Update transaction
date to a period with a different tax rate. Verify transaction lines and taxes in tax partner repository and
in Fusion tax repository.
15. Create an invoice with two item lines. Complete the invoice and then incomplete it. Update one invoice
line by changing ship-to address. Verify transaction lines and taxes in tax partner repository and in Fusion
tax repository.
16. Create an invoice with two item lines. Complete the invoice and then incomplete it. Update invoice line by
changing ship-to address in another country. Verify transaction lines and taxes in tax partner repository
and in Fusion tax repository.
17. Create an invoice with two item lines. Complete the invoice and then incomplete it. Delete first item line.
Verify transaction lines and taxes in tax partner repository and in Fusion tax repository.
18. Create an invoice with two item lines. Enter a manual tax line for the second item line. Verify transaction
lines and taxes in tax partner repository and in Fusion tax repository.

Appendix D Tax Partner Integration Validation Oracle Corporation Confidential - For Oracle internal use only Page 66 of 71
19. Create an invoice without entering ship-to location. Bill-to location should be in US. Verify that taxes are
calculated based on bill-to location.
20. Create an invoice without entering ship-to location. Bill-to location should be in another country. Verify
taxes are calculated based on bill-to location.
21. Create an invoice in currency other than USD. Verify taxes are calculated using exchange rate passed to
the tax partner.
22. Create an invoice on which exemption should be applied, configured in Tax Partner software. Verify
transaction and taxes in tax partner repository and in Fusion tax repository.
23. Create an invoice by entering exemption certificate number on the transaction line. Verify transaction
lines and taxes in tax partner repository and in Fusion tax repository.
24. Import 10000 transactions without tax lines. Verify transaction lines and taxes in tax partner repository
and in Fusion tax repository.
25. Import 10000 transactions with tax lines. Verify transaction lines and taxes in tax partner repository and in
Fusion tax repository.
26. Create a recurring invoice. Verify transaction lines and taxes in tax partner repository and in Fusion tax
repository.
27. Create multiple credit memos for an invoice say 33% credit, 34% credit and then 33% credit. Verify credit
memo lines and taxes in tax partner repository and in Fusion tax repository.
28. Enter a tax only invoice. Verify transaction line and taxes in tax partner repository and in Fusion tax
repository.
29. Create an invoice with a tax other than state, county or city tax (if there is a fourth tax supported by your
software). Override this taxs amount. Verify transaction lines and taxes in tax partner repository and in
Fusion tax repository.
30. Create and complete an invoice with multiple item lines. Incomplete the invoice and update tax amount.
Complete the invoice again. Then, incomplete and update line amount of the line whose tax line was
updated by you. Complete the invoice again. Verify transaction lines and taxes in tax partner repository
and in Fusion tax repository.
31. Create an invoice. Create line adjustment for this invoice and then apply a partial line & tax credit memo.
Verify transaction lines and taxes in tax partner repository and in Fusion tax repository.
32. Create an invoice. Create tax only adjustment and then apply a partial line & tax credit memo. Verify
transaction lines and taxes in tax partner repository and in Fusion tax repository.
33. Create an Invoice. Make tax adjustment, tax credit, tax adjustment and then tax credit again. Verify
transaction lines and taxes in tax partner repository and in Fusion tax repository.
34. For all the transactions entered, reconcile tax partner repository with Fusion tax repository.
Determine Applicable
Tax Regimes
Populate Mandatory Tax
Lines Attributes
Store Tax Lines in Fusion
Tax Repository
Return Tax Lines to
Fusion Receivables

Appendix E Running the Fusion Tax Content Upload Program Oracle Corporation Confidential - For Oracle internal use only Page 67 of 71
15 Appendix E Running the Fusion Tax Content Upload Program

With regard to the tax content upload procedures, it is important to identify the business use case that applies to a particular
Oracle Fusion Applications Implementation as outlined in one of the three cases below.

In addition, please note that prior to executing any of the specific tax content upload procedures below, it is necessary to first:

Complete the prerequisite steps in the Tax Partner Party Creation & Registration Section to ensure that the applicable
tax partner is created and available for population in the Tax Content Source Parameter where needed below and,

Review the Tax Content Area in the Configuring Fusion Tax for Partner Integration Section and decide upon the most
meaningful approach by which to create the taxes for the Global Configuration Owner.
Case 1: Oracle Fusion On Premise Deployments using Fusion Applications Releases 1 through 4

In the applicable Fusion Implementation Project in the Fusion Functional Setup Manager, access the task path of
Financials > Define Common Financials Configuration > Define Transaction Taxes > Define Occasional
Implementation Setups > Run Tax Configuration Content Upload Program. The Fusion Functional Setup Manager
may be accessed by utilizing the Fusion Navigator Drop-Down Menu and then selecting the following menu links of
Tools > Setup and Maintenance in sequence.

Once the Run Tax Configuration Content Upload Program Task has been accessed, you should notice 3 separate jobs.
These 3 individual jobs comprise the Fusion Tax Configuration Content Upload Program Job Set as illustrated below:



Please ensure that all parameters for all 3 jobs are populated upfront before clicking on the Submit Button as the
parameters are mandatory.

Populate the Upload Tax Content File Job with the following parameters:
File Location and Name Operating System Directory Path on the Application Server where the
Partner Content File has been copied, including the Partner Content Filename and Filename
Extension.
Tax Content Source Select the tax partner name from the list of values.
Tax Regime Code Populate the Existing U.S. Tax Regime that was previously set up.










Appendix E Running the Fusion Tax Content Upload Program Oracle Corporation Confidential - For Oracle internal use only Page 68 of 71

An illustration of sample parameters for the Upload Tax Content File Job is provided below:



Next, populate the Process Tax Content Data Job with the following parameters:
Batch Size Enter a positive number.
Number of Workers Enter a positive number.
Tax Content Source Select the tax partner name from the list of values.
Tax Content Source Tax Regime Populate the Existing U.S. Tax Regime that was previously set up.
An illustration of sample parameters for the Process Tax Content Data Job is provided below:



Finally, populate the Complete Tax Content Upload: Post Processing Job with the following parameters:
Tax Content Source Select the tax partner name from the list of values.
Tax Regime Code Populate the Existing U.S. Tax Regime that was previously set up.
File Location and Name Operating System Directory Path on the Application Server where the
Partner Content File has been copied, including the Partner Content Filename and Filename
Extension.









Appendix E Running the Fusion Tax Content Upload Program Oracle Corporation Confidential - For Oracle internal use only Page 69 of 71

An illustration of sample parameters for the Complete Tax Content Upload: Post Processing Job is provided below:



Click on the Submit Button only after all parameters on all 3 jobs are populated upfront. Failure to populate all
parameters will result in errors during program execution.

Important Reference Note: Cloud Deployments are not applicable for Fusion Applications Releases 1 through 4.

Case 2: Oracle Fusion On Premise Deployments using Fusion Applications Release 5 and Subsequent Releases

In the applicable Fusion Implementation Project in the Fusion Functional Setup Manager, access the task path of
Financials > Define Common Financials Configuration > Define Transaction Taxes > Define Occasional
Implementation Setups > Run Tax Configuration Content Upload Program. The Fusion Functional Setup Manager
may be accessed by utilizing the Fusion Navigator Drop-Down Menu and then selecting the following menu links of
Tools > Setup and Maintenance in sequence.

Once the Run Tax Configuration Content Upload Program Task has been accessed, you should notice 2 separate jobs.
These 2 individual jobs comprise the Fusion Tax Configuration Content Upload Program Job Set as illustrated below:



Please ensure that all parameters for both jobs are populated upfront before clicking on the Submit Button as the
parameters are mandatory.

Populate the Upload Tax Content File Job with the following parameters:
File Location and Name Operating System Directory Path on the Application Server where the
Partner Content File has been copied, including the Partner Content Filename and Filename
Extension.
Tax Content Source Select the tax partner name from the list of values.
Tax Regime Code Populate the Existing U.S. Tax Regime that was previously set up.



Appendix E Running the Fusion Tax Content Upload Program Oracle Corporation Confidential - For Oracle internal use only Page 70 of 71

An illustration of sample parameters for the Upload Tax Content File Job is provided below:



Next, populate the Process Tax Content Data Job with the following parameters:
Tax Content Source Select the tax partner name from the list of values.
Tax Regime Code Populate the Existing U.S. Tax Regime that was previously set up.
An illustration of sample parameters for the Process Tax Content Data Job is provided below:



Click on the Submit Button only after all parameters on both jobs are populated upfront. Failure to populate all
parameters will result in errors during program execution.

Important Reference Note: Oracle Fusion Cloud Deployments are only available starting with Oracle Fusion
Applications Release 5.

Case 3: Oracle Fusion Cloud Deployments using Fusion Applications Release 5 and Subsequent Releases

Beginning in Fusion Applications Release 5, Cloud clients will utilize the Import Tax Configuration Content Job in order
to initiate the Fusion Tax data content upload of a particular tax partner data file.

The Import Tax Configuration Content Job can be accessed using the central Fusion ESS Submission UI by selecting
Navigator > Tools > Scheduled Processes > Schedule New Process > Job > Import Tax Configuration Content > OK to
retrieve the following two UI Pages in sequence:








Appendix E Running the Fusion Tax Content Upload Program Oracle Corporation Confidential - For Oracle internal use only Page 71 of 71





After accessing the Import Tax Configuration Content Job, an end user will be required to populate specific parameters.

Populate the Import Tax Configuration Content Job with the following parameters:
Tax Content Source Select the tax partner name from the list of values.
Tax Regime Code Populate the Existing U.S. Tax Regime that was previously set up.
An illustration of sample parameters for the Import Tax Configuration Content Job is provided below:



Click on the Submit Button only after both parameters are populated upfront. Failure to populate all parameters will
result in errors during program execution.

You might also like