Sie sind auf Seite 1von 112

SAP / Sabrix

Integration Fundamentals
January 2007
Course Overview Diagram
Basic SAP
R/3
Overview
Sabrix Products
and Technical
Overview
SabrixConnection
for SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Getting
Jurisdiction
Codes from
Sabrix
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Misc Vendor
And Customer
Invoices
(FI)
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Q & A
Course Overview Diagram
Basic SAP
R/3
Overview
Sabrix Products
and Technical
Overview
SabrixConnection
for SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Getting
Jurisdiction
Codes from
Sabrix
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Misc Vendor
And Customer
Invoices
(FI)
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Sabrix Integration with SAP
SAP Modules that Integrate with Sabrix
SD Sales and Distribution from order to delivery, including

RFQ

Sales orders

Pricing

Picking (and other warehouse processes)

Packing

Shipping
MM Materials Management underpins the supply chain, including

Requisitions

Purchase orders

Goods receipts

Accounts payable

Inventory management

BOMs

Master raw materials, finished goods etc


FI Financial Accounting essentially your regulatory books of record, including

General ledger

Book close

Tax

Accounts receivable

Accounts payable

Consolidation

Special ledgers
Course Overview Diagram
Sabrix
Products and
Technical
Overview
Basic SAP
R/3
Overview
SabrixConnection
for SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Getting
Jurisdiction
Codes from
Sabrix
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
The Sabrix Solution
The Sabrix Solution Product Breakdown
Tax Research
Maintained
by Sabrix
Tax Control Panel
for Tax Policy Configuration
Workbench for
Transaction Modeling
Extract for
Returns Processing
Consolidated
Reporting
Financial Dashboard
JavaScript
HTTP Server
WebContainer
servlet
JSP
JDBC
UI Components
Tax Content
Tax Configuration
Tax Audit
Technical Architecture
4 Tier Architecture
With their components
Web Browser
Web Server
Application Server
Database Server
XML via
HTTP or HTTPS
Invoice object
JDBC
HTML
Application Server
JavaScript
Sabrix Technical Architecture
Putting it all together
JavaScript
Web
Browser
J2EE 1.4 App Server
Oracle10g Application Server
BEA WebLogic, WebSphere,
JBoss
Database
Oracle RDBMS
10g, IBM DB2,
SQL Server
HTTP Server
Database Server
SAP
Business
Applications
Sabrix US Tax data Sabrix VAT data
UI meta-data, Customer data, Audit data
Java Server Pages
Servlet Container
Web Pages
Controller
Universal Tax Engine
EJB Container
UI
S
a
b
r
i
x
C
o
n
n
e
c
t
i
o
n
Sabrix Centralized - Consolidation
Siebel
CRM
Legacy
Invoicing
Oracle
Financials
SAP SRM SAP ERP SAP CRM SAP Mobile B2B
J2EE 1.4 App Server
Oracle 10g, BEA WebLogic,
IBM WebSphere, JBoss
Course Overview Diagram
SabrixConnection
For SAP with
SAP Standard
Tax Interface
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Purchase Order
(MM)
Getting
Jurisdiction
Codes from
Sabrix
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
SabrixConnection for SAP Architecture High Lights
The SabrixConnection is a Java application that creates and
transmits a simple XML structure over standard HTTP protocols.
Utilizes Java technology combined with Sabrixs XML integration
layer to connect with these SAP applications through SAPs Java
Connector (JCo):

R/3 3.0* and higher

mySAP CRM 2.0B and higher

mySAP Mobile Client 4.0 and higher


One SabrixConnection code base supports integration with SAP
R/3, CRM, and Mobile Client.
The SabrixConnection is a data transport mechanism only
contains no embedded tax or calculation logic.
No special tax or calculation logic is required within SAP.
The SabrixConnection can exchange standard SAP predefined
data elements plus 40 additional line-level, customer-defined
transaction data between SAP and the Sabrix Solution.
The SabrixConnection for SAP at Customers
Standard SAP Sales & Use Tax Interface System to 3rd
party tax packages:
SAP provides a Standard Tax Interface System, which is
capable of passing all needed data to an external tax
system which determines tax jurisdictions, calculates taxes
and then returns these calculated results back to SAP. This
occurs during master data address maintenance to retrieve
the appropriate tax jurisdiction code and during order and
invoice processing out of FI, MM, and SD, to retrieve tax
rates and tax amounts. The Tax Interface System also
updates the third partys software files with the appropriate
tax information for legal reporting purposes.
SAP Standard Tax Interface
SAP Integration with Sabrix
SAP Integration with Sabrix
O
O
O
O
O
O
O
O
O
SabrixConnection for SAP
R/3 Applications
A/R
Sales Distribution
(SD)
Financials
(FI)
A/P
OE
Invoicing
Materials Management
(MM)
Purchasing
Java
Runtime
Environment
S
a
b
r
i
x
C
o
n
n
e
c
t
i
o
n
S
A
P

T
a
x

I
n
t
e
r
f
a
c
e
LIV
Goods Movement
SAP Tax Calculation
A simplified view
Customer / Vendor
Master Data
Tax relevant info
Partner details
Material Master Data
Tax relevant info
Material details
Other Master Data
Tax relevant info
Condition Tables
Tax Code
Prices/Discounts
Business Transaction
Tax / Pricing Procedure
Tax Attributes
Tax Call
Tax Rates / Values
Call to
Sabrix
Results
from Sabrix
Transaction Partner Data
Vendor/Sold-to
Ship-to/Ship-from
Transaction Item Data
Materials
Quantities
Locations
Prices
Course Overview Diagram
Remote
Function Call
Breakdown
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Purchase Order
(MM)
Getting
Jurisdiction
Codes from
Sabrix
The life of a
Sales Order
(SD)
SabrixConnection
For SAP with
SAP Standard
Tax Interface
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
SAP Remote Function Calls (RFC)
There are four types of Remote Function Calls (RFC) made from SAP
through the SAP Tax Interface System to Sabrix.

RFC_DETERMINE_JURISDICTION

Used to call Sabrix for a Jurisdiction Code

RFC_CALCULATE_TAXES_DOC

Used to call Sabrix for tax rates and tax amounts

RFC_UPDATE_TAXES_DOC

Used to call Sabrix and update Sabrix Audit with the tax rates and tax
amounts

RFC_FORCE_TAXES DOC

Used to call Sabrix and when SAP and Sabrixs tax rates and tax amounts
do not match SAP forces the SAP posting and the Sabrix Audit Data to
match the amount SAP shows for rate and amount. SAP always wins.
These RFCs hold the SAP structure for the fields needed in determining
Jurisdiction Codes or Tax Calcs in Sabrix.
SAP Predefined RFCs
RFC_DETERMINE_JURISDICTION
This is the predefined function that calls Sabrix to get a Jurisdiction Code for
a new or an updated master address record. This is the part of the
Integration which handles Address Management to support Jurisdiction
Codes.
It calls the Sabrix Address Validation Servlet with address data and once
Sabrix finds the appropriate jurisdiction, that data is returned to SAP in the
form of a predefined code which is then stored on the master record.
Jurisdiction Codes:
US USTX7506713480 (CountryState|Zip|Plus4|In/OutCityInd)
CAN CABC (Country|Province)
Other SG (Country)
Address Selection
RFC_CALCULATE_TAXES_DOC
This is the predefined function that calls Sabrix to get Tax Rates
and Tax Amounts.
The Jurisdiction Code is sent rather than address details.
Transactions triggering a Tax call use this RFC:

Order to Cash (Sales & Distribution, SD) sent per document

Purchase to Pay (Materials Management, MM) sent per line


This call does not get audited in Sabrix.
Get Tax Rates & Amounts from Sabrix
RFC_UPDATE_TAXES_DOC
This is the predefined function that calls Sabrix to get Tax Rates
and Tax Amounts when transaction is posted to the GL in SAP.
The Jurisdiction Code is sent rather than address details.
Transactions triggering a Tax call use this RFC:

Order to Cash (SD, FI-AR Posting) per document

Purchase to Pay (MM, FI-AP Posting) per line


This call does get audited in Sabrix.
Post Tax Rates & Amounts from Sabrix
RFC_FORCE_TAXES_DOC
This is the predefined function that calls Sabrix to get Tax Rates and
Tax Amounts and when those rates deviate from the data in SAP,
this call will change the tax results in Sabrix and audit the SAP
determined rates and amounts.
The Jurisdiction Code is sent rather than address details.
Transactions triggering a Tax call use this RFC:

Order to Cash (SD, FI-AR) per document

Purchase to Pay (MM, FI-AP) per line

Record to Report (FI-GL) per line


This call does get audited in Sabrix.
Change Tax Rates & Amounts from Sabrix
Course Overview Diagram
Getting
Jurisdiction
Codes from
Sabrix
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Purchase Order
(MM)
Remote
Function Call
Breakdown
The life of a
Sales Order
(SD)
SabrixConnection
For SAP with
SAP Standard
Tax Interface
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Jurisdiction Code Assignments
This section of the SAP / Sabrix Integration program covers the
RFC_DETERMINE_JURISDICTION. This is the predefined function that
calls Sabrix to get a Jurisdiction Code for a new or an updated master
address record. This is the part of the Integration which handles Address
Management to support Jurisdiction Codes.
SAP calls Sabrixs Address Validation Servlet to obtain a Jurisdiction
Code.

New Customer / Vendor record creation requires Jurisdiction Code

SAP sends Jurisdiction Code in place of full address for tax results

Master records that contain an address requiring Jurisdiction Codes


include:

Customer Master

Vendor Master

Plant

Cost Center

Company
What is a Jurisdiction Code?
A Jurisdiction Code is a 15 digit (maximum) code which represents an
entire address.
For US addresses, it includes Country code, State code, Zip code, Plus
4 code and an in city or out of city limits indicator. In Canada, it
includes only the Country code and the Provincial abbreviation code.
The Jurisdiction Code structure for US, Canada and all other countries
is defined by the following tables:
United States Structure (procedure TAXUSX)
Country & State (4)
Zip Code (5) Location (4) Indicator (1)
USNY 14744 8703 0
The two character
country code and
two character US
state combined.
The five digit US zip
code.
The four digit US
plus four data. *If
null, Sabrix changes
to XXXX as a
placeholder.
The indicator on whether
the address is located
within or outside city
limits. 0 = in city, 1 = out
of city.
Note: Why use XXXX as the placeholder for a null Plus 4? Because
0000 and 9999 are valid Plus 4s in the United States! SAP requires
data in those positions and XXXX is not a valid Plus 4 anywhere that
we could find!
What is a Jurisdiction Code?
Canada Structure (procedure TAXCAX)
Country (2)
Province Code (2) Not Used (0) Not Used (0)
CA BC
The two character
country code for
Canada.
The two character
Province abbreviation.
All Other Countries Structure (procedure ZTAXxx) [xx
represents Country Code or EU for European Union countries]
Singapore Structure (procedure ZTAXSG)
Country (2)
Not Used (0) Not Used (0) Not Used (0)
SG
The two character
country code for
Singapore.
Quick Review
3. How would the following address be
represented as a Jurisdiction Code?
Daphne, AL 36527 USA
4. What about Vancouver, BC, V5Y 1V4
CANADA?
5. One more Z400 70546 Stuttgart, Germany
6. What component of the Sabrix Application
Suite is called to obtain a Jurisdiction
Code?
1. What type of data in SAP requires
Jurisdiction Code creation?
2. What does a Jurisdiction Code
represent?
Address Evaluations

Using Sabrix Zones to determine taxing jurisdictions

The source system holds the customer or vendor addresses and when
transactions are sent to Sabrix, the Zone tree is used to determine Country,
Province/State, County, City and District level details from the address data
sent.

Look up Plus 4 of 4005 in Montgomery, Alabama to show Zone Tree


lookup. Sabrix Solution Login

Look up Zip code 36043 in Montgomery, Alabama to show Zone Tree


lookup. Sabrix Solution Login
Sabrix found the zip code in Alabama, but because there was no other data sent
Sabrix used the default attached to that zip code which determined the jurisdiction
to reside in an unincorporated area in Lowndes County. In this case, the zip code
determined is outside of the city limits, so no city sales / use tax would apply.
This example uses the Sabrix Calculation Servlet, where it finds the closest match possible using
defaults set on zones in cases where multiple addresses might be valid. Well discuss why this is
important later.
Zone Tree Lookups Global

Zones outside of the US generally require less data to resolve to the correct
taxing jurisdiction. Since most countries assess VAT at the Federal level,
sending Country level address information to Sabrix generally all that is
required.

Exceptions are Countries such as Canada, which also has Provincial level tax;
Brazil, India, Mexico, which have State and City level VAT; and areas within a
country that are excluded from the local VAT regime. Example includes the
Copenhagen Free Port Zones in Denmark.

Look up Copenhagen, Denmark to show Zone Tree lookup. Sabrix Solution Login
Address Validation Servlet

The SAP Jurisdiction Determination function calls the Sabrix Address


Validation Servlet, which behaves slightly different on the US side then the
Calculation Servlet zone lookup as described above. The difference being in the
goal of the function.

Calculation Servlet takes data given in the address and determines the
most accurate jurisdiction possible. Default zones are used when less
granular information is involved in the transaction.

Address Validation Servlet finds the most accurate jurisdiction given the
information in the transaction. However, rather than settling on the defaults
when multiple results are determined, Sabrix will send all possible
jurisdiction choices back to SAP to let the User decide which is the
appropriate address for the master data record. The default zone is always
the first record returned in this situation.
Address Validation Servlet

Look up the following address using the Address Validation Servlet :


<ADDRESS>
<COUNTRY>US</COUNTRY>
<STATE>CO</STATE>
<CITY>LITTLETON</CITY>
<POSTCODE>80123</POSTCODE>
<GEOCODE>1712</GEOCODE>
</ADDRESS>

Giving the detail down to the Plus 4 is the most granular option for address
data to be passed. When a Plus 4 is located within the zip code passed, Sabrix
will only return one valid address.

The Zip plus 4 combination in this example was found in the Sabrix Zone tree
only once and it resolved to the city of Littleton in Arapahoe County.
Address Validation Servlet

Now look up the same address omitting the Plus 4. Address Validation Servlet
<ADDRESS>
<COUNTRY>US</COUNTRY>
<STATE>CO</STATE>
<CITY>LITTLETON</CITY>
<POSTCODE>80123</POSTCODE>
</ADDRESS>
Address Validation Servlet

In this case, the Address Validation Servlet found 4 possible matches:

City of Columbine in Jefferson County

Jefferson County, in the unincorporated area or outside of the city limits

City of Littleton in Arapahoe County

Arapahoe County, but in an unincorporated part of that county

These addresses are all returned so that the user can select the appropriate
address. In SAP, the user is presented with the list of possible addresses. The
user must then select the appropriate address and that Jurisdiction Code is then
saved on the record.

Its important that the user chooses the correct address. Consider this, if the
city of Littleton is chosen, the combined tax rate on June 1, 2006 is 7.35%. If
instead the user selects the unincorporated area in Arapahoe County, the
combined tax rate for the customer is only 4.35%.

Sabrix recommends the user look up the appropriate plus four data to determine the
proper address.
Address Validation Servlet

Sabrix does not store every possible plus 4 available in the United States.
Sabrix is an exception based product, and using exception based thinking, Sabrix
only stores the Plus 4 data that will affect taxability.

Lets use Baltimore, Maryland as our example. There are hundreds of Plus 4s
in Baltimore alone, but there are no local tax rates. If a zip code resolves to two
different counties for Baltimore at the same time, it doesnt matter the choice
because the State tax is all that calculates in Maryland.

From a Tax Determination standpoint, the above holds true. From an Address
Validation standpoint, the USPS address on the customer record is really most
important. Thats why Sabrix recommends the user look up the correct address
using USPS data prior to selecting the address in SAP.
Servlet Behavior
Address Validation Servlet Behavior Recap

When Zip Plus 4 is sent and Sabrix stores the Plus 4 value, only one
Jurisdiction Code is returned.

When Zip Plus 4 is sent and Sabrix does not store the Plus 4 value, the default
zone for the zip code is returned.

When Zip Plus 4 is not sent, and the Properties file defaults to one returned
value, the default zone for the zip code is returned.

When Zip Plus 4 is not sent, and the Properties file is changed to return all
results, all possible zones for the given zip code are returned with the default
zone shown first in the list.
Recommendations
Sabrix Recommendations

For SAP users who do not send the Zip Plus 4 addresses, Sabrix recommends
they allow the user to select from the list. Sabrix suggests the user look up the
appropriate Plus four data in USPS to determine the proper address.

If they dont want the user to have to select from a list, they should use the
default Properties setting which sets the maximum jurisdiction returns to equal 1
and accept the default address. The risk is that the end user wont have an
indication that there may be a tax implication due to a list of possible jurisdictions.
They wont have an option to either select the correct jurisdiction code. This is not
the Sabrix recommended solution.

Sabrix recommends users send the Zip and Plus 4 data.


SabrixConnection Properties File
Properties file: The connection.properties file can be used to change the behavior
of the Jurisdiction Code lookup in the following ways:

Set the number of jurisdictions returned to SAP for users who do not send
Plus 4 data
The default is 1 and returns the Sabrix default zone. Users can set this to 99 as that
is the maximum number SAP can accept back from Sabrix. This is not Sabrix
recommended. Rather, when SAP users do not send Plus 4 data, users should look up
the correct information in USPS data.

Set the error message behavior for when maximum number is reached
Setting to control if error message should be raised when the maximum addresses
is reached or if instead the max number of addresses specified should be returned. The
default is N.
SabrixConnection Properties File

Set the connection to find only jurisdictions where the county sent must be
an exact match
When the Sabrix Address Validation Servlet is called with a County address given
when this flag is set, Sabrix will only send jurisdiction code selections when the county
given is an exact match with findings in Sabrix. If the county is not found in Sabrix within
the State sent by SAP, Sabrix will return an error rather than returning the correct State /
County combination. This will help SAP users correct situations where Counties are
spelled wrong. Default is set to No.

Set the connection to find only jurisdictions where the city sent must be an
exact match
When the Sabrix Address Validation Servlet is called with a City address given
when this flag is set, Sabrix will only send jurisdiction code selections when the City given
is an exact match with findings in Sabrix. If the City is not found in Sabrix within the State
sent by SAP, Sabrix will return an error rather than returning the correct State / City
combination. This will help SAP users correct situations where Cities are spelled wrong.
Default is set to No.

Set the override county flag to allow the Sabrix returned value for county to
be saved in the SAP address details.
Quick Review
3. What is a typical URL for the Address
Validation Servlet
4. Why is my user getting 99 choices for
address determination?
5. What is the Sabrix recommended way to
get only one returned result?
6. How many local authorities have a sales or
use tax in Maryland?
1. What kind of jurisdictions are found
using the Zone Tree?
2. What is the fundamental difference
between the zone lookups for Calcs
and zone lookups using the Address
Validation Servlet?
Course Overview Diagram
The life of a
Sales Order
(SD)
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Purchase Order
(MM)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Quote-to-Cash
Pre-Sales
Activities
Payment
Sales Order
Processing
Shipping
Billing
Sales document type
Sales document functions
Delivery scheduling
Shipping point and route details
Delivery block
Edit delivery list
Picking
Post goods issue
Edit billing list
Inventory
Sourcing
Sales Order Process with Tax Calls
Master Data SD Transaction Data
Customer
Address (ship
to/ship from)
Conditions










(how to ship,
etc)
Pricing
Material Master
Product
S100
S200
S300
Quote
Customer 50
Price $2,500
ea
S100
QTY 1000
Plant
S100
3000 = QTY 50
3100 = QTY 5000
Order
Customer 50
Price $2,500
ea
S100
QTY 1000
Plant 3100
Delivery
Customer 50
Price $2,500
ea
S100
QTY 1000
Plant 3100
Shipping
Notification
Invoice
Customer 50
Price $2,500
ea
S100
QTY 1000
Plant 3100
Freight $1,200
Earlier versions of SAP do not have a tax call at delivery
stage. Dont know what freight will be until delivered.
Tax
Calc
$112,500 tax
Tax
Calc
$112,500 tax
Tax
Calc
$112,554 tax
GL Post AR
Accts
Receivable
$2,501,200
AR Materials
$2,501,200-
Offset
FI Post
Other Tax Relevant Data

Tax Calc
& Audit
$112,554 tax
$112,554 Tax
$112,554-
Offset Tax
Sales Order Process with Tax Calls with FORCE
RFC_FORCE_TAXES_DOC
When the Invoice is then posted to the GL, upon SAVE a call is made to
Sabrix using the CALCULATE_TAX RFC and that tax amount from Sabrix
is compared to the tax amount on the SAP Invoice. If they match, the
amounts are posted to SAP AR and saved in Sabrix Audit.
If the amount returned from Sabrix does not match the amount on the
SAP Invoice document, then the tax amount from the SAP Invoice gets
posted to the SAP AR and saved in Sabrix Audit.
Sales Order Process with Tax Calls with Force
SD Transaction Data
Invoice
Customer 50
Price $2,500
ea
S100
QTY 1000
Plant 3100
Freight $1,200
Tax
Calc
$112,554 tax
GL Post AR
Accts
Receivable
$2,501,200
AR Materials
$2,501,200-
Offset
FI Post
Tax Calc
& Audit
$118,214 tax
COMPARE
$112,554 Tax
$112,554-
Offset Tax
F
O
R
C
E
F
O
R
C
E
Pricing Procedure
Pricing Procedure Header
Per document
Item Pricing
Product A for price of $100
Product B for price of $90
Product A for price of $110 when shipped from Denver, CO
Process:
Call is initiated by the header.
Call loops through all lines and creates a visual representation of all lines in one
document.
Example: one RFC call with 3 lines included
The Price Procedure is configured with the Tax Jurisdiction levels that Sabrix determines
and sends back to SAP. These levels are mapped to the appropriate GL Account numbers
for posting.
Course Overview Diagram
The life of a
Purchase Order
(MM)
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Purchase-to-Pay
Requisition
Pay Vendor
Purchase
Order
Goods
Receipts
Logistics
Invoice
Verification
Purchase Order Process with Tax Calls
Master Data MM Transaction Data
Vendor
Address
(sold to)
Conditions
Pricing
Material Master
Product
S100
S200
M300
Requisition
Vendor 102
Price
10.000
M300
QTY 1
Cost Center
5020 = France
5050 = Germany
6000 = Greece

PO
Vendor 102
Price
10.000
M300
QTY 1
Cost Center
5020
Goods Receipt
Vendor 102
Price 10.000
M300
QTY 1
Cost Center
5020
Receipt
Notification
LIV
Vendor 102
Price 10.000
M300
QTY 1
Cost Center
5020
Non-taxable
Freight 250
Tax
Calc
1.600 tax
Tax
Calc
1.600 tax
Tax
Calc
1.600 tax
GL Post AP
Accts Payable
10.000
AP Inventory
10.000-
Offset
FI Post
Other Tax Relevant Data

Tax Calc
& Audit
1.600 tax
1.600 Tax
1.600-
Offset Tax
Course Overview Diagram
Misc Vendor
And Customer
Invoices
(FI)
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
SabrixConnection
For SAP
Configuration
Breakdown
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Miscellaneous Vendor Invoice
GL Post AP
Accts Payable
$1,200.00
AP Services
Materials
$1,200.00-
Offset
FI Post
Tax Calc
& Audit
$60.00 tax
$60.00 Tax
$60.00-
Offset Tax
FI Transaction Data
Create Misc Invoice
Sues Plant Watering
Company
Amount
$1,200.00
Tax Calc
$60.00 tax
5% Rate
$60.00 Tax
Tax Procedure
Item Pricing
Product A for price of $100
Product B for price of $90
Product A for price of $110 when shipped from Denver, CO
Process:
Call is initiated by the line.
Call creates a visual representation of each line one at a time
Example: three RFC calls with 1 lines included
The Tax Procedure is configured with the Tax Jurisdiction levels that Sabrix determines
and sends to SAP. These levels are mapped to the appropriate GL Account numbers for
posting.
Procedure Examples
Pricing Procedures
Tax Procedures
Data Elements needed for Tax

Basic Elements

Vendor or Customer registration numbers

Ship from/to

Point of title transfer

Countries of buyer and seller (for services only)

Supply/service country (for services only)

Additional Elements

Complex transactions

Ultimate buyer

Final destination
Determination Elements Examples
What other elements are used in your SAP implementation that
might help to drive tax policy?
Sabrix can Complement or Enhance available Data
Input XML Options Input XML Options TransEditor will set
transaction type
TransEditor will set
transaction type
Standard SAP Tax Interface Fields
Before you Append the 40 additional elements offered by
Sabrix to further enhance your tax policy requirements, use
the 7 additional elements offered in your Standard SAP Tax
Interface to map necessary data elements.
They are highlighted here and can be found on
page 62 in the R/3 Tax Interface Configuration Guide.
Course Overview Diagram
SabrixConnection
For SAP
Configuration
Breakdown
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Misc Vendor
And Customer
Invoices
(FI)
SAP Tax Interface
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
Installing the SabrixConnection for SAP
Ensure JVM 1.4 and JCo 2.1.6 both installed
Download the SabrixConnection from the Customer Center
Unzip the files into the desired directory
Perform one of the following actions:
Copy the sapjco.jar file into the directory in which you installed the SabrixConnection for SAP
Set the SAPJCO_DIR variable in the SabrixConnection.bat or SabrixConnection.sh files,
depending on your operating system.
Review the trace settings described in Troubleshooting the SabrixConnection for SAP (page 29)
Configure the SabrixConnection Properties file
Edit the SabrixConnection.properties file found in the directory in which you unzipped the files.
Use the table and sample file shown in the Installation Guide on pages 20 23.
Properties File Configuration
Two categories:

Connection parameters;
control how the interface works, e.g. number of servers, log
file location, log file content.

Business Transaction control;


impact directly how some business scenarios are impacted,
e.g. number of address records returned, city and/or county
matching.
Properties File Attributes and Descriptions
Properties File Attributes and Descriptions
Properties File Example
Interface Components
Connection files:
Connection call:
Connection logs:
Accessing Log Files
sabrixconnection.log
Sabrix Solution Navigation: Menu System About Log Files
View Log File
Course Overview Diagram
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
Q & A
Sabrix Basic
Configuration
For Testing
Only
Tax Policy
Configurations
In Sabrix
SAP Tax
Interface
Configuration
Breakdown
SAP Change Concept
System Configuration
Business specific definitions to uniquely represent a companys
structure, processes and entities.
Done through IMG within SAP as part of a system implementation.
Fully supported by SAP
System Enhancements
Change made to an SAP system for a particular customer need using
a predefined place within the SAP processing logic (user-exit in ABAP
code, APPEND in tables, etc.). SAP guarantees upward compatibility,
support limited.
System Modifications
Change to a SAP repository object altering core code or structures.
Modifications have to be reviewed, and where necessary adapted,
during a upgrade. Not supported by SAP.
*** Our VAT enhancement IS considered a Modification (slight change to
ABAP code) SAP hard codes the Tax Interface to accept ONLY US and CA
transactions. Our change allows ALL countries to pass.
Essential Integration Elements
Four RFC Calls

RFC_DETERMINE_JURISDICTION

RFC_CALCULATE_TAXES_DOC

RFC_UPDATE_TAXES_DOC

RFC_FORCE_TAXES_DOC
Uses SAPs Standard Tax Interface

Predefined list of standard transaction data elements (System Configuration)

Up to 40 additional custom data elements at the line level (System Enhancements)

Use SAPs predefined user-exit and ABAP code to pass additional data elements. No
changes to SabrixConnection is required. (System Modification)
All SAP Supported Tax Calls

Address Jurisdiction Determination (vendor, customer, cost center, plant)

MM purchase transactions: all order types (requisitions, contracts, PO), invoice verification,
posting to A/P

SD sales transactions: all sales order types (inquiry, quote, contract, sales order, credit/debit
memos), invoices (order, credit, debit, invoice), billing, posting to A/R

FI transactions: all miscellaneous customer and vendor invoices, posting to GL


The Tasks required in SAP to support Sabrix

Enable SAP to connect to Sabrix


Create the RFC connections and implement user exits for additional
data elements
Set up all events in SAP as taxable
Tax procedure changes to be made with Sabrix elements

Create and assign the new pricing procedure with the Sabrix
elements

Select Countries for Tax Automation by Sabrix


Tax codes per country and tax procedures to be made
Set up Tax Jurisdiction Code per country

Improve Tax Compliance


Include messages and applied registration numbers on invoices
Extend data capturing for tax reporting
The Tasks required in SAP to support Sabrix

Enable SAP to connect to Sabrix


Create the RFC connections and implement user exits for additional
data elements
Set up all events in SAP as taxable
Tax procedure changes to be made with Sabrix elements

Create and assign the new pricing procedure with the Sabrix
elements

Select Countries for Tax Automation by Sabrix


Tax codes per country and tax procedures to be made
Set up Tax Jurisdiction Code per country

Improve Tax Compliance


Include messages and applied registration numbers on invoices
Extend data capturing for tax reporting
RFC Connector
Create the RFC
connections and
implement user
exits for additional
data elements
International Tax Calls in SAP
Enabling the calls

SAP has hard-coded a check for US and CA to make the external tax call
only relevant to these two countries

To enable international calls a modification to the SAP code needs to be


performed to open up the tax call to all countries
method check_destination_country.
*
data: isocode type t005-intca.
*
* if i_dest_country ne space.
* select intca from t005 into isocode where land1 eq i_dest_country.
* endselect.
* if ( isocode ne 'US' ) and ( isocode ne 'CA' ).
* o_dest_country_rel = space.
* else.
* o_dest_country_rel = 'X'.
* endif.
* else.
* o_dest_country_rel = 'X'. "default always relevant!!!!!!!
* endif.
* Sabrix modification to open SAP for international tax integration
o_dest_country_rel = 'X'. "default always relevant!!!!!!!
endmethod.
Modification to Method
CHECK_DESTINATION
_COUNTRY in Class
CL_XTAX_RULES_CO
NFIGURATION
Modification to Method
CHECK_DESTINATION
_COUNTRY in Class
CL_XTAX_RULES_CO
NFIGURATION
Taxable Events
Set all events to taxable

Sabrix holds all necessary exemptions

Only transactions sent to Sabrix will be in the audit data base

Sabrix and SabrixConnection have superior performance

Simplified configuration and master data setup in SAP


The SAP Implementation Guide and Configuration
Master Updates
Material
Customer
Plant
Tax Procedures
Tax Procedure changes to be made with Sabrix elements
New Pricing Procedure
Create and assign the new pricing procedure with the Sabrix
elements
The Tasks required in SAP to support Sabrix

Enable SAP to connect to Sabrix


Create the RFC connections and implement user exits for additional
data elements
Set up all events in SAP as taxable
Tax procedure changes to be made with Sabrix elements

Create and assign the new pricing procedure with the Sabrix
elements

Select Countries for Tax Automation by Sabrix


Tax codes per country and tax procedures to be made
Set up Tax Jurisdiction Code per country

Improve Tax Compliance


Include messages and applied registration numbers on invoices
Extend data capturing for tax reporting
Tax codes per country and tax procedures to be made
Set up Tax Jurisdiction code per country
USA
TXJCD_L1 Country / State
TXJCD_L2 ZIP
TXJCD_L3 Location Code
TXJCD_L4 Out of City" indicator (0 = in city, 1 = out of city)
Canada
TXJCD_L1 Country
TXJCD_L2 Region
TXJCD_L3
TXJCD_L4
International
TXJCD_L1 Country
TXJCD_L2
TXJCD_L3
TXJCD_L4
Tax Jurisdiction Code
Defining the tax
jurisdiction code
OBCO
The Tasks required in SAP to support Sabrix

Enable SAP to connect to Sabrix


Create the RFC connections and implement user exits for additional
data elements
Set up all events in SAP as taxable
Tax procedure changes to be made with Sabrix elements

Create and assign the new pricing procedure with the Sabrix
elements

Select Countries for Tax Automation by Sabrix


Tax codes per country and tax procedures to be made
Set up Tax Jurisdiction Code per country

Improve Tax Compliance


Include messages and applied registration numbers on invoices
Extend data capturing for tax reporting
Returned Messages to SAP
Enhancements

Append RFC structure TAX_CAL_ITEM_OUT00

Condition base formulas need to be copied and changed


R/3 Applications
Standard RFCs
Pricing/Tax Proc.
S
a
b
r
i
x
C
o
n
n
e
c
t
i
o
n
S
A
P

T
a
x

I
n
t
e
r
f
a
c
e
Tax Manager
These changes will allow return of
additional information to the pricing of SD
via condition base formulas so that invoice
messages can be stored in the transaction
text conditions for further processing.
These changes will allow return of
additional information to the pricing of SD
via condition base formulas so that invoice
messages can be stored in the transaction
text conditions for further processing.
Additional Fields for Reporting
Custom Fields

40 Additional Data Elements

10 fields of 10 char
20 fields 25 char
8 fields 50 char

2 fields 200 char

SAP User-Exit ZXFYTU03


Used to assign transaction data to
the enhanced tax interface structure fields

Sabrix TransEditors
Move SAP value to User_Element-Attribute for taxability
Course Overview Diagram
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
Q & A
SAP Tax
Interface
Configuration
Tax Policy
Configurations
In Sabrix
Sabrix Basic
Configuration
For Testing
Only
Every company code integrating with the external system needs to be
setup in Sabrix as a company with the External ID set as the SAP
company code value.
Basic Sabrix Configuration for End-to-End Test
Basic Sabrix Configuration for End-to-End Test
Troubleshooting the Integration between SAP & Sabrix
Use the Transaction Function Builder in SAP (workbench)
Tax Determination
SabrixConnection
for SAP
1. SM59; RFC
Destination
Sabrix ping
2. SMGW; view of all
connections
SABRIX
SABRIX
SABRIX
3. SE37; SAP WB
Tax Doc
Create a Business
Trx order creates
call
Registers IP
address
(handshake)
Sabrixs
Connection Pools
are listening
SM59 RFC Destination Setup
SMGW Gateway Monitor
SE37 Function Builder
SE80 Function Builder
SE38 Report RFYTXDISPLAY
Course Overview Diagram
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
Q & A
SAP Tax
Interface
Configuration
Sabrix Basic
Configuration for
Testing
Only
Tax Policy
Configurations
In Sabrix
Tax Configuration Flexibility
Standard Rates, Rules, Zones, Zone Aliases, Authorities
Global
Purchase Transaction Taxation
Purchased Computer from Vendor w/o Nexus
Special Complex Taxation
Cross Border, Min/Max, Triangulation
Product Exceptions
Newspapers reduced to 6% in Belgium
Sabrix
Delivers
Standard
Product
Components
Sabrix
Enables
Configured by
the
Tax
Professional
Allocations
Kit sold for $500 includes computer, software & training
Custom Product Exceptions
Computer equipment 3% - special state deal
Exemption Certificate Mgmt.
Customer ABC is exempt from Tax
Custom Rates and Rules
Our Sales Tax in LA county is 2%
TransEditors
If Job Code = 35132 and GL = 98000, then Trx Type is DS
Corporate Structure
Business entities, advanced user security
Custom Authorities
Industry-specific excise taxes (fuels, alcohol, etc)
Tax Treatment Logic
Transaction Data
Elements (from ERP)
Buyer Profile:
Registration (VAT)
Establishment (Nexus)
Primary Address
Seller Profile:
Registration (VAT)
Establishment (Nexus)
Primary Address
Transaction Details:
Supply Location
Ship From
Ship To
Product Code
Point of Title Transfer
Simplification (EU)
Transaction Type
(Goods/Services)
Transaction
Data
Tax Data Elements (to ERP)
Determination Results
Jurisdiction(s) where transaction need to be
reported
Tax Type (=Transaction Reporting Type)
Rate and/or Fee to be applied
VAT Rate amount due (output) / to be
reclaimed (input)
Sales/Use Rate and/or Fee due or
Consumers Use and/or Fees to be assessed
Tax Results
Business
Applications
Sabrix
Connections
How is Sales, Use, Consumers Use and /or VAT
Treatment Determination Implemented in Sabrix?
Processing Flow of Sabrix Tax Determination
Locations TransEditors
Calculation Products
Determine
Authorities
Exemptions
Tax Determination
I
n
p
u
t

D
a
t
a
O
u
t
p
u
t

D
a
t
a
Allocations
Scope of Each Module
Locations TransEditors
Calculation Products
Determine
Authorities
Exemptions
Allocations
Invoice
Data

Every module acts on an invoice in its entirety.

Once a module processes an invoice the results can


be utilized by subsequent modules.

You may not alter the execution path.


Invoice
Data
Invoice
Data
Invoice
Data
Invoice
Data
Invoice
Data
TransEditors are used to translate input data.
Tax policy in TransEditors should always be avoided, but sometimes its
necessary.
Use hierarchies to improve readability
Performance impacts of large TransEditors
TIP: Start with least likely exception
Be aware of line data vs. invoice data elements
Mathematical computation is not available
Document!!!!
TransEditors
The Sabrix TransEditor enables you to modify the data sent to the
Transaction Logic Engine automatically if certain conditions are met.

Allocations act on a single line at a time

An allocation can split the line into an unlimited number of allocation lines

Each allocation line is processed as if it were a line provided by the


source system

An allocation can use and set attributes at the invoice level, but cannot
reference the attributes of another line.

An allocation can be selected by naming it from the source system or


setting the name value in a TransEditor

Sample Uses

Mail distribution transactions

Services performed across multiple jurisdictions

Items sold as a kit


The Sabrix Solutions Allocations functionality enables you to split
individual line items into logical components where applicable,
resulting in increased accuracy of your tax liabilities.
Allocations

A simple way to minimize data required from the source system.

A company may have an unlimited number of locations.

Locations may be organized into location sets so the source system only
needs to provide a single value for a pre-determined combination of
locations.

Locations and location sets may be set in TransEditors or Allocations.

During determination, Sabrix processes location data in the following


order

Line level location detail provided by the source system.

Location name at the line level.

Location set at the invoice level.

Invoice level location detail provided by the source system.

Location name at the invoice level.

Location set at the line level.


Predefined locations can be defined, given names and
referenced during the tax determination process.
Locations

Provided with Sabrix content

Utilizes Sabrix Internal Logic (jurisdiction engines)

Authority Logic Groups are made up of multiple records which include:


Role (buyer, seller, middleman)
Transaction Type (goods, default services, etc.)
Date Range
JE Class

Behavior of the JE can be modified using Authority Options

Custom authorities are created from templates which have the JD assignment
already made.

JE logic design is provided by Sabrix Tax Research and provided to Sabrix


Engineering in the form of a combination of pseudo code and text descriptions.
Determining Authorities uses data on the transaction and applicable
tax law to determine the applicable tax authorities on the transaction
and their associated tax types.
Determine
Authorities

Exemption certificates are associated with the customer for sales


transactions

They may be associated with the supplier for purchase


transactions, but a TransEditor is often required

An exemption certificate can be partially exempt, fully exempt or


not at all

A physical exemption certificate doesnt need to be present in


order to use exemptions (e.g. government exemptions, managing
usage based exceptions, etc)

Exemption certificates are selected during transaction processing


using the customer data (number and name), status, date, and
exempt reason. This cannot be controlled.

Blanket vs. Limited Use

You may limit an exemption to specific products (inclusion only).


Exemption certificates enable you to correctly calculate tax on
transactions for which part or all of the transaction is tax-exempt.
Exemptions

Product exceptions are comprised of two components:

Product Categories classifications defined by Sabrix Tax Research


with associated product taxability rules by authority.

Product Mappings translation from customer-specific product codes


to product categories.

Product Categories may be defined by the customer

Product Categories have an associated UNSPSC classification


for identification purposes

A product category may be fully excluded from the tax base, it


may be partially excluded, or it may have any number of special
rules

Milk in California

Shoes in New York


Product exceptions are used to identify product categories and
apply authority exceptions, where appropriate.
Products

Every authority has a set of tax rules within Sabrix.

A rule is determined using rule qualifiers such as product, exempt reason, tax type, etc.

The rule matching process

Scans all rules based on rule order.

A match is found when the values of all rule qualifiers on the rule match the corresponding values
on the transaction.

A null value on any rule qualifier is a wildcard.

Stops searching once matching rule is found.

Every rule has an associated rate or may be exempt.

Calculation methods on rules are used to decide how tax is calculated

Gross times amount

Fee on quantity

ICMS (Brazil)

Tax base may include the gross amount as well as taxes previously calculated by other
authorities

Max tax situations are managed using tiered and graduated rates
Calculation is the process of calculating the taxes for each of the
authorities identified during tax determination.
Calculation
Designing Sabrix Configurations
ong Term. Understand that tax configurations need to handle the
business over a long period of time. Tax professionals do not want to
tweak configurations on a regular basis.
xceptions Only! Leverage Sabrix content by configuring the exceptions
only. Note that exceptions includes missing data.
ystem Independent. Sabrix is designed to be used by multiple business
applications simultaneously. Make sure the configurations leverage and
dont limit this capability.
imple. Keep the configurations simple and intuitive.
L
E
S
S
Course Overview Diagram
Basic SAP
R/3
Overview
Sabrix
Products and
Technical
Overview
The life of a
Sales Order
(SD)
Remote
Function Call
Breakdown
Getting
Jurisdiction
Codes from
Sabrix
SabrixConnection
For SAP with
SAP Standard
Tax Interface
The life of a
Purchase Order
(MM)
Misc Vendor
And Customer
Invoices
(FI)
SabrixConnection
For SAP
Configuration
Breakdown
Tax Policy
Configurations
In Sabrix
SAP Tax
Interface
Configuration
Sabrix Basic
Configuration for
Testing
Only
Q & A
January 2007
Sabrix Login
SAP / Sabrix
Integration Fundamentals

Das könnte Ihnen auch gefallen