Skip to main content
Avalara Help Center

TM_00114_AFC RPG Interface User Manual

Using RPG with the AFC System

After a successful installation, there are two files available for your use in coding your application to work with AvaTax for Communications (AFC) via RPG. These two files are located in the EZTAX_DB9 default library. They are COPYSRC and H. The COPYSRC contains RPG prototypes for the RPG interface. H contains the C header files used within AFC.

Versioning of AFC on the System i

Avalara supports Versioning Signatures with the Monthly build of our software. Best Practices recommends rebinding to the AFC Service Program every month as a part of your monthly build process, but to the extent that we are able to support the previous signature, we plan to do so. However, this is no guarantee that you will not have to rebind to the current signature on any given month, due to the nature of a fix or critical change that gets rolled out.

Due to the nature of the taxation business, it is important to bring all customers to the current level every six months. As a general rule, signatures will be updated with the January 1 and July 1 builds. We intend to maintain two signatures: *CURRENT and *PRV. Any non-critical changes to the AFC interface will be made to the current level signature and the *PRV level will remain at the most recent six month release signature.

Normally, re-binding can be accomplished by either re-linking programs or by using the UPDPGM command to update the service program binding. Re-binding should only be required if the new signature is used.

RPG Prototypes

The RPG Interface consists of a set of RPG Prototypes and a corresponding set of RPG Wrapper programs. (Please see the RPG Wrapper section for additional details or information.) The RPG Prototypes are contained in the COPYSRC file shipped with the AFC library. Prototypes are provided both singularly in standalone files and in aggregate in EZ_PROTO and E9_PROTO files. The RPG_FIELD2 and E9_FIELD2 members, included in the COPYSRC file, provide common use field definitions and constants. These files are provided for our clients' convenience.

If both the RPG_FIELD2 and E9_FIELD2 member are included in the same client program, the E9_FIELD2 include must proceed the RPG_FIELD2 include.

Note that the RPG_FIELD2 file member now is included in the EZ_PROTO member using a COPY statement and the E9_FIELD2 file member is now included in the E9_PROTO member using a COPY statement.

RPG Wrapper

AFC for RPG provides a set of procedures which wrap the standard AFC interface APIs. These wrappers convert RPG fields into C structures. (Please see the AFC User Manual for more information on the AFC interface.) These procedures are built into the AFC service program. The application simply binds to the AFC service program to access the procedures.

Since RPG has limitations on the COPYSRC member name and the RPG prototype name, the following table provides a visual cross-reference of the C interface to the RPG interface and its prototype in COPYSRC. For ease of use, all EZ* prototypes have been copied into one member called EZ_PROTO and all E9* prototypes have been copied into one member called E9_PROTO.

EZ Version – C to RPG Cross-Reference

C API Function

RPG Procedure

RPG Copy Source Member Name

EZTaxAdjDebitJEx

EZ_ADJ_DEBITJX

EZADJDBTJX

EZTaxAdjDebitNEx

EZ_ADJ_DEBITNX

EZADJDBTNX

EZTaxAdjDebitPEx

EZ_ADJ_DEBITPX

EZADJDBTPX

EZTaxAdjDebitZEx

EZ_ADJ_DBTZ_EX

EZADJDBTZEX

EZTaxAdjJCodeEx

EZ_ADJJCODEEX

EZADJJCDEEX

EZTaxAdjNPANEx

EZ_ADJ_NPAN_EX

EZADJNPNEX

EZTaxAdjPCodeEx

EZ_ADJPCODEEX

EZADJPCDEEX

EZTaxAdjProRateJCodeEx

EZ_ADJ_PRO_JCODE_EX

EZADPRJCDX

EZTaxAdjProRateNPANEx

EZ_ADJ_PRO_NPAN_EX

EZADPRNPNX

EZTaxAdjProRatePCodeEx

EZ_ADJ_PRO_PCODE_EX

EZADPRPCDX

EZTaxAdjProThisJCodeEx

EZ_ADJ_PRO_THIS_JCODE_EX

EZADPRTHSJ

EZTaxAdjProThisPCodeEx

EZ_ADJ_PRO_THIS_PCODE_EX

EZADPRTHSP

EZTaxAdjProRateZipEx

EZ_ADJ_PRO_ZIP_EX

EZADPRZIPX

EZTaxAdjRevJCode

EZ_ADJREVJCODE

EZADRVJCODE

EZTaxAdjRevNPAN

EZ_ADJREVNPAN

EZADRVNPAN

EZTaxAdjRevPCode

EZ_ADJREVPCODE

EZADRVPCODE

EZTaxAdjRevZip

EZ_ADJREVZIP

EZADRVZIP

EZTaxAdjTxiJCode

EZ_ADJTXIJCODE

EZADTIJCODE

EZTaxAdjTxiNPAN

EZ_ADJTXINPAN

EZADTINPAN

EZTaxAdjTxiPCode

EZ_ADJTXIPCODE

EZADTIPCODE

EZTaxAdjTxiZip

EZ_ADJTXIZIP

EZADTIZIP

EZTaxAdjTPPEx

EZ_ADJ_TPP_EX

EZADJTPPEX

EZTaxAdjZipEx

EZ_ADJ_ZIP_EX

EZADJZIPEX

EZTaxCalcJurisdiction

EZ_JURISDICTN

EZJURISDCT

EZTaxClearExclusion

EZ_CLR_EXCL

EZCLREXCL

EZTaxClearSafeHarborTAM Override

E9_CLRSAFHBR

E9CLRSFHBR

EZTaxDebitJEx

EZ_DEBITJ_EX

EZDBTJEX

EZTaxDebitNEx

EZ_DEBITN_EX

EZDBTNEX

EZTaxDebitPEx

EZ_DEBITP_EX

EZDBTPEX

EZTaxExitSessionEx

EZ_EXITSS_EX

EZEXITSSEX

EZTaxFlushToLog

EZ_FLUSHLOG_EX

EZFLUSHLOG

EZTaxFtoPCodeEx

EZ_FTOP_EX

EZFTOPEX

EZTaxGetAddressEx

EZ_GET_ADDR_EX

EZGTADDREX

EZTaxGetCustomLog

EZ_GTCSTLOG_EX

EZGTCSTLOG

EZTaxGetLogName

EZ_GET_LOG_NAME

EZGTLGNAME

EZTaxGetNoTaxTrans

EZGET_NOTAX

EZGTNOTAXT

EZTaxGetRates

EZ_GETRATES_EX

EZGETRATES

EZTaxGetTaxDescription

EZ_GET_TAX_DESC

EZGTTAXDSC

EZTaxGroupResults

EZ_GRP_RSLTS

EZGRPRSLT

EZTaxInitDirEx

EZ_INITDIR_EX

EZINITDIR

EZTaxInitEx

EZ_INIT_EX

EZINITEX

EZTaxJCodeEx

EZ_JCODE_EX

EZJCODEEX

EZTaxJtoPCodeEx

EZ_JTOP_EX

EZJTOPEX

EZTaxMaxTaxCount

EZ_TAXMAXCNT

EZTAXMAXCT

EZTaxNextAddressEx

EZ_NXTADDR_EX

EZNXTADDRX

EZTaxNextCustomerEx

EZ_NXTCUST_EX

EZNXTCUSTX

EZTaxNPANEx

EZ_NPAN_EX

EZNPANEX

EZTaxNtoJCodeEx

EZ_NTOJ_EX

EZNTOJEX

EZTaxOldOvrJCodeEx

EZ_OLDOVRJCODE_EX

EZOLDOVRJ

EZTaxOvrJCodeEx

EZ_OVRJCODE_EX

EZOVRJCODE

EZTaxOvrNPANEx

EZ_OVRNPAN_EX

EZOVRNPNEX

EZTaxOvrPCodeEx

EZ_OVRPCODE_EX

EZOVRPCODE

EZTaxOvrZipEx

EZ_OVRZIP_EX

EZOVRZIPEX

EZTaxPCodeEx

EZ_PCODE_EX

EZPCODEEX

EZTaxPrivateLine

EZ_PRVLINE_EX

EZPRVLINE

EZTaxProRateJCodeEx

EZ_PRO_JCODE

EZPRRTJCDX

EZTaxProRateNPANEx

EZ_PRO_NPAN

EZPRRTNPNX

EZTaxProRatePCodeEx

EZ_PRO_PCODE

EZPRRTPCDX

EZTaxProRateThisJCodeEx

EZ_PRO_THS_J

EZPRTTJCDX

EZTaxProRateThisPCodeEx

EZ_PRO_THS_P

EZPRTTPCDX

EZTaxProRateZipEx

EZ_PRO_ZIP

EZPRRTZIPX

EZTaxPtoFipsEx

EZ_PTOF_EX

EZPTOFEX

EZTaxPtoJCodeEx

EZ_PTOJ_EX

EZPTOJEX

EZTaxRestoreEx

EZ_RESTORE_EX

EZRESTOREX

EZTaxRevJCode

EZ_REVJCODE

EZREVJCODE

EZTaxRevNPAN

EZ_REVNPAN

EZREVNPAN

EZTaxRevPCode

EZ_REVPCODE

EZREVPCODE

EZTaxRevZip

EZ_REVZIP

EZREVZIP

EZTaxTxiJCode

EZ_TXIJCODE

EZTXIJCODE

EZTaxTxiNPAN

EZ_TXINPAN

EZTXINPAN

EZTaxTxiPCode

EZ_TXIPCODE

EZTXIPCODE

EZTaxTxiZip

EZ_TXIZIP

EZTXIZIP

EZTaxSAUAdjFips

EZ_SAU_ADJ_F

EZSAUADJF

EZTaxSAUAdjJcode

EZ_SAU_ADJ_J

EZSAUADJJ

EZTaxSAUAdjPCode

EZ_SAU_ADJ_P

EZSAUADJP

EZTaxSAUAdjRevJcode

ES_ADJREVJCODE

ESADRVJCD

EZTaxSAUAdjRevPcode

ES_ADJREVPCODE

ESADRVPCD

EZTaxSAUAdjRevZip

ES_ADJREVZIP

ESADRVZIP

EZTaxSAUAdjTxiJcode

ES_ADJTXIJCODE

ESADTIJCD

EZTaxSAUAdjTxiPcode

ES_ADJTXIPCODE

ESADTIPCD

EZTaxSAUAdjTxiZip

ES_ADJTXIZIP

ESADTIZIP

EZTaxSAUAdjZip

EZ_SAU_ADJ_Z

EZSAUADJZ

EZTaxSAUFips

EZ_SAU_FIPS

EZSAUFIPS

EZTaxSAUJCode

EZ_SAU_JCODE

EZSAUJCODE

EZTaxSAUPCode

EZ_SAU_PCODE

EZSAUPCODE

EZTaxSAURevJCode

EZ_SAUREVJCODE

ESREVJCD

EZTaxSAURevPCode

EZ_SAUREVPCODE

ESREVPCD

EZTaxSAURevZip

EZ_SAUREVZIP

ESREVZIP

EZTaxSAUTxiJCode

EZ_SAUTXIJCODE

ESTXIJCD

EZTaxSAUTxiPCode

EZ_SAUTXIPCODE

ESTXIPCD

EZTaxSAUTxiZip

EZ_SAUTXIZIP

ESTXIZIP

EZTaxSAUZip

EZ_SAU_ZIP

EZSAUZIP

EZTaxSetCustModeEx

EZ_SETCUSTMODE

EZSTCSMDEX

EZTaxSetNexus

EZ_NEXUS

EZ_NEXUS

EZTaxSetSafeHarborTAMOv

erride

E9_SETSAFHBR

E9SETSFHBR

EZTaxSetStateExclusion

EZ_SST_EXCL

EZSSTEXCL

EZTaxSetStateNexus

EX_SST_NEXUS

EZSSTNEXUS

EZTaxThisJCodeEx

EZ_THIS_JCODE

EZTHSJCDEX

EZTaxThisPcodeEx

EZ_THIS_PCODE

EZTHSPCDEX

EZTPPEx.c

EZ_TPP_EX

EZTPPEX

EZTaxWriteToLogEx

EZ_WRT_TO_LOG

EZWRTTOGX

EZTaxZipEx

EZ_ZIP_EX

EZZIPEX

EZTaxZtoJCodeEx

EZ_ZTOJ_EX

EZZTOJCDEX

EZTaxZtoPCodeEx

EZ_ZTOP_EX

EZZTOPCDEX

E9 Version – C to RPG Cross-Reference

C API Function

RPG Procedure

RPG Copy Source Member Name

EZTaxAdjDebitJEx

E9_ADJ_DEBITJX

E9ADJDBTJX

EZTaxAdjDebitNEx

E9_ADJ_DEBITNX

E9ADJDBTNX

EZTaxAdjDebitPEx

E9_ADJ_DEBITPX

E9ADJDBTPX

EZTaxAdjDebitRevJCode

E9_ADJDBTREVJ

E9ADDBTRVJ

EZTaxAdjDebitRevNPAN

E9_ADJDBREVTN

E9ADDBTRVN

EZTaxAdjDebitRevPCode

E9_ADJDBTREVP

E9ADDBTRVP

EZTaxAdjDebitRevZip

E9_ADJDBTREVZ

E9ADDBTRVZ

EZTaxAdjDebitTxiJCode

E9_ADJDBTTXIJ

E9ADDBTTIJ

EZTaxAdjDebitTxiNPAN

E9_ADJDBTXITN

E9ADDBTTIN

EZTaxAdjDebitTxiPCode

E9_ADJDBTTXIP

E9ADDBTTIP

EZTaxAdjDebitTxiZip

E9_ADJDBTTXIZ

E9ADDBTTIZ

EZTaxAdjDebitZEx

E9_ADJ_DBTZ_EX

E9ADJDBTZEX

EZTaxAdjJCodeEx

E9_ADJJCODEEX

E9ADJJCDEEX

EZTaxAdjNPANEx

E9_ADJ_NPAN_EX

E9ADJNPNEX

EZTaxAdjPCodeEx

E9_ADJPCODEEX

E9ADJPCDEEX

EZTaxAdjProRateJCodeEx

E9_ADJ_PRO_JCODE_EX

E9ADPRJCDX

EZTaxAdjProRateNPANEx

E9_ADJ_PRO_NPAN_EX

E9ADPRNPNX

EZTaxAdjProRatePCodeEx

E9_ADJ_PRO_PCODE_EX

E9ADPRPCDX

EZTaxAdjProThisJCodeEx

E9_ADJ_PRO_THIS_JCODE_EX

E9ADPRTHSJ

EZTaxAdjProThisPCodeEx

E9_ADJ_PRO_THIS_PCODE_EX

E9ADPRTHSP

EZTaxAdjProRateZipEx

E9_ADJ_PRO_ZIP_EX

E9ADPRZIPX

EZTaxAdjRevJCode

E9_ADJREVJCODE

E9ADRVJCODE

EZTaxAdjRevNPAN

E9_ADJREVNPAN

E9ADRVNPAN

EZTaxAdjRevPCode

E9_ADJREVPCODE

E9ADRVPCODE

EZTaxAdjRevZip

E9_ADJREVZIP

E9ADRVZIP

EZTaxAdjTxiJCode

E9_ADJTXIJCODE

E9ADTIJCODE

EZTaxAdjTxiNPAN

E9_ADJTXINPAN

E9ADTINPAN

EZTaxAdjTxiPCode

E9_ADJTXIPCODE

E9ADTIPCODE

EZTaxAdjTxiZip

E9_ADJTXIZIP

E9ADTIZIP

EZTaxAdjTPPEx

E9_ADJ_TPP_EX

E9ADJTPPEX

EZTaxAdjZipEx

E9_ADJ_ZIP_EX

E9ADJZIPEX

EZTaxCalcJurisdiction

E9_JURISDICTN

E9JURISDCT

EZTaxClearExclusion

E9_CLR_EXCL

E9CLREXCL

EZTaxClearTSR

E9_CLEAR_TSR

E9CLEARTSR

EZTaxDebitJEx

E9_DEBITJ_EX

E9DBTJEX

EZTaxDebitNEx

E9_DEBITN_EX

E9DBTNEX

EZTaxDebitPEx

E9_DEBITP_EX

E9DBTPEX

EZTaxDebitZEx

E9_DEBITZ_EX

E9DBTZEX

EZTaxDebitRevJCode

E9_DBTREVJ

E9DBTREVJ

EZTaxDebitRevNPAN

E9_DBTREVN

E9DBTREVN

EZTaxDebitRevPCode

E9_DBTREVP

E9DBTREVP

EZTaxDebitRevZip

E9_DBTREVZ

E9DBTREVZ

EZTaxDebitTxiJCode

E9_DBTTXIJ

E9DBTTXIJ

EZTaxDebitTxiNPAN

E9_DBTTXIN

E9DBTTXIN

EZTaxDebitTxiPCode

E9_DBTTXIP

E9DBTTXIP

EZTaxDebitTxiZip

E9_DBTTXIZ

E9DBTTXIZ

EZTaxExitSessionEx

E9_EXITSS_EX

E9EXITSSEX

EZTaxFlushToLog

E9_FLUSHLOG_EX

E9FLUSHLOG

EZTaxFtoPCodeEx

E9_FTOP_EX

E9FTOPEX

EZTaxGetAddressEx

E9_GET_ADDR_EX

E9GTADDREX

EZTaxGetCustomLog

E9_GTCSTLOG_EX

E9_SETUPCSTLOG

E9GTCSTLOG

E9STUCSTLG

EZTaxGetCustomLogCount

E9_GET_CUST_CNT

E9GTCSTCNT

EZTaxGetJurisdiction

E9_GTJURIS_EX

E9GTJURSEX

EZTaxGetLogName

E9_GET_LOG_NAME

E9GTLGNAME

EZTaxGetLogV914

E9_GET914LOG

E9_SETUP914LOG

E9GET914LG

E9SET914LG

EZTaxGetLogV914Count

E9_GET_914_CNT

E9GT914CNT

EZTaxGetNoTaxTrans

E9GET_NOTAX

E9GTNOTAXT

EZTaxGetRates

E9_GETRATES_EX

E9GETRATES

EZTaxGetTaxCatV98

E9_GET_TAX_CAT

E9GTTAXCAT

EZTaxGetTaxDescription

E9_GET_TAX_DESC

E9GTTAXDSC

EZTaxGetTSR

E9_GET_TSR

E9GETTSR

EZTaxGroupResults

E9_GRP_RSLTS

E9GRPRSLT

EZTaxInitV98

E9_INITV98_EX

E9INITV98

EZTaxJCodeEx

E9_JCODE_EX

E9JCODEEX

EZTaxJtoPCodeEx

E9_JTOP_EX

E9JTOPEX

EZTaxJTTypeEx

E9_JTTYPEEX

E9JTTYPEEX

EZTaxNextAddressEx

E9_NXTADDR_EX

E9NXTADDRX

EZTaxNextCustomerEx

E9_NXTCUST_EX

E9NXTCUSTX

EZTaxNPANEx

E9_NPAN_EX

E9NPANEX

EZTaxNTTypeEx

E9_NTTYPEEX

E9NTTYPEEX

EZTaxNtoJCodeEx

E9_NTOJ_EX

E9NTOJEX

EZTaxOldOvrJCodeEx

E9_OLDOVRJCODE_EX

E9OLDOVRJ

EZTaxOvrJCodeEx

E9_OVRJCODE_EX

E9OVRJCODE

EZTaxOvrNPANEx

E9_OVRNPAN_EX

E9OVRNPNEX

EZTaxOvrPCodeEx

E9_OVRPCODE_EX

E9OVRPCODE

EZTaxOvrZipEx

E9_OVRZIP_EX

E9OVRZIPEX

EZTaxPCodeEx

E9_PCODE_EX

E9PCODEEX

EZTaxPrivateLine

E9_PRVLINE_EX

E9PRVLINE

EZTaxProRateJCodeEx

E9_PRO_JCODE

E9PRRTJCDX

EZTaxProRateNPANEx

E9_PRO_NPAN

E9PRRTNPNX

EZTaxProRatePCodeEx

E9_PRO_PCODE

E9PRRTPCDX

EZTaxProRateThisJCodeEx

E9_PRO_THS_J

E9PRTTJCDX

EZTaxProRateThisPCodeEx

E9_PRO_THS_P

E9PRTTPCDX

EZTaxProRateZipEx

E9_PRO_ZIP

E9PRRTZIPX

EZTaxPtoFipsEx

E9_PTOF_EX

E9PTOFEX

EZTaxPtoJCodeEx

E9_PTOJ_EX

E9PTOJEX

EZTaxPTTypeEx

E9_PTTYPEEX

E9PTTYPEEX

EZTaxRestoreEx

E9_RESTORE_EX

E9RESTOREX

EZTaxRevJCode

E9_REVJCODE

E9REVJCODE

EZTaxRevNPAN

E9_REVNPAN

E9REVNPAN

EZTaxRevPCode

E9_REVPCODE

E9REVPCODE

EZTaxRevZip

E9_REVZIP

E9REVZIP

EZTaxTxiJCode

E9_TXIJCODE

E9TXIJCODE

EZTaxTxiNPAN

E9_TXINPAN

E9TXINPAN

EZTaxTxiPCode

E9_TXIPCODE

E9TXIPCODE

EZTaxTxiZip

E9_TXIZIP

E9TXIZIP

EZTaxSAUAdjFips

E9_SAU_ADJ_F

E9SAUADJF

EZTaxSAUAdjJcode

E9_SAU_ADJ_J

E9SAUADJJ

EZTaxSAUAdjPCode

E9_SAU_ADJ_P

E9SAUADJP

EZTaxSAUAdjRevJcode

E9_SAU_ADJREVJ

E9SREVJCD

EZTaxSAUAdjRevPcode

E9_SAU_ADJREVP

E9SREVPCD

EZTaxSAUAdjRevZip

E9_SAU_ADJREVJ

E9SREVZIP

EZTaxSAUAdjTxiJcode

E9_SAU_ADJTXIJ

E9STXIJCD

EZTaxSAUAdjTxiPcode

E9_SAU_ADJTXIP

E9STXIPCD

EZTaxSAUAdjTxiZip

E9_SAU_ADJTXIJ

E9STXIZIP

EZTaxSAUAdjZip

E9_SAU_ADJ_Z

E9SAUADJZ

EZTaxSAUFips

E9_SAU_FIPS

E9SAUFIPS

EZTaxSAUJCode

E9_SAU_JCODE

E9SAUJCODE

EZTaxSAUPCode

E9_SAU_PCODE

E9SAUPCODE

EZTaxSAURevJCode

E9_SAUREVJCODE

E9REVJCD

EZTaxSAURevPCode

E9_SAUREVPCODE

E9REVPCD

EZTaxSAURevZip

E9_SAUREVZIP

E9REVZIP

EZTaxSAUTxiJCode

E9_SAUTXIJCODE

E9TXIJCD

EZTaxSAUTxiPCode

E9_SAUTXIPCODE

E9TXIPCD

EZTaxSAUTxiZip

E9_SAUTXIZIP

E9TXIZIP

EZTaxSAUZip

E9_SAU_ZIP

E9SAUZIP

EZTaxSetCustModeEx

E9_SETCUSTMODE

E9STCSMDEX

EZTaxSetNexus

E9_NEXUS

E9_NEXUS

EZTaxSetStateExclusion

E9_SST_EXCL

E9SSTEXCL

EZTaxSetStateNexus

E9_SST_NEXUS

E9SSTNEXUS

EZTaxThisJCodeEx

E9_THIS_JCODE

E9THSJCDEX

EZTaxThisPcodeEx

E9_THIS_PCODE

E9THSPCDEX

EZTaxTPPEx.c

E9_TPP_EX

E9TPPEX

EZTaxWriteToLogEx

E9_WRT_TO_LOG

E9WRTTOGX

EZTaxWriteToLogV914

E9_WRT_914_LOG

E9WRT914LG

EZTaxZipEx

E9_ZIP_EX

E9ZIPEX

EZTaxZtoJCodeEx

E9_ZTOJ_EX

E9ZTOJCDEX

EZTaxZtoPCodeEx

E9_ZTOP_EX

E9ZTOPCDEX

RPG Wrapper Details

APIs Listed By Function

Sorted by Function

Description

Session Management Functions

The following functions support session activity.

EZTaxInitV98

Initializes an AFC session. Path and file name overrides can be provided. Multiple sessions are allowed if unique log and status file paths are provided for each session

 

EZTaxInitEx

Initializes an AFC session and takes as input the file paths and filenames to enable differentiating between sessions. Multiple calls may be made to set up completely different sessions.

EZTaxInitDirEx

Reads AFC files and initializes the AFC system. Multiple calls may be made to set up completely independent sessions.

EZTaxExitSessionEx

Exits an AFC Session.

Jurisdiction Conversion Functions

The following functions are provided to convert between jurisdictional interfaces. This is useful when the service address is available for a call record transaction to be taxed but only NPANXX information is available for origination and termination points.

EZTaxGetAddressEx

Used to obtain the address of a specific JCode. This is normally not used during the AFC session as the billing system normally has address information required for billing. AFC uses this database when generating reports for tax filing. The Address Database interface is provided as a valuable tool to Avalara customers.

EZTaxGetJurisdiction

Retrieves the jurisdiction where the transaction is determined to be taxed.

EZTaxJtoPCodeEx

Returns PCode that is cross-referenced to a JCode.

EZTaxNextAddressEx

Returns the next sequential address for a specified jurisdiction when the jurisdiction or parts of it are known by more than one address. This is true for the many jurisdictions contained within the AFC system, especially large cities. The Address Database interface is provided as a valuable tool to Avalara customers.

EZTaxNextCustomerEx

Puts the taxes calculated in the customer table into a customer tax table that the client can reference and reinitializes the customer table to prepare for the next set of customer records.

EZTaxPtoJCodeEx

Converts a PCode into a JCode.

EZTaxZtoJCodeEx

Used to populate customer databases records with JCodes. Avalara recommends the use of PCodes over JCodes, in which case the ZtoPCodeEx function would be used. This provides users that interface with AFC a large performance boost by providing addresses.  The Zip Code Database interface is provided as a valuable tool to Avalara customers.

EZTaxZtoPCodeEx

Converts a zip code and address to a PCode.

EZTaxPtoFipsEx

Converts a PCode to a Fips Code.

EZTaxNtoJCodeEx

Obtain JCodes associated with an NPANXX.

EZTaxFtoPCodeEx

Converts a Fips Code into a PCode.

Debit Functions

EZTaxDebitJEx

Accepts transaction data and performs tax debit calculations. BTN, origination and termination information is passed using JCodes.

EZTaxDebitNEx

Accepts transaction data and performs tax debit calculations. BTN, origination and termination information is passed using NPANXXs.

EZTaxDebitPEx

Accepts transaction data and performs tax debit calculations. BTN, origination and termination information is passed using PCodes.

EZTaxDebitZEx

Accepts transaction data and performs appropriate tax calculations. BTN, origination and termination information is passed using Zip Code plus 4.

Override Functions

The following functions are provided to override an AFC value for the remainder of a session.

EZTaxRestoreEx

Removes all overrides that have been inserted by the user into the AFC databases. This action occurs automatically on EZTaxExit.

EZTaxOldOvrJCodeEx

EZTaxOvrJCodeEx specifies an override for a specific tax. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the AFC db system.

EZTaxOvrJCodeEx.c

Specifies an override for a specific tax. Tax Jurisdiction information is passed with a jurisdiction code. It takes a JCode and an override structure as input and inserts a tax override into the AFC db system for that session.

EZTaxOvrNPANEx

Specifies an override for a specific tax. Tax jurisdiction information is passed with an NPANXX. It takes an NPANXX and an override structure as input and inserts a tax override into the AFC db system for that session.

EZTaxOvrPCodeEx

Specifies an override for a specific tax. Tax jurisdiction information is passed with a PCode. It takes a PCode and an override structure as input and inserts a tax override into the AFC db system for that session.

EZTaxOvrZipEx

Specifies an override for a specific tax. Tax jurisdiction information is passed via zip code and address. It takes zip code plus 4 and address information, as well as an override structure as input and inserts a tax override into the AFC db system for that session.

Invoice Mode Functions

The following functions are provided to support Invoice Mode Operation.

EZTaxSetCustModeEx

Turns Invoice Mode on and off.

 

EZTaxNextAddressEx

Returns the next sequential record containing alternative address information for a specific JCode. This function can be used to obtain additional address information for a specified jurisdiction when EZTaxGetAddressEx returns MORE, indicating additional information is available.

EZTaxNextCustomerEx

Indicates that all of the transactions associated with this customer are complete. The system then clears out the transaction history table in preparation of the next set of transactions.

Taxation Functions

The following functions are provided to perform tax calculations per transaction.

EZTaxJCodeEx

Accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

EZTaxThisJCodeEx

Accepts transaction data and performs appropriate tax calculations. The tax jurisdiction to use for tax calculations is specified to AFC with this method. If the AFC session was started with the tax log open, appropriate taxes are logged and will be reflected in tax reports. Jurisdiction information is passed using a PCode.

EZTaxThisPCodeEx

Can be used to specify taxing based upon address information only by passing the encoded PCode.

EZTaxPCodeEx

Accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

EZTaxNPANEx

Accepts an NPANXX as input and calculates taxes for the transaction. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

EZTaxZipEx

Accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports.

Adjustment Functions

The following functions are provided for implementing adjustments such as refunds, changing a customer’s bill or when terminating un-collectable accounts.

These functions accept transaction data and perform appropriate tax calculations required to refund or credit taxes for U.S. jurisdictions (Debit cards use EZTaxAdjDebitEx APIs). If the AFC session was started with the tax log open, appropriate taxes reductions are logged and will be reflected in tax reports.

EZTaxAdjDebitJEx

BTN, origination and termination information is passed using JCodes.

EZTaxAdjDebitNEx

BTN, origination and termination information is passed using NPANXXs.

EZTaxAdjDebitPEx

BTN, origination and termination information is passed using PCodes.

EZTaxAdjDebitZEx

The tax jurisdiction is specified using address information.

EZTaxAdjJCodeEx

BTN, origination and termination information is passed using JCodes.

EZTaxAdjNPANEx

BTN, origination and termination information is passed using NPANXXs.

EZTaxAdjPCodeEx

BTN, origination and termination information is passed using PCodes.

EZTaxAdjProRateJCode

Accepts a J_CodeEx struct as input and calculates tax adjustments for the transaction, then pro-rates the taxes calculated by the given percentage for partial-month rates.

EZTaxAdjProRateNPAN

Accepts a NPAN_codeExstruct as input and calculates tax adjustments for the transaction, then pro-rates the taxes calculated by the given percentage for partial- month rates.

EZTaxAdjProRatePCode

Accepts a P_CodeEx struct as input and calculates tax adjustments for the transaction, then pro-rates the taxes calculated by the given percentage for partial-month rates.

EZTaxAdjProRateThisJCode

Accepts transaction data and performs appropriate tax calculations. The tax jurisdiction to use for tax calculations is specified to AFC with this method. If the AFC session was started with the tax log open, appropriate taxes are logged and will be reflected in tax reports. Jurisdiction information is passed using a JCode. It pro-rates the taxes calculated by the given percentage for partial-month rates.

EZTaxAdjProRateThisPCode

Accepts transaction data and performs appropriate tax calculations. The tax jurisdiction to use for tax calculations is specified to AFC with this method. If the AFC session was started with the tax log open, appropriate taxes are logged and will be reflected in tax reports. Jurisdiction information is passed using a PCode. It pro-rates the taxes calculated by the given percentage for partial-month rates.

EZTaxAdjProRateZip

EZTaxAdjProRateZipEx takes a Zip Code struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage for partial- month rates.

EZTaxAdjTPPEx

EZTaxAdjTPPEx accepts Tangible Personal Property (TPP) transaction data and performs appropriate tax calculations required to refund or credit taxes. The user provides up to three addresses: Ship From, Ship To and Point of Acceptance. Rules will be applied against the input addresses to determine in what jurisdiction any SALES or USE taxation would be applicable. A Nexus Table may optionally be provided. If so it will be checked to determine if nexus exists in the state found to have taxing jurisdiction. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports.

EZTaxAdjZipEx

The tax jurisdiction is specified using address information.

Interstate-Intrastate Determination Functions

The Interstate-Intrastate functions are used to determine if a call is interstate or intrastate.

EZTaxJTTypeEx

Returns transaction type for a given pair of jurisdiction codes indicating whether the call is interstate or intrastate. Both jurisdictions must be within the same country. The first jurisdiction is the origination and the second is the termination.  

Returns 9_INV_XACTION when countries differ or an error occurs.

EZTaxTPPEx

Accepts up to three addresses; Ship From, Ship To, and Point-Of-Acceptance. It requires Ship From. If others have NOT NULL values, then they must be valid. Uses rules to determine interstate or intrastate to determine which taxing jurisdiction should be used. It accepts the optional Nexus Table, which if given will be checked against the jurisdiction determined above. No taxes will be calculated unless the flag is set (by the caller) for the given state. It returns tax_count, having populated the tax log structure with any taxes found.

EZTaxPTTypeEx

Returns transaction type for a given pair of jurisdiction codes indicating whether the call is interstate or intrastate. Both jurisdictions must be within the same country. The first jurisdiction is the origination and the second is the termination.

Returns 9_INV_XACTION when countries differ or an error occurs.

EZTaxNTTypeEx

Returns transaction type for a given pair of jurisdiction codes indicating whether the call is interstate or intrastate. Both jurisdictions must be within the same country. The first jurisdiction is the origination and the second is the termination.

Returns 9_INV_XACTION when countries differ or an error occurs.

Get Functions

These functions are supplied to support activities requiring the retrieval of information and data.

EZTaxGetCustomLog

Returns the JCode that has jurisdiction at the most detailed taxing level.

EZTaxGetCustomLogCount

Returns the number of taxes contained in the EZTaxGetCustomLog structure. The log count includes no summarization. The log count always includes the non-billable tax count.

EZTaxGetLogName

Retrieves the log filename when it is specified using the filelocs.txt. Current use is in the batch executables that open the log file and must know the filename.

EZTaxGetLogV914

Returns the records from the last call to a taxation API. When a transaction is processed via a taxatin API, the V914 tax log structure contains the tax information generated by that transaction. In addition it contains the charge and t/s pair used in the tax calculation.

EZTaxGetLogV914Count

Returns the number of records in the current V914 log table. The log count includes no summarization. The log count always includes the non-billable tax count.

EZTaxGetNoTaxTrans

EZTaxGetNoTaxTrans retrieves the tax transaction data that was passed into the previously called procedure.

EZTaxGetRates

Utilizes a PCode as input to produce the table of all taxes for that jurisdiction.

EZTaxGetTaxCatV98

Retrieves the tax category description for a specified tax code. Current use is in utilities reporting from the log, but users can also use this new feature.

EZTaxGetTaxDescription

Retrieves the tax description for a specified tax code. Current use is in utilities reporting from the log, but users can also use this new feature.

EZTaxGetTSR

Retrieves the Transaction Service Report from memory.

ProRate Functions

EZTaxProRate functions accept transaction data and perform appropriate tax calculations. If the taxing jurisdiction allows a pro-rated reduction of taxes, the tax returned will be appropriately reduced. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports.

EZTaxProRateJCodeEx

BTN, origination and termination information is passed using JCodes. This program takes a J_CodeEx struct as input and calculates taxes for the transaction. This is the same as EZTaxJCodeEx but with percent as input.

EZTaxProRateNPANEx

BTN, origination and termination information is passed using NPANXX. This program takes an NPANXX_codeEx struct as input and calculates taxes for the transaction. This is the same as EZTaxNPANEx but with input percent.

EZTaxProRatePCodeEx

BTN, origination and termination information is passed using PCode. This program takes a P_CodeEx struct as input and calculates taxes for the transaction. This is the same as EZTaxPCodeEx but with percent as input.

EZTaxProRateThisJCodeEx

Jurisdiction information is passed using a JCode. This program takes a specific jurisdiction code as input and calculates taxes for the transaction. It is the same as EZTaxThisJCodeEx but with percent as input.

EZTaxProRateThisPCodeEx

Jurisdiction information is passed using a PCode. This program takes a specific jurisdiction code as input and calculates taxes for the transaction. It is the same as EZTaxThisPCodeEx but with percent as input.

EZTaxProRateZipEx

Jurisdiction information is passed using a Zip Code. This program takes a Zip Code plus 4 structure as input and calculates taxes for the transaction. This is the same as EZTaxZipEx but with percent as input.

Miscellaneous Functions

The following functions perform miscellaneous operations.

EZTaxCalcJurisidiction

Returns the JCode that has jurisdiction at the most detailed taxing level.

EZTaxClearExclusions

Removes all exclusions from the session.

EZTaxClearSafeHarborTAMOverride

Clear Safe Harbor TAM Override

EZTaxClearTSR

Clear (deallocate) memory allocated for retrieving the Transaction Service Report (EZTaxGetTSR)

EZTaxGroupResults

Sets the mode that AFC uses to group the returned taxes by.

EZTaxSetNexus

Allows customers to set nexus on or off for the specified states.

EZTaxSetSafeHarborTAMOverride

Set Safe Harbor TAM Override

EZTaxSetStateExclusion

Allows customers to turn on or off taxation by country or state.

EZTaxSetStateNexus

Allows customer to turn on or off nexus by state.

EZTaxWriteToLogEx

Allows customers to create the correctly formatted binary AFC log from scratch by passing in data they have stored from a different database.

EZTaxWriteToLogV914

Allows customers to create the correctly formatted binary AFC log from scratch by passing in data they have stored from a different database.

Reverse Tax Calculation Functions

EZTaxAdjRevJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevNPAN

Using NPAN, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjRevNPAN

Using NPAN, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjRevPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjRevZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjRevJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjRevJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjRevPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjRevZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

Tax Inclusive Calculation Functions

EZTaxAdjTXIJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiNPAN

Using NPAN, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjTxiNPAN

Using NPAN, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjTxiPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjTxiZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjTxiJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Adjustment Charge amount field.

EZTaxAdjTxiJCode

Using JCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjTxiPCode

Using PCodes, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjTxiZip

Using Zip code and address, determine the Base Sale amount necessary to generate the taxes that were entered in the Charge amount field.

EZTaxAdjDebitJEx

EZ Version

RPG Procedure

EZ_ADJ_DEBITJX

RPG Copy

EZADJDBTJX

Description

EZTaxAdjDebitJEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_ADJ_DEBITJX (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_DEBITJX

RPG Copy

E9ADJDBTJX

Description

EZTaxAdjDebitJEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

E9_ADJ_DEBITJX (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjDebitNEx

EZ Option

RPG Procedure

EZ_ADJ_DEBITNX

RPG Copy

EZADJDBTNX

Description

EZTaxAdjDebitNEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

EZ_ADJ_DEBITNX (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10I 0)

pOrig_NPAN (10I 0)

pTerm_NPAN (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_DEBITNX

RPG Copy

E9ADJDBTNX

Description

EZTaxAdjDebitNEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

E9_ADJ_DEBITNX (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType: pAdjMethod): (Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_NPAN (10I 0)

pOrig_NPAN (10I 0)

pTerm_NPAN (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjDebitPEx

EZ Version

RPG Procedure

EZ_ADJ_DEBITPX

RPG Copy

EZADJDBTPX

Description

EZTaxAdjDebitPEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_ADJ_DEBITPX (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_DEBITPX

RPG Copy

E9ADJDBTPX

Description

EZTaxAdjDebitPEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

E9_ADJ_DEBITPX (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod): (Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjDebitRevJCode

RPG Procedure

E9_ADJDBTREVJ

RPG Copy

E9ADDBTRVJ

Description

EZTaxAdjDebitRevJCode accepts transaction data and performs a tax inclusive adjustment calculation for a prepaid debit transaction to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate the total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxAdjJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJDBTREVJ (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType: pAdjMethod:pBaseSale):(Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

 

eneric transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitRevNPAN

RPG Procedure

E9_ADJDBREVTN

RPG Copy

E9ADDBTRVN

Description

EZTaxAdjDebitRevNPAN accepts transaction data and performs a tax inclusive adjustment calculation for a prepaid debit transaction to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxAdjNPANEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJDBTREVN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType: pAdjMethod); :(Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_NPAN (10I 0) 

pOrig_NPAN (10I 0) 

pTerm_NPAN (10I 0) 

 

eneric transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitRevPCode

RPG Procedure

E9_ADJDBTREVP

RPG Copy

E9ADDBTRVP

Description

EZTaxAdjDebitRevPCode accepts transaction data and performs a tax inclusive adjustment calculation for a prepaid debit transaction to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxAdjPCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJDBTREVP (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

eneric transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitRevZip

RPG Procedure

E9_ADJDBTREVZ

RPG Copy

E9ADDBTRVZ

Description

EZTaxAdjDebitRevZip accepts transaction data and performs a tax inclusive adjustment calculation to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned as EZTaxJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

This function passes tax jurisdiction information to AFC by specifying the appropriate zip code, state identifier, county, and locality. AFC uses this information to determine the JCode used for tax calculations. It is important to supply complete address information; there are many duplicate zip codes and localities contained within the AFC database tables. AFC always returns the first match of the data supplied.

Supplying incomplete information can result in tax calculations for an unexpected jurisdiction. When information regarding the locality is not supplied, AFC may be limited to data based upon the county or parish involved. Likewise, when information about the county is not supplied, the AFC engine may be limited to calculations based upon the state and zip code identifiers.

Format

E9_ADJDBTREVZ (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pZipCode (6A) 

pZipPlus4 (5A) 

pCountry (4A) 

pState (3A) 

pCounty (26A) 

pLocality (26A) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitTxiJCode

RPG Procedure

E9_ADJDBTTXIJ

RPG Copy

E9ADDBTTIJ

Description

EZTaxAdjDebitTxiJCode accepts transaction data and performs a tax inclusive adjustment calculation for a prepaid debit transaction to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate the total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxAdjJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJDBTTXIJ (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType: pAdjMethod:pBaseSale):(Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitTxiNPAN

RPG Procedure

E9_ADJDBTXITN

RPG Copy

E9ADDBTTIN

Description

EZTaxAdjDebitTxiNPAN accepts transaction data and performs a tax inclusive adjustment calculation for a prepaid debit transaction to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxAdjNPANEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJDBTTXIN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType: pAdjMethod); :(Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_NPAN (10I 0) 

pOrig_NPAN (10I 0) 

pTerm_NPAN (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitTxiPCode

RPG Procedure

E9_ADJDBTTXIP

RPG Copy

E9ADDBTTIP

Description

EZTaxAdjDebitTxiPCode accepts transaction data and performs a tax inclusive adjustment calculation for a prepaid debit transaction to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxAdjPCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJDBTTXIP (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitTxiZip

RPG Procedure

E9_ADJDBTTXIZ

RPG Copy

E9ADDBTTIZ

Description

EZTaxAdjDebitTxiZip accepts transaction data and performs a tax inclusive adjustment calculation to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned as EZTaxJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

This function passes tax jurisdiction information to AFC by specifying the appropriate zip code, state identifier, county, and locality. AFC uses this information to determine the JCode used for tax calculations. It is important to supply complete address information; there are many duplicate zip codes and localities contained within the AFC database tables. AFC always returns the first match of the data supplied.

Supplying incomplete information can result in tax calculations for an unexpected jurisdiction. When information regarding the locality is not supplied, AFC may be limited to data based upon the county or parish involved. Likewise, when information about the county is not supplied, the AFC engine may be limited to calculations based upon the state and zip code identifiers.

Format

E9_ADJDBTTXIZ (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2):(Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pZipCode (6A) 

pZipPlus4 (5A) 

pCountry (4A) 

pState (3A) 

pCounty (26A) 

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxAdjDebitZEx

EZ Version

RPG Procedure

EZ_ADJ_DEBITZX

RPG Copy

EZADJDBTZX

Description

EZTaxAdjDebitZEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The tax jurisdiction is specified using address information, identical to EZTaxDebitZEx.

Format

EZ_ADJ_DEBITZX (pHandle: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZipCode (6A)

pZipPlus4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_DEBITZX

RPG Copy

E9ADJDBTZX

Description

EZTaxAdjDebitZEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes for Debit cards. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The tax jurisdiction is specified using address information, identical to EZTaxDebitZEx.

Format

E9_ADJ_DEBITZX (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod): (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZipCode (6A)

pZipPlus4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjJCodeEx

EZ Version

RPG Procedure

EZ_ADJJCODEEX

RPG Copy

EZADJJCDEX

Description

EZTaxAdjJCodeJEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (Debit cards use EZTaxAdjDebitJEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_ADJJCODEEX (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJJCODEEX

RPG Copy

E9ADJJCDEX

Description

ETaxAdjJCodeJEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (Debit cards use EZTaxAdjDebitJEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

E9_ADJJCODEEX (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod): (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjNPANEx

EZ Version

RPG Procedure

EZ_ADJ_NPAN_EX

RPG Copy

EZADJNPNEX

Description

EZTaxAdjNPANJEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (for Debit cards use EZTaxAdjDebitNEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

EZ_ADJ_NPAN_EX (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10I 0)

pOrig_NPAN (10I 0)

pTerm_NPAN (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_NPAN_EX

RPG Copy

E9ADJNPNEX

Description

EZTaxAdjNPANJEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (for Debit cards use EZTaxAdjDebitNEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

E9_ADJ_NPAN_EX (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_NPAN (10I 0) 

pOrig_NPAN (10I 0) 

pTerm_NPAN (10I 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjPCodeEx

EZ9 Version

RPG Procedure

EZ_ADJPCODEEX

RPG Copy

EZADJPCDEX

Description

EZTaxAdjPCodeEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (for Debit cards use EZTaxAdjDebitPEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_ADJPCODEEX (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJPCODEEX

RPG Copy

E9ADJPCDEX

Description

EZTaxAdjPCodeEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (for Debit cards use EZTaxAdjDebitPEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

E9_ADJPCODEEX (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjProRateJCode

EZ Version

RPG Procedure

E9_ADJ_PRO_JV2

RPG Copy

EZADPRJCDX.RPGLE

Description

EZTaxAdjProRateJCode takes a J_CodeEx struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

EZ_ADJ_PRO_JCODE (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pHandle (10I 0) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Remarks

When assigning the percent field, 50% would be entered as 0.5.

E9 Version

RPG Procedure

E9_ADJ_PRO_JCODE

RPG Copy

E9ADPRJCD2.RPGLE

Description

EZTaxAdjProRateJCode takes a J_CodeEx struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

E9_ADJ_PRO_JCODE (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2):pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When assigning the percent field, 50% would be entered as 0.5.

EZTaxAdjProRateNPAN

EZ Version

RPG Procedure

E9_ADJ_PRO_NV2

RPG Copy

EZADPRNPNX.RPGLE

Description

EZTaxAdjProRateNPAN takes an NPANXX_codeEx struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

EZ_ADJ_PRO_NPAN (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pHandle (10I 0) 

pBTN_NPAN (10U 0) 

pOrig_NPAN (10U 0) 

pTerm_NPAN (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Remarks

When assigning the percent field, 50% would be entered as 0.5.

E9 Version

RPG Procedure

E9_ADJ_PRO_NPAN

RPG Copy

E9ADPRNPN2.RPGLE

Description

EZTaxAdjProRateNPAN takes an NPANXX_codeEx struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

E9_ADJ_PRO_NPAN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2):pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_NPAN (10U 0) 

pOrig_NPAN (10U 0) 

pTerm_NPAN (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When assigning the percent field, 50% would be entered as 0.5.

EZTaxAdjProRatePCode

EZ Version

RPG Procedure

E9_ADJ_PRO_PV2

RPG Copy

EZADPRPCDX.RPGLE

Description

EZTaxAdjProRatePCode takes a P_CodeEx struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

EZ_ADJ_PRO_PCODE (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info):pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pHandle (10I 0) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Remarks

When assigning the percent field, 50% would be entered as 0.5.

E9 Version

RPG Procedure

E9_ADJ_PRO_PCODE

RPG Copy

E9ADPRPCD2.RPGLE

Description

EZTaxAdjProRatePCode takes a P_CodeEx struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

E9_ADJ_PRO_PCODE (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2):pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When assigning the percent field, 50% would be entered as 0.5.

EZTaxAdjProRateThisJCode

EZ Version

RPG Procedure

E9ADJTHSPROJV2

RPG Copy

EZADPRTHSJ.RPGLE

Description

EZTaxAdjProRateThisJCode takes a J-Code and fills all three JCodes into the struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

EZ_ADJ_PRO_THIS_JCODE (pHandle: pTHS_JCode: (Generic transaction data Appenix A): (Generic returned tax info) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pHandle (10I 0)

pTHS_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Remarks

When assigning the percent field, 50% would be entered as 0.5.

E9 Version

RPG Procedure

E9_ADJ_PRO_THIS_JCODE

RPG Copy

E9ADPRTHJ2.RPGLE

Description

EZTaxAdjProRateThisJCode takes a J-Code and fills all three JCodes into the struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

E9_ADJ_PRO_THIS_JCODE (pSessionPtr: pTHS_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B):pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*)

pTHS_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When assigning the percent field, 50% would be entered as 0.5.

EZTaxAdjProRateThisPCode

EZ Version

RPG Procedure

E9ADJTHSPROPV2

RPG Copy

EZADPRTHSP.RPGLE

Description

EZTaxAdjProRateThisPCode takes a P-Code and fills all three PCodes into the struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

EZ_ADJ_PRO_THIS_PCODE (pHandle: pTHS_PCode: (Generic transaction data): (Generic returned tax info) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pHandle (10I 0) pTHS_PJCode (10U 0)

Generic transaction data: See Appendix A Generic returned tax info: See Appendix B pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Remarks

When assigning the percent field, 50% would be entered as 0.5.

E9 Version

RPG Procedure

E9_ADJ_PRO_THIS_PCODE

RPG Copy

E9ADPRTHP2.RPGLE

Description

EZTaxAdjProRateThisPCode takes a P-Code and fills all three PCodes into the struct as input and calculates tax adjustments for the transaction. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

E9_ADJ_PRO_THIS_PCODE (pSessionPtr: pTHS_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B):pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2):pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*)

pTHS_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When assigning the percent field, 50% would be entered as 0.5.

EZTaxAdjProRateZip

EZ Version

RPG Procedure

E9_ADJ_PRO_ZV2

RPG Copy

EZADPRZIPX.RPGLE

Description

EZTaxAdjProRateZip takes the appropriate zip code, state identifier, county, and locality (ZIP struct) as input and calculates tax adjustments for the transaction. AFC uses this information to determine the JCode used for tax calculations. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

EZ_ADJ_PRO_ZIP_EX (pHandle: pZipCode: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pHandle (10I 0) 

pZipCode (6A) 

pZipPlus4 (5A) 

pCountry (4A) 

pState (3A) 

pCounty (26A) 

pLocality (26A) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Remarks

When assigning the percent field, 50% would be entered as 0.5.

E9 Version

RPG Procedure

E9_ADJ_PRO_ZIP

RPG Copy

E9ADPRZIP2.RPGLE

Description

EZTaxAdjProRateZip takes the appropriate zip code, state identifier, county, and locality (ZIP struct) as input and calculates tax adjustments for the transaction. AFC uses this information to determine the JCode used for tax calculations. It pro-rates the taxes calculated by the given percentage, for partial-month rates.

Format

E9_ADJ_PRO_ZIP (pSessionPtr: pZipCode: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B) :pPercent: pDiscount: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2) :pAdjMethod: credit_cancel (10I 0)

Return Value

pTaxCount (10I 0)

0 : Indicates no tax data available for transaction (not taxable) or an error has occurred.

n : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pZipCode (6A) 

pZipPlus4 (5A) 

pCountry (4A) 

pState (3A) 

pCounty (26A) 

pLocality (26A) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (10I 0)

pDiscount (10I 0)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

credit_cancel (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When assigning the percent field, 50% would be entered as 0.5.

EZTaxAdjRevJCode

EZ Version

RPG Procedure

EZ_ADJREVJCODE

RPG Copy

EZADRVJCD

Description

EZTaxAdjRevJCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_ADJREVJCODE (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJREVJCODE

RPG Copy

E9ADRVJCD

Description

EZTaxAdjRevJCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJREVJCODE (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*) pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjRevNPAN

EZ Version

RPG Procedure

EZ_ADJREVNPAN

RPG Copy

EZADRVNPN

Description

EZTaxAdjRevNPAN accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Format

EZ_ADJREVNPAN (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJREVNPAN

RPG Copy

E9ADRVNPN

Description

EZTaxAdjRevNPAN accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJREVNPAN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_NPAN (10U 0) 

pOrig_NPAN (10U 0) 

pTerm_NPAN (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjRevPCode

EZ Version

RPG Procedure

EZ_ADJREVPCODE

RPG Copy

EZADRVPCD

Description

EZTaxAdjRevPCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_ADJREVPCODE (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

 

 

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJREVPCODE

RPG Copy

E9ADRVPCD

Description

EZTaxAdjRevPCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJREVPCODE (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);(Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjRevZip

EZ Version

RPG Procedure

EZ_ADJREVZIP

RPG Copy

EZADRVZIP

Description

EZTaxAdjRevZip accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZipEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using Zips.

Format

EZ_ADJREVZIP (pHandle: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJREVZIP

RPG Copy

E9ADRVZIP

Description

EZTaxAdjRevZip accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZipEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using Zips.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJREVZIP (pSessionPtr: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjTxiJCode

EZ Version

RPG Procedure

EZ_ADJTXIJCODE

RPG Copy

EZADTIJCD

Description

EZTaxAdjTxiJCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_ADJTXIJCODE (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJTXIJCODE

RPG Copy

E9ADTIJCD

Description

EZTaxAdjTxiJCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJTXIJCODE (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjTxiNPAN

EZ Version

RPG Procedure

EZ_ADJTXINPAN

RPG Copy

EZADTINPN

Description

EZTaxAdjTxiNPAN accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Format

EZ_ADJTXINPAN (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJTXINPAN

RPG Copy

E9ADTINPN

Description

EZTaxAdjTxiNPAN accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJTXINPAN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_NPAN (10U 0) 

pOrig_NPAN (10U 0) 

pTerm_NPAN (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjTxiPCode

EZ Version

RPG Procedure

EZ_ADJTXIPCODE

RPG Copy

EZADTIPCD

Description

EZTaxAdjTxiPCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_ADJTXIPCODE (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJTXIPCODE

RPG Copy

E9ADTIPCD

Description

EZTaxAdjTxiPCode accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJTXIPCODE (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod: pBaseSale);(Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjTxiZip

EZ Version

RPG Procedure

EZ_ADJTXIZIP

RPG Copy

EZADTIZIP

Description

EZTaxAdjTxiZip accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZipEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using Zips.

Format

EZ_ADJTXIZIP (pHandle: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_ADJTXIZIP

RPG Copy

E9ADTIZIP

Description

EZTaxAdjTxiZip accepts transaction data with the gross amount adjustment given to the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZipEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using Zips.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ADJTXIZIP (pSessionPtr: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjTPPEx

EZ Version

RPG Procedure

EZ_ADJ_TPP_EX

RPG Copy

EZADJTPPEX

Description

EZTaxAdjTPPEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The user provides up to three addresses: Ship From, Ship To and Point of Acceptance. Rules will be applied against the input addresses to determine in what jurisdiction any SALES or USE taxation would be applicable. A nexus table may optionally be provided; if so it will be checked to determine if nexus exists in the state found to have taxing jurisdiction.

Format

EZ_ADJ_TPP_EX (pHandle: pFromZipCode: pFromZipPlus4: pFromCountry: pFromState: pFromCounty: pFromLocality: pToZipCode: pToZipPlus4: pToCountry: pToState: pToCounty: pToLocality: pPoaZipCode: pPoaZipPlus4: pPoaCountry: pPoaState: pPoaCounty: pPoaLocality: pNexusArray: pNexusCount: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFromZipCode (6A)

pFromZipPlus4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocality (26A)

pToZipCode (6A)

pToZipPlus4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocality (26A)

pPoaZipCode (6A)

pPoaZipPlus4 (5A)

pPoaCountry (4A)

pPoaState (3A)

pPoaCounty (26A)

pPoaLocality (26A)

pNexusArray (2A DIM(EZ_NXS_MAX))

pNexusCount (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_TPP_EX

RPG Copy

E9ADJTPPEX

Description

EZTaxAdjTPPEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The user provides up to three addresses: Ship From, Ship To and Point of Acceptance. Rules will be applied against the input addresses to determine in what jurisdiction any SALES or USE taxation would be applicable. A nexus table may optionally be provided; if so it will be checked to determine if nexus exists in the state found to have taxing jurisdiction.

Format

E9_ADJ_TPP_EX (pSessionPtr: pFromZipCode: pFromZipPlus4: pFromCountry: pFromState: pFromCounty: pFromLocality: pToZipCode: pToZipPlus4: pToCountry: pToState: pToCounty: pToLocality: pPoaZipCode: pPoaZipPlus4: pPoaCountry: pPoaState: pPoaCounty: pPoaLocality: pNexusArray: pNexusCount: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);(Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFromZipCode (6A)

pFromZipPlus4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocality (26A)

pToZipCode (6A)

pToZipPlus4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocality (26A)

pPoaZipCode (6A)

pPoaZipPlus4 (5A)

pPoaCountry (4A)

pPoaState (3A)

pPoaCounty (26A)

pPoaLocality (26A)

pNexusArray (2A DIM(E9_NXS_MAX))

pNexusCount (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxAdjZipEx

EZ Version

RPG Procedure

EZ_ADJ_ZIP_EX

RPG Copy

EZADJZIPEX

Description

EZTaxAdjZipEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (for Debit cards use EZTaxAdjDebitZEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The tax jurisdiction is specified using address information identical to EZTaxZipEx.

Format

EZ_ADJ_ZIP_EX (pHandle: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZipCode (6A)

pZipPlus4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ADJ_ZIP_EX

RPG Copy

E9ADJZIPEX

Description

EZTaxAdjZipEx accepts transaction data and performs appropriate tax calculations required to refund or credit taxes (for Debit cards use EZTaxAdjDebitZEx). If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The tax jurisdiction is specified using address information identical to EZTaxZipEx.

Format

E9_ADJ_ZIP_EX (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pDiscount: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pAdjMethod); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZipCode (6A)

pZipPlus4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxCalcJurisdiction

EZ Version

RPG Procedure

EZ_JURISDICTN

RPG Copy

EZJURISDCT

Description

EZTaxCalcJurisdiction returns the first JCode at the lowest level. Format EZ_JURISDICTN (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pJCode (10U 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

pSpe_Count must be zero. The three parameters following pSpe_Count, pSpe_Tax_Type, pSpe_Tax_Level and pSpe_JCode, are omitted. The Customer Number parameter is also omitted.

E9 Version

RPG Procedure

E9_JURISDICTN

RPG Copy

E9JURISDCT

Description

EZTaxCalcJurisdiction returns the first JCode at the lowest level.

Format

E9_JURISDICTN (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2)

Return Value

pJCode (10U 0)

Parameters

pSessionPtr (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A. See Remarks pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Remarks

pSpe_Count must be zero. The three parameters following pSpe_Count, pSpe_Tax_Type, pSpe_Tax_Level and pSpe_JCode, are omitted. The Customer Number parameter is also omitted.

EZTaxClearExclusion

EZ Version

RPG Procedure

EZ_CLR_EXCL

RPG Copy

EZCLREXCL

Description

EZTaxClearExclusion is used to remove all exclusions that have been set. Format EZ_CLR_EXCL (pHandle)

Return Value

pAnswer (10I 0)

TRUE (1) – Success

FALSE (0) – Failure

Parameters

pHandle (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_CLR_EXCL

RPG Copy

E9CLREXCL

Description

EZTaxClearExclusion is used to remove all exclusions that have been set. Format E9_CLR_EXCL (guZSessionPtr)

Return Value

pAnswer (10I 0)

TRUE (1) – Success

FALSE (0) – Failure

Parameters

guZSessionPtr (*)

Remarks

None

EZTaxClearTSR

E9 Version

RPG Procedure

E9_CLEAR_TSR

RPG Copy

E9CLEARTSR

Description

EZTaxClearTSR dellocates memory used to store data created by EZTaxGetTSR. This deallocation prevents memory leaks during operation.

Format

E9_CLEAR_TSR (pSessionPtr: pAryStructPtr)

Return Value

None

Parameters

pSessionPtr (* VALUE) .

pAryStructPtr (* VALUE)

Remarks

None

EZTaxClearSafeHarborTAMOverride

E9 Version

RPG Procedure

E9_ CLRSAFHBR

RPG Copy

E9CLRSFHBR

Description

Clear the EZTax Safe Harbor TAM override set via E9_SETSAFHBR. The API clears the override flag and the engine will return to using the default safe harbor percentages for the chosen TAMTypeID (celluar type, VoIP type or paging type).

Format

E9_CLEAR_TSR (pSessionPtr: pSafeHbrType: pError)

Return Value

pAnswer (10I 0)

TRUE (1) – Success

FALSE (0) – Failure

Parameters

pSessionPtr (* VALUE) 

pSafeHbrType (5I 0 VALUE) 

pError (10I 0) 

Remarks

None 

EZTaxDebitJEx

EZ Version

RPG Procedure

EZ_DEBITJ_X

RPG Copy

EZDBTJEX

Description

EZTaxDebitJEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_DEBITJ_X (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pAnswer (10I 0) - Tax Count

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_DEBITJ_X

RPG Copy

E9DBTJEX

Description

EZTaxDebitJEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

E9_DEBITJ_X (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);(Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pAnswer (10I 0) - Tax Count 

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

 

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxDebitNEx

EZ Version

RPG Procedure

EZ_DEBITN_EX

RPG Copy

EZDBTNEX

Description

EZTaxDebitNEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

EZ_DEBITN_EX (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10I 0)

pOrig_NPAN (10I 0)

pTerm_NPAN (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_DEBITN_EX

RPG Copy

E9DBTNEX

Description

EZTaxDebitNEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

E9_DEBITN_EX (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_NPAN (10I 0)

pOrig_NPAN (10I 0)

pTerm_NPAN (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxDebitPEx

EZ Version

RPG Procedure

EZ_DEBITP_EX

RPG Copy

EZDBTPEX

Description

EZTaxDebitPEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_DEBITP_EX (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_DEBITP_EX

RPG Copy

E9DBTPEX

Description

EZTaxDebitPEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

E9_DEBITP_EX (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

 

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxDebitZEx

EZ Version

RPG Procedure

EZ_DEBITZ_EX

RPG Copy

EZDBTZEX

Description

EZTaxDebitZEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisidiction is passed by address information.

Format

EZ_DEBITZ_EX (pHandle: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pHandle (10I 0) 

pZipCode (6A) 

pZipPlus4 (5A) 

pCountry (4A) 

pState (3A) 

pCounty (26A) 

pLocality (26A) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

 

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_DEBITZ_EX

RPG Copy

E9DBTZEX

Description

EZTaxDebitZEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisidiction is passed by address information.

Format

E9_DEBITZ_EX (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pZipCode (6A) 

pZipPlus4 (5A) 

pCountry (4A) 

pState (3A) 

pCounty (26A) 

pLocality (26A) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

 

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxDebitRevJCode

RPG Procedure

E9_DBTREVJ

RPG Copy

E9DBTREVJ

Description

EZTaxDebitRevJCode accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTREVJ (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pAnswer (10I 0) - Tax Count

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

 

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitRevNPAN

RPG Procedure

E9_DBTREVN

RPG Copy

E9DBTREVN

Description

EZTaxDebitRevNPAN accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTREVN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_NPAN (10I 0) 

pOrig_NPAN (10I 0) 

pTerm_NPAN (10I 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitRevPCode

RPG Procedure

E9_DBTREVP

RPG Copy

E9DBTREVP

Description

EZTaxDebitRevPCode accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTREVP (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitRevZip

RPG Procedure

E9_DBTREVZ

RPG Copy

E9DBTREVZ

Description

EZTaxDebitRevZip accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

This function passes tax jurisdiction information to AFC by specifying the appropriate zip code, state identifier, county, and locality. AFC uses this information to determine the JCode used for tax calculations. It is important to supply complete address information; there are many duplicate zip codes and localities contained within the AFC database tables. AFC always returns the first match of the data supplied.

Supplying incomplete information can result in tax calculations for an unexpected jurisdiction. When information regarding the locality is not supplied, AFC may be limited to data based upon the county or parish involved. Likewise, when information about the county is not supplied, the AFC engine may be limited to performance of calculations based upon the state and zip code identifiers.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTREVZ (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);(Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

[-1] : A critical error occurred while preparing the reverse calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pZipCode (6A) 

pZipPlus4 (5A) 

 

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitTxiJCode

RPG Procedure

E9_DBTTXIJ

RPG Copy

E9DBTTXIJ

Description

EZTaxDebitTxiJCode accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTTXIJ (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pAnswer (10I 0) - Tax Count

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitTxiNPAN

RPG Procedure

E9_DBTTXIN

RPG Copy

E9DBTTXIN

Description

EZTaxDebitTxiNPAN accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTTXIN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_NPAN (10I 0) 

pOrig_NPAN (10I 0) 

pTerm_NPAN (10I 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitTxiPCode

RPG Procedure

E9_DBTTXIP

RPG Copy

E9DBTTXIP

Description

EZTaxDebitTxiPCode accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTTXIP (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxDebitTxiZip

RPG Procedure

E9_DBTTXIZ

RPG Copy

E9DBTTXIZ

Description

EZTaxDebitTxiZip accepts transaction data and performs a tax inclusive calculation for prepaid debit transactions to arrive at the base sale amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. The base sale amount will also be stored in the ‘optional’ field in the log output, converted to an integer.

This function passes tax jurisdiction information to AFC by specifying the appropriate zip code, state identifier, county, and locality. AFC uses this information to determine the JCode used for tax calculations. It is important to supply complete address information; there are many duplicate zip codes and localities contained within the AFC database tables. AFC always returns the first match of the data supplied.

Supplying incomplete information can result in tax calculations for an unexpected jurisdiction. When information regarding the locality is not supplied, AFC may be limited to data based upon the county or parish involved. Likewise, when information about the county is not supplied, the AFC engine may be limited to performance of calculations based upon the state and zip code identifiers.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_DBTTXIZ (pSessionPtr: pZipCode: pZipPlus4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);(Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

[-1] : A critical error occurred while preparing the tax inclusive calculation session

[0] : No taxes calculated or an error was found

[n] : Indicates number of taxes stored in the struct enhanced_taxes_tbl array for this transaction

Parameters

pSessionPtr (*) 

pZipCode (6A) 

pZipPlus4 (5A) 

 

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0) pBaseSale (8F)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and err_code are 0, no taxes were found, but there is no error. The base_sale returned will equal the charge sent in. If the charge sent in is insufficient to cover the taxes generated, then no taxes will be calculated and the err_code will be set to -37. An error will be logged to the status file indicating an insufficient charge error occurred.

EZTaxExitSessionEx

EZ Version

RPG Procedure

EZ_EXITSS_EX

RPG Copy

EZEXITSSEX

Description

EZTaxExitSessionEx will terminate a session specified by a valid session handle. EZTaxExitSessionEx writes the current internal tax log buffers to the tax log disk file, de-allocates cached database memory, closes all AFC database files, and performs other clean-up duties which free up resources utilized for the specified session.

Format

EZ_EXITSS_EX (pHandle);

Return Value

pAnswer (10I 0)

TRUE (1) – Session exited successfully.

FALSE (0) – An error has occurred.

Parameters

pHandle (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_EXITSS_EX

RPG Copy

E9EXITSSEX

Description

EZTaxExitSessionEx will terminate a session specified by a valid session handle. EZTaxExitSessionEx writes the current internal tax log buffers to the tax log disk file, de-allocates cached database memory, closes all AFC database files, and performs other clean-up duties which free up resources utilized for the specified session.

Format

E9_EXITSS_EX (pSessionPtr);

Return Value

pAnswer (10I 0)

TRUE (1) – Session exited successfully.

FALSE (0) – An error has occurred.

Parameters

pSessionPtr (*)

Remarks

None

EZTaxFlushToLog

EZ Version

RPG Procedure

EZ_FLUSHLOG_EX

RPG Copy

EZFLUSHLOG

Description

EZTax FlushToLog writes the current internal tax log buffers to the tax log disk file. The internal tax log buffers are normally written to when they are filled to capacity or EZTaxExit is called. This function can be called to force a write to tax log disk file.

Format

EZ_FLUSHLOG_EX (pHandle);

Return Value

pAnswer (10I 0) – Zero

Parameters

pHandle (10I 0) Input

Remarks

None

E9 Version

RPG Procedure

E9_FLUSHLOG_EX

RPG Copy

E9FLUSHLOG

Description

EZTax FlushToLog writes the current internal tax log buffers to the tax log disk file. The internal tax log buffers are normally written to when they are filled to capacity or EZTaxExit is called. This function can be called to force a write to tax log disk file.

Format

E9_FLUSHLOG_EX (pSessionPtr);

Return Value

pAnswer (10I 0) – Zero

Parameters

pSessionPtr (*) Input

Remarks

None

EZTaxFtoPCodeEx

EZ Version

RPG Procedure

EZ_FTOP_EX

RPG Copy

EZFTOPEX

Description

EZTaxFtoPCodeEx returns a PCode that cross-referenced to the specified Fips Code. Zero is returned if not found.

Format

EZ_FTOP_EX (pHandle: pFIPS: pError);

Return Value

pPCode(10U 0)

Parameters

pHandle (10I 0)

pFIPS (11A)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_FTOP_EX

RPG Copy

E9FTOPEX

Description

EZTaxFtoPCodeEx returns a PCode that cross-referenced to the specified Fips Code. Zero is returned if not found.

Format

EZ_FTOP_EX (pSessionPtr: pFIPS: pError);

Return Value

pPCode(10U 0)

Parameters

pSessionPtr (*)

pFIPS (11A)

pError (10I 0)

Remarks

None

EZTaxGetAddressEx

EZ Version

RPG Procedure

EZ_GET_ADDR_EX

RPG Copy

EZGTADDREX

Description

EZTaxGetAddressEx accepts a JCode as input to retrieve the location address data for the jurisdiction specified by the JCode.

Format

EZ_GET_ADDR_EX (pHandle: pJCode: pRJLevel: pRLocality: pRCounty: pRState: pRCountry: pRZipBegin: pRZipBeginP4: pRZipEnd: pRZipEndP4: pError);

Return Value

pAnswer (10U 0)

NOT_FOUND - Failed due to invalid JCode or an error has occurred.

FOUND - Successfully retrieved address.

MORE - Successfully retrieved address and other valid addresses exist for this jurisdiction. Other address can be obtained by calling EZTaxNextAddressEx.

Parameters

pHandle (10I 0)

pJCode (10U 0)

pJLevel (10I 0)

pRLocality (26A)

pRCounty (26A)

pRState (3A)

pRCountry (4A)

pRZipBegin (6A)

pRZipBeginP4 (5A)

pRZipEnd (6A)

pRZipEndP4 (5A)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_GET_ADDR_EX

RPG Copy

E9GTADDREX

Description

EZTaxGetAddressEx accepts a JCode as input to retrieve the location address data for the jurisdiction specified by the JCode.

Format

E9_GET_ADDR_EX (pSessionPtr: pJCode: pRJLevel: pRLocality: pRCounty: pRState: pRCountry: pRZipBegin: pRZipBeginP4: pRZipEnd: pRZipEndP4: pError);

Return Value

pAnswer (10U 0)

NOT_FOUND - Failed due to invalid JCode or an error has occurred. FOUND - Successfully retrieved address.

MORE - Successfully retrieved address and other valid addresses exist for this jurisdiction. Other address can be obtained by calling EZTaxNextAddressEx.

Parameters

pSessionPtr (*)

pJCode (10U 0)

pJLevel (10I 0)

pRLocality (26A)

pRCounty (26A)

pRState (3A)

pRCountry (4A)

pRZipBegin (6A)

pRZipBeginP4 (5A)

pRZipEnd (6A)

pRZipEndP4 (5A)

pError (10I 0)

Remarks

None

EZTaxGetCustomLog

EZ Version

RPG Procedure

EZ_GTCSTLOG_EX

RPG Copy

EZGTCSTLOG

Description

EZTaxGetCustomLog is a routine that returns a pointer to a log structure, which is used for customized logging. The data is returned in structures that the customer can access just like the other tax transactions. The RPG Interface returns the log records from the log structure.

Format

wrt_answer = EZ_GTCSTLOG_EX(pEZHandle: COUNT: gcP_CODE: gcTAX_TYPE: gcTAX_LEVEL: gcRATE: gcTAX_AMOUNT: gTAXABLE_MEASU: gEXEMPT_SLS_AM: gRFND_UNCOLLCT: gcMINUTES: gcINV_NO: gcSER_LVL_NO: gcOPTIONAL: gcLINES: gcLOCATIONS: gcCALC_TYPE: gcbillable: gccomplianc: gcCUST_NO: gcadj_method: gcexempt_type: gcSurchg: gcLOG_COUNTR: gcCOMPANY_ID: gcOPT_ALPHA_1: gcopt_4: gcopt_5: gcopt_6: gcopt_7:gcopt_8: gcopt_9: gcopt_10);

Return Value

FALSE – (0) - Failed to retrieve the custom log data.

TRUE - (1) - Successfully retrieved the log information.

Parameters

pHandle (10I 0)

D gcCOUNT S 10I 0 

D gcP_CODE S 10U 0 DIM(LGZ_ARY_MAX) 

D gcTAX_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTAX_LEVEL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcRATE S 12P 6 DIM(LGZ_ARY_MAX) 

D gcTAX_AMOUNT S 12P 6 DIM(LGZ_ARY_MAX) 

D gTAXABLE_MEASU S 12P 6 DIM(LGZ_ARY_MAX) 

d gEXEMPT_SLS_AM S 12P 6 DIM(LGZ_ARY_MAX) 

d gRFND_UNCOLLCT S 12P 6 DIM(LGZ_ARY_MAX) 

D gcMINUTES S 25P 4 DIM(LGZ_ARY_MAX) 

D gcINV_NO S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSER_LVL_NO S 10I 0 DIM(LGZ_ARY_MAX) 

D gcOPTIONAL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLINES S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOCATIONS S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCALC_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcbillable S 10i 0 DIM(LGZ_ARY_MAX) 

D gccomplianc S 10i 0 DIM(LGZ_ARY_MAX) 

D gcCUST_NO S 20 DIM(LGZ_ARY_MAX) 

d gcadj_method S 10I 0 DIM(LGZ_ARY_MAX) 

d gcexempt_type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSurchg S 10i 0 DIM(LGZ_ARY_MAX) 

D gcLOG_COUNTR S 10U 0 DIM(LGZ_ARY_MAX) 

D gcCOMPANY_ID S 20 DIM(LGZ_ARY_MAX) 

 

D gcOPT_ALPHA_1 S 20 DIM(LGZ_ARY_MAX) 

d gcopt_4 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_5 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_6 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_7 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_8 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_9 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_10 S 10I 0 DIM(LGZ_ARY_MAX) 

Remarks

EZ_GTCSTLOG_EX, when used to read records created using the EZ_XXX APIs, will, in many cases, read random data located in the gcopt_x fields. This random data may, very occasionally, result in invalid records due to erroneous end-of-line markers which are part of the random data. The random data results from the EZ_XXX APIs not supporting the gcopt_x fields. This potential problem can be avoided by using the E9_XXX version of the APIs. The E9_XXX APIs, that create EZTax.log records, support the gcopt_x fields.

EZ_SETUPCSTLOG must be called prior to EZ_GTCSTLOG_EX.  EZ_SETUPCSTLOG is used after a call to initialize the AFC session and before any taxes are calculated. The data returned by E9_GTCSTLOG_EX can be used to call EZTaxWriteToLogEx to output the information to the AFC log.

EZTaxGetCustomLogCount can be used to get the record count in the log table.

When a transaction has been processed, the custom log structure will contain the tax information generated by that transaction.

gcCOUNT: This input value specified the number of records to return from the log structure. The example code uses tax calculation API return values for the count. These return counts represent then number of records written to the AFC Log file and are dependent on configuration settings. Alternatly, the new API call, E9_GET_CST_CNT, return count may be used. Using the E9_GET_CST_CNT return count returns all available records from the log structure.

The value in eztax_logEx.p_code (gcP_CODE) is the jcode representation of the jurisdiction.

EZ Version

RPG Procedure

EZ_SETUPCSTLOG

RPG Copy

EZGTCSTLOG

Format

wrt_answer = EZ_ SETUPCSTLOG pEZHandle);

Return Value

FALSE – (0) - Failed to retrieve the custom log data.

TRUE - (1) - Successfully retrieved the log information.

Parameter

pHandle (10I 0)

Remarks

This function is used after a call to initialize the AFC session and before any taxes are calculated. See the EZ_GTCSTLOG_EX Remarks section for additional information.

E9 Version

RPG Procedure

E9_GTCSTLOG_EX

RPG Copy

E9GTCSTLOG

Description

EZTaxGetCustomLog is a routine that returns a pointer to a log structure, which is used for customized logging. The data is returned in structures that the customer can access just like the other tax transactions. The RPG Interface returns the log records from the log structure.

Format

wrt_answer = E9_GTCSTLOG_EX(pSessionPtr: COUNT: gcP_CODE: gcTAX_TYPE: gcTAX_LEVEL: gcRATE: gcTAX_AMOUNT: gTAXABLE_MEASU: gEXEMPT_SLS_AM: gRFND_UNCOLLCT: gcMINUTES: gcINV_NO: gcSER_LVL_NO: gcOPTIONAL: gcLINES: gcLOCATIONS: gcCALC_TYPE: gcbillable: gccomplianc: gcCUST_NO: gcadj_method: gcexempt_type: gcSurchg: gcLOG_COUNTR: gcCOMPANY_ID: gcOPT_ALPHA_1: gcopt_4: gcopt_5: gcopt_6: gcopt_7: gcopt_8: gcopt_9: gcopt_10);

Return Value

FALSE – (0) - Failed to retrieve the custom log data.

TRUE - (1) - Successfully retrieved the log information.

Parameters

pSessionPtr (*)

D gcCOUNT S 10I 0 

D gcP_CODE S 10U 0 DIM(LGZ_ARY_MAX) 

D gcTAX_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTAX_LEVEL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcRATE S 12P 6 DIM(LGZ_ARY_MAX) 

D gcTAX_AMOUNT S 8F DIM(LGZ_ARY_MAX) 

D gTAXABLE_MEASU S 8F DIM(LGZ_ARY_MAX) 

d gEXEMPT_SLS_AM S 8F DIM(LGZ_ARY_MAX) 

d gRFND_UNCOLLCT S 12P 6 DIM(LGZ_ARY_MAX) 

D gcMINUTES S 25P 4 DIM(LGZ_ARY_MAX) 

D gcINV_NO S 10U 0 DIM(LGZ_ARY_MAX) 

D gcSER_LVL_NO S 10U 0 DIM(LGZ_ARY_MAX) 

D gcOPTIONAL S 10U 0 DIM(LGZ_ARY_MAX) 

D gcLINES S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOCATIONS S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCALC_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcbillable S 10I 0 DIM(LGZ_ARY_MAX) 

D gccomplianc S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCUST_NO S 20 DIM(LGZ_ARY_MAX) 

d gcadj_method S 10I 0 DIM(LGZ_ARY_MAX) 

d gcexempt_type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSurchg S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOG_COUNTR S 10U 0 DIM(LGZ_ARY_MAX) 

D gcCOMPANY_ID S 20 DIM(LGZ_ARY_MAX) 

D gcOPT_ALPHA_1 S 20 DIM(LGZ_ARY_MAX) 

D gcopt_4 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_5 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_6 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_7 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_8 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_9 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_10 S 10U 0 DIM(LGZ_ARY_MAX) 

Remarks

E9_SETUPCSTLOG must be called prior to E9_GTCSTLOG_EX.  E9_SETUPCSTLOG is used after a call to initialize the AFC session and before any taxes are calculated. The data returned by E9_GTCSTLOG_EX can be used to call EZTaxWriteToLogEx (E9_WRT_TO_LOG) to output the information to the AFC log. EZTaxGetCustomLogCount can be used to get the record count in the log table.

When a transaction has been processed, the custom log structure will contain the tax information generated by that transaction.

gcCOUNT: This input value specifies the number of records to return from the log structure. The example code in COPYSRC uses tax calculation API return values for the count. These return counts represent then number of records written to the AFC Log file and are dependent on configuration settings. Alternatly, the new API call, E9_GET_CST_CNT, return count may be used. The E9_GET_CST_CNT return count includes all available records from the log structure.

The value in eztax_logEx.p_code (gcP_CODE) is the jcode representation of the jurisdiction.

E9 Version

RPG Procedure

E9_SETUPCSTLOG

RPG Copy

E9GTCSTLOG

Format

wrt_answer = EZ_ SETUPCSTLOG (pSessionPtr);

Return Value

FALSE – (0) - Failed to retrieve the custom log data.

TRUE - (1) - Successfully retrieved the log information.

Parameter

pSessionPtr (*)

Remarks

This function is used after a call to initialize the AFC session and before any taxes are calculated. See the E9_GTCSTLOG_EX Remarks for additional information.

EZTaxGetCustomLogCount

E9 Version

RPG Procedure

E9_GET_CST_CNT

RPG Copy

E9GTCSTCNT

Description

EZTaxGetCustomLogCount returns the number of records in the current custom log table. See the Remarks section regarding the returned count.

Format

guZCount = E9_GET_CST_CNT (pE9Session@);

Return Value

Returns the number of records in the current custom log table. Zero See Zero indicates that no records exist. See the Remarks section for additional information

Parameters

pE9Session@ *

Remarks

GetCustomLogCount returns the number of taxes contained in the EZTaxGetCustomLog structure. The log count includes no summarization. The log count always includes the non-billable tax count.

EZTaxGetJurisdiction

EZ Version

RPG Procedure

EZ_GTJURIS_EX

RPG Copy

EZGTJURSEX

Description

EZTaxGetJurisdiction retrieves the jurisdiction where the transaction is determined to be taxed at. Current use is in the batch executables that report tax revenue group by state.

Format

j_code = EZ_GTJURIS_EX(pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

j_code (10U 0)

0 - Failed due to invalid JCode or an error has occurred.

j_code - Successfully retrieved jurisdiction that the tax was calculated at.

Parameters

pHandle (10I 0) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

 

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

EZ_GTJURIS_EX

RPG Copy

EZGTJURSEX

Description

EZTaxGetJurisdiction retrieves the jurisdiction where the transaction is determined to be taxed at. Current use is in the batch executables that report tax revenue group by state.

Format

j_code = EZ_GTJURIS_EX(pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

j_code (10U 0)

0 - Failed due to invalid JCode or an error has occurred.

j_code - Successfully retrieved jurisdiction that the tax was calculated at.

Parameters

pHandle (10I 0) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0) 

pBusClass (10I 0) 

pSrvClass (10I 0) 

pFacilities (10I 0) 

pFranchise (10I 0) 

pLifeLine (10I 0) 

pExemptType (10I 0) 

Remarks

None 

EZTaxGetLogName

EZ Version

RPG Procedure

EZ_GET_LOG_NAME

RPG Copy

EZGTLGNAME

Description

EZTaxGetLogName retrieves the log filename when it is specified using the filelocs.txt. Current use is in the batch executables that open the log file and must know the filename.

Format

EZ_GET_LOG_NAME (pHandle: pRLogName);

Return Value

pAnswer (10U 0)

SESSION_NOT_INIT: Handle is invalid.

TRUE: Otherwise

Parameters

pHandle (10I 0) 

pRLogName (150A) 

Remarks

None 

E9 Version

RPG Procedure

E9_GET_LOG_NAME

RPG Copy

E9GTLGNAME

Description

EZTaxGetLogName retrieves the log filename when it is specified using the filelocs.txt. Current use is in the batch executables that open the log file and must know the filename.

Format

E9_GET_LOG_NAME (pSessionPtr: pRLogName);

Return Value

pAnswer (10U 0)

SESSION_NOT_INIT: Handle is invalid.

TRUE: Otherwise

Parameters

pHandle (10I 0) 

pRLogName (150A) 

Remarks

None 

EZTaxGetLogV914

E9 Version

RPG Procedure

E9_GET914LOG

RPG Copy

E9GET914LG

Description

EZTaxGetLogV914 is a routine that returns a pointer to a log structure, which is used for customized logging. The data is returned in structures that the customer can access just like the other tax transactions. The RPG Interface returns the log records from the log structure.

Format

wrt_answer = E9_GET914LOG (pSessionPtr: COUNT: gcP_CODE: gcTAX_TYPE: gcTAX_LEVEL: gcRATE: gcTAX_AMOUNT: gTAXABLE_MEASU: gEXEMPT_SLS_AM: gRFND_UNCOLLCT: gcMINUTES: gcINV_NO: gcSER_LVL_NO: gcOPTIONAL: gcLINES: gcLOCATIONS: gcCALC_TYPE: gcbillable: gccomplianc: gcCUST_NO: gcadj_method: gcexempt_type: gcSurchg: gcLOG_COUNTR: gcCOMPANY_ID: gcOPT_ALPHA_1: gcopt_4: gcopt_5: gcopt_6: gcopt_7: gcopt_8: gcopt_9: gcopt_10 : gcTranType: gcSrvType: gcTransCharge: gcTaxDesc: gcTaxCatId: gcTaxCatDesc);

Return Value

FALSE – (0) - Failed to retrieve the custom log data.

TRUE - (1) - Successfully retrieved the log information.

Parameters

pSessionPtr (*)

D gcCOUNT S 10I 0 DIM(LGZ_ARY_MAX) 

D gcP_CODE S 10U 0 DIM(LGZ_ARY_MAX) 

D gcTAX_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTAX_LEVEL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcRATE S 12P 6 DIM(LGZ_ARY_MAX) 

D gcTAX_AMOUNT S 8F DIM(LGZ_ARY_MAX) 

D gTAXABLE_MEASU S 8F DIM(LGZ_ARY_MAX) 

d gEXEMPT_SLS_AM S 8F DIM(LGZ_ARY_MAX) 

d gRFND_UNCOLLCT S 12P 6 DIM(LGZ_ARY_MAX) 

D gcMINUTES S 25P 4 DIM(LGZ_ARY_MAX) 

D gcINV_NO S 10U 0 DIM(LGZ_ARY_MAX) 

D gcSER_LVL_NO S 10U 0 DIM(LGZ_ARY_MAX) 

D gcOPTIONAL S 10U 0 DIM(LGZ_ARY_MAX) 

D gcLINES S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOCATIONS S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCALC_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcbillable S 10I 0 DIM(LGZ_ARY_MAX) 

D gccomplianc S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCUST_NO S 20 DIM(LGZ_ARY_MAX) 

d gcadj_method S 10I 0 DIM(LGZ_ARY_MAX) 

d gcexempt_type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSurchg S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOG_COUNTR S 10U 0 DIM(LGZ_ARY_MAX) 

D gcCOMPANY_ID S 20 DIM(LGZ_ARY_MAX) 

D gcOPT_ALPHA_1 S 20 DIM(LGZ_ARY_MAX) 

D gcopt_4 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_5 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_6 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_7 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_8 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_9 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcopt_10 S 10U 0 DIM(LGZ_ARY_MAX) 

D gcTrans_Type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSrv_Type S 10I 0 DIM(LGZ_ARY_MAX) 

 

D gcTrans_Charge S 8F DIM(LGZ_ARY_MAX)

D gcTax_Desc S 100 DIM(LGZ_ARY_MAX)

D gcTax_Cat_Id S 10I 0 DIM(LGZ_ARY_MAX)

D gcTax_Cat_Desc S 100 DIM(LGZ_ARY_MAX)

Remarks

E9_SETUP914LOG must be called prior to E9_GET914LOG. The data returned by E9_GET914LOG can be used to call EZTaxWriteToLogV914 (E9_WRT_914_LOG) to output the information to the AFC log. EZTaxGetLogV914Count (E9_GET_914_CNT) can be used to get the record count in the log table.

When a transaction has been processed, the V914 tax log structure will contain the tax information generated by that transaction. In addition it will contain the charge and t/s pair used in the tax calculation. This can be valuable when processing bundled transactions, as the t/s pair will be the bundled product and the charge the % allocated to this t/s pair.

gcCOUNT: This input value specified the number of records to return from the log structure. The example code uses tax calculation API return values for the count. These return counts represent then number of records written to the AFC Log file and are dependent on configuration settings. Alternatly, the new API call, E9_GET_CST_CNT, return count may be used. Using the E9_GET_CST_CNT return count returns all available records from the log structure.

The value in eztax_log_v914.p_code (gcP_CODE) is the jcode representation of the jurisdiction.

E9 Version

RPG Procedure

E9_SETUP914LOG

RPG Copy

E9SET914LG

Format

wrt_answer = E9_SETUP914LOG (pSessionPtr);

Return Value

FALSE – (0) - Failed to retrieve the custom log data.

TRUE - (1) - Successfully retrieved the log information.

Parameter

pSessionPtr (*)

Remarks

This function is used after a call to initialize the AFC session and before any taxes are calculated. See the E9_GET914LOG Remarks for additional information.

EZTaxGetLogV914Count

E9 Version

RPG Procedure

E9_GET_914_CNT

RPG Copy

E9GT914CNT

Description

EZTaxGetLogV914 Count returns the number of records in the current V914 log table. See the Remarks section regarding the returned count.

Format

guZCount = E9_GET_914_CNT (pE9Session@);

Return Value

Returns the number of records in the current V914 log table.  Zero indicates that no records exist. See the Remarks section for additional information

Parameters

pE9Session@ *

Remarks

Get LogV914Count returns the number of taxes contained inthe EZTaxGetLogV914 structure. The log count includes no summarization. The log count always includes the non-billable tax count.

EZTaxGetNoTaxTrans

EZ Version

RPG Procedure

EZGET_NOTAX

RPG Copy

EZGTNOTAXT

Description

EZTaxGetNoTaxTrans retrieves the tax transaction data that was passed into the previously called procedure. There will be data in the structure only if the previously call procedure (like EZ_PCODE_EX) returns no tax data in the tax table. In other words, if there are no taxes to be returned for a specific jurisdiction for the transaction / service type, then the fields in the NoTaxTransaction Table will be populated.

Format

EZGET_NOTAX (pHandle: pNTp_CODE: pNTTRANS_TYPE: pNTSRV_TYPE: pNTATTR: pNTCHARGE: pNTCOMPANY_ID: pNTCUST_NO);

Return Value

pAnswer (10U 0) – Zero

Parameters

pHandle (10I 0) Input

pNTp_CODE (10U 0) Output pNTTRANS_TYPE (10I 0) Output

pNTSRV_TYPE (10I 0) Output

pNTATTR (10I 0) Output

pNTCHARGE (10P 4) Output pNTCOMPANY_ID (20A) Output

pNTCUST_NO (20A) Output

Remarks

The pNTATTR and pNTCOMPANY_ID are only currently available on Sales and Use transactions that return no taxes, since they are specific to this interface.

E9 Version

RPG Procedure

E9GET_NOTAX

RPG Copy

E9GTNOTAXT

Description

EZTaxGetNoTaxTrans retrieves the tax transaction data that was passed into the previously called procedure. There will be data in the structure only if the previously call procedure (like E9_PCODE_EX) returns no tax data in the tax table. In other words, if there are no taxes to be returned for a specific jurisdiction for the transaction / service type, then the fields in the NoTaxTransaction Table will be populated.

Format

EZGET_NOTAX (pSessionPtr: pNTp_CODE: pNTTRANS_TYPE: pNTSRV_TYPE: pNTATTR: pNTCHARGE: pNTCOMPANY_ID: pNTCUST_NO);

Return Value

pAnswer (10U 0) – Zero

Parameters

pHandle (10I 0) Input

pNTp_CODE (10U 0) Output pNTTRANS_TYPE (10I 0) Output

pNTSRV_TYPE (10I 0) Output

pNTATTR (10I 0) Output

pNTCHARGE (8F) Output

pNTCOMPANY_ID (20A) Output

pNTCUST_NO (20A) Output

Remarks

The pNTATTR and pNTCOMPANY_ID are only currently available on Sales and Use transactions that return no taxes, since they are specific to this interface.

EZTaxGetRates

EZ Version

RPG Procedure

EZ_GETRATES_EX

RPG Copy

EZGETRATES

Description

EZTaxGetRates utilizes a P-Code as input to produce the table of all taxes for that jurisdiction. It is suggested that the programmer should define the results tables as arrays of 200. This size should be passed into the API to assure there is no overflow of the storage area. If the number of taxes exceeds the passed in number, the program will return a code (-200) and the tables will contain the first database records up to the defined limit.

Format

EZ_GETRATES_EX (pHandle: pP_CODE: pARRY_SIZE: rSCOPE: rTAX_TYPE: rTAX_LEVEL: rOVR_DATE: rLVL_EXEMPT: rTAX_RATE: rMAX_BASE: rREPL_ST: rST_OVRD_TAX: rREPL_CO: rCO_OVRD_TAX: pERROR);

Return Value

pAnswer (10U 0) – Number of entries returned in the table if successful.

Otherwise, returns -1.

pError (10I 0) -- -200 -- pARRY_SIZE not large enough to contain all taxes or error returned from EZTaxGetRates.

Parameters 

pHandle (10I 0) Input 

pP_CODE (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Output 

rTAX_TYPE (10I 0) [pARRY_SIZE] Output 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Output 

rOVR_DATE (10I 0) [pARRY_SIZE] Output 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Output 

rTAX_RATE (11P 6) [pARRY_SIZE] Output 

rMAX_BASE (11P 0) [pARRY_SIZE] Output 

rREPL_ST (10I 0) [pARRY_SIZE] Output 

rST_OVRDTX (11P 6) [pARRY_SIZE] Output 

rREPL_CO (10I 0) [pARRY_SIZE] Output 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Output 

pERROR (10U 0) Output 

Remarks

Much of the returned data will be repeated because of different override dates, etc.

E9 Version

RPG Procedure

E9_GETRATES_EX

RPG Copy

E9GETRATES

Description

EZTaxGetRates utilizes a P-Code as input to produce the table of all taxes for that jurisdiction. It is suggested that the programmer should define the results tables as arrays of 200. This size should be passed into the API to assure there is no overflow of the storage area. If the number of taxes exceeds the passed in number, the program will return a code (-200) and the tables will contain the first database records up to the defined limit.

Format

E9_GETRATES_EX (pSessionPtr: pP_CODE: pARRY_SIZE: rSCOPE: rTAX_TYPE: rTAX_LEVEL: rOVR_DATE: rLVL_EXEMPT: rTAX_RATE: rMAX_BASE: rREPL_ST: rST_OVRD_TAX: rREPL_CO: rCO_OVRD_TAX: pERROR);

Return Value

pAnswer (10U 0) – Number of entries returned in the table if successful.

Otherwise, returns -1.

pError (10I 0) -- -200 -- pARRY_SIZE not large enough to contain all taxes or error returned from EZTaxGetRates.

Parameters

pSessionPtr (*) Input 

pP_CODE (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Output 

rTAX_TYPE (10I 0) [pARRY_SIZE] Output 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Output 

rOVR_DATE (10I 0) [pARRY_SIZE] Output 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Output 

rTAX_RATE (11P 6) [pARRY_SIZE] Output 

rMAX_BASE (11P 0) [pARRY_SIZE] Output 

rREPL_ST (10I 0) [pARRY_SIZE] Output 

rST_OVRDTX (11P 6) [pARRY_SIZE] Output 

rREPL_CO (10I 0) [pARRY_SIZE] Output 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Output 

pERROR (10U 0) Output 

Remarks

Much of the returned data will be repeated because of different override dates, etc.

EZTaxGetTaxCatV98

RPG Procedure

E9_GET_TAX_CAT

RPG Copy

E9GTTAXCAT

Description

EZTaxGetTaxCatV98 retrieves the tax category description for a specified tax code. Current use is in utilities reporting from the log, but users can also use this feature.

Format

E9_GET_TAX_CAT (pSessionPtr: pTaxCode: pRDesc);

Return Value

pAnswer (10U 0) – Zero

Parameters

pSessionPtr (*)

pTaxCode (10I 0)

pRDesc (50A)

Remarks

None

EZTaxGetTaxDescription

EZ Version

RPG Procedure

EZ_GET_TAX_DESC

RPG Copy

EZGTTAXDSC

Description

EZTaxGetTaxDescription retrieves the tax description for a specified tax code. Current use is in utilities reporting from the log, but users can also use this feature.

Format

EZ_GET_TAX_DESC (pHandle: pTaxCode: pRDesc);

Return Value

pAnswer (10U 0) – Zero

Parameters

pHandle (10I 0)

pTaxCode (10I 0)

pRDesc (50A)

Remarks

None

E9 Version

RPG Procedure

E9_GET_TAX_DESC

RPG Copy

E9GTTAXDSC

Description

EZTaxGetTaxDescription retrieves the tax description for a specified tax code. Current use is in utilities reporting from the log, but users can also use this feature.

Format

E9_GET_TAX_DESC (pSessionPtr: pTaxCode: pRDesc);

Return Value

pAnswer (10U 0) – Zero

Parameters

pSessionPtr (*)

pTaxCode (10I 0)

pRDesc (50A)

Remarks

None

EZTaxGetTSR

E9Version

RPG Procedure

E9_GET_TSR

RPG Copy

E9GETTSR

Description

EZTaxGetTSR retrieves an array of Transaction Service Report (TSR) records. These records contain Transaction Service Report data which is a superset of the data written to the Transaction Service Log.

Format

tsrZData@ = E9_GET_TSR(pE9Session@:nTsrAryCnt:bRtnTsrAry);

Return Value

If successful and bRtnTsrAry is set to TRUE (1), pointer to the allocated data structures. Otherwise, *NULL.

Parameters    

pE9Session@ *

D nTsrAryCnt S 10I 0 inz(0)

D bRtnTsrAry S 10I 0 inz(1)

Remarks

EZTaxGetTSR returns a pointer to an array of allocated data structures. nTsrAryCnt returns the number of data structures with valid data.  The data structures are deallocated using EZTaxClearTSR. Using EZTaxGetTSR without calling EZTaxClearTSR can lead to memory leaks.

If bRtnTsrAry is FALSE (0), the function flushes the TSR data to the TSR log file and clears the data from memory.

Note: The above declaration initializes this parameter to TRUE.

If bRtnTsrAry is TRUE (1), the function returns the TSR data as an array of data structures and does not clear the data. Once the returned data is processed and no longer needed, call application EZTaxClearTSR() to deallocate the data sturctures.

See the rtrZStruct data structure decloration in the E9_STRUCTS member of the COPYSRC file for the format of the returned data structures.

Report ID: The first field returned in the data structure is the Report Identifier. The values are as follows:

Report Invalid Region -1 

Report US And Territories 0 

Report Canada 1 

Report Foreign 2 

Report Unknown 3 

Report States And Territories 4 

Report Provinces And Territories 5

EZTaxGroupResults

EZVersion

RPG Procedure

EZ_GRP_RSLTS

RPG Copy

EZGRPRSLT

Description

EZTaxGroupResults sets the mode that AFC uses to group the returned taxes by. After calling this function, the results in the tax return table will be grouped as specified by the groupMode parameter.

Format

EZ_GRP_RSLTS (pHandle: pMode);

Return Value

pAnswer (10I 0)

TRUE (1) – Successful

FALSE (0) - Failed

Parameters

pHandle (10I 0)

pMode (10I 0)

Remarks

pMode: Value indicating how tax calculation results should be returned.  The options to group taxes by tax level are as following:

EZ_GP_SAME_LVL: Indicates that taxes at thesame level should be grouped together.

EZ_GP_CO_LCL: When using this option, AFC will group all state taxes into a single record, and county and local taxes will be grouped together into a separate record.

EZ_GP_STCO_LCL: State, county and local taxes will be grouped together.

The options to group sales taxes separately may be appended to a tax level option by using the bitwise OR operator (|). These options are:

EZ_GP_SALES: Sales taxes (tax type 1) and Use Taxes (tax type 49) will be grouped separately from other taxes.

EZ_GP_SALE_CAT: All taxes in the sales tax category will be grouped into a single record.

The DEFAULT, EZ_GP_DEFAULT, option may be used to disable tax grouping. These options are included in the EZtaxDefine.h header file.

Example: EZ_GRP_RSLTS (pHandle: %BitOr(EZ_GP_STCO_LCL: EZ_GP_SALES));

E9 Version

RPG Procedure

E9_GRP_RSLTS

RPG Copy

E9GRPRSLT

Description

EZTaxGroupResults sets the mode that AFC uses to group the returned taxes by. After calling this function, the results in the tax return table will be grouped as specified by the groupMode parameter.

Format

E9_GRP_RSLTS (pSessionPtr: pMode);

Return Value

pAnswer (10I 0)

TRUE (1)– Successful

FALSE (0) - Failed

Parameters

pSessionPtr (*)

pMode (10I 0)

Remarks

pMode: Value indicating how tax calculation results should be returned.  The options to group taxes by tax level are as following:

E9_GP_SAME_LVL: Indicates that taxes at thesame level should be grouped together.

E9_GP_CO_LCL: When using this option, AFC will group all state taxes into a single record, and county and local taxes will be grouped together into a separate record.

E9_GP_STCO_LCL: State, county and local taxes will be grouped together.

The options to group sales taxes separately may be appended to a tax level option by using the bitwise OR operator (|). These options are:

E9_GP_SALES: Sales taxes (tax type 1) and Use Taxes (tax type 49) will be grouped separately from other taxes.

E9_GP_SALE_CAT: All taxes in the sales tax category will be grouped into a single record.

The DEFAULT, E9_GP_DEFAULT, option may be used to disable tax grouping. These options are included in the EZtaxDefine.h header file.

Example: E9_GRP_RSLTS (pSessionPtr: %BitOr(E9_GP_STCO_LCL: E9_GP_SALES));

EZTaxInitDirEx

RPG Procedure

EZ_INITDIR_EX

RPG Copy

EZINITDIR

Description

EZInitDirEX reads AFC files and initializes the AFC system. Multiple calls may be made to set up completely independent sessions. This procedure accepts the filepaths and filenames of the control files that are normally listed in the FILELOCS.txt file. This enables the calling program to set up separate sessions for separate billing entities, and thus enable directing them to separate EZTAX.log files. It would also be recommended to keep the EZTAX.sta file separated. Any blank or null filenames will be retrieved from the FILELOCS.txt file. In addition to the other files in EZ_INIT_EX, the working directory can be set.

**Important Note**: You must terminate the string being passed with either a ‘blank’ or the ‘null character’.

Format

EZ_INITDIR_EX(pEZlogging:pEZdata:pEZidx:pEZdll: pEZTaxLog:pEZnpan:pEZstatus:pEZtemp: pEZlocation:pEZzip:pEZcust_key: pEZpcode:pEZjcode:pEZover: pEZwkdir);

Return Value

pHandle (10I 0)

Parameters

pEZlogging (10I 0)

TRUE – Logging is on.

FALSE – Logging is off.

pEZdata (512A)

pEZidx (512A)

pEZdll (512A)

pEZTaxLog (512A)

pEZnpan (512A)

pEZstatus (512A)

pEZtemp (512A)

pEZlocation (512A)

pEZzip (512A)

pEZcust_key (512A)

pEZpcode (512A)

pEZjcode (512A)

pEZover (512A)

pEZwkdir (512A)

Remarks

Example RPG code:

/* include the EZ_PROTO to get the prototype for the EZ_INIT_EX */ 
/copy copysrc,EZ_PROTO 
. 
. 
/* Strings should end with either a blank or null character .*/ 
pEZlogging = 1; 
pEZTaxLog = '/billsoft/working/EZTaxc1.LOG '; 
pEZstatus = '/billsoft/working/EZTaxc1.STA '; 
pEZdata = ' '; 
pEZidx = ' '; 
pEZdll = ' '; 
pEZnpan = ' '; 
pEZtemp = ' '; 
pEZlocation = ' '; 
pEZzip = ' '; 
pEZcust_key = ' '; 
pEZpcode = ' '; 
pEZjcode = ' '; 
pEZover = ' '; 
pEZwkdir = '/eztest '; 
pEZHandle = EZ_INIT_EX(pEZlogging:pEZdata:pEZidx: pEZdll:EZTaxLog:pEZnpan:pEZstatus: 
    pEZtemp:pEZlocation:EZzip:pEZcust_key: pEZpcode: pEZjcode: PEZover: pEZwkdir); 

EZTaxInitEx

RPG Procedure

EZ_INIT_EX

RPG Copy

EZINITEX

Description

EZInitEX reads AFC files and initializes the AFC system. Multiple calls may be made to set up completely independent sessions. This procedure accepts the filepaths and filenames of the control files that are normally listed in the FILELOCS.txt file. This enables the calling program to set up separate sessions for separate billing entities, and thus enable directing them to separate EZTAX.log files. It would also be recommended to keep the EZTAX.sta file separated. Any blank or null filenames will be retrieved from the FILELOCS.txt file.

**Important Note**: You must terminate the string being passed with either a ‘blank’ or the ‘null character’.

Format

EZ_INIT_EX(pEZlogging:pEZdata:pEZidx:pEZdll: pEZTaxLog:pEZnpan:pEZstatus:pEZtemp: pEZlocation:pEZzip:pEZcust_key: pEZpcode:pEZjcode:PEZover);

Return Value

pHandle (10I 0)

Parameters

pEZlogging (10I 0)

TRUE – Logging is on.

FALSE – Logging is off.

pEZdata (512A)

pEZidx (512A)

pEZdll (512A)

pEZTaxLog (512A)

pEZnpan (512A)

pEZstatus (512A)

pEZtemp (512A)

pEZlocation (512A)

pEZzip (512A)

pEZcust_key (512A)

pEZpcode (512A)

pEZjcode (512A)

pEZover (512A)

Remarks

Example RPG code:

/* include the EZ_PROTO to get the prototype for the EZ_INIT_EX */ 
/copy copysrc,EZ_PROTO 
. 
. 
/* Strings should end with either a blank or null character .*/ 
pEZlogging = 1; 
pEZTaxLog = '/billsoft/working/EZTaxc1.LOG '; 
pEZstatus = '/billsoft/working/EZTaxc1.STA '; 
pEZdata = ' '; 
pEZidx = ' '; 
pEZdll = ' '; 
pEZnpan = ' '; 
pEZtemp = ' '; 
pEZlocation = ' '; 
pEZzip = ' '; 
pEZcust_key = ' '; 
pEZpcode = ' '; 
pEZjcode = ' '; 
pEZover = ' '; 
pEZHandle = EZ_INIT_EX(pEZlogging:pEZdata:pEZidx: pEZdll:EZTaxLog:pEZnpan:pEZstatus: 
    pEZtemp:pEZlocation:EZzip:pEZcust_key: pEZpcode:pEZjcode:PEZover); 

EZTaxInitV98

RPG Procedure

E9_INITV98_EX

RPG Copy

E9INITV98

Description

EZInitV98Ex reads AFC files and initializes the AFC system. Multiple sessions can be initialized by successive calls to E9_INITV98_EX. This procedure accepts the filepaths and filenames of the control files that are normally listed in the FILELOCS.txt file. This ability enables the calling program to set up separate sessions for separate billing entities, and enable directing tax records to separate EZTAX.log files. Null or incluplete paths specified for these parameters will result in use of FILELOCS.txt file entires.

To initialize multiple, simultanious sessions, a separate EZTax.log and EZTax.sta file must be specified for each session. This function is designed to be thread-safe - other sessions on other threads can be running AFC calculations when this function is called. Use of separate EZTax.log and EZTax.sta files is required even if the sessions are running in separate threads.

In addition to the other files specified using the E9_INITV98_EX call, the working directory can be set. For the working directory, the parameter must either be NULL pointer or provide a valid path name.

Be sure to call E9_EXITSS_EX for each EZTaxSession object created by E9_INITV98_EX. Other Exit APIs will not close sessions created by E9_INITV98_EX. Failure to call E9_EXITSS_EX will result in memory leaks.

**Important Note**: All paths must be terminated by a null character. This can be done either by using %STR or by contacinating a hex ‘00’ character to the end of the path name. Improperly terminating the name may result in unpredictable beharior. A space or null character as the first character in a path is an error.

Format

E9_INITV98_EX(guZSessionPtr:piZlogging:pipZdata: pipZidx:pipZdll:pipZTaxLog:pipZnpan:pipZstatus:pipZtemp: pipZlocation:pipZzip:pipZcust_key:pipZpcode:pipZjcode: pipZover:pipZWkDir);

Return Value

pAnswer (10U 0)

-1: Session initialization failed.

-2: Working directory missing or invalid.

-3: Tax table allocation failed.

-4: Invalid first character found in a path string.

Parameters

guZSessionPtr (*)

piZlogging (10I 0)

TRUE (1) – Logging is on.

FALSE (0) – Logging is off.

pipZdata (*) 

pipZidx (*) 

pipZdll (*) 

pipZTaxLog (*) 

pipZnpan (*) 

pipZstatus (*) 

pipZtemp (*) 

pipZlocation (*) 

pipZzip (*) 

pipZcust _key (*) 

pipZpcode (*) 

pipZjcode (*) 

pipZover (*) 

pipZWkDir (*) 

Remarks

Example RPG code:

/* include the E9_PROTO to get the prototype for the E9_INITV98_EX */ 
/COPY COPYSRC,E9_PROTO 
. 
. 
. 
/* Strings must end with a null character .*/ 
// The size value must be larger than the number of characters in the name. 
// The single space characters below will be overwritten with the null character. 
%str(pipZTaxLog:32) = '/home/logs/prod/T10336PLV9.LOG'; 
%str(pipZstatus:32) = '/home/logs/prod/T10336PLV9.STA'; 
piZLogging = 1; 
// The blank will be replaced by a null charcter 
%str(pipZdata:1) = ' '; 
%str(pipZidx:1) = ' '; 
%str(pipZdll:1) = ' '; 
%str(pipZnpan:1) = ' '; 
%str(pipZtemp:1) = ' '; 
%str(pipZlocation:1) = ' '; 
%str(pipZzip:1) = ' '; 
%str(pipZcust_key:1) = ' '; 
%str(pipZpcode:1) = ' '; 
%str(pipZjcode:1) = ' '; 
%str(pipZover:1) = ' '; 
%str(pipZWkDir:1) = ' '; 
pAnswer = E9_INITV98_EX(guZSessionPtr:piZlogging:pipZdata:pipZidx: pipZdll:pipZTaxLog:pipZnpan:
    pipZstatus:pipZtemp:pipZlocation: pipZzip:pipZcust_key:pipZpcode:pipZjcode:pipZover:pipZWkDir); 
if pAnswer = -1; 
wMsg = 'E9_INITV98_EX: Session Initialization Failed.'; 
endif; 
if pAnswer = -2; 
wMsg = 'E9_INITV98_EX: Working Directory missing or invalid.'; 
endif; 
if pAnswer = -3; 
wMsg = 'E9_INITV98_EX: Tax Table Allocation Failed.'; 
endif; 
if pAnswer = -4; 
wMsg = 'E9_INITV98_EX: Invalid first character in a path.' 
except initmsgw; 
wMsg = 'The first character cannot be null or blank.' 
except initmsgw; 
wMsg = 'Supply either a NULL pointer or a valid path.' 
endif; 
if pAnswer < 0; 
except ezmsg; 
*InLR = *on; 
return; 
endif; 
. 
. 
. 

EZTaxJCodeEx

EZ Version

RPG Procedure

EZ_JCODE_EX

RPG Copy

EZJCODEEX

Description

EZTaxJCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_JCODE_EX (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_JCODE_EX

RPG Copy

E9JCODEEX

Description

EZTaxJCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

E9_JCODE_EX (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pSession (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxJtoPCodeEx

EZ Version

RPG Procedure

EZ_JTOP_EX

RPG Copy

EZJTOPEX

Description

EZTaxJtoPCodeEx returns a PCode that is cross-referenced to the specified JCode.

Format

EZ_JTOP_EX (pHandle: pJCode: pError);

Return Value

pPCode (10U 0)

Parameters

pHandle (10I 0)

pJCode (10U 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_JTOP_EX

RPG Copy

E9JTOPEX

Description

EZTaxJtoPCodeEx returns a PCode that is cross-referenced to the specified JCode.

Format

E9_JTOP_EX (pSessionPtr: pJCode: pError);

Return Value

pPCode(10U 0)

Parameters

pSessionPtr (*)

pJCode (10U 0)

pError (10I 0)

Remarks

None

EZTaxJTTypeEx

E9 Version

RPG Procedure

E9_JTTYPEEX

RPG Copy

E9JTTYPEEX

Description

E9_JTTYPEEX Returns transaction type for a given pair of jurisdiction codes indicating whether the call is interstate or intrastate. Both jurisdictions must be within the same country. The first jurisdiction is the origination and the second is the termination. Returns 9_INV_XACTION when countries differ or an error occurs.

Format

E9_JTTYPEEX (pSessionPtr: JCode1: JCode2: Error);

Return Value

TransType (5U 0)

Parameters

pSessionPtr (* VALUE)

OrigJCode (10U 0 VALUE)

TermJCode (10U 0 VALUE)

Error (10I 0)

Remarks

There are three constants defined for use with E9_JTTYPEEX

D E9_INV_XACTION C -1

D E9_INTERSTATE C 1

D E9_INTRASTATE C 2 

EZTaxMaxTaxCount

RPG Procedure

EZ_MAXTAXCNT

RPG Copy

EZMAXTAXCT

Description

EZTaxMaxTaxCount returns the maximum number of taxes that one transaction can generate. You can use the returned number to allocate space if you desire to be very efficient on your tax processing.

Format

pMaxTaxCnt = EZ_MAXTAXCNT();

Return Value

pMaxTaxCnt (10I 0)

pMaxTaxCnt - Will be a number greater than zero. At the time of the addition of this function it was set to 20.

Parameters

There are no parameters for this API.

Remarks

None

EZTaxNPANEx

EZ Version

RPG Procedure

EZ_NPAN_EX

RPG Copy

EZNPANEX

Description

EZTaxNPANEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

EZ_NPAN_EX (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_NPAN_EX

RPG Copy

E9NPANEX

Description

EZTaxNPANEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

E9_NPAN_EX (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxNextAddressEx

EZ Version

RPG Procedure

EZ_NXTADDR_EX

RPG Copy

EZNXTADDRX

Description

EZTaxNextAddressEx returns the next sequential record containing alternative address information for the specified JCode. This function can be used to obtain additional addresses for a specified jurisdiction when EZTaxGetAddressEx returns MORE, indication additional information is available. The majority of jurisdictions have more than one set of address/zip code data associated with them.

Format

EZ_NXTADDR_EX (pHandle: pJLevel: pLocality: pCounty: pState: pCountry: pZipBegin: pZipBeginP4: pZipEnd: pZipEndP4: pError);

Return Value

pAnswer (10U 0)

FOUND – If Last address found.

MORE – If found and more available.

NOT_FOUND

Parameters

pHandle (10I 0)

pJLevel (10I 0)

pLocality (26A)

pCounty (26A)

pState (3A)

pCountry (4A)

pZipBegin (6A)

pZipBeginP4 (5A)

pZipEnd(6A)

pZipEndP4 (5A)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_NXTADDR_EX

RPG Copy

E9NXTADDRX

Description

EZTaxNextAddressEx returns the next sequential record containing alternative address information for the specified JCode. This function can be used to obtain additional addresses for a specified jurisdiction when EZTaxGetAddressEx returns MORE, indication additional information is available. The majority of jurisdictions have more than one set of address/zip code data associated with them.

Format

E9_NXTADDR_EX (pSessionPtr: pJLevel: pLocality: pCounty: pState: pCountry: pZipBegin: pZipBeginP4: pZipEnd: pZipEndP4: pError);

Return Value

pAnswer (10U 0)

FOUND – If Last address found.

MORE – If found and more available.

NOT_FOUND

Parameters

pSessionPtr (*)

pJLevel (10I 0)

pLocality (26A)

pCounty (26A)

pState (3A)

pCountry (4A)

pZipBegin (6A)

pZipBeginP4 (5A)

pZipEnd(6A)

pZipEndP4 (5A)

pError (10I 0)

Remarks

None

EZTaxNextCustomerEx

EZ Version

RPG Procedure

EZ_NXTCUST_EX

RPG Copy

EZNXTCUSTX

Description

EZTaxNextCustomerEx puts the summarized taxes calculated in the customer table into a customer tax table that the client can reference AND clears out the table for the next Customer. This API is only needed in Invoice Mode.

Format

EZ_NXT_CUST_EX (pHandle: pRCJ_CODE: pRCTAX_TYPE: pRCTAX_LEVEL: pRCCALC_TYPE: pRCRATE: pRCTAX_AMOUNT: pRCTAX_DESC: pRCTV_SURCHARGE: pRCLINES: pRCLOCATIONS: pRCMAX_BASE: pRCEXCESS_TAX: pRCTOTAL_CHARGE: pRCEXEMPT_SALE: pRCMINUTES);

Return Value

pTaxCount (10I 0)

POSITIVE – All taxes have been returned.

-1 - Error occurred.

-100 - More taxes are waiting to be retrieved and arrays are full.

Parameters

pHANDLE * VALUE

pRCJ_CODE 10U 0 DIM(PCZ_ARY_MAX) 

pRCTAX_TYPE 10I 0 DIM(PCZ_ARY_MAX) 

pRCTAX_LEVEL 10I 0 DIM(PCZ_ARY_MAX) 

pRCCALC_TYPE 10I 0 DIM(PCZ_ARY_MAX) 

pRCRATE 11P 6 DIM(PCZ_ARY_MAX) 

pRCTAX_AMOUNT 8F DIM(PCZ_ARY_MAX) 

pRCTAX_DESC 100 DIM(PCZ_ARY_MAX) 

pRCTV_SURCHARGE 10I 0 DIM(PCZ_ARY_MAX) 

pRCLINES 10I 0 DIM(PCZ_ARY_MAX) 

pRCLOCATIONS 10I 0 DIM(PCZ_ARY_MAX) 

pRCMAX_BASE 16P 6 DIM(PCZ_ARY_MAX) 

pRCEXCESS_TAX 18P 6 DIM(PCZ_ARY_MAX) 

pRCTOTAL_CHARGE 8F DIM(PCZ_ARY_MAX) 

pRCEXEMPT_SALE 8F DIM(PCZ_ARY_MAX) 

pRCMINUTES 25P 4 DIM(PCZ_ARY_MAX) 

Remarks

None

E9 Version

RPG Procedure

E9_NXTCUST_EX

RPG Copy

E9NXTCUSTX

Description

EZTaxNextCustomerEx puts the summarized taxes calculated in the customer table into a customer tax table that the client can reference AND clears out the table for the next Customer. This API is only needed in Invoice Mode.

Format

E9_NXT_CUST_EX (pSESSIONPTR: pRCJ_CODE: pRCTAX_TYPE: pRCTAX_LEVEL: pRCCALC_TYPE: pRCRATE: pRCTAX_AMOUNT: pRCTAX_DESC: pRCTV_SURCHARGE: pRCLINES: pRCLOCATIONS: pRCMAX_BASE: pRCEXCESS_TAX: pRCTOTAL_CHARGE: pRCEXEMPT_SALE: pRCMINUTES: pRCBILLABLE: pRCCOMPLIANCE: pRCSURCHG_FLAG: pRMIN_BASE: pRTAX_CAT_ID: pRTAX_CAT_DESC);

Return Value

pTaxCount (10I 0)

POSITIVE – All taxes have been returned.

-1 - Error occurred.

-100 - More taxes are waiting to be retrieved and arrays are full.

Parameters

pSESSIONPTR * VALUE

pRCJ_CODE 10U 0 DIM(PCZ_ARY_MAX)

pRCTAX_TYPE 10I 0 DIM(PCZ_ARY_MAX)

pRCTAX_LEVEL 10I 0 DIM(PCZ_ARY_MAX)

pRCCALC_TYPE 10I 0 DIM(PCZ_ARY_MAX)

pRCRATE 11P 6 DIM(PCZ_ARY_MAX)

pRCTAX_AMOUNT 8F DIM(PCZ_ARY_MAX)

pRCTAX_DESC 100 DIM(PCZ_ARY_MAX)

pRCTV_SURCHARGE 10I 0 DIM(PCZ_ARY_MAX)

pRCLINES 10I 0 DIM(PCZ_ARY_MAX)

pRCLOCATIONS 10I 0 DIM(PCZ_ARY_MAX)

pRCMAX_BASE 16P 6 DIM(PCZ_ARY_MAX)

pRCEXCESS_TAX 18P 6 DIM(PCZ_ARY_MAX)

pRCTOTAL_CHARGE 8F DIM(PCZ_ARY_MAX)

pRCEXEMPT_SALE 8F DIM(PCZ_ARY_MAX)

pRCMINUTES 25P 4 DIM(PCZ_ARY_MAX)

pRCBILLABLE 10I 0 DIM(PCZ_ARY_MAX)

pRCCOMPLIANCE 10I 0 DIM(PCZ_ARY_MAX)

pRCSURCHG_FLAG 10I 0 DIM(PCZ_ARY_MAX)

pRMIN_BASE 8F DIM(PCZ_ARY_MAX)

pRTAX_CAT_ID 10I 0 DIM(PCZ_ARY_MAX)

pRTAX_CAT_DESC 100 DIM(PCZ_ARY_MAX)

Remarks

None

EZTaxNTTypeEx

E9 Version

RPG Procedure

E9_NTTYPEEX

RPG Copy

E9NTTYPEEX

Description

E9_PTTYPEEX returns transaction type for a given pair of jurisdiction codes indicating whether the call is interstate or intrastate. Both jurisdictions must be within the same country. The first jurisdiction is the origination and the second is the termination. Returns 9_INV_XACTION when countries differ or an error occurs.

Format

E9_NTTYPEEX (pSessionPtr: JCode1: JCode2: Error);

Return Value

TransType (5U 0)

Parameters

pSessionPtr (* VALUE)

OrigJCode (10U 0 VALUE)

TermJCode (10U 0 VALUE)

Error (10I 0)

Remarks

There are three constants defined for use with E9_JTTYPEEX

D E9_INV_XACTION C -1

D E9_INTERSTATE C 1

D E9_INTRASTATE C 2

EZTaxNtoJCodeEx

EZ Version

RPG Procedure

EZ_NTOJ_EX

RPG Copy

EZNTOJEX

Description

EZTaxNtoJCodeEx returns a JCode that is cross-referenced to the specified NPANXX.

Format

EZ_NTOJ_EX (pHandle: pNPANXX: pError);

Return Value

pJCode (10U 0)

Parameters

pHandle (10I 0)

pNPANXX (10U 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_NTOJ_EX

RPG Copy

E9NTOJEX

Description

EZTaxNtoJCodeEx returns a JCode that is cross-referenced to the specified NPANXX.

Format

E9_NTOJ_EX (pSessionPtr: pNPANXX: pError);

Return Value

pJCode (10U 0)

Parameters

pSessionPtr (*)

pNPANXX (10U 0)

pError (10I 0)

Remarks

None

EZTaxOldOvrJCodeEx

EZ Version

RPG Procedure

EZ_OLDOVRJ_EX

RPG Copy

EZOLDOVRJ

Description

EZTaxOldOvrJCodeEx specifies an override for a specific tax, accepting the old override format. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the AFC db system.

Format

pAnswer = EZTaxOldOvrJCodeEx(hdl, j_code, scope, type, level,level_exempt, limit, date, tax, prev_tax, max_base, excess_tax, st_ovrd_tax, co_ovrd_tax, repl_st, repl_co)

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pHandle (10I 0) Input 

pJ_CODE (10U 0) Input 

ooSCOPE (10U 0) Input

ooTAX_TYPE (10U 0) Input

ooTAX_LEVEL (10U 0) Input

ooLVL_EXMPT (10U 0) Input 

ooLIMIT (10U 0) Input 

ooOVR_DATE (10U 0) Input 

ooTAX_RATE (11P 6) Input 

ooPREV_TAX (11P 6) Input 

ooMAX_BASE (12P 0) Input 

ooEXCESS_TAX (11P 6) Input 

ooST_OVRDTX (11P 6) Input 

ooCO_OVRDTX (11P 6) Input 

ooREPL_ST (10U 0) Input

ooREPL_CO (10U 0) Input 

Remarks

**Please Note** The Tax Old Override will override the specific Tax_Type, Tax_Level, and date entered on the transaction.

E9 Version

RPG Procedure

E9_OLDOVRJ_EX

RPG Copy

E9OLDOVRJ

Description

EZTaxOldOvrJCodeEx specifies an override for a specific tax, accepting the old override format. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the EZtax db system.

Format

pAnswer = E9_OLDOVRJ_EX (pSessionPtr, pJCode, pScope, pTaxType, pTaxLevel,pLevelExempt, pLimit, pOverrideDate, pTaxRage, pPreviousTax, pMaxBase, pExcessTax, pStateOverrideTax, pCountyOverrideTax, pReplStateFlag, pReplCountyFlag)

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 --OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pSessionPtr (*) Input 

pJ_CODE (10U 0) Input 

ooSCOPE (10U 0) Input 

ooTAX_TYPE (10U 0) Input 

ooTAX_LEVEL (10U 0) Input 

ooLVL_EXMPT (10U 0) Input 

ooLIMIT (10U 0) Input 

ooOVR_DATE (10U 0) Input 

ooTAX_RATE (11P 6) Input 

ooPREV_TAX (11P 6) Input 

ooMAX_BASE (12P 0) Input 

ooEXCESS_TAX (11P 6) Input 

ooST_OVRDTX (11P 6) Input 

ooCO_OVRDTX (11P 6) Input 

ooREPL_ST (10U 0) Input 

ooREPL_CO (10U 0) Input 

Remarks

**Please Note** The Tax Old Override will override the specific Tax_Type, Tax_Level, and date entered on the transaction.

EZTaxOvrJCodeEx

EZ Version

RPG Procedure

EZ_OVRJCODE_EX

RPG Copy

EZOVRJCODE

Description

EZTaxOvrJCodeEx specifies an override for a specific tax. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the AFC db system.

Format

pAnswer = EZ_OVRJCode_EX(pHandle: JCode: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pHandle (10I 0) Input 

pJ_CODE (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I 0) [pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

pERROR (10I 0) Output 

Remarks

**Please Note** The Tax Override functions in EZtax only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

E9 Version

RPG Procedure

E9_OVRJCODE_EX

RPG Copy

E9OVRJCODE

Description

EZTaxOvrJCodeEx specifies an override for a specific tax. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the AFC db system.

Format

pAnswer = E9_OVRJCode_EX(pSessionPtr: JCode: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pSessionPtr (*) Input

pJ_CODE (10U 0) Input

pARRY_SIZE (10I 0) Input

rSCOPE (10I 0) [pARRY_SIZE] Input

rTAX_TYPE (10I 0) [pARRY_SIZE] Input

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input

rOVR_DATE (10I/U 0)[pARRY_SIZE] Input

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input

rTAX_RATE (11P 6) [pARRY_SIZE] Input

rMAX_BASE (11P 0) [pARRY_SIZE] Input

rREPL_ST (10I 0) [pARRY_SIZE] Input

rST_OVRDTX (11P 6) [pARRY_SIZE] Input

rREPL_CO (10I 0) [pARRY_SIZE] Input

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input

pERROR (10I 0) Output

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

EZTaxOvrNPANEx

EZ Version

RPG Procedure

EZ_OVRNPAN_EX

RPG Copy

EZOVRNPNEX

Description

EZ_OVRNPAN_Ex specifies an override for a specific tax(One scope,tax_level,tax_type combination) for the specified NPANXX. It takes a NPANXX and a set of arrays matching the override structure as input and inserts a tax override into the AFC temporary db for that session.

Format

pAnswer = EZ_OVRNPAN_EX(pHandle: pNPANXX: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pHandle (10I 0) Input 

pNPANXX (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I 0) [pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

pERROR (10I 0) Output 

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

E9 Version

RPG Procedure

E9_OVRNPAN_EX

RPG Copy

E9OVRNPNEX

Description

EZTaxOvrNPANEx specifies an override for a specific tax(One scope,tax_level,tax_type combination) for the specified NPANXX. It takes a NPANXX and a set of arrays matching the override structure as input and inserts a tax override into the AFC temporary db for that session.

Format

pAnswer = E9_OVRNPAN_EX(pSessionPtr: pNPANXX: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pSessionPtr (*) Input 

pNPANXX (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I/U 0)[pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

pERROR (10I 0) Output 

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

EZTaxOvrPCodeEx

EZ Version

RPG Procedure

EZ_OVRPCODE_EX

RPG Copy

EZOVRPCODE

Description

EZTaxOvrPCodeEx specifies an override for a specific tax. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the AFC db system.

Format

pAnswer = EZ_OVRPCode_EX(pHandle: PCode: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pHandle (10I 0) Input 

pP_CODE (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I 0) [pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

pERROR (10I 0) Output 

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

E9 Version

RPG Procedure

E9_OVRPCODE_EX

RPG Copy

E9OVRPCODE

Description

EZTaxOvrPCodeEx specifies an override for a specific tax. Tax Jurisdiction information is passed via jurisdiction code. It takes a J_Code and an override structure as input and inserts a tax override into the AFC db system.

Format

pAnswer = E9_OVRPCode_EX(pSessionPtr: PCode: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pSessionPtr (*) Input 

pP_CODE (10U 0) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I/U 0)[pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

pERROR (10I 0) Output 

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

EZTaxOvrZipEx

EZ Version

RPG Procedure

EZ_OVRZIP_EX

RPG Copy

EZOVRZIPEX

Description

EZ_OVRZIP_EX specifies an override for a specific tax. Tax jurisdiction information is passed via zip code and address. It takes zip code plus 4 and address information, and a set of arrays matching the override structure as input and inserts a tax override into the AFC temporary db for that session.

Format

pAnswer = EZ_OVRZIP_EX (pHandle: pEZFromZip:pEZFromZipP4: pEZFromCountry: pEZFromState: pEZFromCounty: pEZFromLocal: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pHandle (10I 0) Input 

pzip_code (6A) Input 

pzip_p4 (5A) Input 

pcountry_ISO (4A) Input 

pstate_abv (3A) Input 

pcounty (25A) Input 

plocality (26A) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I 0) [pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

 

pERROR (10I 0) Output

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

E9 Version

RPG Procedure

E9_OVRZIP_EX

RPG Copy

E9OVRZIPEX

Description

E9_OVRZIP_EX specifies an override for a specific tax. Tax jurisdiction information is passed via zip code and address. It takes zip code plus 4 and address information, and a set of arrays matching the override structure as input and inserts a tax override into the AFC temporary db for that session.

Format

pAnswer = E9_OVRZIP_EX (pSessionPtr: pEZFromZip:pEZFromZipP4: pEZFromCountry: pEZFromState: pEZFromCounty: pEZFromLocal: taxesCnt: r_scope[200]: r_type[200]: r_level[200]: r_overrideDate[200]: r_levelExempt[200]: r_tax[200]: r_max_base[200]: r_repl_st[200]: r_st_ovrd_tax[200]: r_repl_co[200]: r_co_ovrd_tax[200]: pError);

Return Value

pAnswer (10U 0) –

1 = True = Override worked

0 = False = Override failed

pError (10I 0) --

-200 -- pARRY_SIZE not large enough to contain all taxes.

-201 --OVERRIDE_TAXES_TABLE_CNT_NOT_ONE_OR_MORE

-202 -- OVERRIDE_INPUT_LARGER_THAN_DEFLT_ARRY_SIZE

-203 -- OVERRIDE_CONTAINS_DUPLICATE_BRACKET_IN_RATES

-204 -- MORE_THAN_ONE_TAX_STRUCT_PASSED_TO_OVERRIDE

Parameters

pSessionPtr (*) Input 

pzip_code (6A) Input 

pzip_p4 (5A) Input 

pcountry_ISO (4A) Input 

pstate_abv (3A) Input 

pcounty (25A) Input 

plocality (26A) Input 

pARRY_SIZE (10I 0) Input 

rSCOPE (10I 0) [pARRY_SIZE] Input 

rTAX_TYPE (10I 0) [pARRY_SIZE] Input 

rTAX_LEVEL (10I 0) [pARRY_SIZE] Input 

rOVR_DATE (10I/U 0)[pARRY_SIZE] Input 

rLVL_EXMPT (10I 0) [pARRY_SIZE] Input 

rTAX_RATE (11P 6) [pARRY_SIZE] Input 

rMAX_BASE (11P 0) [pARRY_SIZE] Input 

rREPL_ST (10I 0) [pARRY_SIZE] Input 

rST_OVRDTX (11P 6) [pARRY_SIZE] Input 

rREPL_CO (10I 0) [pARRY_SIZE] Input 

rCO_OVRDTX (11P 6) [pARRY_SIZE] Input 

pERROR (10I 0) Output 

Remarks

**Please Note** The Tax Override functions in AFC only accept one tax scope, tax level, tax type combination at a time. The net result will be the override of ONLY the first tax.

EZTaxPCodeEx

EZ Version

RPG Procedure

EZ_PCODE_EX

RPG Copy

EZPCODEEX

Description

EZTaxPCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_PCODE_EX (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PCODE_EX

RPG Copy

E9PCODEEX

Description

EZTaxPCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

E9_PCODE_EX (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxPrivateLine

EZ Version

RPG Procedure

EZ_PRVLINE_EX

RPG Copy

EZPRVLINE

Description

EZTaxPrivateLine accepts a transaction in the same manner as EZ_PCODE_EX except that it accepts PointA and PointZ as pcodes and a split percentage. It performs the taxation based on the percentage to apply to each jurisdiction and returns the appropriate tax calculations. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports.

Format

EZ_ PRVLINE_EX

(pHandle: pBTN_PCode: pPointA_PCode: pPointZ_PCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline: pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pPointA_PCode (10U 0)

pPointZ_PCode (10U 0)

pSplit (10P 6)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

When both return and error code are 0, no taxes were found and there is no error.

E9 Version

RPG Procedure

E9_ PRVLINE_EX

RPG Copy

E9PRVLINE

Description

EZTaxPrivateLine accepts a transaction in the same manner as EZ_PCODE_EX except that it accepts PointA and PointZ as pcodes and a split percentage. It performs the taxation based on the percentage to apply to each jurisdiction and returns the appropriate tax calculations. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports.

Format

E9_ PRVLINE_EX (pSessionPtr: pPointA_PCode: pPointZ_PCode: pSplit: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pPointA_PCode (10U 0) 

pPointZ_PCode (10U 0) 

pSplit (10P 6) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

When both return and error code are 0, no taxes were found and there is no error.

EZTaxProRateJCodeEx

EZ Version

RPG Procedure

EZ_PRO_JCODE_EX

RPG Copy

EZPRRTJCDX

Description

EZTaxProRateJCodeEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_PRO_JCODE_EX (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PRO_JCODE_EX

RPG Copy

E9PRRTJCDX

Description

EZTaxProRateJCodeEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

E9_PRO_JCODE_EX (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_JCode (10U 0) 

pOrig_JCode (10U 0) 

pTerm_JCode (10U 0) 

 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxProRateNPANEx

EZ Version

RPG Procedure

EZ_PRO_NPAN

RPG Copy

EZPRRTNPNX

Description

EZTaxProRateNPANEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

EZ_PRO_NPAN (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PRO_NPAN

RPG Copy

E9PRRTNPNX

Description

EZTaxProRateNPANEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANXXs.

Format

E9_PRO_NPAN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxProRatePCodeEx

EZ Version

RPG Procedure

EZ_PRO_PCODE

RPG Copy

EZPRRTPCDX

Description

EZTaxProRatePCodeEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_PRO_PCODE (pHandle: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data): (Generic returned tax info): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCode (10U 0)

pOrig_PCode (10U 0)

pTerm_PCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PRO_PCODE

RPG Copy

E9PRRTPCDX

Description

EZTaxProRatePCodeEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

E9_PRO_PCODE (pSessionPtr: pBTN_PCode: pOrig_PCode: pTerm_PCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pBTN_PCode (10U 0) 

pOrig_PCode (10U 0) 

pTerm_PCode (10U 0) 

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

 

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxProRateThisJCodeEx

EZ Version

RPG Procedure

EZ_PRO_THS_J

RPG Copy

EZPRTTJCDX

Description

EZTaxProRateThisJCodeEx accepts transaction data and performs appropriate tax calculations using a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports using the specified JCode.

Format

EZ_PRO_THS_J (pHandle: pJCode: (Generic transaction data): (Generic returned tax info): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pJCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PRO_THS_J

RPG Copy

E9PRTTJCDX

Description

EZTaxProRateThisJCodeEx accepts transaction data and performs appropriate tax calculations using a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports using the specified JCode.

Format

E9_PRO_THS_J (pSessionPtr: pJCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pJCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxProRateThisPCodeEx

EZ Version

RPG Procedure

EZ_PRO_THS_P

RPG Copy

EZPRTTPCDX

Description

EZTaxProRateThisPCodeEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports using the specified PCode.

Format

EZ_PRO_THS_P (pHandle: pPCode: (Generic transaction data): (Generic returned tax info): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pPCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PRO_THS_P

RPG Copy

E9PRTTPCDX

Description

EZTaxProRateThisPCodeEx accepts transaction data and performs appropriate tax calculations with a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports using the specified PCode.

Format

E9_PRO_THS_P (pSessionPtr: pPCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pPCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxProRateZipEx

EZ Version

RPG Procedure

EZ_PRO_ZIP

RPG Copy

EZPRRTZIPX

Description

EZTaxProRateZipEx accepts transaction data and performs appropriate tax calculations using a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The tax jurisdiction is specified using address information identical to EZTaxZipEx.

Format

EZ_PRO_ZIP (pHandle: pZipCode: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZipCode (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PRO_ZIP

RPG Copy

E9PRRTZIPX

Description

EZTaxProRateZipEx accepts transaction data and performs appropriate tax calculations using a prorated percent. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The tax jurisdiction is specified using address information identical to EZTaxZipEx.

Format

E9_PRO_ZIP (pSessionPtr: pZipCode: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pPercent: pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZipCode (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pPercent (12P 6)

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxPtoFipsEx

EZ Version

RPG Procedure

EZ_PTOF_EX

RPG Copy

EZPTOFEX

Description

EZTaxPtoFipsEx returns a FIPS code that is cross-referenced to the specified PCode.

Format

EZ_PTOF_EX (pHandle: pPCode: pError);

Return Value

pFips (11A)

Parameters

pHandle (10I 0)

pPCode (10U 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PTOF_EX

RPG Copy

E9PTOFEX

Description

EZTaxPtoFipsEx returns a FIPS code that is cross-referenced to the specified PCode.

Format

E9_PTOF_EX (pSessionPtr: pPCode: pError);

Return Value

pFips (11A)

Parameters

pSessionPtr (*)

pPCode (10U 0)

pError (10I 0)

Remarks

None

EZTaxPtoJCodeEx

EZ Version

RPG Procedure

EZ_PTOJ_EX

RPG Copy

EZPTOJEX

Description

EZTaxPtoJCodeEx returns a JCode that is cross-referenced to the specified PCode.

Format

EZ_PTOJ_EX (pHandle: pPCode: pError);

Return Value

pJCode (10U 0)

Parameters

pHandle (10I 0)

pPCode (10U 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_PTOJ_EX

RPG Copy

E9PTOJEX

Description

EZTaxPtoJCodeEx returns a JCode that is cross-referenced to the specified PCode.

Format

E9_PTOJ_EX (pSessionPtr: pPCode: pError);

Return Value

pJCode (10U 0)

Parameters

pSessionPtr (*)

pPCode (10U 0)

pError (10I 0)

Remarks

None

EZTaxPTTypeEx

E9 Version

RPG Procedure

E9_PTTYPEEX

RPG Copy

E9PTTYPEEX

Description

E9_PTTYPEEX returns transaction type for a given pair of jurisdiction codes indicating whether the call is interstate or intrastate. Both jurisdictions must be within the same country. The first jurisdiction is the origination and the second is the termination. Returns 9_INV_XACTION when countries differ or an error occurs.

Format

E9_PTTYPEEX (pSessionPtr: PCode1: PCode2: Error);

Return Value

TransType (5U 0)

Parameters

pSessionPtr (* VALUE)

OrigPCode (10U 0 VALUE)

TermPCode (10U 0 VALUE)

Error (10I 0)

Remarks

There are three constants defined for use with E9_JTTYPEEX

D E9_INV_XACTION C -1

D E9_INTERSTATE C 1

D E9_INTRASTATE C 2

EZTaxRevJCode

EZ Version

RPG Procedure

EZ_REVJCODE

RPG Copy

EZREVJCODE

Description

EZTaxRevJCode accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_REVJCODE (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_REVJCODE

RPG Copy

E9REVJCODE

Description

EZTaxRevJCode accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_REVJCODE (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxRevNPAN

EZ Version

RPG Procedure

EZ_REVNPAN

RPG Copy

EZREVNPAN

Description

EZTaxRevNPAN accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Format

EZ_REVNPAN (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_REVNPAN

RPG Copy E9REVNPAN

Description

EZTaxRevNPAN accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_REVNPAN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxRevPCode

EZ Version

RPG Procedure

EZ_REVPCODE

RPG Copy

EZREVPCODE

Description

EZTaxRevPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCODEEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCODEs.

Format

EZ_ REVPCODE (pHandle: pBTN_PCODE: pOrig_PCODE: pTerm_PCODE: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCODE (10U 0)

pOrig_PCODE (10U 0)

pTerm_PCODE (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_REVPCODE

RPG Copy

E9REVPCODE

Description

EZTaxRevPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCODEEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCODEs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ REVPCODE (pSessionPtr: pBTN_PCODE: pOrig_PCODE: pTerm_PCODE: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_PCODE (10U 0)

pOrig_PCODE (10U 0)

pTerm_PCODE (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxRevZip

EZ Version

RPG Procedure

EZ_REVZIP

RPG Copy

EZREVZIP

Description

EZTaxRevZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZIPEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using ZIPs.

Format

EZ_REVZIP (pHandle: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_REVZIP

RPG Copy

E9REVZIP

Description

EZTaxRevZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZIPEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using ZIPs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_REVZIP (pSessionPtr: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxRestore

EZ Version

RPG Procedure

EZRESTOREX

RPG Copy

EZRESTOREX.RPGLE

Description

EZTaxRestorex removes all overrides that have been inserted by the user, into the AFC databases. This action occurs automatically on EZTaxExit. This function provides the user with the ability to remove prior overrides without terminating an AFC session.

Format

EZ_RESTORE_EX (pHandle);

Return Value

pAnswer (10I 0)–

TRUE – Successful

FALSE - Failure

Parameters

pHandle (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9RESTOREX

RPG Copy

E9RESTOREX

Description

EZTaxRestorex removes all overrides that have been inserted by the user, into the AFC databases. This action occurs automatically on EZTaxExit. This function provides the user with the ability to remove prior overrides without terminating an AFC session.

Format

E9_RESTORE_EX (pSessionPtr);

Return Value

pAnswer (10I 0)–

TRUE – Successful

FALSE - Failure

Parameters

pSessionPtr (*)

Remarks

None

EZTaxTxiJCode

EZ Version

RPG Procedure

EZ_TXIJCODE

RPG Copy

EZTXIJCODE

Description

EZTaxTxiJCode accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_TXIJCODE (pHandle: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_TXIJCODE

RPG Copy

E9TXIJCODE

Description

EZTaxTxiJCode accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_TXIJCODE (pSessionPtr: pBTN_JCode: pOrig_JCode: pTerm_JCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_JCode (10U 0)

pOrig_JCode (10U 0)

pTerm_JCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxTxiNPAN

EZ Version

RPG Procedure

EZ_TXINPAN

RPG Copy

EZTXINPAN

Description

EZTaxTxiNPAN accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Format

EZ_TXINPAN (pHandle: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_TXINPAN

RPG Copy

E9TXINPAN

Description

EZTaxTxiNPAN accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxNPANEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using NPANs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_TXINPAN (pSessionPtr: pBTN_NPAN: pOrig_NPAN: pTerm_NPAN: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_NPAN (10U 0)

pOrig_NPAN (10U 0)

pTerm_NPAN (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxTxiPCode

EZ Version

RPG Procedure

EZ_TXIPCODE

RPG Copy

EZTXIPCODE

Description

EZTaxTxiPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCODEEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCODEs.

Format

EZ_ TXIPCODE (pHandle: pBTN_PCODE: pOrig_PCODE: pTerm_PCODE: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pBTN_PCODE (10U 0)

pOrig_PCODE (10U 0)

pTerm_PCODE (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_TXIPCODE

RPG Copy

E9TXIPCODE

Description

EZTaxTxiPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxPCODEEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCODEs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_ TXIPCODE (pSessionPtr: pBTN_PCODE: pOrig_PCODE: pTerm_PCODE: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pBTN_PCODE (10U 0)

pOrig_PCODE (10U 0)

pTerm_PCODE (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxTxiZip

EZ Version

RPG Procedure

EZ_TXIZIP

RPG Copy

EZTXIZIP

Description

EZTaxTxiZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZIPEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using ZIPs.

Format

EZ_TXIZIP (pHandle: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Remarks

None

E9 Version

RPG Procedure

E9_TXIZIP

RPG Copy

E9TXIZIP

Description

EZTaxTxiZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxZIPEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using ZIPs.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_TXIZIP (pSessionPtr: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType: pBaseSale); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pBaseSale (12P 6)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxSAUAdjFips

EZ Version

RPG Procedure

EZ_SAU_ADJ_F

RPG Copy

EZSAUADJF

Description

EZTaxSAUAdjFips accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using Fips codes.

Format

EZ_SAU_ADJ_F (pHandle: pFOB: pFromFips: pToFips: Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromFips (11A)

pToFips (11A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJ_F

RPG Copy

E9SAUADJF

Description

EZTaxSAUAdjFips accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using Fips codes.

Format

E9_SAU_ADJ_F (pSessionPtr: pFOB: pFromFips: pToFips: Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromFips (11A)

pToFips (11A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

EZTaxSAUAdjJCode

EZ Version

RPG Procedure

EZ_SAU_ADJ_J

RPG Copy

EZSAUADJJ

Description

EZTaxSAUAdjJCode accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using JCodes.

Format

EZ_SAU_ADJ_J (pHandle: pFOB: pFromJCode: pToJCode: Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJ_F

RPG Copy

E9SAUADJF

Description

EZTaxSAUAdjFips accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using Fips codes.

Format

E9_SAU_ADJ_F (pSessionPtr: pFOB: pFromFips: pToFips: Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromFips (11A)

pToFips (11A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

EZTaxSAUAdjPCode

EZ Version

RPG Procedure

EZ_SAU_ADJ_P

RPG Copy

EZSAUADJP

Description

EZTaxSAUAdjPCode accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using PCodes.

Format

EZ_SAU_ADJ_P (pHandle: pFOB: pFromPCode: pToPCode: Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJ_J

RPG Copy

E9SAUADJJ

Description

EZTaxSAUAdjJCode accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using JCodes.

Format

E9_SAU_ADJ_J (pSessionPtr: pFOB: pFromJCode: pToJCode: Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

EZTaxSAUAdjRevJCode

EZ Version

RPG Procedure

ES_ADJREVJCODE

RPG Copy

ESADRVJCD

Description

ES_ADJREVJCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUAdjJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

ES_ADJREVJCODE (pHandle: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJREVJ

RPG Copy

E9SREVJCD

Description

E9_SAU_ADJREVJ accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUAdjJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAU_ADJREVJ (pSessionPtr: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAUAdjRevPCode

EZ Version

RPG Procedure

ES_ADJREVPCODE

RPG Copy

ESADRVPCD

Description

ES_ADJREVPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

ES_ADJREVPCODE (pHandle: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJREVP

RPG Copy

E9SREVPCD

Description

E9_SAU_ADJREVP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAU_ADJREVP (pSessionPtr: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAUAdjRevZip

EZ Version

RPG Procedure

ES_ADJREVZIP

RPG Copy

ESADRVZIP

Description

ES_ADJREVZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

ES_ADJREVZIP (pHandle: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0) 

pBaseSale (12P 6) 

pError (10I 0) 

Remarks

None 

E9 Version

RPG Procedure

E9_SAU_ADJREVZ

RPG Copy

E9SREVZIP

Description

E9_SAU_ADJREVZ accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAU_ADJREVZ (pSessionPtr: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0) 

pBaseSale (12P 6) 

pError (10I 0) 

Remarks

None 

EZTaxSAUAdjTxiJCode

EZ Version

RPG Procedure

ES_ADJTXIJCODE

RPG Copy

ESADTIJCD

Description

ES_ADJTXIJCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUAdjJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

ES_ADJTXIJCODE (pHandle: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJTXIJ

RPG Copy

E9STXIJCD

Description

E9_SAU_ADJTXIJ accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUAdjJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAU_ADJTXIJ (pSessionPtr: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAUAdjTxiPCode

EZ Version

RPG Procedure

ES_ADJTXIPCODE

RPG Copy

ESADTIPCD

Description

ES_ADJTXIPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

ES_ADJTXIPCODE (pHandle: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJTXIP

RPG Copy

E9STXIPCD

Description

E9_SAU_ADJTXIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAU_ADJTXIP (pSessionPtr: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAUAdjTxiZip

EZ Version

RPG Procedure

ES_ADJTXIZIP

RPG Copy

ESADTIZIP

Description

ES_ADJTXIZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

ES_ADJTXIZIP (pHandle: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0) 

pBaseSale (12P 6) 

pError (10I 0) 

Remarks

None 

E9 Version

RPG Procedure

E9_SAU_ADJTXIZ

RPG Copy

E9STXIZIP

Description

E9_SAU_ADJTXIZ accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAU_ADJTXIZ (pSessionPtr: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0) 

pBaseSale (12P 6) 

pError (10I 0) 

Remarks

None 

EZTaxSAUAdjZip

EZ Version

RPG Procedure

EZ_SAU_ADJ_Z

RPG Copy

EZSAUADJZ

Description

EZTaxSAUAdjZip accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using address information.

Format

EZ_SAU_ADJ_Z (pHandle: pFOB: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ADJ_Z

RPG Copy

E9SAUADJZ

Description

EZTaxSAUAdjZip accepts transaction data and performs appropriate tax calculations required to refund or credit taxes. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using address information.

Format

E9_SAU_ADJ_Z (pSessionPtr: pFOB: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pAdjMethod (10I 0)

pError (10I 0)

Remarks

None

EZTaxSAUFips

EZ Version

RPG Procedure

EZ_SAU_FIPS

RPG Copy

EZSAUFIPS

Description

EZTaxSAUFips accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using Fips codes.

Format

EZ_SAU_FIPS (pHandle: pFOB: pFromFips: pToFips: (Generic sales and use transaction data): (Generic sales and use return tax info): pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromFips (11A)

pToFips (11A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_FIPS

RPG Copy

E9SAUFIPS

Description

EZTaxSAUFips accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using Fips codes.

Format

E9_SAU_FIPS (pSessionPtr: pFOB: pFromFips: pToFips: (Generic sales and use transaction data): (Generic sales and use return tax info): pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromFips (11A)

pToFips (11A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

EZTaxSAUJCode

EZ Version

RPG Procedure

EZ_SAU_JCODE

RPG Copy

EZSAUJCODE

Description

EZTaxSAUJCode accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using JCodes.

Format

EZ_SAU_JCODE (pHandle: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pError);

Return

Value pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_JCODE

RPG Copy

E9SAUJCODE

Description

EZTaxSAUJCode accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using JCodes.

Format

E9_SAU_JCODE (pSessionPtr: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

EZTaxSAUPCode

EZ Version

RPG Procedure

EZ_SAU_PCODE

RPG Copy

EZSAUPCODE

Description

EZTaxSAUPCode accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using PCodes.

Format

EZ_SAU_PCODE (pHandle: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_PCODE

RPG Copy

E9SAUPCODE

Description

EZTaxSAUPCode accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using PCodes.

Format

E9_SAU_PCODE (pSessionPtr: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

EZTaxSAURevJCode

EZ Version

RPG Procedure

EZ_SAUREVJCODE

RPG Copy

EZSAUREVJCODE

Description

EZ_SAUREVJCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_SAUREVJCODE (pHandle: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAUREVJCODE

RPG Copy

E9SAUREVJCODE

Description

E9_SAUREVJCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAUREVJCODE (pSessionPtr: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAURevPCode

EZ Version

RPG Procedure

EZ_SAUREVPCODE

RPG Copy

EZSAUREVPCODE

Description

EZ_SAUREVPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_SAUREVPCODE (pHandle: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAUREVPCODE

RPG Copy

E9SAUREVPCODE

Description

E9_SAUREVPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAUREVPCODE (pSessionPtr: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*) pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAURevZip

EZ Version

RPG Procedure

EZ_SAUREVZIP

RPG Copy

EZSAUREVZIP

Description

EZ_SAUREVZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_SAUREVZIP (pHandle: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAUREVZIP

RPG Copy

E9SAUREVZIP

Description

E9_SAUREVZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAUREVZIP (pSessionPtr: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6) 

pError (10I 0) 

Remarks

None 

EZTaxSAUTxiJCode

EZ Version

RPG Procedure

EZ_SAUTXIJCODE

RPG Copy

EZSAUTXIJCODE

Description

EZ_SAUTXIJCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_SAUTXIJCODE (pHandle: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAUTXIJCODE

RPG Copy

E9SAUTXIJCODE

Description

E9_SAUTXIJCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAUTXIJCODE (pSessionPtr: pFOB: pFromJCode: pToJCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*) pFOB (10I 0)

pFromJCode (10U 0)

pToJCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAUTxiPCode

EZ Version

RPG Procedure

EZ_SAUTXIPCODE

RPG Copy

EZSAUTXIPCODE

Description

EZ_SAUTXIPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Format

EZ_SAUTXIPCODE (pHandle: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAUTXIPCODE

RPG Copy

E9SAUTXIPCODE

Description

E9_SAUTXIPCODE accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxSAUPCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using PCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAUTXIPCODE (pSessionPtr: pFOB: pFromPCode: pToPCode: (Generic sales and use transaction data): (Generic sales and use return tax info): pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromPCode (10U 0)

pToPCode (10U 0)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

EZTaxSAUTxiZip

EZ Version

RPG Procedure

EZ_SAUTXIZIP

RPG Copy

EZSAUTXIZIP

Description

EZ_SAUTXIZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Format

EZ_SAUTXIZIP (pHandle: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAUTXIZIP

RPG Copy

E9SAUTXIZIP

Description

E9_SAUTXIZIP accepts transaction data with the gross amount charged the customer in the charge amount and performs a tax inclusive calculation to arrive at the base sales amount. The desired total (charge plus all taxes) is placed in the ‘charge’ field in the transaction, and base charge necessary to generate that total is returned in the ‘base_sale’ parameter. Taxes for the desired transaction are returned in the same manner as EZTaxJCodeEx does. If the AFC session was started with the tax log open, tax calculations are logged and will be reflected in tax reports. BTN, origination and termination information is passed using JCodes.

Note: Tax inclusive calculations only handle charges up to $10M.

Format

E9_SAUTXIZIP (pSessionPtr: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pBaseSale: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pBaseSale (12P 6) 

pError (10I 0) 

Remarks

None 

EZTaxSAUZIP

EZ Version

RPG Procedure

EZ_SAU_ZIP

RPG Copy

EZSAUZIP

Description

EZTaxSAUZip accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using address information.

Format

EZ_SAU_ZIP (pHandle: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_SAU_ZIP

RPG Copy

E9SAUZIP

Description

EZTaxSAUZip accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. Ship-from and ship-to information is passed using address information.

Format

E9_SAU_ZIP (pSessionPtr: pFromZip: pFromZipP4: pFromCountry: pFromState: pFromCounty: pFromLocal: pToZip: pToZipP4: pToCountry: pToState: pToCounty: pToLocal: (Generic sales and use transaction data): (Generic sales and use return tax info): pAdjMethod: pError);

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pFOB (10I 0)

pFromZip (6A)

pFromZipP4 (5A)

pFromCountry (4A)

pFromState (3A)

pFromCounty (26A)

pFromLocal (26A)

pToZip (6A)

pToZipP4 (5A)

pToCountry (4A)

pToState (3A)

pToCounty (26A)

pToLocal (26A)

Generic sales and use transaction data: See Appendix C

Generic sales and use return tax info: See Appendix D

pError (10I 0)

Remarks

None

EZTaxSetCustModeEx

EZ Version

RPG Procedure

EZ_SETCUSTMODE

RPG Copy

EZSTCSMDEX

Description

EZTaxSetCustomerModeEx sets the Invoice Mode for an AFC session.

Format

EZ_SETCUSTMODE (pHandle: pMode);

Return Value

pAnswer (10I 0)–

TRUE – Successful

FALSE - Failure

Parameters

pHandle (10I 0)

pMode (10I 0)

TRUE – On

FALSE - Off

Remarks

None

E9 Version

RPG Procedure

E9_SETCUSTMODE

RPG Copy

E9STCSMDEX

Description

EZTaxSetCustomerModeEx sets the Invoice Mode for an AFC session.

Format

E9_SETCUSTMODE (pSessionPtr: pMode);

Return Value

pAnswer (10I 0)–

TRUE – Successful

FALSE - Failure

Parameters

pSessionPtr (*)

pMode (10I 0)

TRUE – On

FALSE - Off

Remarks

None

EZTaxSetNexus

EZ Version

RPG Procedure

EZ_NEXUS

RPG Copy

EZ_NEXUS

Description

EZTaxSetNexus sets the nexus information by state on or off. For each nexus point, the engine will calculate the jurisidiction(s) and set the nexus on or off based on the pHasNexusArray.

Format

EZ_NEXUS (pHandle: pStateArray: pHasNexusArray: pNexusCount);

Return Value

pAnswer (10I 0)

TRUE (1) – Success

FALSE (0) – Failure

Parameters

pHandle (10I 0)

pStateArray (3A DIM(EZ_NXS_MAX))

pHasNexusArray (1A DIM(EZ_NXS_MAX))

pNexusCount (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_NEXUS

RPG Copy

E9_NEXUS

Description

EZTaxSetNexus sets the nexus information by state on or off. For each nexus point, the engine will calculate the jurisidiction(s) and set the nexus on or off based on the pHasNexusArray.

Format

E9_NEXUS (pSessionPtr: pStateArray: pHasNexusArray: pNexusCount);

Return Value

pAnswer (10I 0)

TRUE (1) – Success

FALSE (0) – Failure

Parameters

pSessionPtr (*)

pStateArray (3A DIM(E9_NXS_MAX))

pHasNexusArray (1A DIM(E9_NXS_MAX))

pNexusCount (10I 0)

Remarks

None

EZTaxSetSafeHarborTAMOverride

E9 Version

RPG Procedure

E9_ SETSAFHBR

RPG Copy

E9SETSFHBR

Description

Set the EZTax Safe Harbor TAM override to a new value. The API stores the provided fraction in the session object and sets a flag indicating that the particular session has an override at the federal level. The corresponding state level fraction is calculated and stored. The override is written to the EZTax status file if it changed. The AFC engine then applies the new values instead of the default safe harbor percentages for the chosen TAMTypeID.

Format

E9_SETSAFHBR (pSessionPtr: pSafeHbrType: pOrigFedTAM: PNewFedTAM: PeRROR)

Return Value

pAnswer (10I 0)

TRUE (1) – Success

FALSE (0) – Failure

Parameters

pSessionPtr (* VALUE)

pSafeHbrType (5I 0 VALUE)

pOrigFedTAM (8f VALUE)

PNewFedTAM (8F VALUE)

pError (10I 0)

Remarks

None

EZTaxSetStateExclusion

EZ Version

RPG Procedure

EZ_SST_EXCL

RPG Copy

EZSSTEXCL

Description

EZTaxSetStateExclusion accepts a country ISO code, state abbreviation and a flag to determine if that state is to be excluded from taxation.

Format

EZ_SST_EXCL (pHandle: pCountry: pState: pFlag);

Return Value

pAnswer (10I 0) –

TRUE – Successful

FALSE – Failed

Parameters

pHandle (10I 0)

pCountry (4A)

pState (3A)

pFlag (10I 0)

TRUE - exclude

FALSE - do not exclude

Remarks

None

E9 Version

RPG Procedure

E9_SST_EXCL

RPG Copy

E9SSTEXCL

Description

EZTaxSetStateExclusion accepts a country ISO code, state abbreviation and a flag to determine if that state is to be excluded from taxation.

Format

E9_SST_EXCL (pSessionPtr: pCountry: pState: pFlag);

Return Value

pAnswer (10I 0) –

TRUE – Successful

FALSE – Failed

Parameters 

pSessionPtr (*)

pCountry (4A)

pState (3A)

pFlag (10I 0)

TRUE - exclude

FALSE - do not exclude

Remarks

None

EZTaxSetStateNexus

EZ Version

RPG Procedure

EZ_SST_NEXUS

RPG Copy

EZSSTNEXUS

Description

EZTaxSetStateNexus accepts a country ISO code, state abbreviation and a flag to determine if nexus applies in that state or not.

Format

EZ_SST_NEXUS (pHandle: pCountry: pState: pFlag);

Return Value

pAnswer (10I 0)

TRUE – Successful

FALSE – Failed

Parameters

pHandle (10I 0)

pCountry (4A)

pState (3A)

pFlag (10I 0)

TRUE – exclude

FALSE - do not exclude

Remarks

None

E9 Version

RPG Procedure

E9_SST_NEXUS

RPG Copy

E9SSTNEXUS

Description

EZTaxSetStateNexus accepts a country ISO code, state abbreviation and a flag to determine if nexus applies in that state or not.

Format

E9_SST_NEXUS (pSessionPtr: pCountry: pState: pFlag);

Return Value

pAnswer (10I 0)

TRUE – Successful

FALSE – Failed

Parameters

pSessionPtr (*)

pCountry (4A)

pState (3A)

pFlag (10I 0)

TRUE – exclude

FALSE - do not exclude

Remarks

None

EZTaxThisJCodeEx

EZ Version

RPG Procedure

EZ_THIS_JCODE

RPG Copy

EZTHSJCDEX

Description

EZTaxThisJCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisdiction is passed by JCode.

Format

EZ_THIS_JCODE (pHandle: pJCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pJCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0) 

pBusClass (10I 0) 

pSrvClass (10I 0) 

pFacilities (10I 0) 

pFranchise (10I 0) 

pLifeLine (10I 0) 

pExemptType (10I 0) 

Remarks

None 

E9 Version

RPG Procedure

E9_THIS_JCODE

RPG Copy

E9THSJCDEX

Description

EZTaxThisJCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisdiction is passed by JCode.

Format

E9_THIS_JCODE (pSessionPtr: pJCode: (Generic transaction data A): (Generic returned tax info B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pJCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxThisPCodeEx

EZ Version

RPG Procedure

EZ_THIS_PCODE

RPG Copy

EZTHSPCDEX

Description

EZTaxThisPCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisidiction is passed by PCode.

Format

EZ_THIS_PCODE (pHandle: pPCode: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pPCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0) 

pBusClass (10I 0) 

pSrvClass (10I 0) 

pFacilities (10I 0) 

pFranchise (10I 0) 

pLifeLine (10I 0) 

pExemptType (10I 0) 

Remarks

None 

E9 Version

RPG Procedure

E9_THIS_PCODE

RPG Copy

E9THSPCDEX

Description

EZTaxThisPCodeEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisidiction is passed by PCode.

Format

E9_THIS_PCODE (pSessionPtr: pPCode: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pPCode (10U 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxTPPEx.c

EZ Version

RPG Procedure

EZ_TPP_EX

RPG Copy

EZTPPEX

Description

EZTaxTPPEx takes up to three addresses; Ship From, Ship To, and Point- Of- Acceptance. It requires Ship From. If others have NOT NULL values, then they must be valid. Uses rules to determine interstate or intrastate to to determine which taxing jurisdiction should be used. It accepts the optional Nexus Table, which if given will be checked against the jurisdiction determined above. No taxes will be calculated unless the flag is set (by the caller) for the given state. It returns tax_count, having populated the tax_log structure with any taxes found.

Format

EZ_TPP_EX(pEZHandle:pEZFromZip:pEZFromZipP4: pEZFromCountry: pEZFromState: EZFromCounty: pEZFromLocal: pEZToZip:pEZToZipP4: pEZToCountry: pEZToState: pEZToCounty: pEZToLocal: pEZAZip: pEZAZipP4: pEZACountry: pEZAState: pEZACounty: pEZALocal: pEZNxsState:pEZNxsCount: pEZBusiness: pEZSale:pEZRegulated:pEZTrans:pEZService:pEZDate: pEZCharge: pEZMinutes: pEZLines: pEZLocations: pEZInCorp: pEZFedExempt:pEZStExempt: pEZCoExempt: pEZLocExempt: pEZFedJCode: pEZStJCode: pEZCoJCode: pEZLocJCode: pEZSPECount:pEZSPETaxType:pEZSPETaxLvl: pEZSPEJCode:pEZInvno:pEZSrvLvlNo:pEZOptional: pEZCustNo: pEZR9JCode: pEZR9TaxType: pEZR9TaxLvl: pEZR9CalcType: pEZR9Rate: pEZR9TaxAmt: pEZR9TaxMeasr: pEZR9EXPSlsAmt: PEZRError: pEZBusClass: pEZSrvClass:pEZfacilities: pEZfranchise:pEZLifeline:pEZexemptType);

Return Value

pTaxCount (10I 0) 

Parameters

pHandle (10I 0) 

pFromZipCode (6A) 

pFromZipPlus4 (5A) 

pFromCountry (4A) 

pFromState (3A) 

pFromCounty (26A) 

pFromLocality (26A) 

pToZipCode (6A) 

pToZipPlus4 (5A) 

pToCountry (4A) 

pToState (3A) 

pToCounty (26A) 

 

pToLocality (26A)

pPoaZipCode (6A)

pPoaZipPlus4 (5A)

pPoaCountry (4A)

pPoaState (3A)

pPoaCounty (26A)

pPoaLocality (26A)

pNexusArray (2A DIM(EZ_NXS_MAX))

pNexusCount (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_TPP_EX

RPG Copy

E9TPPEX

Description EZTaxTPPEx takes up to three addresses; Ship From, Ship To, and Point- Of- Acceptance. It requires Ship From. If others have NOT NULL values, then they must be valid. Uses rules to determine interstate or intrastate to to determine which taxing jurisdiction should be used. It accepts the optional Nexus Table, which if given will be checked against the jurisdiction determined above. No taxes will be calculated unless the flag is set (by the caller) for the given state. It returns tax_count, having populated the tax_log structure with any taxes found.

Format

E9_TPP_EX(pSessionPtr:guZFromZip:guZFromZipP4:guZFromCountry:guZFromState: guZFromCounty:guZFromLocal:guZToZip:guZToZipP4:guZToCountry:guZToState:guZtocounty:guZt olocal:pEZAZip:pEZAZipP4:pEZACountry:pEZAState:pEZACounty:pEZALocal: guZNxsState:guZNxsCount:guZBusiness:guZSale:guZRegulated:guZTrans:guZService: guZDate:guZCharge:guZMinutes:guZLines:guZLocations:guZInCorp:guZFedExempt: guZStExempt:guZCoExempt:guZLocExempt:guZFedJCode:guZStJCode:guZCoJCode: guZLocJCode:guZSPECount:guZSPETaxType:guZSPETaxLvl:guZSPEJCode:guZInvno: guZSrvLvlNo:guZOptional:guZCustNo:ttZJCode:ttZTaxType:ttZTaxLevel:ttZCalcType: ttZRate:ttZTaxAmount:ttZTaxMeasure:ttZExemptSales:guZError:guZBusClass:guZSrvClass: guZfacilities:guZfranchise:guZLifeline:guZexemptType : guZCompany:guZOptalpha1:guZopt4:guZopt5:guZopt6:guZOpt7: guZOpt8:guZOpt9:guZOpt10:ttZTaxDesc:ttZBillable: ttZComplianc:ttZSurchgFlg:ttZTaxCatId:ttZTaxCatDesc

Return Value

pTaxCount (10I 0) 

Parameters

pSessionPtr (*) 

pFromZipCode (6A) 

pFromZipPlus4 (5A) 

pFromCountry (4A) 

pFromState (3A) 

pFromCounty (26A) 

pFromLocality (26A) 

pToZipCode (6A) 

pToZipPlus4 (5A) 

pToCountry (4A) 

pToState (3A) 

pToCounty (26A) 

pToLocality (26A) 

pPoaZipCode (6A) 

pPoaZipPlus4 (5A) 

 

pPoaCountry (4A)

pPoaState (3A)

pPoaCounty (26A)

pPoaLocality (26A)

pNexusArray (2A DIM(E9_NXS_MAX))

pNexusCount (10I 0)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pDiscount (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

pAdjMethod (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxWriteToLogEx

EZ Version

RPG Procedure

EZ_WRT_TO_LOG

RPG Copy

EZWRTTOGX

Description

Function EZ_WRT_TO_LOG_EX allows customers to create the correctly formatted binary AFC log from scratch by passing in data they have stored from a different database.

Format

wrt_answer = EZ_WRT_TO_LOG (pEZHandle: COUNT: gcP_CODE: gcTAX_TYPE: gcTAX_LEVEL: gcRATE: gcTAX_AMOUNT: gTAXABLE_MEASU: gEXEMPT_SLS_AM: gRFND_UNCOLLCT: gcMINUTES: gcINV_NO: gcSER_LVL_NO: gcOPTIONAL: gcLINES: gcLOCATIONS: gcCALC_TYPE: gcbillable: gccomplianc: gcCUST_NO: gcadj_method: gcexempt_type: gcSurchg: gcLOG_COUNTR: gcCOMPANY_ID: gcOPT_ALPHA_1: gcopt_4: gcopt_5: gcopt_6: gcopt_7: gcopt_8: gcopt_9: gcopt_10);

Return Value

FALSE - 0 - Failed to retrieve the custom log data.

TRUE - 1 - Successfully retrieved the log information.

Parameters

pHandle (10I 0)

D COUNT S 10U 0* COUNT OF RECORDS TO WRITE

D gcP_CODE S 10U 0 DIM(LGZ_ARY_MAX) 

D gcTAX_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTAX_LEVEL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcRATE S 12P 6 DIM(LGZ_ARY_MAX) 

D gcTAX_AMOUNT S 12P 6 DIM(LGZ_ARY_MAX) 

D gTAXABLE_MEASU S 12P 6 DIM(LGZ_ARY_MAX) 

d gEXEMPT_SLS_AM S 12P 6 DIM(LGZ_ARY_MAX) 

d gRFND_UNCOLLCT S 12P 6 DIM(LGZ_ARY_MAX) 

D gcMINUTES S 25P 4 DIM(LGZ_ARY_MAX) 

D gcINV_NO S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSER_LVL_NO S 10I 0 DIM(LGZ_ARY_MAX) 

D gcOPTIONAL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLINES S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOCATIONS S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCALC_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcbillable S 10i 0 DIM(LGZ_ARY_MAX) 

D gccomplianc S 10i 0 DIM(LGZ_ARY_MAX) 

D gcCUST_NO S 20 DIM(LGZ_ARY_MAX) 

d gcadj_method S 10I 0 DIM(LGZ_ARY_MAX) 

d gcexempt_type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSurchg S 10i 0 DIM(LGZ_ARY_MAX) 

D gcLOG_COUNTR S 10U 0 DIM(LGZ_ARY_MAX) 

D gcCOMPANY_ID S 20 DIM(LGZ_ARY_MAX) 

D gcOPT_ALPHA_1 S 20 DIM(LGZ_ARY_MAX) 

d gcopt_4 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_5 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_6 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_7 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_8 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_9 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_10 S 10I 0 DIM(LGZ_ARY_MAX) 

Remarks

EZTaxWriteToLogEx does not support logging of the transaction type and service type.

E9 Version

RPG Procedure

E9_WRT_TO_LOG

RPG Copy

E9WRTTOGX

Description

Function E9_WRT_TO_LOG_EX allows customers to create the correctly formatted binary AFC log from scratch by passing in data they have stored from a different database.

Format

wrt_answer = E9_WRT_TO_LOG (pSessionPtr: lwZCount: lwZPCode:lwZTax_Type: lwZTax_Level:lwZRate: lwZTax_Amount:lwZTaxableMeas: lwZExmptSlsAmt:lwZRFndUncolct: lwZMinutes: lwZInv_No: lwZSer_Lvl_No:lwZOptional: lwZLines: lwZLocations: lwZCalc_Type:lwZBillable: lwZComplianc: lwZCust_No: lwZadj_Method:lwZexempt_type:lwZSurchg:lwZLog_Counter:lwZCompa ny_Id:lwZOpt_Alpha_1: lwZopt_4: lwZopt_5: lwZopt_6: lwZopt_7:lwZopt_8: lwZopt_9: lwZopt_10);

Return Value

FALSE - 0 - Failed to retrieve the custom log data.

TRUE - 1 - Successfully retrieved the log information.

Parameters

D pSESSION_PTR S * VALUE D COUNT S 10U 0 * COUNT OF RECORDS TO WRITE 

D gcP_CODE S 10U 0 DIM(LGZ_ARY_MAX) 

D gcTAX_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTAX_LEVEL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcRATE S 12P 6 DIM(LGZ_ARY_MAX) 

D gcTAX_AMOUNT S 8F DIM(LGZ_ARY_MAX) 

D gTAXABLE_MEASU S 8F DIM(LGZ_ARY_MAX) 

d gEXEMPT_SLS_AM S 8F DIM(LGZ_ARY_MAX) 

d gRFND_UNCOLLCT S 12P 6 DIM(LGZ_ARY_MAX) 

D gcMINUTES S 25P 4 DIM(LGZ_ARY_MAX) 

D gcINV_NO S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSER_LVL_NO S 10I 0 DIM(LGZ_ARY_MAX) 

D gcOPTIONAL S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLINES S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOCATIONS S 10I 0 DIM(LGZ_ARY_MAX) 

D gcCALC_TYPE S 10I 0 DIM(LGZ_ARY_MAX) 

D gcbillable S 10i 0 DIM(LGZ_ARY_MAX) 

D gccomplianc S 10i 0 DIM(LGZ_ARY_MAX) 

D gcCUST_NO S 20 DIM(LGZ_ARY_MAX) 

d gcadj_method S 10I 0 DIM(LGZ_ARY_MAX) 

d gcexempt_type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSurchg S 10i 0 DIM(LGZ_ARY_MAX) 

D gcLOG_COUNTR S 10U 0 DIM(LGZ_ARY_MAX) 

D gcCOMPANY_ID S 20 DIM(LGZ_ARY_MAX) 

D gcOPT_ALPHA_1 S 20 DIM(LGZ_ARY_MAX) 

d gcopt_4 S 10I 0 DIM(LGZ_ARY_MAX) 

 

d gcopt_5 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_6 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_7 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_8 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_9 S 10I 0 DIM(LGZ_ARY_MAX) 

d gcopt_10 S 10I 0 DIM(LGZ_ARY_MAX) 

Remarks

EZTaxWriteToLogEx does not support logging of the transaction type and service type.

EZTaxWriteToLogV914

E9 Version

RPG Procedure

E9_WRT_914_LOG

RPG Copy

E9WRT914LG

Description

Function E9_WRT_914_LOG allows customers to create the correctly formatted binary AFC log from scratch by passing in data they have stored from a different database.

Format

wrt_answer = E9_WRT_TO_LOG (pSessionPtr: lwZCount: lwZPCode:lwZTax_Type: lwZTax_Level:lwZRate: lwZTax_Amount:lwZTaxableMeas: lwZExmptSlsAmt:lwZRFndUncolct: lwZMinutes: lwZInv_No: lwZSer_Lvl_No:lwZOptional: lwZLines: lwZLocations: lwZCalc_Type:lwZBillable: lwZComplianc: lwZCust_No: lwZadj_Method:lwZexempt_type:lwZSurchg:lwZLog_Counter:lwZCompa ny_Id:lwZOpt_Alpha_1: lwZopt_4: lwZopt_5: lwZopt_6: lwZopt_7:lwZopt_8: lwZopt_9: lwZopt_10: lgZTranType: lgZSrvType: lgZTransCharge: lgZTaxDesc: lgZTaxCatId: lgZTaxCatDesc);

Note: The last four parameters – lgZTransCharge, lgZTaxDesc, lgZTaxCatId and lgZTaxCatDesc – are placeholders and are NOT currently written to the EZTax.log file. Real or dummy data may be supplied at this time.

Return Value

FALSE - 0 - Failed to retrieve the custom log data.

TRUE - 1 - Successfully retrieved the log information.

Parameters

D pSESSION_PTR S * VALUE

D COUNT S 10U 0 * COUNT OF RECORDS TO WRITE

D gcP_CODE S 10U 0 DIM(LGZ_ARY_MAX)

D gcTAX_TYPE S 10I 0 DIM(LGZ_ARY_MAX)

D gcTAX_LEVEL S 10I 0 DIM(LGZ_ARY_MAX)

D gcRATE S 12P 6 DIM(LGZ_ARY_MAX)

D gcTAX_AMOUNT S 8F DIM(LGZ_ARY_MAX)

D gTAXABLE_MEASU S 8F DIM(LGZ_ARY_MAX)

d gEXEMPT_SLS_AM S 8F DIM(LGZ_ARY_MAX)

d gRFND_UNCOLLCT S 12P 6 DIM(LGZ_ARY_MAX)

D gcMINUTES S 25P 4 DIM(LGZ_ARY_MAX)

D gcINV_NO S 10I 0 DIM(LGZ_ARY_MAX)

D gcSER_LVL_NO S 10I 0 DIM(LGZ_ARY_MAX)

D gcOPTIONAL S 10I 0 DIM(LGZ_ARY_MAX)

D gcLINES S 10I 0 DIM(LGZ_ARY_MAX)

D gcLOCATIONS S 10I 0 DIM(LGZ_ARY_MAX)

D gcCALC_TYPE S 10I 0 DIM(LGZ_ARY_MAX)

D gcbillable S 10i 0 DIM(LGZ_ARY_MAX)

 

D gccomplianc S 10i 0 DIM(LGZ_ARY_MAX) 

D gcCUST_NO S 20 DIM(LGZ_ARY_MAX) 

D gcadj_method S 10I 0 DIM(LGZ_ARY_MAX) 

D gcexempt_type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSurchg S 10I 0 DIM(LGZ_ARY_MAX) 

D gcLOG_COUNTR S 10U 0 DIM(LGZ_ARY_MAX) 

D gcCOMPANY_ID S 20 DIM(LGZ_ARY_MAX) 

D gcOPT_ALPHA_1 S 20 DIM(LGZ_ARY_MAX) 

D gcopt_4 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcopt_5 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcopt_6 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcopt_7 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcopt_8 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcopt_9 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcopt_10 S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTrans_Type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcSrv_Type S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTrans_Charge S 8F DIM(LGZ_ARY_MAX) 

D gcTax_Desc S 100 DIM(LGZ_ARY_MAX) 

D gcTax_Cat_Id S 10I 0 DIM(LGZ_ARY_MAX) 

D gcTax_Cat_Desc S 100 DIM(LGZ_ARY_MAX) 

Remarks

EZTaxWriteToLogV914 supports logging of the transaction type and service type.  Logging of transaction charge, tax description, tax category Id and tax Category description is NOT currently supported.

EZTaxZipEx

EZ Version

RPG Procedure

EZ_ZIP_EX

RPG Copy

EZZIPEX

Description

EZTaxZipEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisidiction is passed by address information.

Format

EZ_ZIP_EX (pHandle: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data): (Generic returned tax info): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType);

Return Value

pTaxCount (10I 0)

Parameters

pHandle (10I 0)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ZIP_EX

RPG Copy

E9ZIPEX

Description

EZTaxZipEx accepts transaction data and performs appropriate tax calculations. If the AFC session was started with the tax log open, appropriate tax reductions are logged and will be reflected in tax reports. The taxing jurisidiction is passed by address information.

Format

E9_ZIP_EX (pSessionPtr: pZip: pZipP4: pCountry: pState: pCounty: pLocality: (Generic transaction data Appendix A): (Generic returned tax info Appendix B): pError: pBusClass: pSrvClass: pFacilities: pFranchise: pLifeline pExemptType); (Generic transaction data, Appendix A2): (Generic returned tax info, Appendix B2)

Return Value

pTaxCount (10I 0)

Parameters

pSessionPtr (*)

pZip (6A)

pZipP4 (5A)

pCountry (4A)

pState (3A)

pCounty (26A)

pLocality (26A)

Generic transaction data: See Appendix A

Generic returned tax info: See Appendix B

pError (10I 0)

pBusClass (10I 0)

pSrvClass (10I 0)

pFacilities (10I 0)

pFranchise (10I 0)

pLifeLine (10I 0)

pExemptType (10I 0)

Generic transaction data 2: See Appendix A2

Generic returned tax info 2: See Appendix B2

Remarks

None

EZTaxZtoJCodeEx

EZ Version

RPG Procedure

EZ_ZTOJ_EX

RPG Copy

EZZTOJCDEX

Description

EZTaxZtoJCodeEx returns a JCode cross-referenced to the specified zip code and address information.

Format

EZ_ZTOJ_EX (pHandle: pLocality: pCounty: pState: pCountry: pZip: pZipP4: pError);

Return Value

pJCode (10U 0)

Parameters

pHandle (10I 0)

pLocality (26A)

pCounty (26A)

pState (3A)

pCountry (4A)

pZip (6A)

pZipP4 (5A)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ZTOJ_EX

RPG Copy

E9ZTOJCDEX

Description

EZTaxZtoJCodeEx returns a JCode cross-referenced to the specified zip code and address information.

Format

E9_ZTOJ_EX (pSessionPtr: pLocality: pCounty: pState: pCountry: pZip: pZipP4: pError);

Return Value

pJCode (10U 0)

Parameters

pSessionPtr (*)

pLocality (26A)

pCounty (26A)

pState (3A)

pCountry (4A)

pZip (6A)

pZipP4 (5A)

pError (10I 0)

Remarks

None

EZTaxZtoPCodeEx

EZ Version

RPG Procedure

EZ_ZTOP_EX

RPG Copy

EZZTOPCDEX

Description

EZTaxZtoPCodeEx returns a PCode cross-referenced to the specified zip code and address information.

Format

EZ_ZTOP_EX (pHandle: pLocality: pCounty: pState: pCountry: pZip: pZipP4: pError);

Return Value

pPCode(10U 0)

Parameters

pHandle (10I 0)

pLocality (26A)

pCounty (26A)

pState (3A)

pCountry (4A)

pZip (6A)

pZipP4 (5A)

pError (10I 0)

Remarks

None

E9 Version

RPG Procedure

E9_ZTOP_EX

RPG Copy

E9ZTOPCDEX

Description

EZTaxZtoPCodeEx returns a PCode cross-referenced to the specified zip code and address information.

Format

E9_ZTOP_EX (pSessionPtr: pLocality: pCounty: pState: pCountry: pZip: pZipP4: pError);

Return Value

pPCode(10U 0)

Parameters

pSessionPtr (*)

pLocality (26A)

pCounty (26A)

pState (3A)

pCountry (4A)

pZip (6A)

pZipP4 (5A)

pError (10I 0)

Remarks

None

System i Specific Utilities

There are a few System i specific utilities available. These have been added by customer requests. There is a constraint on the length of the program name (max. of 10) of the utility, so the full name of the utility is listed in the second column. I have chosen not to duplicate the utility descriptions in this manual, so please see the AFC User Manual for the details.

Important Implementation Hint:

The following AFC Utilities that don’t have a CLLE wrapper around them are ‘c’ programs and thus require some special handling of any STRING parameters. Because ‘C’ expects a string to be terminated by a null character, it is necessary to append a null character to any strings inside a variable that you build to pass in. Please look at the following example:

pgm
    DCL VAR(&MON) TYPE(*CHAR) LEN(5) value('1105') 
    DCL VAR(&WKO) TYPE(*CHAR) LEN(256) VALUE(' ') 
    DCL VAR(&NUL) TYPE(*CHAR) LEN(1) VALUE(X'00')
    CHGCURLIB DEVELOP
    CHGCURDIR DIR('/billsoft/working') 
    MONMSG CPFA0A9

    CHGVAR VAR(&WKO) VALUE('COMPLIANCE_' *CAT &MON) 
    CHGVAR VAR(&WKO) VALUE(&WKO *TCAT &NUL)

    CALL PGM(SRTCOMA20L) PARM(&WKO)

exit: endpgm

In the above example, I have declared the &NUL variable and set it to hex zeros. Then in the second highlighted line of code, I have used the *TCAT function to put the null termination character at the back of the string. Now the ‘c’ program can correctly deal with the string.

Utilities Listed By Function

Sorted by Function

AFC User Manual name (if different)

Description

ASCIILOG

 

Dumps the contents of the logfilename.log to an ASCII version of the log file

BATCHSPLIT

 

Allows for two output log files. logfilename1.log is the voice data log and logfilename2.log is the data log.

COMMERGE

 

Combines the log file with the log.sum (if present) then sorts and combines the data.

COMPTNUM

 

Reads the log file specified in filelocs.txt and produces comma delimited text files outputfilename.ssf, outputfilename.nca, and outputfilename.nba (or a unified file outputfilename.scl) for tax compliance filing.

COMRPT

 

Data formatted to produce a customer information file called ComRPT.ssf.

CRTPFLOG

 

Converts the IFS file EZTax.log into a physical file format.

CSF20

 

Reads the log file specified in filelocs.txt. Uses a CDF filename from the command line to name the output files.

EZ_APPEND

EZTAXAPPEND

Appends the contents of logfilename1.log to the end of logfilename2.log, the names of which are the input parameters.

EZ_APPENDF

EZTAXAPPENDF

Combines all the logs listed in the LogFileList.txt file and the output goes to the OutLogFileName.log.

EZCOMPREP

 

Produces a comma-delimited file for compliance filing. Sorting and combining is performed at the jurisdictional level.

EZLGCSTIOS

EZLOGCUSTIOS

Produces a comma-delimited file for customer billing. Sorting and reporting is done at the customer level.

EZLGCSTLNL

EZLOGCUSTPTSLNL

Produces a comma-delimited file for customer billing. Sorting and reporting is done at the customer level. In addition to the PCode, optional, and Service Level Number fields, the number of lines and locations are also included.

EZLGCSTPTS

EZLOGCUSTPTS

Produces a comma-delimited file for customer billing. Sorting and reporting is done at the customer level. The sort key also contains PCode, optional, and Service Level Number fields.

EZLOG_NS

 

Produces a comma-delimited file for compliance filing.

EZLOGCUST

 

Produces a comma-delimited file for customer billing. Sorting and reporting is done at the customer level.

SPLITLOG

 

Reads in an EZtax Log and splits it into separate logs based on a selected optional information field which has been provided by the billing system call through the API interface.

SRTCDF20

 

Produces a fixed length text file logfilename.ssf for tax compliance filing and a fixed length text file filename.csf for customer billing

SRTCDF20P

 

Produces a fixed length text file EZTaxlogfilename.ssf for tax compliance filing and a fixed length text file logfilename.csf for customer billing.

SRTCOMADTL

SRTCOMMADETAIL

Produces a comma delimited text file logfilename.ssf for tax compliance filing and a fixed length text file logfilename.csf for customer billing.

SRTCOMA20L

SRTCOMMA20L

Produces a comma delimited text file logfilename.ssf for tax compliance filing and a fixed length text file logfilename.csf for customer billing, separating adjustments. The .csf file is used for import into the billing system to populate customer bills. The comma-delimited .ssf file is sorted at the jurisdictional level. The .ssf file also contains the number of lines.

SRTCOMCS20

SRTCOMCUST20

Produces a comma delimited text file logfilename.ssf for tax compliance filing and a fixed length text file logfilename.csf for customer billing.

SRTCOMMA20

 

Produces a comma delimited text file logfilename.ssf for tax compliance filing and a fixed length text file logfilename.csf for customer billing.

SRTREV20L

 

The srtrev20l.exe command reads the log file specified in filelocs.txt and produces a comma delimited text file outputfilename.ssf for tax compliance filing and a fixed length text file outputfilename.csf for customer billing, separating adjustments. It is intended for use with log files created using the tax inclusive calculation functionality in AFC.

STRG_LOG

 

Runs strg utility and copies the output from the IFS into flat files in the library where PF_LOG is located.

SUM_RPT2

 

Produces a comma-delimited file for compliance filing.

TPI_LOG

 

Runs strg utility and copies the output from the IFS into flat files in the library where PF_LOG is located.

Since there are some optional parameters, if the parameter is not to be used, simply do not pass it. Do not use a blank parameter. The program will determine the correct usage.

CRTPFLOG

Description

Converts the IFS log file, EZTax.log, into a physical file format.

EZTax.log is located in the working directory (current directory) of the user running CRTPFLOG.

Format

Call CRTPFLOG

Parameters

none

Output

/current working directory/crtpflog_log_file.sta -- Status file which will contain any errors

*LIBL/PF_LOG. -- Physical file supplied by Avalara or a copy of that file. The PFREC record format defined for PF_LOG is required.

EZ_APPEND

Description

The EZ_APPEND command calls the EZTaxappend.exe command and is used to combine two logfilename.log files. It appends logfilename1.log to logfilename2.log, leaving logfilename1.log intact.

Format

call EZ_APPEND (logfilename1.log logfilename2.log)

Parameters

logfilename1.log 512a - Required – First file name to append

logfilename2.log 512a - Required – Log file to be appended to the end of with logfilename1

Notes

  • Best Programming Practices would include defining variables at 512a to set the value to the character string name of the file you wish to pass into the program. This will eliminate some of the errors caused by assumption of string length (of 32) and padding with blanks etc. If problems are experienced with passing in literal parameters, try passing through a defined variable as described above.
  • log.sum is NOT created.
  • EZTax.log is NOT deleted.
  • logfilename1.log and logfilename2.log must be actual filenames and contain no blanks imbedded within the filename. ie: ‘log file.log’ would not be a legal parameter.
  • Filelocs.txt is not used.

EZ_APPENDF

Description

The EZ_APPENDF command works similar to EZ_APPEND, and calls the EZTaxappendf.exe, which is used to combine the logfilename.log files listed in the filelist.txt text file containing the paths and logfilename.log names to combine.

Format

call EZ_APPENDF (logfilelist.txt logfilename.log)

Parameters

logfilelist.txt 512a - Required – Name of file which contains names of logfilenames to be combined.

logfilename.log 512a - Required – Combined Log file

Notes

  • Best Programming Practices would include defining variables at 512a to set the value to the character string name of the file you wish to pass into the program. This will eliminate some of the errors caused by assumption of string length (of 32) and padding with blanks etc. If problems are experienced with passing in literal parameters, try passing through a defined variable as described above.
  • The string passed in for logfilelist.txt cannot have imbedded blanks within the name. ie: ‘log file list.txt’ would not be a legal parameter.
  • logfilename.log will be created if it does not exist. Otherwise it will append to the existing
  • logfilename.log file.
  • All log files defined in logfilelist.txt are concatenated to logfilename.log
  • log.sum is NOT created.
  • EZTax.log is NOT deleted.
  • Filelocs.txt is not used.
  • Filelist.txt entries can be space or line delimited, however the filenames cannot have imbedded spaces.

SPLITLOG

Description

Reads in an AFC Log and splits the log into separate logs based on a selected optional information field which has been populated by the billing system call, through the API interface. This utility is being provided as an alternative to using separate sessions to create the separate log files. For example, your company may have multiple subsidiaries that are reported financially separate, yet each subsidiary’s products are billed on one consolidated bill. As you send taxing transactions to the tax engine, you can simply use one of the optional fields to insert a numeric or character (depending on the type of the optional field) value that SplitLog can use to separate into separate log files. The utility will append an underscore and the contents of the splitkey to the name of the logfile and put the appropriate data in each file(ie. EZTax_1011.log, EZTax_99.log, etc.). An example of the output is shown in the following screen shot.

image

Format

call splitlog <logfile> -f co -a

Parameters

<LogFileName.log> 512a - Required – Name of the AFC log file which contains the optional fields specially inserted by the billing software to split the logs out upon.

-f Indicates that one or more of the field split parameters follow this flag. It is possible to specify multiple keys in any order.

Possible splitting Key values:

c - Customer Number (20a)

o - Optional (unsigned long)

v - Invoice Number

-a - Append to existing logs instead of overwriting them.

Notes

  • Best Programming Practices would include defining variables at 512a to set the value to the character string name of the file you wish to pass into the program. This will eliminate some of the errors caused by assumption of string length (of 32) and padding with blanks etc. If problems are experienced with passing in literal parameters, try passing through a defined variable as described above.
  • EZTax.log is NOT deleted.
  • Filelocs.txt is not used.
  • You will most likely have to append a null termination character to the parameters to make it work properly, as this is a ‘C’ program, and the argument parser will not correctly parse the arguments.

SRTREV20L.exe

Command Line

srtrev20l [-z <pkzip executable>] outputfilename <nN> <-p> <-s> <pcsf> <extralogfilename> [-cl] [- tc] [-b]

Description

The srtrev20l.exe command reads the log file specified in filelocs.txt and produces a comma delimited text file outputfilename.ssf for tax compliance filing and a fixed length text file outputfilename.csf for customer billing, separating adjustments. It is intended for use with log files created using the tax inclusive calculation functionality in AFC.

The .csf file is used for import into the billing system to populate customer bills. The comma- delimited .ssf file is sorted at the jurisdictional level. The .ssf file also contains the number of lines.

Input

Reads the logfilename.log file as defined by filelocs.txt or AFC Initialization Function.

log.sum – optional input from previous run or uses the extra log file name from the command line.

Output

Fixed Length outputfilename.ssf file for tax compliance filing. Sorted and condensed by PCode, Tax Type, Tax Level, Tax Rate.

Fixed Length outputfilename.csf file for customer billing.  Sorted and condensed by Customer Number, Tax Type, Tax Level, Tax Rate, Tax Amount.

File Format Key

Country, State, County, Locality, Tax type, Tax level, Tax rate, Tax amount, Gross Sale, Exempt, Adjustments, Taxable measure, Minutes, Lines, Sale Amount

With -p Option Specified

PCode, Tax type, Tax level, Tax Rate, Tax Amount, Gross Sale, Exempt, Adjustments, Taxable Measure, Minutes, Lines

srtcomma20l SSF File Format Key without -p option

Description

Type

Country

Alpha

State

Alpha

County

Alpha

 

 srtcomma20l SSF File Format Key without -p option

Description

Type

Locality

Alpha

Tax Type

Numeric

Tax Level

Numeric

Tax Rate

Numeric

Tax Amount

Numeric

Gross Sale

Numeric

Exempt

Numeric

Adjustments

Numeric

Taxable Measure

Numeric

Minutes

Numeric

Lines

Numeric

Sale Amount

Numeric

 

srtcomma20l SSF File Format Key with -p option

Description

Type

PCode

Numeric

Tax Type

Numeric

Tax Level

Numeric

Tax Rate

Numeric

Tax Amount

Numeric

Gross Sale

Numeric

Exempt

Numeric

Adjustments

Numeric

Taxable Measure

Numeric

Minutes

Numeric

Lines

Numeric

Sale Amount

Numeric

 

srtcomma20l CSF File Format Key

Description

Type

Length

Positions

Customer Number

Alpha

20

1-20

Tax Type

Numeric

6

21-26

Tax Level

Numeric

1

27

Tax Amount Sign

Alpha

1

28

Tax Amount

Numeric

11.5

29-39

Tax Category (optional)

Alpha

50

40-69

File Record Length

 

39 or 89

 

Arguments

-z <pkzip executable> - path to zip executable file*

N or n – .csf file is unsorted

-p – add PCode to ssf file. Does not add PCode to csf file

-s – produce only the ssf. The .csf file is not created.

-pcsf – add PCode to csf file.

extra log file name – use instead of log.sum

–cl creates a combined compliance log file with a .scl extension, containing both the billable and non-billable amounts instead of a separate log file for each.

-tc adds the tax category description to the end of each line

-b adds the base sale amount to the end of each line in the csf

*The pkzip executable option is only available with the windows platform.

Notes:

  • The Tax Rate field is sensitive to positive and negative values
  • The log.sum file is NOT created
  • WARNING - EZTax.log is DELETED. Make backups in case reruns are needed.

Sample Data

USA, , , , 55, 0, 0.136000, 2.086860, 41.360000, 26.015440, 0.000000, 15.344560, 3.5, 0, 41.36

USA, , , , 170, 0, 0.015000, 0.015000, 41.360000, 26.015440, 0.000000, 15.344560, 3.5, 0, 41.36

USA, PA, , , 44, 1, 1.000000, 1.000000, 0.000000, 0.000000, 0.000000, 0.000000, 3.5, 0, 41.36

USA, PA, ALLEGHENY, PITTSBURGH, 1, 1, 0.060000, 2.738097, 45.634953, 0.000000, 0.000000, 45.634953, 3.5, 0, 41.36

USA, PA, ALLEGHENY, PITTSBURGH, 1, 2, 0.010000, 0.456350, 45.634953, 0.000000, 0.000000, 45.634953, 3.5, 0, 41.36

USA, PA, ALLEGHENY, PITTSBURGH, 14, 1, 0.050000, 2.173093, 43.461860, 0.000000, 0.000000, 43.461860, 3.5, 0, 41.36

Sample Data With -p Option

0, 55, 0, 0.136000, 0.000000, 82.720000, 52.030880, 15.344560, 15.344560, 7.0, 0, 82.72

0, 170, 0, 0.015000, 0.000000, 82.720000, 52.030880, 15.344560, 15.344560, 7.0, 0, 82.72

3198500, 44, 1, 1.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 7.0, 0, 82.72

3206100, 1, 1, 0.060000, 0.000000, 91.269906, 0.000000, 45.634953, 45.634953, 7.0, 0, 82.72

3206100, 1, 2, 0.010000, 0.000000, 91.269906, 0.000000, 45.634953, 45.634953, 7.0, 0, 82.72

3206100, 14, 1, 0.050000, 0.000000, 86.923720, 0.000000, 43.461860, 43.461860, 7.0, 0, 82.72

Refer to the AFC User Manual for descriptions of the data in the generated file.

STRG_LOG

Description

Executes STRG against the current EZTax.log and copies the IFS files into flat physical files.

Format

call STRG_LOG (outputfilename extralogname option)

Parameters

InputFilename 512a - Required - IFS output file name *note 1

extralogname 512a – Optional – Extra log file name *note 1

option 10a – Optional – ‘-CL’

Notes

  1. The InputFilename and extralogname CANNOT contain any blanks.
  2. The program will create flat physical files with the following naming convention: xxmmddyyss.

xx = type

Possible values are:

SS = .ssf or .scl files

NB = .nba file = Non-billable

NC = .nca file = Non-compliance mm = month

dd = day

yy = year

ss = second

If the physical file with the corresponding name already exists, it will try again until it does not exist.

SUM_RPTPF2

Description

Executes like EZLOGCUST except it puts the output into a spool file.

Format

Call SUM_RPTPF2 Will result in output files being put in the current library, and current directory on the IFS.

Alternative call structure

Image_SUM_RPTPF2.png

Parameters

 

Notes

  1. Tax_types.txt must be in the current directory.
  2. The EZTax.log will be deleted during this run, so keep a copy if you need it.
  3. The program can be called from within a CL program, however, you must type in the file names, not use variables.

TPI_LOG

Description

Executes STRG against the current EZTax.log and copies the IFS files into flat physical files.

Format

call TPI_LOG (inputFilename extralogname option)

Parameters

InputFilename 512a - Required - IFS output file name *note 1

extralogname 512a – Optional – Extra log file name *note 1

option 10a – Optional – ‘-CL’

Notes

  1. The InputFilename and extralogname CANNOT contain any blanks.
  2. The program will create flat physical files with the following naming convention: xxmmddyyss.

xx = type

Possible values are:

TP = .ssf or .scl files

NB = .nba file = Non-billable

NC = .nca file = Non-compliance mm = month

dd = day

yy = year

ss = second

If the physical file with the corresponding name already exists, it will try again until it does not exist.

EZtax Batch Utilities on the IBM iSeries

These are the standard utilities available with AFC and AFC Sales and Use.

Utilities Listed By Function

Sorted by Function

Description

EZtax_20

Accepts a xxxx.cdf file format with all the input parameters for Telecom Taxes.

batch_sau

Accepts a xxxx.cds file format with all the input parameters for Sales and Use.

EZtax_20 Batch Program

AFC allows company transactions to be taxed without directly interfacing AFC with the billing system using the EZTax_20 command line feature. Although system performance is excellent using the batch file processing method, it is less efficient than a direct interface in the following ways:

  1. The billing system must provide an additional function that creates the AFC batch file.
  2. AFC must read the batch-input file. With a direct interface, this is not necessary as the billing system itself will read all required data from databases or files in order to perform rating functions.
  3. The billing system must read results of the AFC process for inclusion on end customer bills and journal entries in the users accounting system.

However, this method can be the most cost effective, and provide the quickest solution to tax compliance, depending upon the billing system in use and the level of technical expertise available. This is available to both EZtax SaaS Standard and AFC on-site licensed product clients.

Command Line

The following command should be issued from the command line AFTER you have made sure that the working directory is the current directory. It is easiest to make sure the input transactions are in the same working directory as your filelocs on the IFS.

SBMJOB CMD(CALL PGM(EZTax_20) PARM('fileContainingEZtaxTrx.cdf'))

Description

The EZTax_20 command is a processing utility designed to accept records submitted in batch fashion. Records are supplied as an ASCII formatted file inputfilename.cdf.

Input

Reads the inputfilename.cdf ASCII text file

Output

EZTax.Log – as defined by filelocs.txt.

Read_err.st – any errors found while editing input file are reported here. Billing.log – date/time stamp log (appended to).

Bureau_log – run totals (appended to).

EZTax.sta – status

inputfilename.rpt – break down by totals (not for compliance filing).

File Format Key

In the AFC User Manual refer to CDF20 Client Input Data Specification.

Arguments

input filename is the cdf file with input records

[-d] indicates to used defaults transaction/service types

Notes

The transactionservice.exp file must be in the AFC working directory.

EZTax.log is not deleted.

Filelocs.txt MUST be in the working directory.

batch_sau Utility Specification

For complete instructions refer to the description in the AFC User Manual.

Command Line

The following command should be issued from the command line AFTER you have made sure that the working directory is the current directory. It is easiest to make sure the input transactions are in the same working directory as your filelocs on the IFS.

SBMJOB CMD(CALL PGM(batch_sau) PARM('fileContainingSAUtrx.cds'))

Description

The batch_sau command is a processing utility designed to accept records submitted in batch fashion. Records are supplied as an ASCII formatted file inputfilename.cds.

Input

Reads the inputfilename.cds ASCII text file

Output

EZTax.Log – as defined by filelocs.txt.

Read_err.st – any errors found while editing input file are reported here. Billing.log – date/time stamp log (appended to).

Bureau_log – run totals (appended to).

EZTax.sta – status

inputfilename.rpt – break down by totals (not for compliance filing).

File Format Key

In the AFC User Manual SAU refer to CDF20 Client Input Data Specification.

Arguments

input filename is the cds file with input records

Notes

The transactionservice.exp file must be in the AFC working directory.

EZTax.log is not deleted.

Filelocs.txt MUST be in the working directory.

Appendix A - Generic Transaction Data

These fields are common amongst many of the RPG procedures. In order to reduce pages, these fields are listed here and referred to in the above procedures.

Field

EZ Declaration

E9 Delcoaration

Definition

pCustomerType

10I 0

10I 0

Customer Type (Business, Industrial, …)

pSale

10I 0

10I 0

Sale Type (Retail, Wholesale)

pRegulated

10I 0

10I 0

Regulated Flag

pTransaction

10I 0

10I 0

Transaction Type ID

pService

10I 0

10I 0

Service Type ID

pDate

10U 0

10I 0

Transaction Date

pCharge

10P 4

8F

Charge Amount

pMinutes

25P 4

25P 4

Minutes

pLines

10I 0

10I 0

Lines

pLocations

10I 0

10I 0

Locations

pIncorp

10I 0

10I 0

Incorporated Flag

pFed_Exempt

10I 0

10I 0

Federal Exempt Flag

pSt_Exempt

10I 0

10I 0

State Exempt Flag

pCo_Exempt

10I 0

10I 0

County Exempt Flag

pLoc_Exempt

10I 0

10I 0

Local Exempt Flag

pFed_JCode

10U 0

10U 0

Federal Exempt J Code

pSt_JCode

10U 0

10U 0

State exempt J Code

pCo_JCode

10U 0

10U 0

County Exempt J Code

pLoc_JCode

10U 0

10U 0

Local Exempt J Code

pSpe_Count

10I 0

10I 0

Special Exemption Counts

pSpe_Tax_Type

10I 0 DIM(EZ_SPE_MAX)

10I 0 DIM(E9_SPE_MAX)

Special Exemption Tax Type

pSpe_Tax_Level

10I 0 DIM(EZ_SPE_MAX)

10I 0 DIM(E9_SPE_MAX)

Special Exemption Tax Level

pSpe_JCode

10U 0 DIM(EZ_SPE_MAX)

10I 0 DIM(E9_SPE_MAX)

Special Exemption J Code

pInvno

10I 0

10I 0

Invoice Number

pSrv_Lvl_No

10I 0

10I 0

Service Level Number

pOptional

10I 0

10I 0

Optional Numeric Field

pCustno

20A

20A

Customer Number

Appendix A2 - Generic Transaction Data 2 (E9 Only)

These fields are common amongst many of the RPG procedures. In order to reduce pages, these fields are listed here and referred to in the above procedures.

Field

Declaration

Definition

pCompanyId

10A

Company Identifier

pOpt_alpha_1

20A

Optional Text Field

pOpt_4

10I 0

Optional Numeric Field

pOpt_5

10I 0

Optional Numeric Field

pOpt_6

10I 0

Optional Numeric Field

pOpt_7

10I 0

Optional Numeric Field

pOpt_8

10I 0

Optional Numeric Field

pOpt_9

10I 0

Optional Numeric Field

pOpt_10

10I 0

Optional Numeric Field

Appendix B - Generic Returned Tax Information

These fields are common amongst many of the RPG procedures. In order to reduce pages, these fields are listed here and referred to in the above procedures.

Field

EZ Declaration

E9 Declaration

Definition

pRPCode

10U 0 DIM(EZ_RTN_MAX)

10U 0 DIM(TTZ_ARY_MAX)

P Code

pRTaxType

10I 0 DIM(EZ_RTN_MAX)

10U 0 DIM(TTZ_ARY_MAX)

Tax Type

pRTaxLevel

10I 0 DIM(EZ_RTN_MAX)

10U 0 DIM(TTZ_ARY_MAX)

Tax Level

pRCalcType

10I 0 DIM(EZ_RTN_MAX)

10U 0 DIM(TTZ_ARY_MAX)

Calculation type; RATE, FIXED, PER_MINUTE, PER_LINE, SELFTAXING_RATE)

pRRate

11P 6 DIM(EZ_RTN_MAX)

11P 6 DIM(TTZ_ARY_MAX)

Tax Rate

pRTaxAmount

12P 6 DIM(EZ_RTN_MAX)

12P 6 DIM(TTZ_ARY_MAX)

Tax Amount

pRTaxMeasure

12P 6 DIM(EZ_RTN_MAX)

12P 6 DIM(TTZ_ARY_MAX)

Taxable Measure

pRExemptSlsAmt

12P 6 DIM(EZ_RTN_MAX)

12P 6 DIM(TTZ_ARY_MAX)

Exempt Sales Amount

Appendix B2 - Generic Returned Tax Information (E9 Only)

These fields are common amongst many of the RPG procedures. In order to reduce pages, these fields are listed here and referred to in the above procedures.

Field

Declaration

Definition

pRDescription

100A DIM(TTZ_ARY_MAX)

Tax Description

pRBillable

10I 0 DIM(TTZ_ARY_MAX)

Billable Flag from Tax Logic

pRCompliance

10I 0 DIM(TTZ_ARY_MAX)

Compliance Flag from Tax Logic

pRSurChgFlag

10I 0 DIM(TTZ_ARY_MAX)

Surcharge Flag from Tax Logic

pRTaxCatId

10I 0 DIM(TTZ_ARY_MAX)

Tax Category Identifier

pRTaxCatDesc

10A DIM(TTZ_ARY_MAX)

Tax Category Description

Appendix C - Generic Sales and Use Transaction Data

These fields are common amongst many of the RPG procedures. In order to reduce pages, these fields are listed here and referred to in the above procedures.

Field

EZ Declaration

E9 Declaration

Definition

pCustType

10I 0

10I 0

Customer Type (Business, Industrial, …)

pSale

10I 0

10I 0

Sale Type (Retail, Wholesale)

pTransaction

10I 0

10I 0

Transaction Type ID

pService

10I 0

10I 0

Service Type ID

pAttribute

10I0

10I 0

The different types listed under the Property Heading in Table 4-14 of the AFC Sales & Use User Manual.

pAttr_prop_1

10I 0

10I 0

Data fields for the sau_tax_data structure are shown within Public Headers and Modules in the AFC Sales & Use User Manual.

pAttr_prop_2

10I 0

10I 0

Data fields for the sau_tax_data structure are shown within Public Headers and Modules in the AFC Sales & Use User Manual.

pAttr_prop_3

10I 0

10I 0

Data fields for the sau_tax_data structure shown within Public Headers and Modules in the AFC Sales & Use User Manual.

pDate

10I 0

10I 0

Transaction Date

pCharge

10P 4

8F

Charge Amount

pCount

10I 0

10I 0

Item Count

pInCorp

10I 0

10I 0

Incorporated Flag

pFed_Exempt

10I 0

10I 0

Federal Exempt Flag

pSt_Exempt

10I 0

10I 0

State exempt J Code

pCo_Exempt

10I 0

10I 0

County Exempt Flag

pLoc_Exempt

10I 0

10I 0

Local Exempt Flag

pFed_JCode

10U 0

10U 0

Federal Exempt J Code

pSt_JCode

10U 0

10U 0

State exempt J Code

pCo_JCode

10U 0

10U 0

County Exempt Flag

pLoc_JCode

10U 0

10U 0

Local Exempt J Code

pSpe_Count

10I 0

10I 0

Special Exemption Counts

pSpe_Tax_Type

10I 0 DIM(EZ_SPE_MAX)

10I 0 DIM(E9_SPE_MAX)

Special Exemption Tax Type

pSpe_Tax_Level

10I 0 DIM(EZ_SPE_MAX)

10I 0 DIM(E9_SPE_MAX)

Special Exemption Tax Level

pSpe_JCode

10U 0 DIM(EZ_SPE_MAX)

10I 0 DIM(E9_SPE_MAX)

Special Exemption J Code

pInvno

10I 0

10I 0

Invoice Number

pOptional

10I 0

10I 0

Optional Numeric Field

pCustno

20A

20A

Customer Number

pCompanyId

20A

20A

Company Identifier

pOpt_alpha_1

20A

20A

Optional Text Field

pOpt_4

10I 0

10I 0

Optional Numeric Field

pOpt_5

10I 0

10I 0

Optional Numeric Field

pOpt_6

10I 0

10I 0

Optional Numeric Field

pOpt_7

10I 0

10I 0

Optional Numeric Field

pOpt_8

10I 0

10I 0

Optional Numeric Field

pOpt_9

10I 0

10I 0

Optional Numeric Field

pOpt_10

10I 0

10I 0

Optional Numeric Field

pNexusCount

10I 0

10I 0

Nexus Array Count

pNexusStates

3A DIM(EZ_NXS_DIM)

3A DIM(E9_NXS_MAX)

Nexus State Identifier

pHasNexus

10I 0 DIM(EZ_NXS_DIM)

10I 0

DIM(E9_NXS_MAX)

Nexus Flag

Appendix D - Generic Sales and Use Returned Tax Information

These fields are common amongst many of the RPG procedures. In order to reduce pages, these fields are listed here and referred to in the above procedures.

Field

EZ Declaration

E9 Declaration

Definition

pRPCode

10U 0 DIM(EZ_NXS_MAX)

10U 0 DIM(TTZ_ARY_MAX)

P Code

pRTaxType

10I 0 DIM(EZ_NXS_MAX)

10I 0 DIM(TTZ_ARY_MAX)

Tax Type

pRTaxLevel

10I 0 DIM(EZ_NXS_MAX)

10I 0 DIM(TTZ_ARY_MAX)

Tax Level

pRCalcType

10I 0 DIM(EZ_NXS_MAX)

10I 0 DIM(TTZ_ARY_MAX)

Calculation type; RATE, FIXED, PER_MINUTE, PER_LINE, SELFTAXING_RATE)

pRRate

11P 6 DIM(EZ_NXS_MAX)

11P 6 DIM(TTZ_ARY_MAX)

Tax Rate

pRTaxAmt

12P 6 DIM(EZ_NXS_MAX)

8F DIM(50)

Tax Amount

pRTaxMeasure

12P 6 DIM(EZ_NXS_MAX)

8F DIM(50)

Taxable Measure

pRExemptSlsAmt

12P 6 DIM(EZ_NXS_MAX)

8F DIM(50)

Exempt Sales Amount

pRTaxDesc

100A DIM(EZ_NXS_MAX)

100A DIM(TTZ_ARY_MAX)

Tax Description

pRBillableFlag

12P 6 DIM(EZ_NXS_MAX)

12P 6 DIM(TTZ_ARY_MAX)

Billable Flag from Tax Logic

pRComplanceFlag

EZ_NXS_MAX

12P 6 DIM(TTZ_ARY_MAX)

Compliance Flag from Tax Logic

pRSurchargeFlag

12P 6 DIM(EZ_NXS_MAX)

12P 6 DIM(TTZ_ARY_MAX)

Surcharge Flag from Tax Logic

pRTVCalcType

12P 6 DIM(EZ_NXS_MAX)

12P 6 DIM(TTZ_ARY_MAX)

For special use only

pRTVSurCharge

12P 6 DIM(EZ_NXS_MAX)

12P 6 DIM(TTZ_ARY_MAX)

For special user only

pRTaxCatId*

10I 0 DIM(EZ_NXS_MAX)

10I 0 DIM(TTZ_ARY_MAX)

Tax Category Identifier

pRTaxCatDesc*

100A DIM(EZ_NXS_MAX)

100A DIM(TTZ_ARY_MAX)

Tax Category Description

*Indicates the parameter is only applicable or specific to the E9 prototypes.

Appendix E - Sample Routine

Avalara provides a sample program for customer reference. The program source is located in the T10336A91 member of the COPYSRC file. The file is located in the AFC library specified at installation. By default, the file is located in EZTAX_DB9.

Appendix F - Sample Sales and Use Program

The following sample program demonstrates use of AFC Sales and Use functions. In addition to the text version located below, Avalara provides a softcopy version for customer convenience. The softcopy version resides in the SAUSAMPLE member of the COPYSRC file. The file is locaed in the AFC library specified at installation. By default, the file is locaed in EZTAX_DB9.

************************************************************************** 
**                                                                       * 
** Use of the Licensed Product is covered by warranty, including         * 
** warranty disclaimer, and liability provisions in the license          * 
** agreement between Avalara, Inc. and Customer; any warranty            * 
** provided for the Licensed Product shall not be deemed to apply        * 
** to this or any other code example. BillSoft expressly disclaims       * 
** all warranties of any kind including, without limitation, warranties  * 
** of merchantability or fitness for a particular purpose. The code      * 
** example is for Customer's use only. Customer assumes all              * 
** responsibilities regarding the use or adaptation of this code         * 
** example and acknowledges that use of such code example is at          * 
** Customer's own risk.                                                  * 
**                                                                       * 
** Use of this code example constitutes acceptance of the aforesaid      * 
** terms, conditions, and limitations; Customer hereby releases          * 
** Avalara, Inc., its employees, directors, affiliates and assigns       * 
** from any and all financial or legal responsibility, implied or        * 
** explicit.                                                             * 
**                                                                       * 
************************************************************************** 
**                                                                       * 
** Copyright 2017 by Avalara, Inc.                                       * 
** All Rights Reserved. No part of this publication may be reproduced,   * 
** stored in a retrieval system, or transmitted, in any form, by any     * 
** means, without the prior written permission of the publisher.         * 
**                                                                       * 
************************************************************************** 
//------------------------------------------------------------------------ 
// Program. . . : Sales and Use Sample Program 
// Author . . . : Bill DeArmond 
// Date . . : 12/08/08 
//----------------------------------------------------------------------- 
// Updates: 
// TFS 5419 07/18/2013 MAMOS Add ability to handle charges >$1M 
// using floating point instead of packed. 
//------------------------------------------------------------------------ 
Fqsysprt o f 132 printer oflind(*inof) 

/copy copysrc,E9_PROTO 
/copy copysrc,EZ_PROTO 

d pE9AdjMethod s like(guZAdjMethod) 
d pE9attribute s like(guZAttribute) 
d pE9attrprop1 s like(guZAttrProp1) 
d pE9attrprop2 s like(guZAttrProp2) 
d pE9attrprop3 s like(guZAttrProp3) 
d pE9attrprop4 s like(guZAttrProp4) 
d pE9BtnCode s like(guZBTNCode) 
d pE9Business s like(guZBusiness) 
d pE9Charge s like(guZCharge) 
d pE9CoExempt s like(guZCoExempt) 
d pE9CoJCode s like(guZCoJCode) 
d pE9Company s like(guZCompany) 
d pE9toCountry s like(guZToCountry) 
d pE9Count s like(guZCount) 
d pE9CustNo s like(guZCustNo) 
d pE9Date s like(guZDate) 
d pE9FedExempt s like(guZFedExempt) 
d pE9FedJCode s like(guZFedJCode) 
d pE9Fob s like(guZFOB) 
d pE9FromCountry s like(guZFromCountry) 
d pE9FromCounty s like(guZFromCounty) 
d pE9FromFips s like(guZFromFips) 
d pE9FromLocal s like(guZFromLocal) 
d pE9FromState s like(guZFromState) 
d pE9FromZip s like(guZFromZip) 
d pE9FromZipP4 s like(guZFromZipP4) 
d pE9Hasnexus s like(guZHasNexus) 
d DIM(%elem(guZHasNexus)) 
d pE9Incorp s like(guZIncorp) 
d pE9InvNo s like(guZInvNo) 
d pE9Lines s like(guZLines) 
d pE9Locations s like(guZLocations) 
d pE9LocExempt s like(guZLocExempt) 
d pE9LocJCode s like(guZLocJCode) 
d pE9Minutes s like(guZMinutes) 
d pE9NxsState s like(guZNxsState) 
d DIM(%elem(guZNxsState)) 
d pE9Opt10 s like(guZOpt10) 
d pE9opt4 s like(guZOpt4) 
d pE9opt5 s like(guZOpt5) 
d pE9opt6 s like(guZOpt6) 
d pE9Opt7 s like(guZOpt7) 
d pE9Opt8 s like(guZOpt8) 
d pE9Opt9 s like(guZOpt9) 
d pE9OptAlpha1 s like(guZOptAlpha1) 
d pE9Optional s like(guZOptional) 
d pE9OrigCode s like(guZBTNOrigCode) 
d pE9Percent s like(guZPercent) 
d pE9Regulated s like(guZRegulated) 
d pE9Sale s like(guZSale) 
d pE9Service s like(guZService) 
d pE9SPECount s like(guZSPECount) 
d pE9SPEJCode s like(guZSPEJCode) 
d DIM(%elem(guZSPEJCode)) 
d pE9SPETaxLvl s like(guZSPETaxLvl) 
d DIM(%elem(guZSPETaxLvl)) 
d pE9SPETaxType s like(guZSPETaxType) 
d DIM(%elem(guZSPETaxType)) 
d pE9SrvLvlNo s like(guZSrvLvlNo) 
d pE9StExempt s like(guZStExempt) 
d pE9StJCode s like(guZStJCode) 
d pE9TermCode s like(guZBTNTermCode) 
d pE9toCounty s like(guZToCounty) 
d pE9ToFips s like(guZToFips) 
d pE9toLocal s like(guZToLocal) 
d pE9toState s like(guZToState) 
d pE9toZip s like(guZToZip) 
d pE9toZipP4 s like(guZToZipP4) 
d pE9Trans s like(guZTrans) 
d pE9SessionPtr s like(guZSessionPtr) 
d pERBillable s like(ttZBillable) 
d DIM(%elem(ttZBillable)) 
d pERCalcType s like(ttZCalcType) 
d DIM(%elem(ttZCalcType)) 
d pERCompliance s like(ttZComplianc) 
d DIM(%elem(ttZComplianc)) 
d pERExemptSales s like(ttZExemptSales) 
d DIM(%elem(ttZExemptSales)) 
d pE9RError s like(guZError) 
d pERJCode s like(ttZPCode) 
d DIM(%elem(ttZPCode)) 
d pERRate s like(ttZRate) 
d DIM(%elem(ttZRate)) 
d pERSurchgFlg s like(ttZSurchgFlg) 
d DIM(%elem(ttZSurchgFlg)) 
d pERTaxAmount s like(ttZTaxAmount) 
d DIM(%elem(ttZTaxAmount)) 
d pERTaxDesc s like(ttZTaxDesc) 
d DIM(%elem(ttZTaxDesc)) 
d pERTaxLevel s like(ttZTaxLevel) 
d DIM(%elem(ttZTaxLevel)) 
d pERTaxMeasure s like(ttZTaxMeasure) 
d DIM(%elem(ttZTaxMeasure)) 
d pERTaxType s like(ttZTaxType) 
d DIM(%elem(ttZTaxType)) 
d pERTVCalcTypId s like(ttZTVCalcTypId) 
d DIM(%elem(ttZTVCalcTypId)) 
d pERTVSurChg s like(ttZTVSurchg) 
d DIM(%elem(ttZTVSurchg)) 
d pERTaxCatDesc s like(ttZTaxCatDesc) 
d DIM(%elem(ttZTaxCatDesc)) 
d pERTaxCatId s like(ttZTaxCatId) 
d DIM(%elem(ttZTaxCatId)) 
d pEZSAUTrans s like(guZTrans) 
d pEZSAUService s like(guZService) 
d ii s 3 0 
d Answer s 5i 0 
d rTaxAmount s 12p 2 
d rTaxMeasure s 12p 2 
d rExemptAmount s 12p 2 
d wMsg s 55 
d rCharge s 12p 2 
d rJCode s 10U 0 
d rTaxRate s 11P 6 
d rTaxType s 3 0 
d rTaxLvl s 1 0 
d rCalcType s 1 0 
d Result s 4p 0 
D Yes c '1' 
d No c '0' 
d False c 0 
d True c 1 
*------------------------------------------------------------------------- 
/FREE 
// The size value (48 in this instance) must be larger than # chars 
// in the string. The single characters below will be overwritten 
// with the null character. 
// Insert your directory path names 
%str(pipZTaxLog:48) = '/tmp/EZTax/EZTaxSAUSample.LOG'; 
%str(pipZstatus:48) = '/tmp/EZTax/EZTaxSAUSample.STA'; 
%str(pipZWkDir:32) = '/home/gt1m/prod/'; 
piZLogging = 1; 
// File paths must be valid paths or NULL pointer. 
// Valid paths must be terminated with a null character. 
// To terminate with a null character, either use %str 
// or concatenate the null character x'00'. 
pipZdata = *NULL; 
pipZidx = *NULL; 
pipZdll = *NULL; 
pipZnpan = *NULL; 
pipZtemp = *NULL; 
pipZlocation = *NULL; 
pipZzip = *NULL; 
pipZcust_key = *NULL; 
pipZpcode = *NULL; 
pipZjcode = *NULL; 
pipZover = *NULL; 
Except Header; 
Result = E9_INITV98_EX(pE9SessionPtr:piZlogging:pipZdata: pipZidx:pipZdll:pipZTaxLog:pipZnpan:pipZstatus:pipZtemp: 
    pipZlocation:pipZzip:pipZcust_key:pipZpcode:pipZjcode: pipZover:pipZWkDir); 

if Result = -1; 
wMsg = 'E9_INITV98_EX: Session Initialization Failed.'; 
endif; 

if Result = -2; 
    wMsg = 'E9_INITV98_EX: Working Directory missing or invalid.'; 
endif; 

if Result = -3; 
    wMsg = 'E9_INITV98_EX: Tax Table Allocation Failed.'; 
endif; 

if Result = -4; 
    wMsg = 'E9_INITV98_EX: Invalid first character in a path.'; 
    except initmsgw; 
    wMsg = 'The first character cannot be null or blank.'; 
    except initmsgw; 
    wMsg = 'Supply either a NULL pointer or a valid path.'; 
endif; 

if Result < 0; 
    except initmsgw; 
    *InLR = *on; 
    return; 
endif; 

Exsr sSetDefaultCDR; 
Except header2; 

pE9BtnCode = 3743800; 
pE9OrigCode = 3743800; 
pE9TermCode = 3743800; 
Exsr s9PCodes; 

pE9BtnCode = 3743800; 
pE9OrigCode = 3743800; 
pE9TermCode = 3743800; 

clear pERTaxDesc; 
Exsr s9PCodes; 

// Insure that character arrays are set to blanks before re-use! 
pE9OptAlpha1 = *BLANKS; 
pE9OptAlpha1 = 'JCode testing.'; 

pE9BtnCode = E9_PTOJ_EX(pE9SessionPtr:pE9BtnCode:pE9RError); 
pE9TermCode = pE9BtnCode; 
pE9OrigCode = pE9BtnCode; 
Exsr s9JCodes; 

pE9OptAlpha1 = *BLANKS; 
pE9OptAlpha1 = 'Zip Code testing.'; 

pE9BtnCode = 415069; 
pE9OrigCode = 415069; 
pE9TermCode = 415069; 
pE9toZip = '79901'; 
pE9toZipP4 = '1000'; 
pE9toCountry = 'USA'; 
pE9toState = 'TX'; 
pE9toCounty = 'El Paso'; 
pE9toLocal = 'El Paso'; 
pE9FromZip = '79901'; 
pE9FromZipP4 = '1000'; 
pE9FromCountry = 'USA'; 
pE9FromState = 'TX'; 
pE9FromCounty = 'El Paso'; 
pE9FromLocal = 'El Paso'; 
Exsr s9Zips; 

pE9FromFips = '4814114925'; 
pE9ToFips = '4814114925'; 

Exsr s9Fips; 

// Flush the buffers, gracefully end sessions and exit. 
// Without this the Process Access Group may not clean up well. 
answer = E9_EXITSS_EX(pE9SessionPtr); 

*InLR = Yes; 
return; 

//----------------------------------------------------------------------- 
//----------------------------------------------------------------------- 
Begsr sSetDefaultCDR; 

pE9fob = 1; 
pE9attribute = 0; 
pE9attrprop1 = 0; 
pE9attrprop2 = 0; 
pE9attrprop3 = 0; 
pE9attrprop4 = 0; 
pE9Business = False; 
pE9Sale = True; 
pE9Regulated = True; 
pE9TRANS = 13; 
pE9SERVICE = 6; 
pEZSAUTrans = 45; //Services-Cleaning 
pEZSAUService = 400; //Solid Waste Disposal 
pE9DATE = 20120805; //Date of charge 
pE9CHARGE = 1000000.00; // Charge amount 
rCharge = pE9Charge; 
pE9MINUTES = 200; 
pE9LINES = 1; 
pE9LOCATIONS = 0; 
pE9INCORP = True; 
pE9FEDEXEMPT = False; 
pE9STExempt = False; 
pE9COEXEMPT = False; 
pE9LOCEXEMPT = False; 
pE9FEDJCODE = 0; 
pE9STJCODE = 0; 
pE9COJCODE =0; 
pE9LOCJCODE = 0; 
pE9SPECOUNT = 0; 
pE9SPETAXTYPE = 0; 
pE9SPETAXLVL = 0; 
pE9SPEJCODE = 0; 
pE9INVNO = 0; 
pE9SRVLVLNO = 0; 
pE9OPTIONAL = 0; 
pE9CUSTNO = *blank; 
pE9OptAlpha1 = 'First test set.'; 
pE9Company = 'AAA EZTax Testing'; 

Endsr; 
//----------------------------------------------------------------------- 

Begsr sPrtDetail; 
    except sectionHdr; 
    for ii=1 by 1 to answer; 
        rJCode = pERJCode(ii); 
        rTaxRate = pERRate(ii); 
        rTaxType = pERTaxType(ii); 
        rTaxLvl = pERTaxLevel(ii); 
        rCalcType = pERCalcType(ii); 
        rTaxAmount = pERTaxAmount(ii); 
        rTaxMeasure = pERTaxMeasure(ii); 
        rExemptAmount = pERExemptSales(ii); 
        except detail9; 
    endfor; 
Endsr; 

//----------------------------------------------------------------------- 
Begsr sPrtResults; 
    except ezsep; 
    except E9Msg; 
    except E9head; 
    exsr sPrtDetail; 
Endsr; 

//----------------------------------------------------------------------- 
Begsr sPrtResultsF; 
    except ezsep; 
    except E9Msg; 
    except E9headF; 
    exsr sPrtDetail; 
Endsr; 

//----------------------------------------------------------------------- 
Begsr sPrtResultsZ; 
    except ezsep; 
    except E9Msg; 
    except E9headZ; 
    exsr sPrtDetail; 
Endsr; 

//----------------------------------------------------------------------- 
Begsr s9PCodes; 
answer = E9_SAU_PCODE(pE9SessionPtr:pE9Fob:pE9BTNCode:pE9TermCode: pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService:pE9Attribute: 
    pE9AttrProp1: pE9AttrProp2: pE9AttrProp3:pE9AttrProp4: pE9Date: pE9Charge: pE9Count: pE9Incorp:pE9FedExempt: 
    pE9StExempt:pE9CoExempt:pE9LocExempt:pE9FedJCode:pE9StJCode: pE9CoJCode:pE9LocJCode:pE9SPECount:0:pE9SPETaxType:pE9SPETaxLvl: 
    pE9SPEJCode:pE9Invno:pE9Optional:pE9CustNo:pE9Company: pE9Optalpha1: pE9opt4: pE9opt5: pE9opt6:pE9Opt7: pE9Opt8: 
    pE9Opt9: pE9Opt10:0: pE9NxsState:pE9Hasnexus:pERJCode:pERTaxType: pERTaxLevel:pERcalcType:pERRate: pERTaxAmount:pERTaxMeasure: 
    pERExemptSales:pERTaxDesc:pERBillable:pERCompliance:pERSurchgFlg: pERTVCalcTypId: pERTVSurChg:pERTaxCatId:pERTaxCatDesc:pE9RError); 
wMsg = 'E9_SAU_PCODE'; 
exsr sPrtResults; 

answer = E9_SAU_ADJ_P(pE9SessionPtr:pE9Fob:pE9BTNCode:pE9TermCode: pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService:pE9Attribute: 
    pE9AttrProp1: pE9AttrProp2: pE9AttrProp3:pE9AttrProp4: pE9Date: pE9Charge: pE9Count: pE9Incorp:pE9FedExempt: 
    pE9StExempt:pE9CoExempt:pE9LocExempt:pE9FedJCode:pE9StJCode: pE9CoJCode:pE9LocJCode:pE9SPECount:0:pE9SPETaxType: 
    pE9SPETaxLvl:pE9SPEJCode:pE9Invno:pE9Optional:pE9CustNo: pE9Company:pE9Optalpha1:pE9opt4:pE9opt5:pE9opt6:pE9Opt7: 
    pE9Opt8:pE9Opt9:pE9Opt10:0:pE9NxsState:pE9Hasnexus:pERJCode: pERTaxType:pERTaxLevel:pERcalcType:pERRate: pERTaxAmount: 
    pERTaxMeasure:pERExemptSales:pERTaxDesc:pERBillable: pERCompliance:pERSurchgFlg:pERTVCalcTypId:pERTVSurChg: 
    pERTaxCatId:pERTaxCatDesc:pE9AdjMethod:pE9RError); wMsg = 'E9_SAU_ADJ_P'; 
    exsr sPrtResults; 
Endsr; 

//----------------------------------------------------------------------- 
//--------------------------------------------------------------------- 
Begsr s9JCodes; 
answer = E9_SAU_JCODE(pE9SessionPtr:pE9Fob:pE9BTNCode:pE9TermCode: pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService:pE9Attribute: 
    pE9AttrProp1: pE9AttrProp2: pE9AttrProp3:pE9AttrProp4: pE9Date: pE9Charge: pE9Count: pE9Incorp:pE9FedExempt: 
    pE9StExempt:pE9CoExempt:pE9LocExempt:pE9FedJCode:pE9StJCode: pE9CoJCode:pE9LocJCode:pE9SPECount:0:pE9SPETaxType: 
    pE9SPETaxLvl:pE9SPEJCode:pE9Invno:pE9Optional:pE9CustNo: pE9Company:pE9Optalpha1:pE9opt4:pE9opt5:pE9opt6:pE9Opt7:pE9Opt8: 
    pE9Opt9:pE9Opt10:0: pE9NxsState:pE9Hasnexus:pERJCode:pERTaxType: pERTaxLevel:pERcalcType:pERRate:pERTaxAmount:pERTaxMeasure: 
    pERExemptSales:pERTaxDesc: pERBillable: pERCompliance: pERSurchgFlg:pERTVCalcTypId: pERTVSurChg:pERTaxCatId: pERTaxCatDesc: pE9RError); 

wMsg = 'E9_SAU_JCODE'; 
exsr sPrtResults; 

answer = E9_SAU_ADJ_J(pE9SessionPtr:pE9Fob:pE9BTNCode:pE9TermCode: pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService:pE9Attribute: 
    pE9AttrProp1:pE9AttrProp2:pE9AttrProp3:pE9AttrProp4:pE9Date: pE9Charge:pE9Count:pE9Incorp:pE9FedExempt:pE9StExempt: 
    pE9CoExempt:pE9LocExempt:pE9FedJCode:pE9StJCode:pE9CoJCode: pE9LocJCode:pE9SPECount:0:pE9SPETaxType:pE9SPETaxLvl: 
    pE9SPEJCode:pE9Invno:pE9Optional:pE9CustNo:pE9Company: pE9Optalpha1:pE9opt4:pE9opt5:pE9opt6:pE9Opt7:pE9Opt8: 
    pE9Opt9:pE9Opt10:0:pE9NxsState:pE9Hasnexus:pERJCode: pERTaxType:pERTaxLevel:pERcalcType:pERRate:pERTaxAmount: 
    pERTaxMeasure:pERExemptSales:pERTaxDesc:pERBillable: pERCompliance:pERSurchgFlg:pERTVCalcTypId:pERTVSurChg: 
    pERTaxCatId:pERTaxCatDesc:pE9AdjMethod:pE9RError); 

wMsg = 'E9_SAU_ADJ_J'; 
exsr sPrtResults; 
Endsr; 

//--------------------------------------------------------------------- 
//----------------------------------------------------------------------- 
Begsr s9Zips; 
answer = E9_SAU_ZIP(pE9SessionPtr:pE9Fob:pE9FromZip:pE9FromZipP4: pE9FromCountry:pE9FromState:pE9FromCounty:pE9FromLocal: 
    pE9ToZip:pE9ToZipP4:pE9ToCountry:pE9ToState:pE9tocounty: pE9tolocal:pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService: 
    pE9Attribute:pE9AttrProp1:pE9AttrProp2:pE9AttrProp3: pE9AttrProp4:pE9Date:pE9Charge:pE9Count:pE9Incorp: 
    pE9FedExempt:pE9StExempt:pE9CoExempt:pE9LocExempt: pE9FedJCode:pE9StJCode:pE9CoJCode:pE9LocJCode:pE9SPECount: 
    0:pE9SPETaxType:pE9SPETaxLvl:pE9SPEJCode:pE9Invno: pE9Optional:pE9CustNo:pE9Company:pE9Optalpha1:pE9opt4: 
    pE9opt5:pE9opt6:pE9Opt7:pE9Opt8:pE9Opt9:pE9Opt10:0: pE9NxsState:pE9Hasnexus:pERJCode:pERTaxType:pERTaxLevel: 
    pERcalcType:pERRate:pERTaxAmount:pERTaxMeasure: pERExemptSales:pERTaxDesc:pERBillable:pERCompliance: 
    pERSurchgFlg:pERTVCalcTypId:pERTVSurChg:pERTaxCatId: pERTaxCatDesc:pE9RError); 

wMsg = 'E9_SAU_ZIP'; 
exsr sPrtResultsZ; 

answer = E9_SAU_ADJ_Z(pE9SessionPtr:pE9Fob:pE9FromZip:pE9FromZipP4: pE9FromCountry:pE9FromState:pE9FromCounty:pE9FromLocal: 
    pE9ToZip:pE9ToZipP4:pE9ToCountry:pE9ToState:pE9tocounty: pE9tolocal:pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService: 
    pE9Attribute:pE9AttrProp1:pE9AttrProp2:pE9AttrProp3: pE9AttrProp4:pE9Date:pE9Charge:pE9Count:pE9Incorp: 
    pE9FedExempt:pE9StExempt:pE9CoExempt:pE9LocExempt: pE9FedJCode:pE9StJCode:pE9CoJCode:pE9LocJCode:pE9SPECount: 
    0:pE9SPETaxType:pE9SPETaxLvl:pE9SPEJCode:pE9Invno: pE9Optional:pE9CustNo:pE9Company:pE9Optalpha1:pE9opt4: 
    pE9opt5:pE9opt6:pE9Opt7:pE9Opt8:pE9Opt9:pE9Opt10:0: pE9NxsState:pE9Hasnexus:pERJCode:pERTaxType:pERTaxLevel: 
    pERcalcType:pERRate:pERTaxAmount:pERTaxMeasure:pERExemptSales: pERTaxDesc:pERBillable:pERCompliance:pERSurchgFlg: 
    pERTVCalcTypId:pERTVSurChg:pERTaxCatId:pERTaxCatDesc: pE9AdjMethod:pE9RError); 

wMsg = 'E9_SAU_ADJ_Z'; 
exsr sPrtResultsZ; 
Endsr; 

//----------------------------------------------------------------------- 
//----------------------------------------------------------------------- 
Begsr s9Fips; 

answer = E9_SAU_FIPS(pE9SessionPtr:pE9Fob:pE9FromFIPS:pE9ToFIPS: pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService:pE9Attribute: 
    pE9AttrProp1:pE9AttrProp2:pE9AttrProp3:pE9AttrProp4:pE9Date: pE9Charge:pE9Count:pE9Incorp:pE9FedExempt:pE9StExempt: 
    pE9CoExempt:pE9LocExempt:pE9FedJCode:pE9StJCode:pE9CoJCode: pE9LocJCode:pE9SPECount:0:pE9SPETaxType:pE9SPETaxLvl: 
    pE9SPEJCode:pE9Invno:pE9Optional:pE9CustNo:pE9Company: pE9Optalpha1:pE9opt4:pE9opt5:pE9opt6:pE9Opt7:pE9Opt8:pE9Opt9: 
    pE9Opt10:0:pE9NxsState:pE9Hasnexus:pERJCode:pERTaxType: pERTaxLevel:pERcalcType:pERRate:pERTaxAmount:pERTaxMeasure: 
    pERExemptSales:pERTaxDesc:pERBillable:pERCompliance:pERSurchgFlg: pERTVCalcTypId:pERTVSurChg:pERTaxCatId:pERTaxCatDesc:pE9RError); 

wMsg = 'E9_SAU_FIPS'; 
exsr sPrtResultsF; 

answer = E9_SAU_ADJ_F(pE9SessionPtr:pE9Fob:pE9FromFIPS:pE9ToFIPS: pE9Business:pE9Sale:pEZSAUTrans:pEZSAUService:pE9Attribute: 
    pE9AttrProp1:pE9AttrProp2:pE9AttrProp3:pE9AttrProp4:pE9Date: pE9Charge:pE9Count:pE9Incorp:pE9FedExempt:pE9StExempt: 
    pE9CoExempt:pE9LocExempt:pE9FedJCode:pE9StJCode:pE9CoJCode: pE9LocJCode:pE9SPECount:0:pE9SPETaxType:pE9SPETaxLvl:pE9SPEJCode: 
    pE9Invno:pE9Optional:pE9CustNo:pE9Company:pE9Optalpha1:pE9opt4: pE9opt5:pE9opt6:pE9Opt7:pE9Opt8:pE9Opt9:pE9Opt10:0:pE9NxsState: 
    pE9Hasnexus:pERJCode:pERTaxType:pERTaxLevel:pERcalcType:pERRate: pERTaxAmount:pERTaxMeasure:pERExemptSales:pERTaxDesc:pERBillable: 
    pERCompliance:pERSurchgFlg:pERTVCalcTypId:pERTVSurChg: pERTaxCatId:pERTaxCatDesc:pE9AdjMethod: pE9RError); 

wMsg = 'E9_SAU_ADJ_F'; 
exsr sPrtResultsF; 
Endsr; 

//----------------------------------------------------------------------- 
//----------------------------------------------------------------------- 
//----------------------------------------------------------------------- 
/END-FREE 
//----------------------------------------------------------------------- 
Oqsysprt e header 2 06 
O 40 'EZTax SAU Sample Program' 
O e sectionHdr 01 
O 9 'PCode' 
O +2 'Lvl/Type' 
O +7 'Rate' 
O +10 'Amount' 
O +10 'Tax Msr' 
O +9 'ExmptSlsAmt' 
O +4 'CalcType' 
O e initmsgw 01 01 
O +0 'Error: ' 
O Result j +0 
O +0 ' Msg: ' 
O wMsg +1 
O e detail9 01 
O rJCode l +1 
O rTaxLvl l +0 
O rTaxType z +0 
O rTaxRate j +1 
O rTaxAmount j +0 
O rTaxMeasure j +0 
O rExemptAmount j +0 
O rCalcType j +7 
O e E9head 01 
O +5 'Input:' 
O pE9BTNCode z +1 
O +0 ':' 
O pE9OrigCode z +0 
O +0 ':' 
O pE9TermCode z +0 
O pEZSAUTrans z +0 
O +0 '/' 
O pEZSAUService z +0 
O e header2 02 
O +5 'Charge: ' 
O rCharge j +1 
O +0 ' - Date: ' 
O pE9DATE z +0 
O e E9headZ 01 
O +5 'Input:' 
O pE9FromZip +1 
O +0 ':' 
O pE9FromState +0 
O +0 ':' 
O pE9FromLocal +0 
O pEZSAUTrans z +0 
O +0 '/' 
O pEZSAUService z +0 
O e E9headF 01 
O +5 'Input:' 
O pE9FromFips +1 
O +0 ':' 
O pE9ToFips +0 
O pEZSAUTrans z +4 
O +0 '/' 
O pEZSAUService z +0 
O e E9msg 01 01 
O +0 '# Taxes: ' 
O answer j +0 
O +0 'Msg: ' 
O wMsg +1 
O +0 ' Error: ' 
O pE9RError j +0 
O e ezsep 01 
O +0 '=========================' 
O +0 '+++++++++++++++++++++++++' 
O +0 '=========================' 
O +0 '+++++++++++++++++++++++++' 
O +0 '=========================' 
  • Was this article helpful?