TM 00102 AFC User Manual SAU

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 342 [warning: Documents this large are best viewed by clicking the View PDF Link!]

AvaTax for Communications
Sales and Use User Manual
Release: 9.19.1807.1
Document: TM_00102_0055
Date: 06/25/2018
All trade names referenced herein are either trademarks or registered trademarks of their respective companies.
© Avalara, Inc. 2018. CONFIDENTIAL
Avalara for Communications - Contact Information
Address
Avalara, Inc.
512 South Mangum Street, Suite 100
Durham, North Carolina, 27701
Toll Free
800-525-8175
Corporate Site
http://communications.avalara.com/
Comms Platform Site
https://communications.avalara.net
Email
communicationsupport@avalara.com
All trade names referenced herein are either trademarks or registered trademarks of their respective companies.
© Avalara, Inc. 2018. CONFIDENTIAL
Document Revision History
The Revision History log lists the date and description of the most recent revisions or versions of the
document.
Date
Version
Description
03/25/2016
0028
Avalara branding updates to reflect the transition to the new company and
product names have been incorporated into this document. Please see
Appendix H Avalara Product Names
for specific changes in product
references and descriptions.
04/25/2016
0029
Updated with table of Tax Categories in Section 2.3. Additional release
number and version updates throughout Section 8.
05/25/2016
0030
Addition of 64, 160 and 172 as new tax types in Section 4.5 Tax Types.
Additional release number and version updates throughout Section 8.
06/24/2016
0031
Updates in Section 5.5.7 Customsort.exe to command line and arguments;
Release number, version and header file updates throughout Section 8.
07/25/2016
0032
Release number, version and header file updates throughout Section 8.
08/25/2016
0033
Release number and version updates on cover and in Section 8.2
09/23/2016
0034
Release number, version and header file updates on the cover and
throughout Section 8.
10/25/2016
0035
Updated description in Section 3.1.4 Incorp. Release number, version and
header file updates on the cover and throughout Section 8.
11/23/2016
0036
Added new tax type 469 in Section 4.5 Tax Types. All references to ‘reverse’
tax calculations in the AFC engine have been updated and renamed to reflect
the current naming convention which is ‘tax inclusive’ calculations. As a
result, 6 APIs in
Section 7.8.1 API Listings
have been updated and renamed.
Release number, version and header file updates on the cover and
throughout Section 8.
12/22/2016
0037
Added new tax types 470-472 in Section 4.5 Tax Types. Release number,
version and header file updates throughout Section 8.
01/27/2017
0038
Release number, version and header file updates on the cover and
throughout Section 8. Also updated copyright year.
02/24/2017
0039
Added new tax types 24 and 281 in Section 4.5 Tax Types. Release number,
version and header file updates on the cover and throughout Section 8.
03/24/2017
0040
Release number, version and header file updates on the cover and
throughout Section 8.
04/25/2017
0041
Updates to Section 4.7 Exclusions, Section 6.3 Federal or State Exclusion and
Section 7.8.57 EZtaxSetStateExclusions
. Release number, version and header
file updates on the cover and throughout Section 8.
05/25/2017
0042
Updated Section 6.2.3.1 Sales/Resale Flag. Release number, version and
header file updates on the cover and throughout Section 8.
06/27/2017
0043
All references to ‘Customer Mode’ in the AFC engine have been updated and
renamed to reflect the current naming convention which is ‘Invoice Mode.’
As a result, 2 APIs in
Section 7.8 API Listings
have been updated and renamed.
Also, added 2 new APIs,
EZTaxJTTypeEx
and
EZTaxPTTypeEx
, to support
JCodes. Release number, version and header file updates on the cover and
throughout Section 8.
07/27/2017
0044
Added note related to timestamp/invoice date passed in Section 6.2.3.5
Invoice Date
. Removed deprecated API,
EZTaxJTType
in
Section 7.8 API
Listings
. Release number, version and header file updates on the cover and
throughout Section 8.
All trade names referenced herein are either trademarks or registered trademarks of their respective companies.
© Avalara, Inc. 2018. CONFIDENTIAL
Date
Version
Description
08/25/2017
0045
Release number, version and header file updates on the cover and
throughout Section 8.
09/25/2017
0046
Updated name and description for tax type 220, added 2 new tax types 488
and 489 in
Section 4.3.5 Tax Types.
Added new APIS,
EZTaxGetCountry
ID and
EZTaxGetStateID
in
Section 7.8 API Listings
.
Release number, version and
header file updates on the cover and throughout Section 8.
10/25/2017
0047
Updated references to support site web site address in Section 8.7 Monthly
Update Procedures.
Updated Avalara contact information (address and
support site). Removed
Appendix H – Avalara Product Names
. Release
number, version and header file updates on the cover and throughout
Section
8.
11/22/2017
0048
Added tax type 492 in Section 4.5 Tax Types. Release number, version and
header file updates on the cover and throughout Section 8.
12/21/2017
0049
Release number, version and header file updates on the cover and
throughout Section 8.
01/25/2018
0050
Release number, version and header file updates on the cover and
throughout Section 8.
02/23/2018
0051
Updated the definition for surcharge in the table of Section 4.3.2 Returned
Tax Information
. Release number, version and header file updates on the
cover and throughout Section 8.
3/27/2018
0052
Added tax type 493 in Section 4.5 Tax Types. Release number, version and
header file updates on the cover and throughout Section 8.
4/25/2018
0053
Added new tax types (494 through 517) in Section 4.5 Tax Types. Release
number, version and header file updates on the cover and throughout
Section
8.
5/25/2018
0054
Updates to transiaction specifications throughout Section 3. Release number,
version and header file updates on the cover and in Section 8.
6/25/2018 0055 Added new tax types (518 through 520) in
Section 4.5 Tax Types.
Release
number, version and header file updates on the cover and in Section 8.
AFC Sales and Use User Manual| i
Copyright 2018 Avalara, Inc.
Table of Contents
Introduction ....................................................................................................................................... 1
Installation .................................................................................................................................. 1
Getting Started ............................................................................................................................ 1
The AFC Manual .......................................................................................................................... 1
Mapping ................................................................................................................................ 1
Transactions .......................................................................................................................... 2
Tax Calculations ..................................................................................................................... 2
Utilities .................................................................................................................................. 2
The Advantage of Using Functions ........................................................................................ 2
General Product Information ................................................................................................ 4
Mapping............................................................................................................................................. 6
Transaction and Service Types .................................................................................................... 6
Valid Transaction/Service Pairings .............................................................................................. 6
File transervdescsau.txt ......................................................................................................... 6
Tax Categories ............................................................................................................................. 7
Transactions ....................................................................................................................................... 7
Customer Information ................................................................................................................. 8
Customer Number ................................................................................................................. 9
Customer Type ...................................................................................................................... 9
Exemption Levels ................................................................................................................... 9
Incorp .................................................................................................................................. 10
Invoice Number ................................................................................................................... 10
JCode Exemption Levels ...................................................................................................... 10
Tax Type Exemptions ........................................................................................................... 10
Optional Fields ..................................................................................................................... 11
Company Information ............................................................................................................... 13
Company Identifier .............................................................................................................. 13
Transaction Data ....................................................................................................................... 13
Attribute .............................................................................................................................. 13
Properties ............................................................................................................................ 13
AFC Sales and Use User Manual| ii
Copyright 2018 Avalara, Inc.
Charge ................................................................................................................................. 14
Date ..................................................................................................................................... 14
Count ................................................................................................................................... 14
Sale Type ............................................................................................................................. 14
Service Type ........................................................................................................................ 15
Transaction Type ................................................................................................................. 15
Taxing Jurisdiction Identification Information ........................................................................... 15
The JCode Jurisdiction Identification ................................................................................... 15
Zip Codes ............................................................................................................................. 18
Zip Plus 4 ............................................................................................................................. 18
Canadian Postal Codes ........................................................................................................ 19
FIPS Codes ........................................................................................................................... 19
Support for India ................................................................................................................. 20
Jurisdiction Identification Details .............................................................................................. 22
Determining the Correct Taxing Jurisdiction for Wireline Long Distance ............................ 22
AFC Calculations ............................................................................................................................... 24
Meeting the Requirements of Specific Tax Issues ..................................................................... 24
Tax Type Exemptions ........................................................................................................... 24
Tax Adjustments .................................................................................................................. 25
Tax Overrides ....................................................................................................................... 26
Tax Rate Brackets ................................................................................................................ 32
Surcharges ........................................................................................................................... 33
Discount Adjustment ........................................................................................................... 33
Tier at Transactions ............................................................................................................. 36
Tax on Tax Until no Effect .................................................................................................... 36
Historical Tax Rates ............................................................................................................. 36
Taxed Taxes ......................................................................................................................... 36
Tax Logging ............................................................................................................................... 37
Returned Taxes ......................................................................................................................... 38
Returned Tax Information ................................................................................................... 38
Returned Tax Information Using Invoice Mode ................................................................... 39
AFC Sales and Use User Manual| iii
Copyright 2018 Avalara, Inc.
Tax Grouping ....................................................................................................................... 39
Sales and Use ............................................................................................................................ 42
Sales Transaction Data Attributes and Properties ............................................................... 42
Freight On Board (FOB) Transaction Details ........................................................................ 42
Tax Data Structure ............................................................................................................... 44
Transaction and Service Types (Sales and Use) ................................................................... 45
Tax Types................................................................................................................................... 77
Nexus ........................................................................................................................................ 86
Exclusions .................................................................................................................................. 87
Utilities............................................................................................................................................. 89
Utility Selection ......................................................................................................................... 90
Reporting Utilities ................................................................................................................ 90
File Management Utilities ................................................................................................... 91
Specifying a Log File at Run Time .............................................................................................. 91
Log.sum File .............................................................................................................................. 92
General Tips When Using Utilities ............................................................................................. 92
AFC Utilities ............................................................................................................................... 94
asciilog.exe .......................................................................................................................... 96
batch_sau.exe ..................................................................................................................... 96
commerge.exe ..................................................................................................................... 97
comptnum.exe .................................................................................................................... 98
comrpt.exe ........................................................................................................................ 101
csf20.exe ........................................................................................................................... 102
customsort.exe .................................................................................................................. 103
ezcomprep.exe .................................................................................................................. 104
ezlog_ns.exe ...................................................................................................................... 106
ezlogcust.exe ..................................................................................................................... 108
ezlogcustios.exe ................................................................................................................ 110
ezlogcustpts.exe ................................................................................................................ 112
ezlogcustptslnl.exe ............................................................................................................ 114
EZTaxappend.exe ............................................................................................................... 116
AFC Sales and Use User Manual| iv
Copyright 2018 Avalara, Inc.
EZTaxappendf.exe ............................................................................................................. 117
log no tax transactions ...................................................................................................... 118
srtcdf20.exe ....................................................................................................................... 121
srtcdf20p.exe ..................................................................................................................... 123
srtcomcust20.exe .............................................................................................................. 125
srtcomma20.exe ................................................................................................................ 126
srtcomma20l.exe ............................................................................................................... 129
srtcomma20ld.exe ............................................................................................................. 132
srtcommadetail.exe ........................................................................................................... 135
srtrev20l.exe ...................................................................................................................... 137
strg.exe .............................................................................................................................. 140
upsize_log.exe ................................................................................................................... 142
BATCH FILE PROCESSING ................................................................................................................ 143
Batch Processing Description .................................................................................................. 143
AFC CDS Input File Specifications ............................................................................................ 145
Taxing Jurisdiction Identification Information ................................................................... 147
Customer Information ....................................................................................................... 148
Transaction Information .................................................................................................... 151
Federal or State Exclusion ....................................................................................................... 152
Accumulating the Log .............................................................................................................. 153
batch_sau Utility Specification ................................................................................................ 154
The C/C++ API ................................................................................................................................ 155
Language Interfaces for AFC ................................................................................................... 155
Configuration .......................................................................................................................... 156
Filelocs.txt File ................................................................................................................... 156
Filelocs.sta File ................................................................................................................... 157
General Overview of AFC API Integration ............................................................................... 158
Detailed Discussion of AFC API Integration ............................................................................. 159
Tax Adjustments ................................................................................................................ 159
Obtaining Jurisdiction and Address Information From JCodes and PCodes ...................... 159
Obtaining Tax Information From Transactions .................................................................. 159
AFC Sales and Use User Manual| v
Copyright 2018 Avalara, Inc.
Preparing the AFC Application Programmer Interface (API) Interface .................................... 161
AFC API Function Calls ............................................................................................................. 162
Retrieving Taxes ................................................................................................................ 162
Multi-Threading ................................................................................................................. 164
Multiple Sessions ............................................................................................................... 166
Session Management ........................................................................................................ 166
Session Pooling .................................................................................................................. 168
Sample Coding ........................................................................................................................ 169
Using EZTaxGetRates to Build an Override ........................................................................ 169
EZTaxSetNexus .................................................................................................................. 170
Enhanced Override Structure Date Table and Rate Table Considerations ........................ 172
API Listings .............................................................................................................................. 173
EZTaxClearTSR ................................................................................................................... 174
EZTaxCountryToPCode ...................................................................................................... 175
EZTaxDBVersion ................................................................................................................. 176
EZTaxDLLVersion ............................................................................................................... 177
EZTaxExitSessionEx ............................................................................................................ 178
EZTaxFlushToLogEx ............................................................................................................ 179
EZTaxFreeRates ................................................................................................................. 180
EZTaxFtoPCodeEx .............................................................................................................. 181
EZTaxGetAddressEx ........................................................................................................... 182
EZTaxGetCountryID ........................................................................................................... 183
EZTaxGetCustomLog .......................................................................................................... 184
EZTaxGetCustomLogCount ................................................................................................ 185
EZTaxGetLogName ............................................................................................................ 186
EZTaxGetLogV914 .............................................................................................................. 187
EZTaxGetLogV914Count .................................................................................................... 188
EZTaxGetNoTaxTrans ......................................................................................................... 189
EZTaxGetStateID ................................................................................................................ 190
EZTaxGetRates ................................................................................................................... 191
EZTaxGetTaxCatV98 .......................................................................................................... 192
AFC Sales and Use User Manual| vi
Copyright 2018 Avalara, Inc.
EZTaxGetTaxDescription .................................................................................................... 193
EZTaxGetTSR ...................................................................................................................... 194
EZTaxGroupResults ............................................................................................................ 195
EZTaxInitEx ........................................................................................................................ 196
EZTaxInitExMt .................................................................................................................... 197
EZTaxInitV914 .................................................................................................................... 198
EZTaxInitV98 ...................................................................................................................... 199
EZTaxJtoPCodeEx ............................................................................................................... 200
EZTaxJTTypeEx (EZTaxJTType deprecated) ........................................................................ 201
EZTaxMaxTaxCount ........................................................................................................... 202
EZTaxNextAddressEx ......................................................................................................... 203
EZTaxNextCustomerEx....................................................................................................... 204
EZTaxOvrJCodeEx .............................................................................................................. 205
EZTaxOvrPCodeEx .............................................................................................................. 206
EZTaxOvrZipEx ................................................................................................................... 207
EZTaxPtoFipsEx .................................................................................................................. 208
EZTaxPtoJCodeEx ............................................................................................................... 209
EZTaxPTTypeEx .................................................................................................................. 210
EZTaxRestoreEx ................................................................................................................. 211
EZTaxSAUAdjFips ............................................................................................................... 212
EZTaxSAUAdjJCode ............................................................................................................ 213
EZTaxSAUAdjPCode ........................................................................................................... 214
EZTaxSAUAdjTaxInclusiveJCode (EZTaxSAUAdjRevJCode deprecated) ............................. 215
EZTaxSAUAdjTaxInclusivePCode (EZTaxSAUAdjRevPCode deprecated) ............................ 217
EZTaxSAUAdjTaxInclusiveZip (EZTaxSAUAdjRevZip deprecated) ...................................... 219
EZTaxSAUAdjZip ................................................................................................................. 221
EZTaxSAUDRAdjFips ........................................................................................................... 222
EZTaxSAUDRAdjJCode ....................................................................................................... 223
EZTaxSAUDRAdjPCode ....................................................................................................... 224
EZTaxSAUDRAdjZip ............................................................................................................ 225
EZTaxSAUFips .................................................................................................................... 226
AFC Sales and Use User Manual| vii
Copyright 2018 Avalara, Inc.
EZTaxSAUJCode ................................................................................................................. 227
EZTaxSAUPCode ................................................................................................................ 228
EZTaxSAUTaxInclusiveJCode (EZTaxSAURevJCode deprecated) ........................................ 229
EZTaxSAUTaxInclusivePCode (EZTaxSAURevPCode deprecated)....................................... 231
EZTaxSAUTaxInclusiveZip (EZTaxSAURevZip deprecated).................................................. 233
EZTaxSAUZip ...................................................................................................................... 235
EZTaxSessionDbVersion ..................................................................................................... 236
EZTaxSetInvoiceModeEx .................................................................................................... 237
EZTaxSetInvoiceModeV98 ................................................................................................. 238
EZTaxSetNexus .................................................................................................................. 239
EZTaxSetStateExclusions.................................................................................................... 240
EZTaxSetStateNexus .......................................................................................................... 241
EZTaxWriteToLogEx ........................................................................................................... 242
EZTaxWriteToLogV914 ...................................................................................................... 243
EZTaxZtoJCodeEx ............................................................................................................... 244
EZTaxZtoPCodeEx .............................................................................................................. 245
Appendices A - G ............................................................................................................................ 246
Appendix A EZTaxStruct.h ....................................................................................................... 247
Appendix B EZTaxDefine.h ...................................................................................................... 261
Appendix C EZTaxProto.h ........................................................................................................ 310
Appendix D EZTaxSauStruct.h ................................................................................................. 315
Appendix E EZTaxSauDefine.h ................................................................................................. 318
Appendix F EZTaxSauProto.h ................................................................................................... 321
Appendix G Monthly Update Procedure ................................................................................. 325
Download the Monthly Update ......................................................................................... 325
Important Files in Update .................................................................................................. 328
Monthly Maintenance ....................................................................................................... 328
Help Guide .............................................................................................................................. 330
Troubleshooting ................................................................................................................ 330
FAQ’s ................................................................................................................................. 331
AFC Sales and Use User Manual | 1 of 329
Copyright 2018 Avalara, Inc.
Introduction
Installation
Refer to the AvaTax for Communications (AFC) Installation Manual for complete instructions regarding the
installation of AFC on your specific platform.
Getting Started
There are several AFC integration methods available, each allowing for its use based on the client’s needs.
AFC SaaS Standard: This method is provided for lower transaction-count customers, allowing for
the use of AFC to obtain tax calculations without having to maintain the program on their
systems.
On-Site Options:
AFC's API interface: provides the user complete control over access to tax calculations
and the data returned, along with the flexibility supported by the report utilities.
AFC SaaS Pro: AFC SaaS Pro is an XML web service used to calculate taxes. Applications send a
single transaction to the AFC SaaS web service over the Internet. The taxes are calculated and
immediately returned to the client application. Users have the capability of sending and receiving
transactions 24 hours a day, 7 days a week. This service is ideal for adding the ability to tax
purchases made from online stores and AFC SaaS Pro customers are provided with reports for tax
compliance filing.
The AFC Manual
The AFC Manual has been configured to provide an easy and logical progression for learning AFC and its
features, as well as a quick reference (fully linked on the electronic version of the manual). From the
initial step of mapping to the final creation of reports based on the processed information, the conceptual
simplicity of AFC is fully explained.
Mapping
Prior to performing tax calculations, client transactions and services must be matched, or “mapped,” to
the Valid Transaction and Service Pairings defined in AFC. Refer to Section 2 Mapping for the full
explanation of how this is accomplished.
AFC Sales and Use User Manual | 2 of 329
Copyright 2018 Avalara, Inc.
Transactions
Once the transactions and services have been mapped, transaction records can be passed to AFC.
Section 3 Transactions explains what AFC expects for each part (or field) contained in a transaction record
and provides the definitions and reasons for selecting one of the valid options to use.
Tax Calculations
The AFC Engine accepts the transaction record(s) and performs the tax calculations based upon the
information within the record.
Utilities
Once the taxation has been performed, Utilities can be used to provide the tax information in selected
formats that meet specific requirements and perform file management functions. The many options
available are detailed in the Utilities section of this document.
The Advantage of Using Functions
Section 7 provides specific details of the expanded capabilities provided to users that integrate AFC to the
billing system using functions. Refer to the figure shown below. The billing system passes information to
AFC, as calls are being rated for billing. AFC calculates all required taxes and returns the tax information
to the billing system per transaction. In addition, AFC stores all tax data generated in its databases and
provides reports that facilitate tax filing and provide insight to the rating, billing and taxing processes.
AFC Sales and Use User Manual | 3 of 329
Copyright 2018 Avalara, Inc.
Figure 1-1 AFC Operation Diagram
Adjustment information is returned to the billing system and is utilized to update tax data for report
generation and compliance filing. AFC also provides facilities that allow users to insert tax overrides and
exempt a transaction from taxes at federal, state, county and local authority levels. AFC also provides the
capability to limit exemptions to a specific jurisdiction and to exempt specific taxes.
Using the AFC API is the most efficient method available for interfacing with the AFC system. Due to the
superior performance of AFC, there is very little performance difference between a system running
without taxation and one running with taxation generation by AFC.
AFC Sales and Use User Manual | 4 of 329
Copyright 2018 Avalara, Inc.
General Product Information
Enhanced Flexibility for Users
User reporting and organizational activities have been enhanced with the addition of user defined fields.
This empowers the user to include additional user specific information within transaction records,
thereby enhancing reports and data files once processed by the AFC Engine. Note that the Batch
Processing utility takes full advantage of the additional transaction fields.
Enhanced Capabilities for Processing Specialized Taxes
AFC maintains tax rate histories and applies them according to the transaction date. This allows for tax
calculations to process transactions that require dated tax information.
Billable Flag Allows for the identification of a compliance only tax or fee that is used for filing
and not passed on to the user. It is noted as a non-billable item in the tax log.
Compliance Flag Allows for the identification of a tax or fee that is a tax compliant item and that
the tax or fee should be sent to the log. The reporting utilities can identify and generate
compliance and billing reports. All existing taxes currently in AFC are compliance taxes or fees. A
charge with the compliance set to false in logic is billable but the charge would not be place into
the log for compliance or reported in compliance reports. This flag provides EZdata users with
the ability to pass non-tax charges to the customer through AFC.
Rate at Final - Allows for a specialized application of tax brackets. Each bracket specifies the tax
rate for the “Total Tax” range that it spans. The culmination of all of the brackets results in a tax
rate “look-up” table for total transaction amounts.
Tier At Transaction - This logic flag indicates that tax will be calculated using graduated tax
brackets on a transaction basis instead of a customer invoice basis.
Tax On Tax Until No Effect - Configuration settings in EZTax.cfg determine one of two methods to
calculate Tax on Tax. If the configuration setting is left unchanged, AFC will perform a single
iteration of the tax on tax calculation.
Additional Functions to Support New Capabilities
The Get Rates function has been added to retrieve all possible taxes when given a location by
PCode. The structure of the returned tax information is compatible with the new override
structure, so that specific changes can be applied to the existing tax data to create override
entries.
AFC Sales and Use User Manual | 5 of 329
Copyright 2018 Avalara, Inc.
New Version Tracking
A version number has been embedded into the AFC database to ensure database compatibility between
the AFC software and the AFC database. The AFC Engine compares version numbers on session
initialization. If incompatible version numbers are detected, a message is written to the status file and
AFC system will not return a valid session handle.
Additional Tax Types
AFC now supports over 450 Tax Types to allow for highly specific tax type designation.
Increased Accuracy
The Tax Amount calculations have been modified to increase accuracy and further reduce rounding
errors.
AFC Sales and Use User Manual | 6 of 329
Copyright 2018 Avalara, Inc.
Mapping
The AFC software provides an extensive selection of Transaction and Service Types to meet your taxation
requirements with a single taxation package. The correct matching, or “mapping,” of your company
products and services to the Valid Transaction and Service Pairings defined in AFC is an essential process
that must be completed accurately for taxation to be calculated and applied properly to all transactions.
If an incorrect pairing is passed to the AFC engine then no tax is usually returned.
Avalara support is available to assist should any questions arise in determining the correct Transaction
and Service pair to use.
Transaction and Service Types
AFC stipulates a unique pair of numbers for each Transaction and Service Type. The first number defines
the Transaction Type and the second number defines the Service Type. Transaction Types and Service
Types are combined (or “paired”) to uniquely describe a Valid Transaction / Service Pair for a transaction.
Valid Transaction/Service Pairings
Section 4.4.6 describes valid transaction/service pairings.
Avalara continuously evaluates products and services offered by companies and may add Transaction and
Service Type combinations to accommodate products and services offered.
For the most current list of Transaction Types, refer to the Transaction Mapping Guidelines.pdf file
located on your most recent Distribution/Update.
File transervdescsau.txt
A file named transervdescsau.txt is present in the database directory in each month’s update. This file
contains all of the valid transaction type/service type pairs, with the description of those types and of the
pairing. It is a fixed format file, though there are spaces and commas between some of the fields for
readability. It is described in the table below.
transervdesc.txt File Format Key
Description
Columns
Alternate Flag
1-1
Market Number
3-4
Market Name
6-35
AFC Sales and Use User Manual | 7 of 329
Copyright 2018 Avalara, Inc.
transervdesc.txt File Format Key
Description
Columns
Transaction Type Number
38-39
Transaction Type Description
41-90
Service Type Number
93-95
Service Type Description
97-146
Long Description
148-end of line
Tax Categories
Please reference the table below for a current list of Tax Categories.
Tax Categories
Category ID
Name
0
No Category Description
1
Sales and Use Taxes
2
Business Taxes
3
Gross Receipts Taxes
4
Excise Taxes
5
Connectivity Charges
6
Regulatory Charges
7
E-911 Charges
8
Utility User Taxes
9
Right of Way Fees
10
Communications Services Tax
11
Cable Regulatory Fees
12
Reserved
13
Value Added Taxes
Transactions
AFC accepts transaction records from the user and returns calculated taxes. For AFC to return the correct
taxation the information in the transaction records must be correct and in the format that AFC requires.
Each Transaction contains the following information:
1. Customer Transaction Information
a. Customer Information
b. Company Information
c. Transaction Data
2. Taxing Jurisdiction Information
AFC Sales and Use User Manual | 8 of 329
Copyright 2018 Avalara, Inc.
The Customer Transaction Information has been divided into three sections as suggested above for the
purpose of this discussion (see the table below).
Customer Transaction Information
Customer Information
Company Information
Transaction Data
County Exempt
Company Identifier
Attribute
County Exemption JCode
Charge
Customer Number
Count
Customer Type
Properties
Exemption Type
Sale/Resale
Federal Exempt
Service Type
Federal Exemption JCode
Transaction Bill Date
Incorp
Transaction Type
Invoice Number
Local Exempt
Locality Exemption JCode
Tax Type Exemptions
State Exempt
State Exemption JCode
Optional fields
Customer Information
Refer to the table below. The following customer information is contained in fields found in the
transaction record.
Customer Information
Description
Valid Entry
Customer Number Customer number, user defined
Customer Type
0=residential, 1=business customer
2=Senior Citizen, 3=Industrial
Federal Exempt
If TRUE, transaction exempt from Federal Tax
State Exempt
If TRUE, transaction exempt from State Tax
County Exempt
If TRUE, transaction exempt from County Tax
Locality Exempt
If TRUE, transaction exempt from local tax
Incorp
TRUE indicates within incorporated area
Invoice Number
Invoice number (user defined)
Federal Exemption JCode
Jurisdiction for Federal exemption
State Exemption JCode
Jurisdiction for state exemption
County Exemption JCode
Jurisdiction for County exemption
Locality Exemption JCode
Jurisdiction for local exemption
Tax Type Exemptions Count
0 indicates no of specific exempts, other value indicates number of specific
exempts
Tax Type Exemptions
Pointer to tax exempt structure that contains the specific tax exemptions
specified in tax type exemptions
Exempt Type
Reason for exemption
Optional Fields:
Optional
User defined value for reporting
Optional Alpha
Optional alpha field
AFC Sales and Use User Manual | 9 of 329
Copyright 2018 Avalara, Inc.
Customer Information
Description
Valid Entry
Optional 4
Optional Numeric field
Optional 5
Optional Numeric field
Optional 6
Optional Numeric field
Optional 7
Optional Numeric field
Optional 8
Optional Numeric field
Optional 9
Optional Numeric field
Optional 10
Optional Numeric field
Customer Number
The Customer Number is a 20-character null terminated string field stored in the tax log and used as the
Primary Output Key for the AFC billing reports.
Customer Type
This field is used to specify the type of customer involved in the transaction. The customer type is
selected from one of the following four Customer Types.
Customer Type
ID
Value
Description
0
Residential
When transactions are made by a customer for home use.
1
Business
When transactions are made at a place of business
2
Senior Citizen
When transactions are made by a customer who meets the jurisdiction requirements to
be considered a senior citizen and qualify for senior citizen tax breaks.
3
Industrial
When transactions are made at an industrial business.
Exemption Levels
The exemption level is the jurisdictional level of the taxing authority that defines the tax. It is used to
exempt taxes at specific state, county and/or local taxes.
State Exempt
The State Exempt field is used to specify a State level tax exemption.
County Exempt
The County Exempt field is used to specify a County level tax exemption.
Local Exempt
The Local Exempt field is used to specify a Local level tax exemption.
AFC Sales and Use User Manual | 10 of 329
Copyright 2018 Avalara, Inc.
Incorp
The Incorp field is used to specify whether the customer involved in this transaction is inside or outside of
the Local level designated as their location. The tax may or may not be affected by this designator
depending upon whether or not the local level has taxes which would apply to the transaction/service
type pair.
Invoice Number
The Invoice Number is an optional field used to aid users in uniquely identifying a billing record for a
specific customer within their system.
JCode Exemption Levels
The exemption JCode is the JCode associated with the jurisdictional level of the taxing authority that
defines the tax. It is used to exempt all federal, state, county and / or local taxes. If the exemption JCode
fields are not specified then all taxes are exempt at that level.
To pass an individual tax exemption using the JCode Exemption, use the Tax Exempt structure to specify
the tax type, tax level and the JCode for the jurisdiction. Refer to Section 4.1.1.2.
NOTE:
JCodes are an internal intermediate Jurisdiction Code that can change
monthly. The JCode can be obtained from a PCode or an address using
like functions.
Tax Type Exemptions
Two fields are provided for entering the quantity of tax type exemptions and the pointers to the tax
exemption structures.
Tax Type Exemptions Field
The Tax Type Exemption indicator specifies the number of tax type exemptions that are included. These
are tax type and transaction specific exemptions.
Tax Type Exemption Pointer
Tax type exemption(s) are specified with a pointer to one or more tax exempt structures. The user should
supply a pointer to the first tax type exemption and all exemptions must be contained in a contiguous
block of memory.
AFC Sales and Use User Manual | 11 of 329
Copyright 2018 Avalara, Inc.
Exemption Type
The reason for the exemption. This value is passed directly on to the log.
Optional Fields
Optional Fields are provided to allow clients to enhance reporting and billing utilities with information
beyond the scope of that which is generated to support AFC activities.
The Customer Number is a 20-character text field that is not manipulated during processing and stored as
part of the log file record.
It can be used as part of the sorting key (see Figure 3-1) when using some utilities, allowing for the
combining of records based upon this and other fields. It is useful when it is desired to have like taxes
from different transactions combined, to have taxes from each transaction detailed individually in a
report or to have each transaction detailed at the customer level.
AFC Sales and Use User Manual | 12 of 329
Copyright 2018 Avalara, Inc.
Figure 3-1 Primary Output Key
Uniquekey.csf
Combined taxes
If you would want like taxes combined at the customer level, then you specify a
like Primary Output Key for the records you want combined.
Samekey.csf
AFC Sales and Use User Manual | 13 of 329
Copyright 2018 Avalara, Inc.
Company Information
Refer to Table 3-3. The following company information is contained in fields found in the transaction
record.
Table 3-1 Company Information
Description
Valid Entry
Company Identifier
Company Identifier, optional
Company Identifier
The Company Identifier field is an optional field made available for alpha information, such as the name
of a subsidiary company. This information is passed thru to the tax log so that reporting utilities can sort
or summarize by this field.
Transaction Data
Refer to Table 3-4. The following transaction information is contained in fields found in the transaction
record.
Table 3-2 Transaction Data Information
Description
Valid Entry
Attribute
Freight, deposits, etc.
Properties
Parameters describing the attribute.
Charge
amount charged to customer for transaction
Date
Transaction bill date. This field is provided to allow rating and taxing to occur on a date
other than the billing date.
Count
Number of items
Sale/Resale
TRUE = Sale, FALSE = Resale
Service Type
Refer to Transaction and Service Types (Sales & Use) for valid Transaction / Service Type
entries
Transaction Type
Refer to Transaction and Service Types (Sales & Use) for valid Transaction / Service Type
entries
Attribute
The Attribute field refers to ancillary transactions related to the actual sale freight, discounts, financing,
installation, shipping/handling, maintenance and service contracts, and warranties.
Properties
Properties specify the details of the transaction’s Attribute.
AFC Sales and Use User Manual | 14 of 329
Copyright 2018 Avalara, Inc.
Charge
The Charge field specifies the amount of the transaction to be taxed. This amount will be passed through
AFC to rate the tax based on the specified transaction/service pair.
Date
The Date field is normally populated with the bill date. Generally accepted accounting principles dictate
that liabilities should be recorded when revenues are recorded. In most cases, neither of these is
recorded (or even known) until billing occurs.
However, companies with a high call volume that record revenue daily as it occurs should record the tax
on the same basis (i.e. the call date should be used).
AFC compares this date to the effective date of each tax that applies to the transaction. Historical rates
and effective dates are maintained and updated within the AFC Engine and AFC will return the correct tax
information based upon the transaction date. The monthly updates assure that the rates and effective
dates are current.
WARNING:
All transaction data Date fields must be formatted as CCYYMMDD.
Failure to do so will cause incorrect results when the transaction is
processed.
Count
Number of items in the sale.
Sale Type
The following options are available as sales type:
Sales Type
ID
Value
Description
0
Wholesale
Specifies that the transaction is a sale to another company that will resell
the product or service to a consumer.
1
Retail
Specifies that the transaction is a sale to an end user.
2
Consumed
Specifies that the transaction is for an item that is consumed directly.
3
Vendor Use
Specifies that the transaction is for an item that is subject to vendor use
tax.
AFC Sales and Use User Manual | 15 of 329
Copyright 2018 Avalara, Inc.
Service Type
Refer to Transaction and Service Types for details of this field.
Transaction Type
Refer to Transaction and Service Types for details of this field.
To have exempt taxes available for reporting, exemption type 3 (Sales For Resale) should be used in
combination with Resale.
Taxing Jurisdiction Identification Information
The tax jurisdiction that can claim nexus for the transaction must be obtained in order for the proper
taxes to be applied. Assigning the correct jurisdiction to the transaction is crucial in obtaining and
returning the correct tax to the billing system.
Jurisdiction information can be supplied to the AFC Engine in several ways. It can be supplied using a
Jurisdiction Code (JCode), Permanent (location) Code (PCode), Zip Code with address information or FIPS
Codes.
The JCode Jurisdiction Identification
Avalara has assigned each jurisdiction with a proprietary “JCode” (Jurisdiction Code) that identifies its
specific territorial boundaries. A jurisdiction fairly claiming nexus on a transaction within this boundary
will apply taxes accordingly. The AFC Engine uses this “jurisdiction bound” JCode to associate the
jurisdiction specific taxes to the transaction as it is processed.
However, any alterations in the jurisdictional boundaries, such as an expansion of a city limit, will be
reflected in the JCode of locations that are situated within the expanded jurisdiction area.
The Avalara tax research staff monitors jurisdiction taxation activity to maintain current and accurate
taxation information. The results of this research is applied to the Monthly updates which are provided
to ensure the most accurate taxation is applied to the records processed by the AFC Engine. The JCodes
will be changed at this time. It is the user’s responsibility to re-populate their database tables with the
new JCodes every time an AFC update is provided. If this task is not performed, the AFC Engine will
return incorrect tax calculations for jurisdictions that have been updated.
However, when a transaction is submitted with the stable and location sensitive PCode, the AFC Engine
can use internal functions to obtain the correct jurisdiction. Since the AFC Engine is updated with the re-
mapped jurisdiction information monthly, tax calculations are always performed with the most current
jurisdiction taxation information that applies to the address defined by the PCode.
AFC Sales and Use User Manual | 16 of 329
Copyright 2018 Avalara, Inc.
Figure 3-2 JCode and PCode Changes During Annexation
MY HOUSE
PCODE = 7
JCODE = 1000
MOM'S HOUSE
PCODE = 8
JCODE = 2000
MY TOWN CITY LIMIT
MY HOUSE
PCODE = 8
JCODE = 2000
MOM'S HOUSE
PCODE = 8
JCODE = 2000
MY TOWN CITY LIMIT
JCode and PCode Prior to Annexation JCode and PCode After Annexation
All that is required to make use of this recommended option is to cross reference or “map” the customer
locations with its correct PCode. The time invested in incorporating PCodes into your database records
will be quickly offset by the reduced processing time and the increased accuracy and reliability of your tax
reporting will be evident.
Mapping Customer Locations to PCodes
Avalara markets Avalara Geo for Communications to assist in mapping customer locations to PCodes
when populating the client customer database. It quickly obtains the current PCode for a specific
geographical location.
When performing this task without the aid of EZgeo®, refer to the all_adr.txt file to look up the PCode that
should be used to populate the client database with customer information. This comma delimited ASCII
file is supplied for use during AFC setup and when adding new customers to the client database. The file
is replaced with a current version when monthly updates are performed (refer to Section 8.6).
all_adr.txt is a comma-delimited text file that contains a cross reference of PCodes to taxing jurisdictions.
The format is PCode, Primary / Alternate Location, Country, State, County, Locality, Beginning ZIP Code,
Ending ZIP Code. These fields are self-explanatory with the exception of the Primary / Alternate Location
(refer to 3.4.1.1.1).
Primary / Alternate Location
The Primary / Alternate location flag is set to '0' to indicate that the location associated with the PCode is
a "Primary" location or '1' to indicate that it is an "Alternate" location.
AFC Sales and Use User Manual | 17 of 329
Copyright 2018 Avalara, Inc.
Secondary locations are original city names that remain in use even though the areas within them have
since been divided and given different names.
For example, the city of Overland Park, KS is a primary location. The first post office to serve the area was
established at the Shawnee Methodist Mission in the early nineteenth century, the extents of which
encompassed the then non-existent city of Overland Park as well as nearly a dozen other cities (primary
locations) which appeared over time. The post office still recognizes the Shawnee Methodist Mission
area as Shawnee Mission, KS, and continues to deliver to a primary location when the “Alternate
Location” address is provided.
Data Entry Modification Procedure
Use the following procedure to acquire the correct information to enter.
1. Have the customer data entry software request the zip code of the customer from the data entry
associate.
2. Query the "all_adr" file/database to obtain the associated PCodes.
3. If matching PCodes are found, populate the customer data record with the associated address
from the "all_adr" file and request verification from the customer data entry associate.
4. If the PCodes do not match or if the customer data entry associate rejects the automated
selection, display all addresses associated with both PCodes and the zip code entered.
5. Allow the customer data entry associate to select the appropriate address from the list.
6. In the unlikely event that the customer address is not displayed, allow the customer data entry
person to enter the address supplied by the customer. Store the address with a "special key" as
instructed by Avalara. Return the address and key to Avalara via E-mail. Avalara will research the
missing address and include it in the next monthly update. Avalara will also provide you with a
cross reference of the "special key" and the correct "PCode" to allow the customer record to be
properly installed.
NOTE:
Avalara subscribes to the United States Postal Database which should
preclude this event. Nonetheless, it does occur on occasion and this
process has been established for that reason.
7. Use the PCode from the customer record for the service address when interfacing with AFC.
AFC Sales and Use User Manual | 18 of 329
Copyright 2018 Avalara, Inc.
Resources such as the USPS or the U.S. Census Department web sites can also be helpful in pinpointing a
customer location.
AFC functions can also be used to obtain PCodes (see Section 7.8 API Listings). For detailed information
about determining the tax jurisdiction which can claim nexus on a transaction, refer to Section 3.1.3 for
details on exemption levels.
Zip Codes
This method of providing jurisdiction information is the least efficient method provided. A record
submitted using this method will compromise the accuracy of correct jurisdiction identification, the
degree of which would depend upon the amount of data provided for the address and the user’s ability to
select the correct taxing jurisdiction zip code and address. AFC databases necessarily contain numerous
duplicate zip codes that cross taxing jurisdiction and locality boundaries. Providing a complete address
with zip code will provide the best possible match. If the address information is not provided, AFC will
return taxes based upon the first match of the input record information.
If the jurisdiction is positively identified by the billing system it would be appropriate to use the zip code
for transactions. For instance, this would apply if the transaction is the sale of a product at a business
that has just one location or in the case of internet usage from a residence.
AFC currently has Zip Code information for U.S. and Canadian jurisdictions. Use the Zip Code Plus 4
Interface to use the 6 character Canadian postal codes.
Zip Plus 4
Just as with the Zip Code method (see Section 3.4.2), AFC’s jurisdiction determination will depend on the
address information provided. However, it is useful (and more accurate than the 5-digit zip code) because
this 9-digit zip code uniquely identifies a location, which can then be used to determine the tax
jurisdiction. There is no need to supply the additional city and county information and information in
these fields are ignored.
NOTE:
Supplying ZIP Code Plus 4 information where the plus 4 is all zeros will
function like the ZIP Code Interface since the United States Postal Service
has no valid plus 4 code assigned with all zeros. The default will retrieve
the first jurisdiction with the supplied 5-digit zip code.
AFC Sales and Use User Manual | 19 of 329
Copyright 2018 Avalara, Inc.
Canadian Postal Codes
Canadian postal codes need to be specified using the ZIP Plus 4 to retrieve a tax jurisdiction code. Place
the first three characters go in the zip code field and the last three characters go in the plus 4 field. In
addition, the country ISO field must be set to the Canadian ISO Code.
FIPS Codes
AFC has functions allowing the use of FIPS codes to retrieve tax jurisdiction codes. The US Census Bureau
provides the following description of the FIPS Codes and associated reference tables.
“The Federal Information Processing Standards codes (FIPS codes) are a standardized set of numeric or
alphabetic codes issued by the National Institute of Standards and Technology (NIST) to ensure uniform
identification of geographic entities through all federal government agencies. The entities covered
include: states and statistically equivalent entities, counties and statistically equivalent entities, named
populated and related location entities (such as, places and county subdivisions), and American Indian
and Alaska Native areas.
A FIPS Code is a 10-digit numeric code with the following format:
Table 3-3 FIPS CODE FORMAT
SSCCCPPPPP
SS
FIPS State Code
CCC
FIPS County Code
PPPPP
FIPS Place Code
Figure 3-3 FIPS State Codes for the States and the District of Columbia
Name
FIPS State
Numeric Code
FIPS State
Alpha Code
Name
FIPS State
Numeric Code
FIPS State
Alpha Code
Alabama
1
AL
Montana
30
MT
Alaska
2
AK
Nebraska
31
NE
Arizona
4
AZ
Nevada
32
NV
Arkansas
5
AR
New Hampshire
33
NH
California
6
CA
New Jersey
34
NJ
Colorado
8
CO
New Mexico
35
NM
Connecticut
9
CT
New York
36
NY
Delaware
10
DE
North Carolina
37
NC
District of Columbia
11
DC
North Dakota
38
ND
Florida
12
FL
Ohio
39
OH
Georgia
13
GA
Oklahoma
40
OK
Hawaii
15
HI
Oregon
41
OR
Idaho
16
ID
Pennsylvania
42
PA
Illinois
17
IL
Rhode Island
44
RI
Indiana
18
IN
South Carolina
45
SC
Iowa
19
IA
South Dakota
46
SD
Kansas
20
KS
Tennessee
47
TN
Kentucky
21
KY
Texas
48
TX
Louisiana
22
LA
Utah
49
UT
AFC Sales and Use User Manual | 20 of 329
Copyright 2018 Avalara, Inc.
Figure 3-3 FIPS State Codes for the States and the District of Columbia
Name
FIPS State
Numeric Code
FIPS State
Alpha Code
Name
FIPS State
Numeric Code
FIPS State
Alpha Code
Maine
23
ME
Vermont
50
VT
Maryland
24
MD
Virginia
51
VA
Massachusetts
25
MA
Washington
53
WA
Michigan
26
MI
West Virginia
54
WV
Minnesota
27
MN
Wisconsin
55
WI
Mississippi
28
MS
Wyoming
56
WY
Missouri
29
MO
Figure 3-4 FIPS State Codes for the Outlying Areas of the United States,
the Freely Associated States and Trust Territory
Area Name
FIPS State Numeric
Code
FIPS State Alpha
Code
Status
American Samoa 60 AS 1
Federated States of Micronesia 64 FM 3
Guam 66 GU 1
Marshall Islands 68 MH 3
Northern Mariana Islands 69 MP 1
Palau 70 PW 4
Puerto Rico 72 PR 1
Virgin Islands of the U.S. 78 VI 1
Support for India
Processing tax calculations in the the country of India includes support for all the states. Please reference
the table below for the appropriate IDs, abbreviations and PCodes for each state.
Note: This only applies to telecom support for India; however, it is visible to SAU clients.
States in India
Ctry Code
ISO
State Id
Abbv
State
PCODE
356
IND
1
AP
Andhra Pradesh
5148401
356
IND
2
AR
Arunachal Pradesh
5148402
356
IND
3
AS
Assam
5148403
356
IND
4
BR
Bihar
5148404
356
IND
5
CT
Chhattisgarh
5148405
AFC Sales and Use User Manual | 21 of 329
Copyright 2018 Avalara, Inc.
States in India
Ctry Code
ISO
State Id
Abbv
State
PCODE
356
IND
6
GA
Goa
5148406
356
IND
7
GJ
Gujarat
5148407
356
IND
8
HR
Haryana
5148408
356
IND
9
HP
Himachal Pradesh
5148409
356
IND
10
JK
Jammu and Kashmir
5148410
356
IND
11
JH
Jharkhand
5148411
356
IND
12
KA
Karnataka
5148412
356
IND
13
KL
Kerala
5148413
356
IND
14
MP
Madhya Pradesh
5148414
356
IND
15
MH
Maharashtra
5148415
356
IND
16
MN
Manipur
5148416
356
IND
17
ML
Meghalaya
5148417
356
IND
18
MZ
Mizoram
5148418
356
IND
19
NL
Nagaland
5148419
356
IND
20
OR
Odisha
5148420
356
IND
21
PB
Punjab
5148421
356
IND
22
RJ
Rajasthan
5148422
356
IND
23
SK
Sikkim
5148423
356
IND
24
TN
Tamil Nadu
5148424
356
IND
25
TG
Telangana
5148425
356
IND
26
TR
Tripura
5148426
356
IND
27
UP
Uttar Pradesh
5148427
356
IND
28
UT
Uttarakhand
5148428
356
IND
29
WB
West Bengal
5148429
AFC Sales and Use User Manual | 22 of 329
Copyright 2018 Avalara, Inc.
States in India
Ctry Code
ISO
State Id
Abbv
State
PCODE
356
IND
30
AN
Andaman and Nicobar
5148430
356
IND
31
CH
Chandigarh
5148431
356
IND
32
DN
Dadra Nagar Haveli
5148432
356
IND
33
DD
Daman and Diu
5148433
356
IND
34
DL
Delhi
5148434
356
IND
35
LD
Lakshadweep
5148435
356
IND
36
PY
Puducherry
5148436
Jurisdiction Identification Details
Obtaining the correct user’s location is critical in calculating the local taxation.
Determining the Correct Taxing Jurisdiction for Wireline Long Distance
AFC applies taxes to transactions based on the statutes that dictate specific taxes per jurisdiction.
Each jurisdiction from the state level down to the local level establishes jurisdiction rules to determine if
their tax will apply to a specific call transaction. These jurisdiction rules (also known as sourcing rules) for
determining the correct jurisdiction arose from a United States Supreme Court ruling that established the
minimum requirements necessary for a taxing jurisdiction to claim “nexus”.
Incorrect Jurisdiction Assignment
A customer may be assigned an incorrect jurisdiction if the geographical information is not thoroughly
researched. In the example shown in Figure 3-6, the customer (marked by an X) resides in a rural area
located in Pawnee County, Nebraska, just outside the city limits of Summerfield, Kansas.
Figure 3-5 Geographical Anomaly
AFC Sales and Use User Manual | 23 of 329
Copyright 2018 Avalara, Inc.
However, in all likelihood this customer’s mail service is provided by the Summerfield, Kansas Post Office
and therefore has a Summerfield, Kansas mailing address.
This geographical anomaly will cause an incorrect assessment of taxation if not researched properly. If
the AFC user enters the customers Service Address information into the transaction records, the
customer will be incorrectly assessed taxes according to those of the Summerfield, Kansas jurisdiction
instead of those for the unincorporated area of Pawnee County, Nebraska jurisdiction.
AFC Sales and Use User Manual | 24 of 329
Copyright 2018 Avalara, Inc.
AFC Calculations
The AFC Engine accepts the transaction record, processes the information provided and creates a table
containing the generated tax information. Additional methods to process specialized taxes are available
through the use of AFC functions.
Meeting the Requirements of Specific Tax Issues
Many tax issues are resolved within the AFC Engine, thereby relieving the user from making changes to
account for them. Additional functions are provided to meet other special taxation issues.
Table 4-1 Specific Tax Issues
Category
Description
Specific Tax Exemptions
Specifies tax type at specific tax level for exemption
Tax Adjustments
Allow for adjustment activities such as refunds, changing a customer’s
bill or when terminating un-collectable accounts.
Tax Overrides
Allows for a change of a tax rate.
Tax Rate Brackets
Tax rate that changes as the taxable amount of the transaction increases.
Rate at Final
A specialized case of tax brackets.
Discount Adjustment
Allows for entry of different discount adjustment types.
Tier on Transaction
Allows for tax to be determined using graduated tax brackets.
Tax on Tax Until no Effect
Option to control calculation of tax on tax
Taxed Taxes
Allows for processing when one tax includes in its base the tax calculated
from another tax.
Get Rates
Retrieves current tax information in a form suitable for overrides.
Tax Type Exemptions
Tax type exemptions are used to specify a specific Tax Type at a specific Tax Level to be exempted for the
current transaction. The exemption jurisdiction code specifies the jurisdiction for the tax exemption. If
the jurisdiction code is not specified (i.e. set to zero), then all taxes of the Tax Type and Tax Level
specified are considered exempt regardless of the jurisdiction they are calculated for. Typically the JCode
should be specified as specific tax exemptions are normally only effective for specific jurisdictions.
Another option allows the tax type to be set to zero, to indicate that all taxes of a specific tax level are
exempt in the specific jurisdiction.
Declaring Tax Type Tax Exemptions within a Transaction Record
When setting up the AFC transaction record, there are fields that specify either exempt at a tax level or a
specific tax. For more information, refer to Sections 3.1.3 for exemption levels, 3.1.6 for JCode
exemption levels and 3.1.7 for tax type exemption levels.
AFC Sales and Use User Manual | 25 of 329
Copyright 2018 Avalara, Inc.
Declaring Tax Type Exemptions Using Functions
Alternatively, tax type exemptions can be applied using functions (such as APIs). The following fields are
required for this.
Table 4-2 Tax Exempt Record
Tax Type
Tax Type identifier
Tax Level
Tax Level identifier
JCode for Exemption
Jurisdiction for exemption
In addition, the transaction contains a pointer set to the tax exempt to exempt a specific tax.
Table 4-3 Tax Exemption Fields
tax_exempt
Identifies the number of exemption records
*s_exempt
Pointer to the Tax Exempt record (see Table 4-2) or Array of Tax Exempt records.
If no records are setup, this value should be null.
General Tips When Declaring Tax Exemptions
1. The JCode is used to specify tax exemptions because exemptions are normally only effective for
specific jurisdictions.
2. Some taxes are non-exemptible. Non-exemptible taxes may be overridden to exempt taxes that
are normally not exemptible. Refer to Section 4.1.3 for more information on Tax Overrides.
3. It is easy to evaluate the exemptions passed through AFC because they are tracked separately
and stored in the tax log by type of exemption.
Tax Adjustments
Tax adjustment functions provide for adjustment activities such as refunds, changing a customer’s bill or
writing off un-collectable accounts. The AFC engine allows adjustments to be passed by the user. Note
that these adjustments must be accounted for to provide an audit trail.
Tax adjustments are made using the Adjustment functions. The tax amount entered should be a positive
number for credit adjustments as the adjustment functions will appropriately sign the charges, lines or
locations for computation purposes. The adjustments are logged in the EZTax.log along with the rest of
the tax and transaction data associated with the tax run. The information is returned to the billing system
and is utilized to update tax data for report generation and compliance filing.
Adjustments may be declared as ‘default’ in which case they are processed exactly like a similar charge
transaction with negative tax results. They may be declared as least or most favorable.
This declaration is
only useful for taxes which have multiple tiers or brackets and should be used with caution.
The rate will be
determined separately for each tax returned within the tax table. AFC software will search the tiers or
brackets and select the tier which has either the highest rate (for most favorable) or lowest rate (for least
favorable) and apply that rate to the number of lines or charge amount as appropriate.
AFC Sales and Use User Manual | 26 of 329
Copyright 2018 Avalara, Inc.
NOTE:
Debit and credit transactions will generate different taxes if otherwise identical transactions are
processed with the same least/most favorable flag. To reverse a most favorable credit adjustment the
exact transaction should be sent as a debit adjustment with a least favorable flag.
General Tips When Making Tax Adjustments
1. To calculate adjustments accurately, AFC requires the following activity:
a. Call AFC using an adjustment API. (Please refer to the APIs provided in Section 7.8 API
Listings).
b. Send positive values for change, line, and locations.
c. Set the adjustment method (see the Adjustment Method Table below).
d. Set the discount type (see the Discount Type Table in Section 4.1.6).
2. If logging is turned on, adjustments are stored in the eztax.log file with the other transactions.
Adjustment Method Table
Name
Description
Default
Tax brackets applied normally.
LeastFavorableRate
Tax brackets applied to produce smallest tax refund.
MostFavorableRate
Tax brackets applied to produce largest tax refund.
Tax Overrides
Overrides allow the client to change the rate of a tax in the AFC Engine. Avalara markets the AFC
Manager - Rate and Logic Modifier (a Graphic User Interface based Windows program that is sold
separately) to support this activity. It steps the user through the process of creating an EZTax.ovr file.
Alternatively, overrides can be achieved using the Override functions (such as APIs).
WARNING:
An override to exempt taxes OVERRIDES the tax information in Avalara’s tax research
database. This is not recommended for those that do not possess a full understanding of the tax
ramifications and liabilities when doing so.
Although all clients can use Tax Overrides, the method to make use of them depends upon the client
type.
1. AFC SaaS Standard clients must use the AFC Manager - Rate and Logic Modifier to create an
EZTax.ovr file that contains the overrides to insert. The file is then uploaded to the service
bureau inside the FTP.zip file that carries the CDS file for processing. The overrides are then used
during that processing and for subsequent processing until a new or empty override file is
uploaded.
2. Avalara clients that submit records in Batch fashion must use the AFC Manager - Rate and Logic
Modifier to create an EZTax.ovr file that contains the overrides to insert. Filelocs.txt is then
modified to point to this file. When the data file is processed, the overrides are inserted
automatically.
AFC Sales and Use User Manual | 27 of 329
Copyright 2018 Avalara, Inc.
3. Avalara clients that integrate with the AFC Engine using functions (such as APIs) can use the
Override utility as an easy way to create overrides in the same manner that batch mode and
online clients do, modify filelocs.txt to point to the EZTax.ovr file or use the file path to point to
the EZTax.ovr file.
The following functions use a session and a tax override record to override the tax rates used by AFC to
calculate taxes.
Table 4-4 Tax Override Names and Descriptions
Function Name
Override Description
EZTaxOvrJCodeEx**
**This is the override JCode function for the
most current version of AFC.
Performs tax override using a JCode to designate the
Jurisdiction.
EZTaxOvrPCodeEx
Performs tax override using a PCode to designate the
Jurisdiction.
EZTaxOvrZipEx
Performs tax override using zip code and address information
to designate the Jurisdiction.
Tax Override Fields
AFC functions can be used to override a specific tax rate used by AFC.
Table 4-5 Tax Override Fields
Field
Description
Scope
Scope of override
Type
Tax type identifier
Level
Tax level identifier
Exempt Level
Level of Exemption
Limit
Maximum lines or charge to apply tax to
Date
Effective date of Tax Rate
Tax Rate
Tax Rate
Previous Tax Rate
Previous tax rate
Maximum Base
Maximum amount to apply tax
Excess Tax
Rate for amount above the Maximum Base
State Override
Override state rate if present
County Override
Override county tax if present
Replace State Tax
Tax replaces state tax
Replace County Tax
Tax replaces county tax
Scope
Refer to Table 4-6. The term Scope is used to indicate the magnitude of the override.
AFC Sales and Use User Manual | 28 of 329
Copyright 2018 Avalara, Inc.
Table 4-6 Tax Level Effect of Exemption
Tax Level
Scope
Effect of Exemption
Federal
Federal
Exempt all defined Federal taxes
Federal
State
Exempt entire State for the specific Federal taxes
Federal
County
Exempt the Federal taxes within a specified County
Federal
Locality
Exempt the Federal taxes within a specified Locality
State
State
Exempt all Defined State taxes within a State
State
County
Exempt the State taxes within a specified County
State
Locality
Exempt the State taxes within a specified Locality
County
State
Exempt all County taxes within a specified State
County
County
Exempt all County taxes within a specified County
County
Locality
Exempt the County taxes within a specified Locality
Locality
State
Exempt all Locality taxes within a specified State
Locality
County
Exempt all Locality taxes within a specified County
Locality
Locality
Exempt all Locality taxes within a specified Locality
As an example, specifying a gross receipts tax at the Local level with a scope of State level will cause all
jurisdictions in the state identified by the jurisdiction to be passed to the AFC Engine with the specified
tax overridden. The County level affects all taxes in the County and Local level affects only the jurisdiction
specified. The specification of Federal level is only valid with federal taxes which will always be
overridden at the Federal level.
Type
The Tax type identifier is used to define the type of tax for which the override will apply. Refer to Table 4-
19 for a complete list of Tax Types supported in AFC.
Level
The Tax level identifier is used to define the level for which the override will apply.
Exempt Level
Refer to Table 4-6. The Exempt Level indicator is used to define whether a tax can be exempted by an
exemption for all taxes at the same level as this tax. TRUE indicates that the tax can be exempted while
FALSE indicates that it cannot be exempted. Note that the tax can still be exempted by a specific tax
exemption.
For instance, a state level universal service fund will be exempt if this field is set TRUE and a state level tax
exemption flag is passed to AFC. If the flag is set TRUE an exemption at the level of the tax will exempt
the tax. If the flag is set FALSE an exemption at the level of the tax will have no effect on that specific tax.
AFC Sales and Use User Manual | 29 of 329
Copyright 2018 Avalara, Inc.
Limit
The limit indicator is only used for taxes applied per line or location. When this field is set to zero it
indicates no limits are in effect for the specified tax. When the limit is not zero, AFC will apply the tax
based upon the number of lines or locations up to, but never exceeding, the limit amount. This has no
effect on sales taxes
Date
The Date field is used to define the effective date that the tax rate is active. The transaction date is
compared to the effective date to determine if the current tax rate or the previous tax rate is to be
applied.
Tax Rate
If the taxes are computed as a percentage of the charge then the Tax Rate field is used to indicate the tax
rate. For example, if a 5% sales tax were applied then the tax rate would be entered as .05. For all other
taxes such as per line, fixed, per minute and per location, the dollar amount should be entered for the
tax.
Previous Tax Rate
The Previous Tax Rate field is supplied for use when a previous tax is to be used for the tax rate.
Maximum Base
The Maximum Base defines the maximum charge that the tax is applied to. Any charge above the
maximum base is charged at the excess tax rate.
Excess Tax
If the tax only caps the charge that the tax is applied to then set the excess tax to zero.
State Override
The Locality or County sales tax record can override the state sales tax rate. This is useful where localities
or counties have a special agreement with the state to collect the state tax at a different rate. If the tax is
zero then no override will be in effect.
County Override
The Locality sales tax record can override a County sales tax rate. This is useful where localities have a
special agreement with the County to collect the County tax at a different rate. If the tax is zero then no
override will be in effect.
AFC Sales and Use User Manual | 30 of 329
Copyright 2018 Avalara, Inc.
Replace State Tax
This option is made available for the rare occasion when a Locality or County sales tax replaces the state
sales tax completely.
Replace County Tax
This option is made available for the rare occasion when a Locality sales tax replaces a county sales tax
completely.
Tax Override Options
The Enhanced Override is used to override taxes.
Table 4-7 Tax Override Options
Name
Description
Enhanced Override
Required fields for the Enhanced Override.
Enhanced Date Override
Required fields for Date Override.
Enhanced Rate Override
Required fields for Rate Override.
Enhanced Override
The Enhanced Override requires the following fields.
Table 4-8 Enhanced Override Fields
Scope
Scope of override
Type
Tax Type identifier
Level
Tax Level identifier
Date Count
Number of date records (normally 2)
Date Table
Address of array of date records
Enhanced Date Override
The Enhanced Date override requires the following fields.
Table 4-9 Enhanced Date Override Fields
Override Date
Starting (effective) date for this set of tax rates
Rate Count
Number of rate records for this date (normally 1)
Level Exempt
Indicates if tax can be exempted by an exemption for all taxes at the same level as this tax.
Tax can still be exempted by specific tax exemption.
Rate Table
address of array of rate records
Enhanced Rate Override
The Enhanced Rate Override requires the following fields and rate entries in rate table for taxes.
Table 4-10 Sales Rate Override Fields
Tax
Tax Amount (rate)
Maximum Base
Max amount subject to this tax(end of bracket)
Replace State
Tax replaces the state tax
State Override
Overrides the state rate if present
Replacement County
Tax replaces the county tax
AFC Sales and Use User Manual | 31 of 329
Copyright 2018 Avalara, Inc.
Table 4-10 Sales Rate Override Fields
County Override
Overrides the county tax if present
Get Rates
The AFC Get Rates function can be used to build the current tax information into the override structure.
Specific changes can be made to returned tax entries to create custom overrides.
Table 4-11 Get Rates Override Fields
PCode
Jurisdiction PCode
Tax Count
Count of all taxes for this jurisdiction
*Taxes Table
Table of all taxes for this jurisdiction in override format
NOTE:
The scope value will be set to the tax level.
General Tips When Using Overrides
1. Overrides are not permanent. When an AFC session is exited the created overrides are removed and
no longer available. They can also be removed without exiting a session using the EZTaxRestore
function.
2. AFC cannot override a tax that does not exist. If an existing tax is a rate, it is necessary to override the
tax as a rate, not a per line or fixed amount. Failure to do so will result in incorrect and high tax
amounts.
3. Non-exemptible taxes may be overridden to exempt taxes that are normally not exemptible.
4. The AFC Override functions can be used to override the rates, but they will not affect the rules that
determine what taxes are applied to different transaction/service pairs.
General Rules for Configuring Override File
1. The override file path must be listed in filelocs.txt.
2. The override file must be the last item in filelocs.txt.
3. There cannot be any blank lines in filelocs.txt.
Also, in order to verify that an override file is in the process of being loaded, the user must go to the AFC
Directory and locate the .sta or status file which indicates that an override file has been successfully
loaded.
AFC Sales and Use User Manual | 32 of 329
Copyright 2018 Avalara, Inc.
Tax Rate Brackets
Some jurisdictions will dictate a tax rate that changes as the taxable amount of the transaction increases.
These break points at which the changes occur define the brackets (or steps) and are most commonly
based on dollar amount ranges although other units of measure exist. The rate may increase or decrease
according to usage levels.
AFC supports these transactions with an unlimited number of tax brackets. The Avalara Tax Research
department continually researches jurisdictions for specific tax practices, such as tax rate brackets,
updating the AFC Engine monthly. These updates occur automatically and the user is not required to
make changes to account for this.
An example of this is illustrated in Figure 4-1Figure 4-1. If a jurisdiction has a general sales tax set at 2%
for the first $500 of a single transaction and set at 1% for that which is over $500, the tax for a $1200 sale
would be calculated as shown in Figure 4-1.
Figure 4-1 Example of Sale with Tax Brackets
First $500 of Sale
$500
@
2%
=
$10.00
Remaining Amount of Sale (Over $500)
$700
@
1%
=
7.00
$17.00
Total Tax
Rate Final
Rate at Final is a variation of the typical tax bracket. Basically a lookup table, each bracket is defined by
the break points at which a rate change occurs and contains the rate to be charged for the total
transaction amount falling within the range.
For example, suppose a state establishes a sales tax with a tax rate dependent on the total sale amount as
shown in Figure 4-2Figure 4-2.
Figure 4-2 Example of Tax Brackets
Total
Rate
$0.00 - $500.00
7.65%
$500.01 - $1000.00
9.00%
$1000.01 - $5000.00
7.65%
$5000.01 up
7.50%
AFC Sales and Use User Manual | 33 of 329
Copyright 2018 Avalara, Inc.
If the sale is $200, the tax rate of 7.65% will apply for a total tax of $15.30.
If the sale is $700, the tax rate of 9.00% will apply for a total tax of $63.00.
If the sale is $1500, the tax rate of 7.65% will apply for a total tax of $114.75.
If the sale is $6000, the tax rate of 7.50% will apply for a total tax of $450.00.
Limits
Some jurisdictions have established tax rates that either take effect or cease to take effect at a threshold,
a specific currency value. The point at which this occurs is referred to as a cap or limit. AFC supports
these transactions and the user is not required to make changes to account for it.
As an example, if a jurisdiction charges a 10% sales tax on only the first $10 of an invoice, the tax for a $20
invoice would “cap” at the $10 threshold, resulting in a ($10 x 10% =) $1 sales tax.
As an example of the converse, if a jurisdiction does NOT tax the first $25 of a purchase, a $35 charge
would be reduced by the $25 threshold “limit,” resulting in a ($35 - $25 = ) $10 taxed amount.
Surcharges
The returned tax table shows which tax entries are considered surcharges.
Discount Adjustment
AFC has an additional table that stores discount types by state with an “allow ability” indicator. The
adjustment functions have arguments for the discount type which look up the discount type from the
table to determine whether to apply taxes or not.
Discounts may or may not be taxed within each state. When a discount is taxed, the customer receives a
tax benefit commensurate with the amount of the discount (i.e., if the customer gets $5 off on a
transaction subject to a 5% tax, the customer pays $0.25 less in tax than they would have). When a
discount is not taxed, the customer receives no tax benefit from the discount. Whether a discount is
taxed or not depends on the type of discount and the rules in a particular tax jurisdiction.
AFC provides five discount types to use in defining the particular discount to be applied and are fully
described with supporting example in the following sub-sections.
Discount Type
ID
Value
Description
0
None (Default)
Discount Type not applicable.
1
Retail Product
An amount subtracted from the original price to arrive at a lower price.
2
Manufacturer Product
A credit applied to the total amount reimbursed to either the retailer or
the customer by the manufacturer.
AFC Sales and Use User Manual | 34 of 329
Copyright 2018 Avalara, Inc.
Discount Type
ID
Value
Description
3
Account Level
A stand-alone discount that is not applied against any service but instead
as a stand-alone product.
4
Subsidized
A credit for telephone service where the telephone provider provides a
service to a lifeline eligible customer. The credit will be applied to the
subscriber line charge.
5
Goodwill
A credit applied to customer invoices for the purpose of engendering
customer goodwill. For example, compensation for a service outage.
Account Level
Especially prevalent in large accounts, this discount is a stand-alone discount that is not applied against
any service but instead as a stand-alone product.
Example Description of Account Level
A Kansas customer spends significant amounts on a wide range of services including local exchange,
intrastate toll, and interstate toll. The customer’s purchasing activity occurs in several states and across
multiple accounts. The customer’s spending levels earn it a $1,000.00 discount that is not applied to any
particular product or service, but will be applied at an account level.
The Corporate Tax Department has determined that account level discounts in Kansas will receive full tax
credit, so the discount is mapped to a Tax Category created to represent generic account level discounts
and the customer gets a $53.00 credit of Kansas state sales tax along with the $1,000.00 discount. The
application of Kansas sales tax to the discount, rather than other state's sales taxes (i.e., states in which
there was purchasing activity that helped to earn the discount), is a consequence of the discount being
applied to a Kansas account and SBC Corporate Tax has determined that the related tax risk is acceptable.
Goodwill
A credit applied to customer invoices for the purpose of engendering customer goodwill. For example,
compensation for a service outage.
Example Description of Goodwill
A Kansas customer buys a second line and gets voice mail free for a month ($6.00 value). The free voice
mail is a Goodwill Discount because, although it is offered by the retailer and applied to a particular
product or service, the terms of the promotion provide that the discount will not be taxed.
To accomplish this, the billing system will make separate calls to the taxing engine of $6.00 for the
monthly recurring voice mail charge and -$6.00 for the Goodwill Discount. Both transactions will be
represented by the same tax category, but the billing system will send an additional value on the discount
AFC Sales and Use User Manual | 35 of 329
Copyright 2018 Avalara, Inc.
transaction indicating that it is a Goodwill Discount. The $6.00 charge for voice mail generates $0.32 in
Kansas state sales tax. When the -$6.00 discount is processed for tax applications, the taxing engine
determines that a Goodwill Discount is not taxed and generates -$0.00 in Kansas state sales tax. The
offsetting tax amounts are presumably netted together in the tax summary on the customer’s bill.
Whether the charge and discount amounts are netted on the customer’s bill is up to the billing system,
and does not affect the tax calculation or the presentation of tax on the bill.
Manufacturer Product
A credit applied to the total amount reimbursed to either the retailer or the customer by the
manufacturer.
Example Description of Manufacturer Product
A Kansas customer buys a satellite dish for $300.00 and receives a $50.00 rebate (discount) from the
satellite company. The billing system will make separate calls to the taxing engine for the dish charge of
$300.00 and the discount of -$50.00. Both transactions will be represented by the same tax category, but
the billing system will send an additional value on the discount transaction indicating that it is a
Manufacturer Discount. The $300.00 charge for the satellite dish generates $15.90 in Kansas state sales
tax. For the -$50.00 discount, the tax engine determines that Kansas does not allow any tax credit on
Manufacturer Discounts and generates $0.00 in Kansas state sales tax. The offsetting tax amounts are
presumably netted together in the tax summary on the customer’s bill. Whether the charge and discount
amounts are netted on the customer’s bill is up to the billing system, and does not affect the tax
calculation or the presentation of tax on the bill.
Retail Product
A retail product discount is an amount subtracted from the original price to arrive at a lower price.
Example Description of Retail Product
A Kansas customer has voice mail and is charged a monthly recurring charge of $6.00/month. The
customer buys a second line and gets voice mail free for a month. The billing system will make separate
calls to the taxing engine for the monthly recurring charge of $6.00 and the discount of -$6.00. Both
transactions will be represented by the same tax category, but the billing system will send an additional
value on the discount transaction indicating that it is a Retailer Discount.
The $6.00 charge for voice mail generates $0.32 in Kansas state sales tax. For the -$6.00 discount, the tax
engine determines that Kansas allows a full tax credit on Retailer Discounts and generates -$0.32 in
Kansas state sales tax. The offsetting tax amounts are presumably netted together in the tax summary on
the customer’s bill. Whether the charge and discount amounts are netted on the customer’s bill is up to
the billing system, and does not affect the tax calculation or the presentation of tax on the bill.
AFC Sales and Use User Manual | 36 of 329
Copyright 2018 Avalara, Inc.
Subsidized
A credit for telephone service where the telephone provider provides a service to a lifeline eligible
customer. The credit will be applied to the subscriber line charge.
Example Description of Subsidized
A Kansas Lifeline customer purchases local exchange service. Local exchange service is normally $24.00,
but Lifeline customers are charged $20.50 and the balance of $3.50 is drawn from a federal government
fund for the subsidization of local exchange service to Lifeline customers. The company still has $24.00 in
revenue and will owe Kansas state sales tax on the entire $24.00 in revenue. The company is prohibited
from drawing on the federal government fund to pay for the tax on the $3.50, so the customer must pay
all of the applicable tax.
Tier at Transactions
In some states, the sales tax on a product has tier taxing logic. When tax is calculated using Tier at
Transactions the tax is determined using graduated tax brackets on each transaction separately rather
than the amount of the customer invoice. The tax applies tax brackets based on the single product
transaction. Tier at Transaction is not the default setting in AFC.
Tax on Tax Until no Effect
The default application of tax on tax is to make one pass through the calculation of each tax, adding the
appropriate taxes to the base amount to be taxed. If the tax on tax until no effect option is selected, AFC
will continue to recalculate tax on tax until the amount added is less than 0.005 (one half of a cent).
Historical Tax Rates
AFC maintains an unlimited number of past tax rates. The tax rate history tables contain the tax rates and
effective dates and are referenced when tax calculations are performed on date other than the current
date.
Taxed Taxes
Taxed taxes are instances in which one tax includes in its base the tax calculated from another tax. The
scope of this document prohibits a discussion of the many examples of taxed taxes.
AFC Sales and Use User Manual | 37 of 329
Copyright 2018 Avalara, Inc.
Refer to Figure 4-3.Figure 4-3. In the case where two taxes are returned for a transaction (tax A and tax B
in this example), tax A might be included in the base of tax B. If both taxes are returned for a $100
charge, the taxes would be calculated as follows:
Figure 4-3 Taxed Taxes Example
(tax rate of 3% is used in this example)
Tax A
FET
Charge
$100.00
Charge
$100.00
Rate
x
3 %
Tax Amount
=
$3.00
Tax A
+
$3.00
Tax B base
=
$103.00
Rate
x
3%
Tax Amount
=
$3.09
Tax Logging
Once the tax calculations are complete, the EZTax.log is created. The log is a binary database containing
all of the taxes generated during the tax run. Information in the log includes the jurisdictional data, tax
types, tax levels, sale amounts, tax rates, tax amounts, exemptions, adjustments, customer number, etc.
Once AFC performs a graceful exit, the EZTax.log is available for use. This file is commonly used to create
tax returns, provide audit trails and internal tracking, and used when making projections.
The options available for reporting the tax information vary based on the integration method that the
client has chosen to use.
1. Batch mode clientsThe EZTax.log is automatically produced when processing the .CDS file.
Several utilities are available for use to produce files to be imported into the billing system. Refer
to Section 5.1 for utility selection assistance.
2. AFC SaaS Standard clients - The EZTax.log is automatically produced and the sorting and reporting
activities are performed automatically.
3. On-site clients - The EZTax.log is automatically produced. Many sorting and reporting utilities are
available for use to produce the desired output file. Refer to Section 5.1 for utility selection
assistance.
4. APIs - Clients who use the functions (such as APIs) must turn logging on to gain the benefit of
sorting utilities. All of the information used for billing is returned real time during taxation.
AFC Sales and Use User Manual | 38 of 329
Copyright 2018 Avalara, Inc.
Returned Taxes
Once the tax calculations are completed, the tax information is placed in the Tax Table, available to be
returned to the user from the AFC engine. An additional Tax Table will be returned if using Invoice Mode.
Taxes Table
The AFC Table is dynamically allocated during AFC session initialization. This table is used to store tax
information as AFC processes transaction records. The size of this table is dependent upon the maximum
taxes that can be generated for a single transaction. As such, the size of this table can change from
month to month as new taxes are generated or removed from taxing jurisdictions. It is always safe to
access from 0 (zero) to [tax_count_returned -1] locations of the table. The user is cautioned to treat this
as a read only area. Attempting to access locations that do not exist will result in access violations on
most operating systems.
Each function that performs tax calculations or tax exceptions returns a count of taxes generated for the
specified transaction. The transaction tax data can be retrieved for use in a billing system by accessing
the Tax Table pointer which indicates the location of the tax amount in the AFC Table array.
Returned Tax Information
Tax information can be returned using the P Code, J Code, Zip or FIPS functions. A value is returned to
indicate the number of taxes returned and included in the Tax Table. Each tax calculated is returned as a
record in the tax table. Taxes are retrieved by looping through the table by the number of taxes, which is
then returned by the taxation API call.
Each row in the Tax Table will contain the information shown in Table 4-12.
Table 4-12 Enhanced Taxes Table Fields
PCode
PCode for tax jurisdiction
Tax Type
Tax Type
Tax Level
Tax Level**
Calculation Type
Calculation Type (i.e. Rate, Fixed, Per Minute, Per Line)
Rate
Tax Rate or amount applied
Tax Amount
Calculated tax amount
Taxable Measure
Amount of charge plus any taxed taxes
Exempt Sale Amount
Amount of the charge exempt from taxes
*Desc
Tax description string
Billable
Billable flag from tax logic
Compliance
Compliance flag from tax logic
Surcharge Flag
FET taxable flag from tax record
**Country taxes within any US territory will be returned at a state level versus a federal level.
AFC Sales and Use User Manual | 39 of 329
Copyright 2018 Avalara, Inc.
Returned Tax Information Using Invoice Mode
AFC applies Steps, Brackets and/or Limits on a per transaction basis unless operating in Invoice Mode.
Invoice Mode is used to group transactions that apply to the same customer. AFC maintains a history of
the transactions and applies the Steps, Brackets and/or Limits to entire group of transactions.
For example, suppose a jurisdiction charges a 10% sales on just the first $10 of an invoice. If two separate
$6 transactions on the invoice are passed while not in Invoice Mode, two $0.60 tax charges would be
erroneously totaled and a $1.20 tax would be generated. However, if these same transactions are passed
while in Invoice Mode, the total tax charge would be correctly totaled and a $1.00 tax would be
generated.
Table 4-13 Invoice Mode Tax Table Fields
PCode
PCode for tax
Tax Type
Tax Type
Tax Level
Tax Level**
Calculation Type
Calculation Type (i.e. Rate, Fixed, Per Minute, Per Line)
Rate
Tax Rate or amount applied.
Tax Amount
Calculated tax amount.
Exempt Sale Amount
Amount of the charge exempt from taxes.
*Desc
Tax description string
Lines
For tax calculations based on line counts, it is the number of lines used in the
calculation to produce the tax. For Federal taxes, the line count always matches the
lines input. For all other taxes, it is 0.
Minutes
For tax calculations based on minutes, it is the number of minutes used in the
calculation to produce the tax. For all other taxes, it is 0.
Max Base
Maximum amount to which tax is applied amounts above this will be taxed at a
higher bracketed rate (if applicable).
Min Base
Minimum amount to which tax is applied amounts below this will be taxed at a
lower bracketed rate (if applicable).
Excess Tax
Rate for amount above Max Base returned as part of county tax.
Total Charge
Sum of charges calculated on a per customer basis.
**Country taxes within any US territory will be returned at a state level versus a federal level.
Tax Grouping
AFC allows a client application to group the tax calculation results returned in the tax table based on tax
level and tax type criteria. This may be accomplished by setting the appropriate group mode option in the
configuration file (see TM_00548_AFC Configuration Guide). The option specified in the configuration file
will automatically be applied to every AFC session as it is initialized. However, this option may be
overridden by calling the EZTaxGroupResults API function.
NOTE:
This option will not modify the way that tax calculation results are logged
into the EZtax log file. Only the tax calculation results returned by either
AFC Sales and Use User Manual | 40 of 329
Copyright 2018 Avalara, Inc.
one of the tax calculation API will be group according to the values set for
this option.
General Rules
The following rules apply when using any value for this option:
Federal taxes may not be grouped. Each Federal tax will be returned individually.
Non-billable taxes may not be grouped.
Only rate-based taxes may be grouped. Taxes with a different calculation type (for example,
fixed, per line, etc) will be returned individually.
Use taxes may be grouped with other use taxes only (for example, state and local use tax).
Use
taxes will not be grouped with other tax types.
When grouping taxes for different tax levels (for example, state and local taxes) the
jurisdiction
code for the lowest level jurisdiction will be returned.
Unincorporated taxes will be considered as County taxes when grouping taxes by tax level,
and
will be grouped accordingly.
The tax rates for all taxes being grouped into a single record will be added together.
Options:
AFC provides the following options in order to group the taxes in the tax table by tax level:
Group taxes at the same level. When using this option, taxes at the same level will be
grouped
together.
Group state, group county and local. By using this option, all state level taxes will be grouped
into a single record, and all county and local taxes will be grouped together into a separate
record.
Group state, county, and local. If this option is specified, all state, county, and local taxes will
be
grouped together.
In addition to grouping taxes by tax level, AFC allows you to separate sales taxes from other tax types. The
following options may be used in conjunction to the tax level options specified above.
1. Group sales taxes. This option indicates that Sales Taxes (tax type 1) and Use Taxes should be
grouped separately from other taxes.
2. Group taxes in the sales category. All taxes that are in the sales category (such as some
District and Transit taxes, in addition to Sales Taxes) will be grouped together separately
from other taxes.
AFC Sales and Use User Manual | 41 of 329
Copyright 2018 Avalara, Inc.
If the group mode is being specified within the EZTax.cfg file, the sales tax option may be combined with
the tax level option by inserting the option in the line following the tax level option. For example:
groupstatecountyandlocal
groupsalescategory
When calling the API function, a sales tax option may be combined with a tax level option by using the
bitwise OR operator in the group mode parameter. For example:
EZTaxGroupResults(session, GROUP_ST_CO_LOCAL | GROUP_SALES_CATEGORY);
By using the default option in the configuration file or the API function, this feature will be disabled, and
all taxes will be returned in an individual record.
Tax Return Table
When grouping taxes together, the fields in the tax return table will contain the following values:
Jurisdiction Code. Jurisdiction Code (PCode or JCode depending on the API call and interface
being used) for the lowest level jurisdiction. For example, if Kansas state taxes and Overland
Park local taxes were grouped together, the tax record will contain the jurisdiction code for
Overland Park.
Tax level. When grouping State, County and Local taxes together, the tax record will contain a
value of 6 in the tax level. When grouping only County and Local taxes together, the tax
record will contain a value of 7 in the tax record. Constants are provided for these values in
the appropriate file.
Tax type. When grouping different taxes together, the tax type in the tax record will contain a
value of 0. If only Sales Taxes (tax type 1) or Use Taxes (tax type 49) are being grouped
together, the tax record will contain the corresponding tax type.
Tax amount. This field will contain the sum of the tax amount for all taxes being grouped
together.
Tax rate. This field will contain the sum of the tax rates for all taxes being grouped together.
NOTE:
The remaining fields in the tax table will not contain any meaningful
value. Grouping tax calculation results may serve as a way to simplify the
tax information for display purposes only. If further detail is required for
each tax being returned by AFC, this feature should not be used.
AFC Sales and Use User Manual | 42 of 329
Copyright 2018 Avalara, Inc.
Sales and Use
The AFC Sales and Use feature allows API users access to an expanded set of Transaction and Service Type
pairs. A Sales and Use transaction requires not only the valid Transaction and Service Type pair but must
also include one or more attribute(s). The attributes are used to further specify details of a transaction,
such as the freight costs or the purchase of an extended warranty.
Sales and Use contains a comprehensive list of transactions to handle your taxation needs. In addition to
the products/services, other items such as Shipping, Discounts, Installation, etc. may or may not be
taxable depending on the underlying transaction. AFC Sales and Use provides the ability to pass these
items with each transaction. The system automatically determines the taxability of these items based
upon the jurisdiction.
AFC Sales and Use contains sourcing tables to determine where the taxable event took place based upon
the order entry information entered into the API. The tables contain sourcing information for both SSTP
and non-SSTP states. The transactions are designed with a one-to-one relationship with SSTP definitions
and also include definitions for non-SSTP states.
Sales Transaction Data Attributes and Properties
Sales and Use attributes are used to specify the sales transaction data of a transaction. The Default
attribute is included by “default” in most transactions as it is used for the sale of the product or service
itself. However, it is possible for a transaction to occur that does not include the Default attribute, such
as when the purchase of a service contract for a product occurs sometime after the sale of a product.
In most cases a Sales and Use transaction will include more than one attribute in order to completely
define it.
Properties are included within some attributes to further define options within the attribute. Please refer
to TM_00506 AFC Sales and Use Mapping Guidelines for definitions of each attribute and associated
properties.
Freight On Board (FOB) Transaction Details
The table below provides a detailed breakdown of freight transactions specific to FOB. Please reference
TM_00506 AFC Sales and Use Mapping Guidelines for additional details, descriptions and examples for all
of the possible freight transaction combinations or properties.
AFC Sales and Use User Manual | 43 of 329
Copyright 2018 Avalara, Inc.
Table 4-14 FOB Transaction Attributes
Attribute
Property
Description
Example
FOB using
FIPS Codes
FALSE = FOB
Shipping Point
A term that signifies that the
freight being shipped is the
responsibility of the buyer after it
leaves the point where it is shipped
from.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable only while the property is
in their possession at their docks
in New York.
TRUE = FOB
Destination
A term that signifies that the
freight being shipped is the
responsibility of the seller until the
item being shipped is received by
the buyer.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable up until the item is
received in Los Angeles
ship_from_fips_code;
Ship from Fips Code
ship_to_fips_code;
Ship to Fips Code
sau_tax_data
Transaction data
FOB using
JCodes
FALSE = FOB
Shipping Point
A term that signifies that the
freight being shipped is the
responsibility of the buyer after it
leaves the point where it is shipped
from.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable only while the property is
in their possession at their docks
in New York.
TRUE = FOB
Destination
A term that signifies that the
freight being shipped is the
responsibility of the seller until the
item being shipped is received by
the buyer.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable up until the item is
received in Los Angeles
ship_from_j_code;
Ship from JCode
ship_to_j_code;
Ship to JCode
sau_tax_data
Transaction data
FOB using
PCodes
FALSE = FOB
Shipping Point
A term that signifies that the
freight being shipped is the
responsibility of the buyer after it
leaves the point where it is shipped
from.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable only while the property is
in their possession at their docks
in New York.
TRUE = FOB
Destination
A term that signifies that the
freight being shipped is the
responsibility of the seller until the
item being shipped is received by
the buyer.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable up until the item is
received in Los Angeles
ship_from_p_code;
Ship from PCode
ship_to_p_code;
Ship to PCode
sau_tax_data
Transaction data
FOB using
ZIP P4 Codes
FALSE = FOB
Shipping Point
A term that signifies that the
freight being shipped is the
responsibility of the buyer after it
leaves the point where it is shipped
from.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable only while the property is
in their possession at their docks
in New York.
AFC Sales and Use User Manual | 44 of 329
Copyright 2018 Avalara, Inc.
Table 4-14 FOB Transaction Attributes
Attribute
Property
Description
Example
TRUE = FOB
Destination
A term that signifies that the
freight being shipped is the
responsibility of the seller until the
item being shipped is received by
the buyer.
Company A ships an item from
its docks in New York to Los
Angeles. Company A would be
liable up until the item is
received in Los Angeles
ship_from_zip_address_P4;
Ship from ZIP Code+4 and address information
ship_to_zip_address_P4;
Ship to ZIP Code+4 and address information
Tax Data Structure
Table 4-17 Tax Data Structure
customer_type;
0=residential, 1=business customer, 2=Senior Citizen,
3=Industrial
sale;
flag - retail/sale or wholesale/resale
trans_type;
see the programmer user's
srv_type;
manual for valid transaction service type pairs
attr;
SAU_FREIGHT, SAU_DEMURRAGE, SAU_DEPOSITS, ...
sau_freight_properties freight;
properties for freight
sau_discount_properties discount;
properties for discounts
sau_finance_properties finance;
properties for finance
sau_installation_properties installation;
properties for installation
sau_shipandhandling_properties
shipandhandle;
properties for shipping and handling
sau_softwaremaint_properties softwaremaint;
properties for software maintenance
sau_svc_contract_properties svccontract;
properties for service contracts
sau_maint_agreement_properties
maintagreement;
properties for maintenance agreements
sau_factory_warranty_properties facwarranty;
properties for factory warranty
sau_extended_warranty;
Properties for extended warranty
date;
transaction bill date
charge;
amount charged to customer
count;
number of items
incorp;
incorporated or unincorporated area
FED_exempt;
If TRUE, transaction exempt from Federal Tax
st_exempt;
If TRUE, transaction exempt from State Tax
co_exempt;
If TRUE, transaction exempt from County Tax
loc_exempt;
If TRUE, transaction exempt from local tax
FED_J_Code;
Jurisdiction for Federal exemption
st_J_Code;
Jurisdiction for state exemption
co_J_Code;
Jurisdiction for county exemption
loc_J_Code;
Jurisdiction for local exemption
spc_exempt;
0 indicates no of specific exempts, other value indicates
number of specific exempts
sau_exempt *sau_exemptions;
array of exemptions
exempt_type;
reason for exemption
AFC Sales and Use User Manual | 45 of 329
Copyright 2018 Avalara, Inc.
Table 4-17 Tax Data Structure
inv_no;
Invoice number, user defined
srv_lvl_no;
Service level number, user defined
optional;
user defined value for reporting
cust_no[CUST_NO_SIZE];
user defined customer number
company_identifier[CO_IDENTIFIER_SIZE];
company identifier
opt_alpha_1[CUST_NO_SIZE];
optional alpha field
opt_4;
optional numeric field
opt_5;
optional numeric field
opt_6;
optional numeric field
opt_7;
optional numeric field
opt_8;
optional numeric field
opt_9;
optional numeric field
opt_10;
optional numeric field
Transaction and Service Types (Sales and Use)
The transaction/service types to be used are identified here.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
24 491 Software/Canned Software
Software written for multiple users.
Transferable to the computer by physical
means which the customer retains.
24 492 Software/Modified Charges
Charges to modify canned software for a
specific user.
24 493 Software/Modified Software
Software modified for a specific purpose
for a specific user. Transferable to the
computer by physical means, which the
customer retains
24 494 Software/Custom Software
Software written for a specific purpose
for a specific user. Transferable to the
computer by physical means which the
customer retains
24 495 Software/Canned Software-Load and
Leave
Software written for multiple users.
Transferable to the computer by physical
means which the software provider
retains after installation.
24 496 Software/Custom Software-Load and
Leave
Software written for a specific purpose
for a specific user. Transferable to the
computer by physical means which the
software provider retains after
installation.
24 497 Software/Licensed Software-Load and
Leave
An agreement for the use of software for
a specified period. Transferable to the
computer by physical means which the
software provider retains after
installation.
AFC Sales and Use User Manual | 46 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
24 498 Software/Modified Software-Load
and Leave
Software modified for a specific purpose
for a specific user. Transferable to the
computer by physical means which the
software provider retains after
installation.
24 499 Software/Downloaded Custom
Software
Software written for a specific purpose
for a specific user. Transferable to the
computer by electronic means.
24 500 Software/Downloaded Canned
Software
Software written for multiple users.
Transferable to the computer by
electronic means.
24 501 Software/Licensed Software-
Download
An agreement for the use of software for
a specified period. Transferable to the
computer by electronic means.
24 502 Software/Modified Software-
Download
Software modified for a specific purpose
for a specific user. Transferable to the
computer by electronic means.
24 503 Software/Software Set Up-Optional-
Canned
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering pre-written
software transferred by physical means
that is retained by the user. The user has
the option of installing the software
themselves.
24 504 Software/Software Set Up-Optional-
Custom
Charges for the set up and installation of
software into the purchaser’s
equipment. This covers custom software
no matter the means transferred. The
user has the option of installing the
software themselves.
24 505 Software/Software Set Up-Optional-
Downloaded
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering pre-written
software transferred by electronic
means. The user has the option of
installing the software themselves.
24 506 Software/Software Set Up-Optional-
Load and Leave
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering pre-written
software transferred by physical means
that is retained by the seller. The user
has the option of installing the software
themselves.
AFC Sales and Use User Manual | 47 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
24 507 Software/Software Set Up-Optional-
Modified
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering modified software
transferred by physical means that is
retained by the user. The user has the
option of installing the software
themselves.
24 508 Software/Software Set Up-
Mandatory-Canned
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering pre-written
software transferred by physical means
that is retained by the user. The user
does not have the option of installing the
software themselves.
24 509 Software/Software Set Up-
Mandatory-Custom
Charges for the set up and installation of
software into the purchaser’s
equipment. This covers custom software
no matter the means transferred. The
user does not have the option of
installing the software themselves.
24 510 Software/Software Set Up-
Mandatory-Downloaded
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering pre-written
software transferred by electronic
means. The user does not have the
option of installing the software
themselves.
24 511 Software/Software Set Up-
Mandatory-Load and Leave
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering pre-written
software transferred by physical means
that is retained by the seller. The user
does not have the option of installing the
software themselves.
24 512 Software/Software Set Up-
Mandatory-Modified
Charges for the set up and installation of
software into the purchaser’s
equipment. Covering modified software
transferred by physical means that is
retained by the user. The user does not
have the option of installing the software
themselves.
24 513 Software/Computer Consulting-
Optional-Canned
Charges often considered design and
planning for software but not to include
actual training.
24 514 Software/Computer Consulting-
Mandatory-Canned
Charges often considered design and
planning for software but not to include
actual training.
AFC Sales and Use User Manual | 48 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
24 515 Software/Computer Consulting-
Optional-Custom
Charges often considered design and
planning for software but not to include
actual training.
24 516 Software/Computer Consulting-
Mandatory-Custom
Charges often considered design and
planning for software but not to include
actual training.
24 517 Software/Computer Consulting-
Optional-Downloaded
Charges often considered design and
planning for software but not to include
actual training.
24 518 Software/Computer Consulting-
Mandatory-Downloaded
Charges often considered design and
planning for software but not to include
actual training.
24 519 Software/Computer Consulting-
Optional-Load and Leave
Charges often considered design and
planning for software but not to include
actual training.
24 520 Software/Computer Consulting-
Mandatory-Load and Leave
Charges often considered design and
planning for software but not to include
actual training.
24 521 Software/Computer Consulting-
Optional-Modified
Charges often considered design and
planning for software but not to include
actual training.
24 522 Software/Computer Consulting-
Mandatory-Modified
Charges often considered design and
planning for software but not to include
actual training.
24 523 Software/Computer Training-
Optional-Canned
Charges for training the purchaser on the
use of new software. The training is for
canned software and the customer has a
choice on whether to take the course.
24 524 Software/Computer Training-
Mandatory-Canned
Charges for training the purchaser on the
use of new software. The training is for
canned software and the customer does
not have a choice on whether to take the
course.
24 525 Software/Computer Training-
Optional-Custom
Charges for training the purchaser on the
use of new software. The training is for
custom software and the customer has a
choice on whether to take the course.
24 526 Software/Computer Training-
Mandatory-Custom
Charges for training the purchaser on the
use of new software. The training is for
custom software and the customer does
not have a choice on whether to take the
course.
24 527 Software/Computer Training-
Optional-Downloaded
Charges for training the purchaser on the
use of new software. The training is for
pre-written software transferred
electronically and the customer has a
choice on whether to take the course.
AFC Sales and Use User Manual | 49 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
24 528 Software/Computer Training-
Mandatory-Downloaded
Charges for training the purchaser on the
use of new software. The training is for
pre-written software transferred
electronically and the customer does not
have a choice on whether to take the
course.
24 529 Software/Computer Training-
Optional-Load and Leave
Charges for training the purchaser on the
use of new software. The training is for
pre-written software transferred by a
medium kept by the purchaser and the
customer has a choice on whether to
take the course.
24 530 Software/Computer Training-
Mandatory-Load and Leave
Charges for training the purchaser on the
use of new software. The training is for
pre-written software transferred by a
medium kept by the purchaser and the
customer does not have a choice on
whether to take the course.
24 531 Software/Computer Training-
Optional-Modified
Charges for training the purchaser on the
use of new software. The training is for
modified software and the customer has
a choice on whether to take the course.
24 532 Software/Computer Training-
Mandatory-Modified
Charges for training the purchaser on the
use of new software. The training is for
modified software and the customer
does not have a choice on whether to
take the course.
24 556 Software/Licensed Software-Physical
Transmission
An agreement for the use of software for
a specific period.
24 558 Software/Report-Physical
Transmission
A report generated and provided to the
end user delivered on CD or paper.
24 637 Software/Remote Access of Software
A service that provides access and use of
software that remains in the possession
of the seller and is remotely accessed by
a customer. If data is manipulated by the
software, it is user created data.
25 533 Timesharing/Timesharing - Off-Site
Use of CPU - General Rule
Access to computer through a remote
terminal that allows computations.
25 534 Timesharing/CPU Located out of State
Access to computer through a remote
terminal that allows computations.
25 559 Timesharing/Remote Information
Retrieval
Access to a computer through a remote
terminal that allows retrieval of stored
data created by the user.
25 647 Timesharing/Remote Information
Retrieval (Provider Data)
Access to a computer through a remote
terminal that allows retrieval of stored
data created by the service provider.
AFC Sales and Use User Manual | 50 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
27 106 Alcohol/General Rule
A fermented drink or a packaged
beverage containing alcohol.
27 107 Alcohol/Beverage Above 7% Content
by Weight
A fermented drink or a packaged
beverage containing alcohol with
alcoholic content above 7% by weight.
27 108 Alcohol/Beverage Below 7% Content
by Weight
A fermented drink or a packaged
beverage containing alcohol with
alcoholic content below 7% by weight.
27 109 Alcohol/Mixed Beverage above 7%
Content By Weight
A beverage mixed with a beverage
containing alcohol with alcoholic content
by volume of 7% or more.
27 110 Alcohol/Mixed Beverage below 7%
Content By Weight
A beverage mixed with a beverage
containing alcohol with alcoholic content
by volume of 7% or less.
27 111 Alcohol/Non Mixed Served in
Restaurant Above 7%
A fermented drink or a packaged
beverage containing alcohol with
alcoholic content above 7% by weight
served in a restaurant.
27 112 Alcohol/Non Mixed Served in
Restaurant Below 7%
A fermented drink or a packaged
beverage containing alcohol with
alcoholic content below 7% by weight
served in a restaurant.
28 106 Beverages/General Rule
Covers all beverages not otherwise
specified in this transaction type/service
type.
28 113 Beverages/Carbonated Beverages
Non-alcoholic beverage containing
carbonation.
28 114
Beverages/Sweetened Carbonated
Beverages
Non-alcoholic beverage containing
carbonation and sweeteners.
28
115
Beverages/Bottled Water
Packaged beverage consisting of filtered.
28 116 Beverages/Bottled Water -
Carbonated and/or Flavored
Packaged water to which carbonation.
28 117
Beverages/Bottled Water-Carbonated
and/or Sweetened
Packaged water to which carbonation.
28 118 Beverages/Soft Drinks
A ready-to-use non-alcoholic packaged
drink that may or may not be
carbonated.
28 119 Beverages/Natural Fruit or Vegetable
Juices
Fruit or vegetable juices.
28 120
Beverages/Natural Contents Between
0%-24%
Beverage containing between 0-24%
natural fruit or vegetable juice.
28 121
Beverages/Natural Contents Between
25%-49%
Beverage containing less than 25-49%
natural fruit or vegetable juice.
28 122
Beverages/Natural Contents Between
50%-69%
Beverage containing less than 50-69%
natural fruit or vegetable juice.
28 123
Beverages/Natural Contents Between
70%-100%
Beverage containing less than 70-100%
natural fruit or vegetable juice.
AFC Sales and Use User Manual | 51 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
28 124 Beverages/Bottled Tea
Beverage generally classified or explicitly
presented as tea on the package.
28 125 Beverages/Coffee
Beverage produced from the coffee bean
plant.
29
106
Books/General Rule
Books not covered by any other rule.
29 126 Books/Religious
Books containing religious doctrine and
study guides for religious topics.
29 127
Books/Educational-Kindergarten
Through 12th Grade
Books used specifically for students of
kindergarten through the 12th grade
29 128
Books/Educational-College & Trade
School
Books used specifically for students of
college and trade school.
30 129 Clothing/Everyday
Clothing that is not specialized in use or
purpose.
30 130 Clothing/Sporting Activities
Clothing specialized for sports that would
not ordinarily be worn in daily activity
not including items such as cleats and
sporting equipment.
30 131 Clothing/Sporting Equipment
Items not generally considered clothing
but is worn on the person for a sporting
activity.
30 132 Clothing/Protective
Clothing designed to offer protection in a
hazardous environment or activity such
as work gloves.
30 133 Clothing/Protective/Manufacturing
Clothing designed to offer protection in a
hazardous environment or activity such
as work gloves.
30 134 Clothing/Furs
Clothing which contains natural animal
hides.
30 135 Clothing/Uniforms
Regulated and required clothing for an
organized event i.e. school dress code
30 136
Clothing/Formal or Special Occasion
Wear
Clothing worn to formal events.
30 137 Clothing/Costumes
Clothing of a decorative nature worn for
special events or holidays.
30
138
Clothing/Accessories
Decorative items such as jewelry
30 139 Clothing/Display Samples
Clothing used to clothe various store
displays for promotional purposes. It may
be sold later.
30 140 Clothing/Cloth Diapers
Clothing made of cotton used as
undergarments.
30 141 Clothing/Clean Room
Clothing specifically designed to assist
with a germ free environment in a clean
room.
30 142 Clothing/Bathing Caps
Caps normally worn for shower or
bathing.
30
143
Clothing/Belt Buckles
A buckle.
AFC Sales and Use User Manual | 52 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
30 144 Clothing/Bowling Shoes
Shoes used for the sport of bowling and
normally only used for that purpose.
30
145
Clothing/Ski Boots
Boots or shoes used for skiing.
30 146 Clothing/Waders
Hip long pants used to stand in a body of
water.
30 147 Clothing/Shoe Laces
Laces purchased independently of the
shoes
31 106 Drugs/General Rule
Drugs not fitting any of the service types
listed below. Commonly referred to as
non-prescription drugs not sold over the
counter. Does not include drugs for
animal use.
31 148 Drugs/Prescription - Legend
Drugs that when dispensed are required
to contain a label specifying the drug can
only be dispensed by a licensed
pharmacist based on a prescription from
a physician or health professional. Does
not include drugs for animal use.
31 149
Drugs/Prescription - Over the
Counter-Human
Drugs
31 150
Drugs/Nonprescription - Over the
Counter-Human
Drugs
31 151
Drugs/Prescription - Over the
Counter-Animal
Drugs
31 152
Drugs/Nonprescription - Over the
Counter-Animal
Drugs
31 153 Drugs/Cough Drops
Drugs commonly referred to as drops
used to treat a cold or cold symptoms.
31 154 Drugs/Prescription - Insulin - Human
Use
Insulin dispensed by a licensed
pharmacist for human use based on a
prescription from a physician or health
professional for human use.
31 155 Drugs/Nonprescription - Insulin -
Human Use
Insulin that may be purchased for human
use over-the-counter or without a
physician's prescription for human use.
31 156 Drugs/Prescription - Insulin - Animal
Use
Insulin dispensed by a licensed
pharmacist for animal use based on a
prescription from a physician or health
professional for animal use.
31 157 Drugs/Nonprescription - Insulin -
Animal Use
Insulin that may be purchased for animal
use over-the-counter or without a
physician's prescription for animal use.
31 158 Drugs/Prescription - Oxygen-Human
Use
Oxygen obtained from a licensed
pharmacist based on a prescription from
a physician or health professional for
human use.
AFC Sales and Use User Manual | 53 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
31 159 Drugs/Nonprescription - Oxygen-
Medicinal-Human Use
Oxygen that may be purchased over-the-
counter or without a physician's
prescription for human use.
31 160 Drugs/Prescription - Oxygen-Animal
Use
Oxygen obtained from a licensed
pharmacist based on a prescription from
a physician or health professional for
animal use.
31 161 Drugs/Nonprescription-Oxygen-
Medicinal-Animal Use
Oxygen that may be purchased over-the-
counter or without a physician's
prescription for animal use.
31 162 Drugs/Enemas and Suppositories
Drug meant for rectal insertion meant
for treatment of ailments in that area of
the body.
31 163 Drugs/Prescription-Animal
Consumption
Drugs that when dispensed are required
to contain a label specifying the drug can
only be dispensed by a licensed
pharmacist based on a prescription from
a physician or health professional for
animal use.
31 164
Drugs/Nonprescription-Animal
Consumption
Drugs
31 165 Drugs/Non-Presc Sold to Hospitals-
Human
Drugs that when dispensed are required
to contain a label specifying the drug can
only be dispensed by a licensed
pharmacist based on a prescription from
a physician or health professional for
human use purchased for use in a
hospital.
31
166
Drugs/Presc Sold to Hospitals-Human
Drugs
31 167 Drugs/Non-Presc Sold to Hospitals-
Animals
Drugs that when dispensed are required
to contain a label specifying the drug can
only be dispensed by a licensed
pharmacist based on a prescription from
a physician or health professional for
animal use purchased for use in a
hospital.
31
168
Drugs/Presc Sold to Hospitals-Animals
Drugs
31 169 Drugs/Taxable and Nontaxable
Bundled Together
Drugs sold as a package consisting of
both taxable and non taxable drugs. The
drugs cannot be taxed separately.
31
170
Drugs/Free Sample-Human Use
Drugs
31 171 Drugs/Free Sample- Presc-Human Use
Drugs that when dispensed are required
to contain a label specifying the drug can
only be dispensed by a licensed
pharmacist based on a prescription from
a physician or health professional for
human use given away for no cost.
31
172
Drugs/Free Sample-Animal Use
Drugs
AFC Sales and Use User Manual | 54 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
31 173 Drugs/Free Sample-Presc-Animal Use
Drugs that when dispensed are required
to contain a label specifying the drug can
only be dispensed by a licensed
pharmacist based on a prescription from
a physician or health professional for
animal use given away for no cost.
32 106 Electronic Equipment & Computer
Hardware/General Rule
Covers any electronic equipment or
computer hardware not otherwise
mentioned.
32 174
Electronic Equipment & Computer
Hardware/Monitors Less Than 4
Inches
Monitors or Device and Monitors with a
viewing screen of less than 4 inches.
32 175
Electronic Equipment & Computer
Hardware/Monitors Between 5-14
inches
Monitors or Device and Monitors with a
viewing screen of between 5-14 inches.
32 176
Electronic Equipment & Computer
Hardware/Monitors Between Than
15-34 Inches
Monitors or Device and Monitors with a
viewing screen of between 15-34 inches.
32 177
Electronic Equipment & Computer
Hardware/Monitors Greater Than 35
Inches
Monitors or Device and Monitors with a
viewing screen of greater than 35 inches.
33 178 Fuel/Unleaded Fuel w/o Excise Tax
Fuel used for motor vehicles that does
not contain lead w/o excise tax being
paid.
33 179 Fuel/Diesel Fuel w/o Excise Tax
Fuel used for motor vehicles that is
classified as a diesel fuel w/o excise tax
being paid.
33 180 Fuel/Gasohol w/o Excise Tax
Fuel used for motor vehicles that
contains substances commonly known as
gasohol w/o excise tax being paid.
33 181
Fuel/Fuel to Common Carriers w/o
Excise Tax
Fuel used for motor vehicles that is sold
to common carriers w/o excise tax paid.
33 182 Fuel/Fuel-Passenger Common Carrier
w/o Excise Tax
Fuel used for motor vehicles that is sold
to common carriers who haul 10 or more
passengers w/o excise tax paid.
33 183 Fuel/Unleaded Fuel w/Excise Tax
Fuel used for motor vehicles that does
not contain lead w/ excise tax being paid.
33 184 Fuel/Diesel Fuel w/Excise Tax
Fuel used for motor vehicles that is
classified as a diesel fuel w/ excise tax
being paid.
33 185 Fuel/Gasohol w/Excise Tax
Fuel used for motor vehicles that
contains substances commonly known as
gasohol w/ excise tax being paid.
33 186
Fuel/Fuel to Common Carriers
w/Excise Tax
Fuel used for motor vehicles that is sold
to common carriers w/ excise tax paid.
33 187 Fuel/Fuel-Passenger Common Carrier
w/ Excise Tax
Fuel used for motor vehicles that is sold
to common carriers who haul 10 or more
passengers w/ excise tax paid.
AFC Sales and Use User Manual | 55 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
33 188 Fuel/Fuel For Off Road Purposes
Fuel used for motor vehicle that are not
normally driven on the highway.
33 189 Fuel/Jet Fuel
Fuel used for a machine or device relying
on jet propulsion.
33 190 Fuel/Jet Fuel--Common Carriers
Fuel used for a machine or device relying
on jet propulsion used for interstate
transport.
34 106 General Merchandise/General Rule
Any tangible personal property not
otherwise considered in any other
transaction type/service type.
34 191 General Merchandise/Appliances
Items generally considered to be white
goods.
34 192 General Merchandise/Baby Oil
Mineral Oil generally classified as baby
oil.
34 193 General Merchandise/US Flag
A piece of cloth of distinctive color and
designed as the official flag of the United
States.
34 194 General Merchandise/Coins-Work of
Art-Pure Metal
Coins consisting of 100% pure bullion.
Sold expressly for the artistic value of the
medallion or coin.
34 195 General Merchandise/Coins-Foreign
Currency-Pure Metal
Coins consisting of 100% pure bullion.
Sold expressly as foreign currency on the
exchange market.
34 196 General Merchandise/Coins-
Collectible-Pure Metal
Coins consisting of 100% pure bullion.
Sold expressly as a coin collectible.
34 197
General Merchandise/Coins-
Investment Purposes-Pure Metal
Coins consisting of 100% pure bullion.
Sold expressly for investment purposes.
34 198 General Merchandise/Coins-Work of
Art-90% or Greater
Coins consisting of 90% or greater bullion
but is not pure. Sold expressly for the
artistic value of the medallion or coin.
34 199 General Merchandise/Coins-Foreign
Currency-90% or Greater
Coins consisting of 90% or greater bullion
but is not pure. Sold expressly as foreign
currency on the exchange market
34 200 General Merchandise/Coins-
Collectible-90% or Greater
Coins consisting of 90% or greater bullion
but is not pure. Sold expressly as a coin
collectible.
34 201 General Merchandise/Coins-
Investment Purposes-90% or Greater
Coins consisting of 90% or greater bullion
but is not pure. Sold expressly for
investment purposes.
34 202 General Merchandise/Coins-Work of
Art-Between 80-90%
Coins consisting between 80-90%
bullion. Sold expressly for the artistic
value of the medallion or coin.
34 203 General Merchandise/Coins-Foreign
Currency-Between 80-90%
Coins consisting between 80-90%
bullion. Sold expressly as foreign
currency on the exchange market
34 204 General Merchandise/Coins-
Collectible-Between 80-90%
Coins consisting between 80-90%
bullion. Sold expressly as a coin
collectible.
AFC Sales and Use User Manual | 56 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
34 205
General Merchandise/Coins-
Investment Purposes-Between 80-
90%
Coins consisting between 80-90%
bullion. Sold expressly for investment
purposes
34 206 General Merchandise/Coins-Work of
Art-Less Than 80%
Coins consisting less than 80% bullion.
Sold expressly for the artistic value of the
medallion or coin.
34 207 General Merchandise/Coins-Foreign
Currency-Less Than 80%
Coins consisting less than 80% bullion.
Sold expressly as foreign currency on the
exchange market.
34 208
General Merchandise/Coins-
Collectible-Less Than 80%
Coins consisting less than 80% bullion.
Sold expressly as a coin collectible.
34 209
General Merchandise/Coins-
Investment Purposes-Less Than 80%
Coins consisting less than 80% bullion.
Sold expressly for investment purposes.
34 210 General Merchandise/Uncancelled
Stamps-For Collectible Purposes
Stamps not otherwise used for postage
purposes sold for the express intention
of becoming a collectible for the
purchaser.
34 211 General Merchandise/Cancelled
Stamps
Stamps already used for postage
purposes that are resold for their
collectible value.
34 212
General Merchandise/Uncancelled
Stamps-For Postage Purposes
Stamps expressly used for the delivery of
the United States Mail.
34 213
General Merchandise/Caskets-For
Human Remains
Box or Urn used to hold the remains of a
departed human individual.
34 214 General Merchandise/Burial Vaults-
For Human Remains
A vault used to hold and protect the
casket or urn from the elements. This
vault is designed exclusively for
containing human remains.
34 215
General Merchandise/Caskets-For All
Other Remains
Box or Urn used to hold the remains of
any being other than a human.
34 216 General Merchandise/Burial Vaults-
For All Other Remains
A vault used to hold and protect the
casket or urn from the elements. The
vault's casket or urn does not contain
human remains.
34 217
General
Merchandise/Headstone/Burial
Marker-w/o Installation
A headstone or marker to be placed at
the burial site of the decedent. The
transaction did not include the actual
placement of the marker in the ground.
34 218
General
Merchandise/Headstone/Burial
Marker-w/ Installation
A headstone or marker to be placed at
the burial site of the decedent. The
transaction included the actual
placement of the marker in the ground.
34 219
General Merchandise/Sanitary
Napkins or Tampons
Items used to absorb menstrual flow
during a menstrual cycle.
34 220 General Merchandise/Other State
Flag
A piece of cloth of distinctive color and
designed as a flag of any state other than
the home based state where the
instance of tax occurs.
AFC Sales and Use User Manual | 57 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
34 221 General Merchandise/Home State
Flag
A piece of cloth of distinctive color and
designed as the official flag of the home
based state where the instance of tax
occurs.
34 222 General Merchandise/POW Flag
A piece of cloth of distinctive color and
designed as the official flag of the POW
movement.
34 223
General Merchandise/Grooming and
Hygiene Products for Human Use
Soaps and cleaning solutions.
34 224
General Merchandise/Grooming and
Hygiene Products for Animal Use
Soaps and cleaning solutions.
34 225
General Merchandise/Toothpaste,
Toothbrush, Dental Floss
Toothbrush
34 226 General Merchandise/Gaming Coins-
Metal Content is Greater than 80%
Coins consisting greater than 80%
bullion. Sold expressly for using in
gaming machines for the purposes of
gambling.
34 227 General Merchandise/Gaming Coins-
Metal Content is Less than 80%
Coins consisting less than 80% bullion.
Sold expressly for using in gaming
machines for the purposes of gambling.
34 228 General Merchandise/Marine
Equipment
Equipment expressly used for the
purposes of use in or directly associated
with water.
34 229 General Merchandise/Charcoal
A black porous material containing 85 to
98 percent carbon provided by the
destructive distillation of wood and used
as a fuel.
34 230 General Merchandise/Coupon Books
Books that have coupons enclosed to use
as discounts at various establishments.
34 231 General Merchandise/Supplies and
Food for Seeing Eye Dog
Supplies and food used exclusively by a
seeing eye dog. This animal is used to aid
the visually impaired with normal life
functions.
34 232
General Merchandise/Non-Lead
Based Batteries
Batteries
34 574 General Merchandise/Fixture
Tangible personal property that is
installed in real property and qualifies as
a fixture of the real property.
34 616
General Merchandise/Hurricane
Supplies
Supplies used for Hurricane
preparedness.
34
617
General Merchandise/School Supplies
Supplies used for school.
34 618
General Merchandise/Appliances-
Energy Star
Appliances rated as Energy Star for
efficiency.
34 619
General Merchandise/Hunting
Supplies
Supplies for Hunting.
AFC Sales and Use User Manual | 58 of 329
Copyright 2018 Avalara, Inc.
Table 4-18 Transaction and Service Types
IDENTIFIER
NAME
DESCRIPTION
Trans Type
Svc Type
34 640 General Merchandise/
Restocking Fee
Fee charged to reimburse the cost of
restocking a purchased item. The
returned item cannot be modified in any
way.
35 106 Groceries/General Rule
Items obtained from a grocery store that
may be comprised of items for human
consumption.
35 233 Groceries/Candy
Items that do not require additional
preparation before consumption such as
sweets and confections and are generally
high in sugar content.
35 234 Groceries/Chewing Gum
Chewing gum is a type of confectionery
which is designed to be chewed rather
than swallowed.
35 235 Groceries/Food Additives
An additive meant to preserve food or
extend its shelf life.
35
236
Groceries/Confectionary Items
Baked goods and items used in baking.
35
237
Groceries/Ice
Ice for human consumption.
35 238 Groceries/Dietary Supplements-
Qualify
Preparations in liquid.
35 239 Groceries/Dietary Supplements-Non
Qualify
Preparations in liquid.
35 621 Groceries/Bulk Items
Multi-serving bakery items and single
serving bakery items in quantities of
three or more.
36 240 Magazines/