Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ELECTRONIC TAX PAYMENT SYSTEM
Document Type and Number:
WIPO Patent Application WO/1999/006931
Kind Code:
A1
Abstract:
According to the invention, a method and apparatus are provided for facilitating the electronic submission of batch input to a tax system, such as the Electronic Federal Tax Payment System (EFTPS). Embodiments of the invention import and validate the data necessary to initiate enrollments and submit tax payments using a personal computer. Embodiments of the invention include a communications module that transmits enrollment and payment transactions to the EFTPS and receives transaction confirmations or error messages in response.

Inventors:
DONLAVAGE LISA H
SWANSON DOUGLAS
Application Number:
PCT/US1998/014664
Publication Date:
February 11, 1999
Filing Date:
July 20, 1998
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FIRST DATA CORP (US)
International Classes:
G06Q40/00; G06Q99/00; (IPC1-7): G06F17/60
Foreign References:
US5193057A1993-03-09
US5138549A1992-08-11
Other References:
SRAEEL H: "Paying Uncle Sam electronically: banks, corporates plan for EFTPS", BANK SYSTEMS + TECHNOLOGY, JAN. 1995, USA, vol. 32, no. 1, ISSN 1045-9472, pages 20, 22, XP002085618
STEINBORN D: "NAFTA also brings you electronic taxes", ABA BANKING JOURNAL, JULY 1994, USA, vol. 86, no. 7, ISSN 0194-5947, pages 66, 68 - 69, XP002085619
Attorney, Agent or Firm:
Thomson Jr., William E. (Doyle Brown & Enersen Three Embarcadero Center San Francisco, CA, US)
Download PDF:
Claims:
CLAIMS What is claimed is:
1. A method for facilitating electronic payment of taxes, comprising the steps of : (a) identifying, on a first computer, a file including tax data for a taxpayer; (b) validating that said tax data meets predefined criteria; and (c) sending said file to a second computer, said second computer enabling electronic payment of taxes by said taxpayer.
2. The method of claim 1 wherein said first computer is a personal computer.
3. The method of claim 1 wherein said second computer is a server for an electronic tax payment system.
4. The method of claim 3 wherein said server is a transaction processing server for an electronic federal tax payment system.
5. The method of claim 1 wherein said file includes tax data for a plurality of taxpayers.
6. The method of claim 1 wherein said first computer includes a communications module, wherein said communications module is preconfigured with a parameter for communications with said second computer.
7. The method of claim 6 wherein said parameter is an IP address of said second computer.
8. The method of claim 6 wherein said parameter is a port number of said second computer.
9. The method of claim 1 wherein said predefined criteria includes a data format edit.
10. The method of claim 9 wherein said data format edit is a nine digit taxpayer identification number (TIN).
11. The method of claim 9 wherein said data format edit is a four digit taxpayer personal identification number (PIN).
12. The method of claim 1 wherein said predefined criteria includes a data content edit.
13. The method of claim 12 wherein said data content edit is a valid settlement date.
14. The method of claim 12 wherein said data content edit is valid tax type code.
15. The method of claim 12 wherein said data content edit is valid tax period.
16. The method of claim 1 wherein said enabling electronic payment of taxes includes enrolling said taxpayer for future payments.
17. The method of claim 1 wherein said enabling electronic payment of taxes includes initiating electronic payment.
18. A method for precluding electronic payment of taxes, comprising the steps of : (a) identifying, on a first computer, a file including tax data for a taxpayer; (b) validating that said tax data meets predefined criteria; and (c) sending said file to a second computer, said second computer disabling electronic payment of taxes by said taxpayer.
19. A system for facilitating electronic payment of taxes, comprising: (a) control logic configured to identify, on a first computer, a file including tax data for a taxpayer; (b) control logic configured to validate that said tax data meets pre defined criteria; and (c) control logic configured to send said file to a second computer, said second computer enabling electronic payment of taxes by said taxpayer.
Description:
ELECTRONIC TAX PAYMENT SYSTEM Field of the Invention The present invention relates to the entry of tax data into a computer system and, more particularly, to the remote batch entry of multiple taxpayer enrollment and tax payment transactions into the Internal Revenue Service's Electronic Federal Tax Payment System.

Background of the Invention The Electronic Federal Tax Payment System (EFTPS) is an automated system for remitting federal tax payments to the Internal Revenue Service (IRS). The EFTPS accepts and processes information for all types of federal tax payments from individuals, businesses, and third party filers (e. g., payroll processors, banks, or other fiduciaries that specialize in tax preparation and payment submittal on behalf of others). The IRS and the Federal Management Service selected two banks to implement the EFTPS. Each bank, acting as a Treasury Financial Agent (TFA), has jurisdiction over a specific geographic region. Based on their principle location, electronic filers are assigned to the TFA that handles the region in which the filer is located. Each TFA operates a Transaction Processing Server (TPS) on which its EFTPS application runs. The EFTPS application accepts electronic payments, passes the payment details to the IRS, and initiates the electronic transfer of funds into the United States Treasury account.

Prior to remitting federal tax payments electronically, a taxpayer must be enrolled in the system. Once enrolled, the taxpayer (or a third party filer acting on the taxpayer's behalf) uses a front end interface to the EFTPS to submit the information necessary to make payments. Several front end interfaces are presently available for communicating with the EFTPS.

One interface, the"Audio Response Unit" (ARU), accepts payment data over a touch tone telephone. The ARU collects the data related to a single payment through a series of prompts. Each payment transaction takes about two to three minutes to complete. While the ARU can accept multiple transactions in one session, it is an inefficient system for third party filers who submit more than ten transactions per day.

Therefore, another front end interface to the EFTPS is available for electronic filers submitting more than ten transactions per day. This interface, implemented by computer software that runs on a personal computer, is referred to herein as the"PC Product."By means of an interactive graphical user interface, the PC Product collects the data for multiple tax payments. After all the data is entered, the PC Product's communications module transmits the data to the EFTPS. Although using the PC Product is more efficient than using the ARU for entering multiple electronic tax payments, the PC Product has a limit of 100 payments per transmission.

Consequently, third party filers submitting more than 100 transactions must initiate multiple transmissions, once again resulting in inefficiencies.

Yet another front end interface to the EFTPS is, therefore, available to third party filers that submit more than 1,000 payment transactions on a peak day ("bulk filers"). This interface, referred to herein as the"Bulk Filer Product,"supports a transmission capacity of 20,000 payment transactions in one session. The Bulk Filer Product also provides functionality for electronically enrolling taxpayers in the EFTPS, eliminating the need to submit enrollment paperwork. Electronic enrollment reduces the turnaround time between submitting an enrollment and receiving notification of the enrollment's status to a maximum of three days, compared with up to ten weeks (usually 10-28 days) for paper processing.

Given the features and limitations of the above-described interfaces to the EFTPS, large volume third party filers (e. g., those submitting more than 1,000 transactions per day) are considered by some to have a competitive advantage in the third party tax payment services market compared with medium volume third party filers (e. g., those submitting between 100 and 1,000 transactions per day). First, to be eligible to submit multiple payment transactions with the Bulk Filer Product, a third party filer must process at least 1,000 payment transactions on a peak day. Although medium volume filers can submit multiple payment transactions with the PC Product, the 100 transactions per transmission limit necessitates multiple transmissions, which reduces processing efficiency. Second, because the PC Product does not support the electronic enrollment of taxpayers into the EFTPS, time consuming paper processing is required.

Accordingly, there is a need for an improved interface for the electronic submission of input to a tax system that offers advantages over other interfaces.

Summary of the Invention According to the invention, a method and apparatus are provided for facilitating the electronic submission of batch input to a tax system, such as the Electronic Federal Tax Payment System (EFTPS). Embodiments of the invention import and validate the data necessary to initiate enrollments and submit tax payments using a personal computer (PC). Embodiments of the invention include a communications module that transmits enrollment and payment transactions to the EFTPS and receives transaction confirmations or error messages in response.

Certain embodiments of the invention offer many advantages including, without limitation, the following: a system for accepting and validating that batch data input comprising taxpayer enrollment and tax payment transactions is properly formatted for subsequent processing; a system for verifying the number and total dollar amount of tax payments in a batch file prior to submitting the file for processing; a system for efficiently transmitting a batch of tax transactions for processing; a system for initiating and terminating taxpayer enrollment in the EFTPS; a system for receiving and reporting timely responses from the EFTPS; and a system incorporating communications software configured to connect with the EFTPS.

These and many other advantages of certain embodiments of the invention will become apparent to those skilled in the art from the detailed description below.

Brief Description of the Drawings An understanding of one or more embodiments of the invention may be gained by considering the following detailed description in conjunction with the accompanying drawings, in which: FIG. 1 illustrates a high level diagram of an embodiment of an Electronic Tax Payment System in which the invention might operate.

FIG. 2 shows a flow diagram of the major functions of one embodiment of the invention.

FIG. 3 shows a flow diagram of the file send procedure of one embodiment of the invention.

FIG. 4 shows a flow diagram of the file receive procedure of one embodiment of the invention.

FIG. 5 shows a flow diagram of the options procedure of one embodiment of the invention.

FIG. 6 shows a flow diagram of the test procedure of one embodiment of the invention.

Detailed Description of Preferred Embodiment (s) FIG. 1 illustrates a high level diagram of an embodiment of an Electronic Tax Payment System 105 in which the present invention might operate. Electronic Tax Payment System 105 includes any number of client personal computers (PCs), one of which is illustrated by Client PC 120. Batch Filer Utility 122 is a file import/export utility that can be used by third party filers to exchange files electronically with the Electronic Federal Tax Payment System (EFTPS). In Electronic Tax Payment System 105, an embodiment of Batch Filer Utility 122 is installed on Client PC 120.

Batch Filer Utility 122 communicates with an EFTPS Transaction Processing Server (TPS), one of which is illustrated by TPS 130. Communications between Batch Filer Utility 122 and TPS 130 take place over a Value Added Network (VAN) 125, such as one operated by CompuServe or MCI, using a communications protocol, such as Transmission Control Protocol/Internet Protocol (TCP/IP). Those skilled in the art understand that TPS 130 could also be referred to as a"host"and that Batch Filer Utility 122 could exchange files electronically with any electronic tax payment system (e. g., a state or local system).

Herein, the term"user"refers to a third party filer using Batch Filer Utility 122. The following description includes details about the content and structure of files that a user exchanges with TPS 130 using Batch Filer Utility 122. The description also includes details about how a user implements and operates Batch Filer Utility 122.

Tax Data Files Prior to using Batch Filer Utility 122, a user creates tax data files that will be imported and transmitted to TPS 130 for processing by Batch Filer Utility 122. The data within tax data files is organized into records, and basic rules ("basic tax data file rules") govern the number and contents of the records. The following table includes examples of basic tax data file rules.

Table A: Basic Tax Data File Rules 1. No more than 750 records can be imported at a time.

2. Each record must be an ASCII text string (i. e., no formatting characters).

3. The data fields within a record must be of a fixed length (described in detail below for each file type).

4. The Batch Filer ID, Master Inquiry ID, File Date, and File Sequence Number must be identical for all records in the file.

5. Account Numbers must be entered either left justifie and space filled to the right, or be right justified and zero filled to the left.

6. No decimals, commas, or dollar signs should be used.

Those skilled in the art will appreciate that none of the basic tax data file rules are absolute Batch Filer Utility 122 requirements. For example, one rule that could be modified is the limit of 750 records per file. This limit is not a technical requirement; rather, it is imposed to ensure that one user does not monopolize a communications line for extended periods of time. Another rule that could be modified is the requirement that the data fields within a record have a fixed length. Instead, data could be stored in variable length fields separated by a unique character (e. g.,"*"or ''1''). Still another rule that could be modified is the prohibition against decimals, commas, or dollar signs. These characters could simply be ignored when the data is processed.

Batch Filer Utility 122 processes two types of tax data files: enrollment files and payment files. As the names suggest, enrollment files include the data needed to enroll taxpayers in the EFTPS, and payment files include the data needed to submit

tax payments for those enrollees. As those skilled in the art understand, Batch Filer Utility 122 could process any other type of tax data file accepted by TPS 130.

Taxpayer Enrollment Files The following table illustrates a typical taxpayer enrollment record. Those skilled in the art will understand that the details of the format and content are dictated by what TPS 130 expects to receive. For example, one embodiment of Batch Filer Utility 122 only accepts two types of enrollment transactions, add and terminate.

Other embodiments of Batch Filer Utility 122 could accept and send other enrollment transactions, such as change enrollment information, if such transactions are accepted by TPS 130.

Table B: Enrollment Record Example Data Example Field Nanne Position : Length 890111111 Batch Filer ID 1-9 9 I1111 MasterInquiryPIN 10-13 4 19970425 File Date 14-21 8 101 FileSequence# 22-24 3 0001 Enrollment # 25-28 4 A Action Code 29 1 JOHNDAVIS Taxpayer Name 30-64 35 I Taxpayer Type 65 1 403020101 Taxpayer TIN 66-74 9 TaxpayerPIN 75-78 4 SecondaryTIN 79-87 US Country Code 88-89 2 DC State 90-91 2 000020016 Zip Code 92-100 9 8655 Signature Equivalent 101-104 4 D Remittance Method 105 1 B PrimaryInputMethod 106 1 N MasterAccountFlag 107 1 L ? ata Exam, ple Field lTame : Position Length 011000015 RoutingTransit# 108-116 9 00500500500500500 Account # 117-133 17 CAccountType1341 YPrenoteAccount1351

The following table includes a column that describes the field edits performed by a Batch Filer Utility 122 enrollment data validation routine before sending an enrollment file to TPS 130. Details about data validation are included in the discussion of the File Menu Send item in the section entitled"File Menu." Table C: Enrollment Record Field Edits <Field Name ! Type ; Length Tield Edits BatchFilerIDNumeric9Mustbe9digits MasterInquiryPINNumeric4 Mustbe4digits FileDateNumeric8Mustbevaliddate YYYYMMDD FileSequenceNumberNumeric3 Mustbeuniquewithin day EnrollmentNumberNumeric4 Mustbeascending withinafile ActionCodeChar1Mustcontainvalid value A = Add T=Terminate TaxpayerNameChar35Mustcontainatleast2 characters TaxpayerTypeChar1 Mustcontainvalid values B=Business I= Individual 'Freld'Name Type I : ength Field Edits Taxpayer TIN Numeric 9 Must be 9 digits TaxpayerPINNumeric4Blankunlessaction codeequals"T" SecondaryTINNumeric9Mustbe9digits,if applicable CountryCodeChar2Mustbenon-blank, usingISOcountrycodes State Char 2 Mustbevalidstateif countrycode=US ZipCodeNumeric9Mustbevalidzipif countrycode=US SignatureEquivalentNumeric4 Mustcontain"8655" (confirms"8655"has beensubmittedtoIRS) RemittanceRecordChar1Mustcontainvalid value C=ACHCredit D=ACHDebit PrimaryInputMethodChar1Mustcontainvalid valueifremittance methodequalsD,else leaveblank P=PC B=Batch V = Voice Field0Nxme Type ; Length Fiel Edits MasterAccountFlagChar1Mustcontainvalid valueifremittance methodequalsD,else leaveblank Y=UseBatchFlier Account N=UseTaxpayer Account RoutingTransitNumberNumeric9 RequiredifMaster Accountflagequals"N" andremittancemethod equalsD,elseleave blank Mustcontain9digits AccountNumberChar17IfMasterAccountflag equals"N"andif remittancemethod equalsD,elseleave blank AccountTypeChar1IfMasterAccountflag equals"N"andif remittancemethod equalsD,elseleave blank C=Checking S=Savings Field Name Type Length Field Eds PrenoteAccountChar1IfMasterAccountflag equals"N"andif remittancemethod equalsD,elseleave blank Y=Yes,prenote account N = No.BatchFiler assumesresponsibility for accuracy Tonal 135

Tax Payment Files The following table illustrates a typical tax payment record. Those skilled in the art will understand that the details of the format and content depend only on what TPS 130 expects to receive. For example, because Batch Filer Utility 122 only supports the submission of tax payments, payments must be canceled using other methods (e. g., the ARU). Other embodiments of Batch Filer Utility 122 could send cancel payment transactions.

Table D: Payment Record Example Datä : Example--i ld Name i P-osition Length7 7 890111111 Batch Filer ID 1-9 9 1111 MasterInquiryPIN 10-13 4 19970101 File Date 14-21 8 001 FileSequence# 22-24 3 0001 Enrollment # 25-28 4 Action Code 29 1 222222222 Taxpayer TIN 30-38 9 3333 Taxpayer PIN 39-42 4 Data Example Field Name Position : Length B Taxpayer Type 431 07200 Taxpayer Type 44-48 5 199703 Tax Period 49-54 6 19970317 Settlement Date 55-62 8 000000000000100 Payment Account 63-78 15

The following table includes a column that describes the field edits performed by a Batch Filer Utility 122 payment data validation routine before sending a payment file to TPS 130. Details about data validation are included in the discussion of the File Menu Send item in the section entitled"File Menu." Table E: Payment Record Field Edits Field Name :'yp Length Field Edixs BatchFilerIDNumeric9 Mustbe9digits MasterInquiryPINNumeric4 Mustbe4digits FileDateNumeric8 Mustbevaliddate YYYYMMDD FileSequenceNumberNumeric3 Mustbeuniquewithin day PaymentReferenceNumeric4'Mustbeascending Numberwithinfile ActionCodeChar1 Mustcontainvalid value P=Payment TaxpayerTINNumeric9 Mustbe9digits TaxpayerPINNumeric4 Mustbe4digits TaxpayerTypeChar1 Mustbevalidvalue B=Business I=Individual Field Name Type Length Filc EcIits TaxTypeCodeNumeric5Mustbevalidtaxtype code TaxPeriodNumeric6 Mustbevaliddate YYYYMM SettlementDateNumeric8Mustbevalid SettlementDate YYYYMMDD PaymentAmountNumeric15Mustbegreaterthan0 andlessthan 100,000,000 Subcategorycode1Numeric3 Notarequiredfield,if presentmustbevalid IRScode Subcategoryamount1Numeric15Notarequiredfield,if presentsumof subcategoryamount mustequaltotal paymentamount Subcategorycode2 Subcategoryamount2 _ Subcategorycode3 Subcategoryamount3 Subcategorycode4 Subcategoryamount4 _ Subcategorycode5Numeric3Notarequiredfield,if presentmustbevalid IRScode Field Name Type Lengh Field Edits Subcategoryamount5 Numeric15Notarequiredfield,if presentsumof subcategoryamount mustbeequaltotal paymentamount Note: Subcategory codes and amounts are optional. If not using, put in spaces.

Batch Filer Utility Implementation Batch Filer Utility 122, written in C++ and Visual Basic, is installed on a standard PC configured as follows: Hardware: Intel compatible personal computer with a minimum 486 processor.

Memory: Minimum of 8 MB RAM (16 MB of RAM recommended).

Hard Disk Drive: Minimum of 1.2 gigabyte of available disk space.

Operating System: Microsoft Windows 3.1 or higher, or Microsoft NT 3.51 or higher.

Modem: Hayes-compatible modem capable of running at 14.4 or higher.

Those skilled in the art understand that alternative embodiments of Batch Filer Utility 122 can be developed with other programming tools (e. g., C or Windows 3.11 Resource Kit), can run under other operating systems (e. g. Unix or Macintosh), and can be installed on any appropriate hardware.

Batch Filer Utility 122 supports automated software installation. For example, a user installing the software in a Windows 3.1 environment simply has to insert the correct program disk in the drive, select File and Run from the Program Manager, and follow the directions displayed on the screen. The installation process loads files from the program disks on to the hard drive of client PC 120 and modifies any computer system files as necessary. For example, Batch Filer Utility 122 modifies the autoexec. bat file to include a share command line (e. g., c : ldoslshare. exe/F : 100 IL : 100).

Operating the Batch Filer Utility

The following discussion describes an embodiment of Batch Filer Utility 122 implemented with design and functional features that are typical of Microsoft Windows applications. These features include: accepting user input from a mouse or keyboard; invoking Batch Filer Utility 122 by double-clicking on an icon representing the application; obtaining user input from dialog box fields; closing windows when the user clicks on an OK or Cancel button; providing Control Menu items that allow the user to resize and position windows (e. g., restore, move, size, minimize, close); and providing keyboard shortcut keys for menu items (e. g., Ctrl + O for the Options item on the Tools Menu). These and other standard Microsoft Windows features are well known to those skilled in the art and need not be described in detail here. See, for example, any Microsoft Windows User's Guide. The following detailed description of Batch Filer Utility 122, therefore, discusses only those features that are relevant to understanding how Batch Filer Utility 122 operates. For example, it is understood that windows can include OK and Cancel buttons so that the user can indicate whether Batch Filer Utility 122 should accept or ignore data just entered into a dialog box.

FIG. 2 shows a flow diagram of the major functions of one embodiment of Batch Filer Utility 122. FIGS. 3-6 show flow diagrams of embodiments of procedures implementing those functions. The flow diagrams do not include endpoints at every branch because, as those skilled in the art understand, Microsoft Windows applications are generally event driven. In other words, a user executes procedures in any reasonable order, and after a procedure terminates it is up to the user to initiate the next action.

Main Menu When a user starts Batch Filer Utility 122 by selecting the corresponding application icon, a welcome message appears briefly on the screen and then the Main Menu is displayed in an application window. The items on the Main Menu bar are the major Batch Filer Utility 122 functions: File, Tools, and Help. Each Main Menu item has its own associated drop-down menu of items, and those items may, in turn, have associated drop-down menus. The following notation is used herein to refer to successive levels on a menu: MainMenulMenu2lMenu3, and so on. A user traverses a

menu structure such as this by selecting menu items until reaching an item that invokes an action (e. g., displaying a dialog box or starting a procedure). Of course, as those skilled in the art know, no specific menu items or arrangement is required to implement Batch Filer Utility 122. Referring to FIG. 2, execution starts at step 205 when the user selects one of the Main Menu items. Depending on whether the user selects File, Tools, or Help, execution continues at either step 210,225, or 255, respectively.

File Menu If the user selects File from the Main Menu, execution continues at step 210.

The File Menu comprises a Send item for sending tax data files to TPS 130 for processing, a Receive item for receiving response files from TPS 130, and an Exit item for exiting Batch Filer Utility 122. Depending on whether the user selects Send, Receive, or Exit, execution continues at either step 215 or step 220, or execution terminates, respectively.

Batch Filer Utility 122 works with many files, but it does not require any particular file names or directory structure. Thus, the user is free to store files in multiple directories. For example, if the Batch Filer Utility 122 software is stored directory c: Ibatchfil, taxpayer enrollment files might be stored in directory c : Ibatchfillenroll, tax payment files in directory c: Ibatchfilltaxpay, and response files in directory c : Ibatchfillresponse. However, to avoid conflicts with others using the communications functionality of Batch Filer Utility 122, only directories on local drives should be used (i. e., network drives should not be used). Depending on the communications software and configuration of an embodiment of Batch Filer Utility 122, this limitation may not apply.

When Batch Filer Utility 122 needs the name and/or directory of a file (e. g., in order to read or write a file), a dialog box is used to obtain the information. This allows the user to supply the information either by typing it in from the keyboard or by selecting a Browse button to invoke standard Windows file finding techniques. AS those skilled in the art realize, many alternative techniques can be used by Batch Filer Utility 122 to obtain file names and directories.

Send. The Send item on the File Menu is used to import and transmit enrollment and payment data files to TPS 130 for processing. If the user selects Send from the File Menu at step 210, execution continues at step 215 where Batch Filer Utility 122 executes a file send procedure, such as Send procedure 300 illustrated in FIG. 3. Referring to FIG. 3, at step 305, Batch Filer Utility 122 obtains the type of the file (e. g., enrollment or payment) that the user wants to send to TPS 130 by displaying a drop-down menu with two items: Enrollment and Payment.

Next, at step 310, Batch Filer Utility 122 displays a dialog box that includes a "Send From"field into which the user enters the directory path and file name of the tax data file to send to TPS 130. The"Send From"field initially reflects the default send directory and file name that the user enters from the ToolslOptions Send tab (described in"Options"in the section entitled"Tools Menu"). The user can change this default by typing a new directory path and/or file name into the field or by using the Browse button next to the field.

If after entering the information the user selects Send, at step 315, Batch Filer Utility 122 runs a data validation routine corresponding to the file type. In addition to verifying that a file complies with the criteria defined in"Table A: Basic Tax Data File Rules,"the data validation routine performs the edit checks specific to the file type. The"Field Edits"columns of"Table C: Enrollment Record Field Edits"and "Table E: Payment Record Field Edits"illustrate criteria used for validating the data in an enrollment record and a payment record, respectively. Embodiments of Batch Filer Utility 122 data validation routines perform other checks including, but not limited to, verifying the number of records in the file or the total of payment amounts.

Examples of errors that data validation routines might identify, and the corresponding corrective actions, are provided in"Table L: PC Error Corrective Actions"of "Appendix A: Error Code Tables." The data validation routine records its results as text entries in an error file named bfimperr. txt, writing only as many entries as the user specified (with Options procedure 500, described below) for the maximum number of errors to display. As those skilled in the art will understand, Batch Filer Utility 122 can stop validating the data when it reaches this limit, or continue to validate all the data records, regardless

of how many errors it writes to the error file. The user can process the error file with any appropriate tool (e. g., a word processor or spreadsheet program). Those skilled in the art will understand that the name of the error file is arbitrary. For example, another name could be used (e. g., errorchk. txt), varying file names could be used (e. g., the data validation routine could generate a new name every time it runs), or the file name could be user defined (e. g., the user could enter the name of the error file in a dialog box).

The following illustrates an example of the contents of an error file for a tax data file without any errors. File name: c: \batchfil\send\enrlldat. TXT FileDate: Jul 19,1997 File Sequence: 101 RECORD ERROR No Errors Encountered.

The following illustrates an example of the contents of an error file for a tax data file containing errors.

File name: C: \BATCHFIL\SEND\ENRLLERR. TXT FileDate: Jul 19,1997 File Sequence: 101 RECORD ERROR 4 Invalid Taxpayer Name- 8 Invalid Import Record Size Got: 134 Expected: 135 Batch Filer Utility 122 stores the text of the error messages in a Microsoft Access database table. Embodiments of Batch Filer Utility 122 can process and/or

report errors using error codes. Examples of error codes and messages are provided in "Table M: Error File Messages"of"Appendix A: Error Code Tables."Those skilled in the art understand that other systems (e. g., other relational database systems or flat files) could be used to store this information.

After generating the error file, execution continues at step 320, where Batch Filer Utility 122 determines whether the tax data file contained any errors. If there are errors, at step 325, Batch Filer Utility 122 displays an import error message such as "There were errors during import. Review the file C: \BATCHIL\BFIMPERR. TXT." Then, at step 330, Batch Filer Utility 122 disables the option to transmit the tax data file to TPS 130 by, for example, disabling a Send button so that the only option the user has is to select a Cancel button and return to the Main Menu. The user must exit from Batch Filer Utility 122 and correct the errors before Batch Filer Utility 122 will send the tax data file to TPS 130.

If at step 320 Batch Filer Utility 122 determines that the tax data file did not contain any errors, execution continues at step 335 where the user can select Send to transmit the tax data file to TPS 130. While the file is being sent to TPS 130, Batch Filer Utility 122 reports the progress of the transmission by displaying messages in windows. For example, one window tracks the connection to TPS 130 (e. g., dialing host or initializing modem) and another window tracks how much of the tax data file has been sent (e. g., by displaying a bar showing transmission percent complete). If the transmission completes successfully, the last message Batch Filer Utility 122 displays is one indicating that the transmission is complete.

How execution proceeds at this point depends on how TPS 130 processes the tax data file and generates the corresponding response file (described in"Receive" below). After sending a payment file, at step 340, Batch Filer Utility 122 can stay connected while TPS 130 posts the payments and receive the response file during the same communications session. After receiving the payment response file, or after transmitting an enrollment file, Batch Filer Utility 122 disconnects from TPS 130 at step 345. Those skilled in the art will appreciate that if TPS 130 makes an enrollment response file available during the communications session in which the enrollment file

is transmitted, Batch Filer Utility 122 could also receive that response file during the same session.

Receive. TPS 130 creates a response file for every tax data file the user sends for processing. The name of a response file could be based on the date and sequence number of the corresponding tax data file. For example, the response file for the fourth tax data file sent on July 21,1997 could be 19970721.004. Response files include one response record for each corresponding tax data file record. The content of a response file record is, therefore, determined by the type of tax data file. The Receive item on the File Menu is used to receive response files from TPS 130. After receiving a response file, the user can process it outside of Batch Filer Utility 122 (i. e., the response file is exported) with any appropriate tool (e. g., a word processor or a spreadsheet program).

The following tables illustrate typical response file records and field edits performed by TPS 130. In the following examples, response records include an error code field (also referred to as a status code field), which indicates whether or not the transaction (e. g., enrollment or payment) was successful. In these examples, the error code"0000"indicates a successful transaction. Additional examples of error codes and corresponding descriptions are provided in"Table J: Enrollment Error Codes" and"Table K: Payment Error Codes"of"Appendix A: Error Code Tables." Table F: Enrollment Response Record Example Data : Example'Fielcl Name Posiyon'Length 890555555 BatchFilerID 1-9 9 199703303 OriginalFileDate 10-17 8 0001 File Sequence Number 18-21 4 001 Enrollment Number 22-24 3 7068 Taxpayer PIN 25-28 4 0000 Error Code 29-32 4 Table G: Enrollment Response Record Field Edits FieldName Tpe I. engthield EIits BatchFilerID Numeric Mustbe9digits Field Nxme Type I. ength Field Edits File Date of Original Numeric 8 Must be valid date File Date of Original Numeric 8 Must be valid dateFile YYYYMMDD FileSequenceNumber Numeric 3 Mustbeuniquewithin inOriginalFile day EnrollmentNumberin Numeric 4 Mustbeascending OriginalFile withinafile TaxpayerPIN Numeric 4 AssignedbytheTFA ErrorCode Numeric 4 AssignedbyTFA Table H: Payment Response Record Example DataExample i Field Namc Positlon Length 890111111 BatchFilerID 1-9 9 19970415 OriginalFileDate 10-17 8 026 FileSequenceNumber18-20 3 0002 Enrollment Number 21-24 4 1234567890987765 EFT Number 25-39 15 0000 Error Code 40-43 4 19970418 Approved Settlement 44-51 8 Date Table I: Payment Response Record Field Edits Fiteld Nam Type Length Field Edits. BatchFilerID Numeric 9 Mustbe9digits FileDateofOriginal Numeric8Mustbevaliddate File YYYYMMDD FileSequenceNumber Numeric 3 Mustbeuniquewithin ofOriginalFile day PaymentReference Numeric 4 Mustbeascending NumberofOriginalFile withinfile Field Name Type Length Field Edits EFTNumberNumeric15AssignedbyTFA ErrorCodeNumeric4 AssignedbyTFA ApprovedSettlementNumeric8 Validsettlementdate Date YYYYMMDD

Note: For status codes 5122 and 5125, an EFT number will also be given as the payment has been processed. Otherwise, user receives an EFT number or an error code.

As describe above in"Send,"the user can stay connected when sending a payment file and receive the response file in the same communications session.

However, if the communications connection is interrupted while TPS 130 is posting payments (e. g., the line drops or the user cancels the session), the user can use FilelReceivelPayment to retrieve the response file. The user uses FilelReceivelEnrollment to retrieve the enrollment response files.

If the user selects Receive from the File Menu at step 210, execution continues at step 220 where Batch Filer Utility 122 executes a file receive procedure, such as Receive procedure 400 illustrated in FIG. 4. Referring to FIG. 4, at step 405, Batch Filer Utility 122 obtains the type of the response file (e. g., enrollment or payment) that the user wants to receive from TPS 130 by displaying a drop-down menu with two items: Enrollment and Payment. Next, at step 410, Batch Filer Utility 122 displays a dialog box that includes two fields into which the user enters the Batch Filer ID and the Master Inquiry PIN that were assigned when the user registered as a batch filer with the assigned Treasury Financial Agent (TFA).

Execution continues at step 415, where Batch Filer Utility 122 gets the path of the directory into which it will store the response file (s) received from TPS 130. To obtain the directory path, Batch Filer Utility 122 displays a Responses dialog box that includes a"Store Response At"field, which initially reflects the default receive directory that the user enters from the Toolsl Options Receive tab (described in "Options"in the section entitled"Tools Menu"). The user can change this receive

directory path by typing a new path into the field or by using the Browse button next to the field.

At step 415 Batch Filer Utility 122 also displays, on the left side of the Responses dialog box, a first list of dates and file sequence numbers corresponding to response files. To create this list, Batch Filer Utility 122 uses the information stored in the database described in"Database Utilities"in the section entitled"Tools Menu." At step 420, if the user chooses to update this first list, Batch Filer Utility 122 connects to TPS 130, gets a current list of the dates and sequence numbers of response files available on TPS 130, disconnects, and updates the first list.

At step 425, the user identifies entries on the first list to indicate which response files Batch Filer Utility 122 should retrieve from TPS 130. To select individual entries, the user clicks on an entry in the first list and then on a button marked">."The selected entry appears in a second list of dates and file sequence numbers on the right side of the Responses dialog box. Alternatively, to select all of the entries on the first list, the user clicks on a button marked">>."Similarly, the user can deselect entries from the second list with buttons marked"<"and"<<." Then, if the user selects OK, at step 430, Batch Filer Utility 122 connects to TPS 130 and retrieves the response files corresponding to the entries selected by the user.

Lastly, at step 435, Batch Filer Utility 122 disconnects from TPS 130. Those skilled in the art are aware that myriad techniques for identifying response files to retrieve can be used by other embodiments of Batch Filer Utility 122.

Exit. If the user selects the Exit from the File Menu at step 210, execution terminates and the Batch Filer Utility 122 application window closes. Those skilled in the art know that alternative methods for exiting the application include selecting the Close item on the Main Menu or double-clicking on the Control Menu box or icon in the upper left corner of the Batch Filer Utility 122 application window.

Tools Menu If the user selects Tools from the Main Menu, execution continues at step 225 on FIG. 2. The Tools Menu comprises an Options item for entering basic system information (e. g., default file names and communications data), a Test item for testing file-related functions (e. g., file import and send), and a Database Utilities item for

maintaining a database containing a list of files processed by Batch Filer Utility 122 (e. g., files sent to TPS 130 and response files received from TPS 130). Depending on whether the user selects Options, Test, or Database Utilities, execution continues at either step 230,235, or 240, respectively.

Options. If the user selects Options at step 225, execution continues at step 230 where Batch Filer Utility 122 executes an options procedure, such as Options procedure 500 illustrated in FIG. 5. Referring to FIG. 5, at step 505, Batch Filer Utility 122 determines which category of options the user wants to setup by displaying a dialog box that is divided into three tabs, one for each category: Send, Receive, and Communications. Depending on which tab the user selects, execution continues at either step 510,530, or 535 for Send, Receive, or Communications, respectively. Those skilled in the art are aware that other embodiments of Batch Filer Utility 122 could use techniques, such as additional drop down menus, to organize the options categories.

The Options Send tab displays a dialog box that is used to gather information related to sending files to TPS 130. If the user selects the Send tab at step 505, Batch Filer Utility 122 displays a dialog box with several fields. Execution continues at step 510 where Batch Filer Utility 122 gets the default directory path. The user can either type a file name in a"Default Directory"data field or use a Browse button to locate a directory. At steps 515 and 520, respectively, Batch Filer Utility 122 gets the default tax data file extension (e. g., txt) and default file name (e. g., import), which the user enters into appropriately labeled data fields. Batch Filer Utility 122 uses these three entries (i. e., directory path, file extension, and file name) to construct the default directory and file name that is displayed in a"Send From"field on the FilelSendlEnrollment and FilelSendlPayment dialog boxes.

At step 525, Batch Filer Utility 122 gets the maximum number of errors to write to the error file that is generated by the data validation routines discussed in the description of FilelSend. The user types a number into a data field labeled"Maximum # of Errors to Display on Import."If a user wants Batch Filer Utility 122 to report all errors, a very large number should be entered. Other embodiments of Batch Filer

Utility 122 can interpret specific values (e. g, 0 or-1) to mean that the user wishes to see all errors.

The Options Receive tab displays a dialog box used to gather information related to receiving files from TPS 130. If the user selects the Receive tab at step 505, execution continues at step 530 where Batch Filer Utility 122 gets the default directory path for receiving response files. The user can either type a file name in a "Default Directory"data field or use a Browse button to locate a directory. Batch Filer Utility 122 uses the entry as the default directory that is displayed in a"Store Response At"field on the FilelReceivelEnrollment and FilelReceivelPayment Responses dialog boxes.

The Options Communications tab displays a dialog box used to gather communications data needed prior to any communications with TPS 130. If the user selects the Communications tab at step 505, execution continues at step 535 where Batch Filer Utility 122 gets a communications time out, specified in seconds, from a data field. This time out controls how long Batch Filer Utility 122 will attempt to connect with TPS 130 before terminating a communications session.

The Options Communications tab dialog box also includes fields for displaying the current host (i. e., TPS 130) parameter values (e. g., IP address, port number, and site ID). The dialog box also includes a Configure button for entering new data values for the host parameters, as well as for entering communications parameters (e. g., communications port and baud rate), modem type, and dial preferences (e. g., logon profile, host telephone number, user name, and password). In one embodiment of Batch Filer Utility 122, the logon profile is simply a synonym for the host telephone number, and the password field, which controls access to TPS 130, is always blank. One embodiment of Batch Filer Utility 122 uses Spry dialer communications software to communicate with TPS 130 and terminates communications by program control, rather than waiting for the Spry software to time out. As will be apparent to those skilled in the art, Batch Filer Utility 122 can use any appropriate communications software.

At step 540, if the user selects the Configure button, Batch Filer Utility 122 displays a Modem Setup dialog box including data fields into which the user enters

data values. At step 545, if the user accepts the data values by selecting a Save button, Batch Filer Utility 122 gets the communications configuration data values. To ensure that it gets accurate and complete communications data, Batch Filer Utility 122 can take additional steps. First, some data values, such as the IP address and the port number, are pre-configured to eliminate user input errors. Second, if any required field (e. g., the primary telephone number) is blank, the user cannot save the configuration. Third, before accepting new data values, an extra dialog box is displayed to verify that the user wants to overwrite a previous setup.

Test. The Test item on the Tools Menu is used to verify that the file import and send functions operate correctly by sending test tax data files to TPS 130. If the user selects Test from the Tools Menu at step 225, execution continues at step 235 where Batch Filer Utility 122 executes a test procedure, such as Test procedure 600 illustrated in FIG. 6, on a test tax data file. With only two exceptions, steps 605-645 are identical to steps 305-345 of Send procedure 300, discussed in detail in the Send portion of the section entitled"File Menu. "Thus, only the two exceptions are discussed in detail here. First, the test data validation procedures executed at step 615 require that the Batch Filer ID and PIN must be all nines (i. e., 999999999 and 9999).

Second, the records in the test response file that Batch Filer Utility 122 receives at step 640 are not related to the records in the test tax data file that was sent at step 635.

The test response file for a test enrollment file contains a pre-defined set of records, some of which indicate completed enrollments and some of which indicate errors.

The test response file for a test payment file contains the same number of records as in the test payment file, but the contents of the records is randomly generated. If Batch Filer Utility 122 disconnects from TPS 130 before receiving a test response file, the user must send a test file again in order to receive a response file.

Database Utilities. Batch Filer Utility 122 uses a Microsoft Access database table to keep track of tax data files sent to TPS 130 and response files sent from TPS 130. Examples of the columns and indexes used in this table are provided in "Table N: Response Files Table Columns"and"Table O: Response Files Table Indexes,"respectively, of"Appendix B: Response Files Table Design."

Batch Filer Utility 122 stores the database in a file called bfiler. mdb and maintains the database with the Access compress and repair utilities. As a safety precaution, Batch Filer Utility 122 makes a backup copy of the database (e. g., in a file named bfold. mdb) before executing either utility. Those skilled in the art understand that any appropriately named files could be used to store the database and backup.

Those skilled in the art also understand that other systems (e. g., other relational database systems or flat files) and utilities (e. g., custom coded database maintenance routines) could be used to keep track of the files.

If the user selects Database Utilities at step 225, execution continues at step 240 where Batch Filer Utility 122 determines which utility the user wants to execute by displaying a drop-down menu with two items: Compress and Repair. If the user selects Compress at step 240, execution continues at step 245 where Batch Filer Utility 122 executes the compress utility. The compress utility is used to control the size of the database as it grows over a period of time due to records being added and deleted as files expire on TPS 130 (e. g., files expire and are deleted from TPS 130 after 30 days). However, the physical size of the database does not shrink as records are deleted. The compress utility is used to reduce the physical size of the database by recovering any deleted record space in the database. Although Batch Filer Utility 122 does not require that the compress utility be used with any particular regularity, once a month is recommended.

If the user selects Repair at step 240, execution continues at step 250 where Batch Filer Utility 122 executes the repair utility. The repair utility is used to attempt an automatic repair of a corrupted database. If a database access error occurs while Batch Filer Utility 122 is executing (e. g., cannot open bfiler. mdb), the user should try fixing the problem with the repair utility.

Help Menu If the user selects Help from the Main Menu, execution continues at step 255 on FIG. 2. Online help is a standard Windows function that can be implemented in a variety of ways. A typical Help Menu includes items such as"Contents,""Search for Help On,"and"Index."Those skilled in the art will appreciate that an any

customized help facility could be invoked from a Help Menu item, or alternatively that help could be provided by telephone support or a printed user's manual.

Other Embodiments The invention is not limited to the embodiments described above. In another embodiment, the invention runs in a Windows NT 3.51 environment. In this embodiment, the following text is added to the end of the <systemroot>lsystem321raslswitch. in file (where systemroot is the directory in which the system software is installed (e. g., c : lwin351).

; This section provides log on script for connection to Compuserve.

; (an after dialing script) [EFTPSBF] COMMAND= COMMAND =<cr> OK =<match>":" ; Waits for CompuServe's Host Prompt.

LOOP=<ignore> COMMAND=IPS000<cr> Replace [YOUR...] with Desired Host Name.

OK =<match>"-"Waits for start of PPP Neg.

LOOP=<ignore> Other embodiments of the invention could use any appropriate user interface.

Such interfaces include, but are by no means limited to, other graphical user interfaces (GUIs), such as the XI 1 windows environment; interactive display of text-based menu lists of options; and command line interfaces that obtain system input from parameters entered on the command line.

It will be appreciated by those skilled in the art that further embodiments of the invention may be made without departing from the spirit and scope of the invention as described herein. Such embodiments are intended to be within the scope of the appended claims. Appendix A: Error Code Tables Table J: Enrollment Error Codes Error Codes Description Coriments 0000SuccessfulenrollmentSuccessfulenrollment 4001PrimarySSNandsecondaryIRSEntityValidation SSNreversedWarningonly-enrollment issuccessful 4002 PrimarySSNandsecondaryIRSEntityValidation SSNreversedandnameWarningonly-enrollment mismatchedsuccessful 4003PrimarySSNandsecondaryIRSEntityValidation SSNreversedandNameRejection-correctthe mismatched,butdeterminedproblemandsubmitanew tobecorrecttaxpayersenrollment 4004Namemismatched,butIRSEntityValidation determinedtobecorrectWarningonly-enrollment taxpayersissuccessful 4005 TIN mismatched IRSEntityValidation Rejection-correctthe problemandsubmitanew enrollment 4006NamemismatchedIRSEntityValidation Rejection-correctthe problemandsubmitanew enrollment 4007 SecondarySSNmismatchedIRSEntityValidation Rejection-correctthe problemandsubmitanew enrollment Error Codes I3escription Camments 4008 SecondarySSNmismatchedIRSEntityValidation andnamemismatched.Rejection-correctthe (Correcttaxpayer)problemandsubmitanew enrollment 4009SecondarySSNmismatchedIRSEntityValidation andnamemismatchedRejection-correctthe problemandsubmitanew enrollment 4011TaxpayernamemissingCorrecttheproblemand submitanewenrollment 4012TaxpayertypeisblankorCorrecttheproblemand invalidsubmitanewenrollment 4013TaxpayerTINisblankorCorrecttheproblemand invalidsubmitanewenrollment 4014TaxpayerzipcodeisblankCorrecttheproblemand orinvalidsubmitanewenrollment 4015"8655"flagismissingorCorrecttheproblemand invalidsubmitanewenrollment 4016BatchfilerIDnumberisCorrecttheproblemand missingorinvalidsubmitanewenrollment 4017BatchFilerIDnumberisCorrecttheproblemand notactivesubmitanewenrollment 4018DFIaccountinformationisCorrecttheproblemand missingorinvalidsubmitanewenrollment 4019PrenoteRejectCorrecttheproblemand submitanewenrollment Errogr Codes Desctionv Comments 4020TerminateInvalidAnenrollmentcannotbe WarehousedPaymentterminatedwhilearelated paymentexistsinthe EFTPSwarehouse. Cancelthepaymentor contactcustomerservicefor assistance 4021InvalidMasterInquiryPINCorrecttheproblemand submitanewenrollment 4022InvalidFileDate Correcttheproblemand submitanewenrollment 4023InvalidFileSequenceCorrecttheproblemand Numbersubmitanewenrollment 4024InvalidEnrollmentNumberCorrecttheproblemand submitanewenrollment 4025InvalidActionCodeCorrecttheproblemand submitanewenrollment 4026InvalidTaxpayerPINCorrecttheproblemand submitanewenrollment 4027InvalidSecondaryTINCorrecttheproblemand submitanewenrollment 4028InvalidCountryCodeCorrecttheproblemand submitanewenrollment 4029InvalidStateCorrecttheproblemand submitanewenrollment 4030InvalidRemittanceMethodCorrecttheproblemand submitanewenrollment 4031InvalidPrimaryPaymentCorrecttheproblemand InputMethodsubmitanewenrollment ;Erro'r'G'eNessescnjtom!!ommeNtsssMf:K::'.::!!. Error Codes Descriptiott Comriunt 4032InvalidMaster Account Correct the problem and Flagsubmitanewenrollment 4033InvalidRoutingandTransitCorrecttheproblemand Numbersubmitanewenrollment 4034InvalidAccountTypeCorrecttheproblemand submitanewenrollment 4035PrenoteAccountFlagCorrecttheproblemand Invalidsubmitanewenrollment 4036DuplicateFileAduplicatefileis suspected.Verifythatthe filewasnotalreadysentfor thedaysbusiness.Contact CustomerServiceif problempersists. 4037ResponseFileNotFoundResponsefilesaredeleted after30days.Iffileisless than30daysoldand problempersists,contact CustomerService. 4038ErrorProcessingFile-CallContactCustomerService CustomerService 9999EnrollmentPendingEnrollmentispendingIRS validationand/orprenote processes Table K: Payment Error Codes Error Codes Deseription 0 Comments i 0000SuccessfulpaymentSuccessfulpayment 5103TotaldollaramountexceedsCorrecttheproblemand maximumsubmitanewpayment 5104TaxtypenotvalidCorrecttheproblemand submitanewpayment 5105OneormoresubcategoryCorrecttheproblemand amountsarenegativeorsubmitanewpayment invalid 5106TaxtypeisnotvalidfortheCorrecttheproblemand Taxpayertypesubmitanewpayment 5108SettlementDateisnotValidCorrecttheproblemand (weekend,holiday,etc.)submitanewpayment 5110InvalidBatchFilerCorrecttheproblemand submitanewpayment 5111BatchFilerisinactiveCallCustomerService 5113TaxpayerisnotactivePaymentscannotbemade foraninactivetaxpayer 5114TaxpayerisnotenrolledPaymentscannotbemade forataxpayernotenrolled inEFTPS 5116SettlementDatenotgreaterCorrecttheproblemand thantodayorexceedssubmitanewpayment maximumwarehouseperiod (business-30days individual-105days) 5118FundTransferAmountnotCorrecttheproblemand greaterthan0orinvalidsubmitanewpayment Error Codes Description Comments ; 5122 Warning:Duplicate EFTPSWarningMessage. PaymentAcceptedAduplicatepaymentis suspectedbutwillbe processed. 5123InvalidTaxpayerPINCorrecttheproblemand submitanewpayment 5124InvalidTINCorrecttheproblemand submitanewpayment 5125Paymenttransactionis beingprocessedafter8pm ETandtheSettlementDate isthenextcalendarday 5126SumoftheSubcategoryCorrecttheproblemand Amountsnotequaltosubmitanewpayment Paymentamount 5127TaxpayernotenrolledforCorrecttheproblemand ACHDebitsubmitanewpayment 5128MasterAccountnotactiveCorrecttheproblemand submitanewpayment 5129InvalidMasterInquiryPINCorrecttheproblemand submitanewpayment 5130InvalidFileDate(<or=toCorrecttheproblemand today'sdatewithinsubmitanewpayment 5businessdays) 5131InvalidFilerSequenceCorrecttheproblemand Numbersubmitanewpayment 5132InvalidPaymentReferenceCorrecttheproblemand Numbersubmitanewpayment ErrorCodes Description ! Comments 5133InvalidActionCodeCorrecttheproblemand submitanewpayment 5134InvalidTaxPeriodCorrecttheproblemand submitanewpayment 5135InvalidSubcategoryCodeCorrecttheproblemand submitanewpayment 5136DuplicateFileAduplicatefileis suspected.Verifythatthe filewasnotalreadysentfor thedaysbusiness. 5137ResponseFileNotFoundResponsefilesaredeleted after30days.Iffileisless than30daysoldand problempersistscall customerservice. 5138ErrorProcessingFile-CallContactCustomerService CustomerService 5140SubcategoryCodeNotCorrecttheproblemand ValidforTaxTypeCodesubmitanewpayment 5141TaxpayerUsingMasterCorrecttheproblemand AccountNotEnrolledwithsubmitanewpayment BatchFiler 9999PaymentPendingInquireatalatertime Table L: PC Error Corrective Actions Error Type: E = Enrollment, P = Payment, and B = Both '£rror E.ror Type ; Enr Pntescriptian Correction BFailedtoreadEnsurethatthedirectoryin ImportFileToolslOptionslSendisvalid andcorrect,andthatthe filenameiscorrect,andthat thefilecontainsthecorrect data(isnotanullfile). B 4016 5110 InvalidBatchChangetheBFIDtoavalid FilerIDone. B40225108InvalidDate-Ensuretheformatiscorrect Mustbe-YYYYMMDDandequal YYYYMMDtoadategreaterthan Dtoday'sdate. BTheBatchChangeanyincorrector FilerIDisinvalidBFIDsinthisfield. differentAllBFIDsneedtothesame withinthefilenumberwithinafile. B TheMasterChangeanyincorrector PINisinvalidMasterPINsinthis differentfield. withinthefile B TheFileDateChangeanyincorrector isdifferentinvalidFileDatesinthis withinthefilefield. Errar Error Type Enr p t Description Correction BTheFileAllFileSequencenumbers Sequenceneedtobethesame,and Numberismustbeuniquewithinthe differentdayforthatfile. withinthefile E 4024InvalidMustbeascendingwithina Enrollmentfile. Number P5132InvalidMustbeascendingwithina Paymentfile. Reference Number B 4021 5123 Invalid PIN EnsurePINnumberis correct.ForEnrollments only,thisfieldisblank unlessActionCode="T" (Terminate). B 4023 5131 InvalidFilerAllFileSequencenumbers Sequenceneedtobethesame,and Numbermustbeuniquewithinthe dayforthatfile. E4011InvalidEnsuretaxpayernameis Taxpayercorrectandvalid,thisfield Namemustcontainatleast2 characters. B 4013 5124 Invalid TIN EnsuretaxpayerTINisa validone;mustbe9digits. Error Error nr : ri on or rec ion E 4026 Invalid Thisfieldmustbeblank TaxpayerPINunlessActionCode="T" -Mustbe(Terminate). blank E4027InvalidThisfiledmustbeblankif SecondaryTaxpayerType="B" TIN-Must(Business). beblank E4014InvalidZipThisfieldmustbeblankif Code-MustCountryCodedoesnot beblankforequal"US." non US countrycode E 4014InvalidZipEnsureZipcodeiscorrect CodeandvalidforUS. E 4015 Invalid Mustcontain"8655,"which SignatureconfirmsaForm8655is Equivalent-submittedtotheIRS. Cannotbe blank E 4030InvalidMustcontainvalidvalue: Remittance"C"forACHCredit,"D" Method-forACHdebit. Cannotbe blank Error Errvr ; pe 0 Enr Pmt 0 Description fCorrection E4033InvalidEnsurethattheRoutingand RoutingTransitNumber(RTN)is Numbercorrectandvalid.Ifthe MasterAccountFlag="N," andiftheRemittance Method=D,a9-digit numbermustappearinthis field,orelseitisleftblank. E4033InvalidIftheRemittancemethod = Routing"C,"itisleftblank. Number- Mustbe blank E 4018 Invalid IftheRemittancemethod = Account"C,"itisleftblank. Number- Mustbe blank E 4018 Invalid IftheRemittancemethod = Account"D,"andtheMaster Number-Accountflag-"N,"avalid Cannotbeaccountnumber,upto17 blankcharacters,mustappear. G 7 rrori 'Type'Enr Pmt'Description Correction' E 4034InvalidThisfieldmustcontaina AccountTypevalidvalue,"C"(for -CannotbeChecking)or"S"(for blankSavings),iftheMaster Accountflag-"N"andthe remittancemethod="D," otherwiseitisleftblank. E4034Invalid IftheMasterAccountflat= AccountType"Y"ortheremittance -Mustbemethod="C,"itisleft blankblank. E 4035 Invalid IftheMasterAccountflat= 4032Prenote"Y"ortheremittance Accountmethod="C,"itisleft Flag-Mustblank. beblank E4035InvalidThisfieldmustcontaina 4032Prenotevalidvalue,"Y"(Prenote AccountAccount)or"N"(Batch Flag-MustFilerassumesresponsibility beYorNforaccuracy).Noprenoteif theMasterAccountflag = "N"andtheremittance method="D,"otherwiseit isleftblank. P InvalidThisfieldmustcontaina Taxpayervalidvalue,"B"(Business) Type-Mustor"I"(Individual). be"B"or"I" Error Error' . Erro.......... P5104InvalidTaxThisfieldmustcontaina TypeCodevalidnumericvalue(refer toPIB). P5134InvalidTaxThisfieldmustcontaina Period-MustvaliddateintheYYYYMM beformat. YYYYMM P5108InvalidThisfieldmustcontaina SettlementvaliddateintheYYYYMM Date-Mustformatandmustbegreater begreaterthantoday'sdate. thantoday P5135InvalidThisfieldmustcontaina SubcategoryvalidIRScode,butisnota coderequiredfield. P5105InvalidThisfieldmustcontaina Amount-numericvalue,withleading Numberszeroesfilledtocompletethe only,leadingfield,i.e., zerofilled000000000000100would representanamountof $100,mustbegreaterthan0 andlessthan100,000,000. 5118 P5105InvalidThisfieldmustcontaina Amount-numericvaluegreaterthan Cannotbe0andlessthan zero100,000,000. Error Error TypeDescr. 1on orrec. ion P5126SubcategorySubcategoryamounts(upto Amountsdo5)mustadduptothe notadduptoamountstatedinthe PaymentPaymentAmountField. Amount PPreviousIfanysubcategorycode subcategoryfielddoesnotcontaina codehasnovalidIRScode,no data,subsequentcodefields subsequentshouldcontainanydata, codesarenotunlesstheinvalidorempty allowedsubcategorycodefield shouldcontainavalidIRS code. P 5133 Invalid TheActionCodefieldfor ActionCode-Paymentsmustcontaina Mustbe"P"validvalueof"P." E4028InvalidMustbenon-blankusing CountryCodevalidISOcountrycodes. -Cannotbe blank B Invalid Thelengthofthe ImportEnrollmentrecordmustnot RecordSizeexceed135characters,and thelengthofthepayment recordmustnotexceed167 charactersmaximum(if5 subcategorycodesand amountsareused). Error'Error peEnr . Pmt Description Crrection PInvalidBreakintotwopayments. Amount- Exceeds maximum allowed

Note: The following Host error codes have no PC equivalent.

Enrollment: 0000,4001-4009,4012,4019,4020,4025,4029,4031,4032,4036, 4037,4038,9999.

Payment: 5103,5106,5111,5113,5114,5122,5125,5127,5128,5136,5137, 5138,5139,9999.

Table M: Error File Messages ErrorCode ErrorDescription 10000000 FailedtoreadImportFile: 10000001 InvalidBatchFilerID 10000002 InvalidDate-MustbeYYYYMMDD 10000003 TheBatchFilerIDisdifferentwithinthefile 10000004 TheMasterPINisdifferentwithinthefile 10000005 TheFileDateisdifferentwithinthefile 10000006 TheFileSequenceNumberisdifferentwithinthefile 10000007 InvalidEnrollmentNumber 10000008 InvalidPaymentReferenceNumber 10000009 InvalidPIN 10000010 InvalidRecord-Alllettersmustbeuppercase 10000011 InvalidFilerSequenceNumber 10000012 Invalid TaxpayerName 10000013 InvalidTIN 10000014 InvalidTaxpayerPIN-Mustbeblank 10000015 InvalidSecondaryTIN-Mustbeblank 10000016 InvalidZipCode-MustbeblankfornonUScountry code 10000017 InvalidZipCode 10000018 InvalidSignatureEquivalent-Cannotbeblank 10000019 InvalidRemittanceMethod-Cannotbeblank 10000020 InvalidRoutingNumber 10000021 InvalidRoutingNumber-Mustbeblank 10000022 InvalidAccountNumber-Mustbeblank 10000023 InvalidAccountNumber-Cannotbeblank 10000024 InvalidAccountType-Cannotbeblank 10000025 InvalidAccountType-Mustbeblank 10000026 InvalidPrenoteAccountFlag-Mustbeblank 10000027 InvalidPrenoteAccountFlag-MustbeYorN 10000028 InvalidTaxpayerType-Mustbe'B'or'I' 10000029 InvalidTaxTypeCode 10000030 InvalidTaxPeriod-MustbeYYYYMM 10000031 InvalidSettlementDate-Mustbegreaterthantoday 10000032 InvalidSubcategoryCode 10000033 InvalidAmount-Numbersonly,leadingzerofilled 10000034 InvalidAmount-Cannotbezero 10000035 SubcategoryAmountsdonotadduptoPaymentAmount 10000036 Previoussubcategorycodehasnodata,subsequentcodes arenotallowed 10000037 InvalidActionCode-Mustbe'P' 10000038 InvalidCountryCode-Cannotbeblank 10000039 InvalidImportRecordSize 10000040 InvalidAmount-Exceedsmaximumallowed Appendix B: Response Files Table Design Table N: Response Files Table Columns BatchFilerID Type = Text Size = 9 Allow Zero Length: No Attributes: Variable Length Collating Order: General Column Hidden: No Column Order: Default Column Width: Default Data Updatable: No Description: The Batch filer ID Ordinal Position: 1 Required: No Source Field: BatchFilerID Source Table: tblResponseFileList Validate On Set: No MasterInquiryPIN Type = Text Size = 4 Allow Zero Length: No Attributes: Variable Length Collating Order: General Column Hidden: No Column Order: General Column Width: 1815 Data Updatable: No Description: 1\ ; IIP Input Mask: Password Ordinal Position: 2 Required: No Source Field: MasterInquiryPIN Source Table: tblResponseFileList Validate On Set: No FileDesignator Type = Text Size = 8 Allow Zero Length: No Attributes: Variable Length Collating Order: General Column Hidden: No Column Order: Default Column Width: Default Data Updatable: No Description: will be YYYYMMDD Ordinal Position: 3 Required: No Source Field: FileDesignator Source Table: tblResponseFileList Validate On Set: No FilerSeqNum Type = Text Size = 3 Allow Zero Length: No Attributes: Variable Length Collating Order: General Column Hidden: No Column Order: Default Column Width: Default Data Updatable: No Description: 001-999 Ordinal Position: 4 Required: No Source Field: FilerSeqNum Source Table: tblResponseFileList Validate On Set: No Type Type = Text Size =1 Allow Zero Length: No Attributes: Variable Length Collating Order: General Column Hidden: No Column Order: Default Column Width: 585 Data Updatable: No Description: E-Enrollment P-Payment Ordinal Position: 5 Required: No Source Field: Type Source Table: tblResponseFileList Validate On Set: No DateSent Type = Date/Time Size = 8 Allow Zero Length: No Attributes: Fixed Size Collating Order: Unknown or Undefined Column Hidden: No Column Order: Default Column Width: 960 Data Updatable: No Description: The date the file was sent Ordinal Position: 6 Required: No Source Field: DateSent Source Table: tblResponseFileList Validate On Set: No Table O: Response Files Table Indexes FileDate # of Fields =1 Clustered: No Distinct Count: 0 Foreign: No Ignore Nulls: No Name: FileDate Primary: No Required: No Unique: No Fields: FileDesignator, Ascending FilerSeqNum # of Fields = 1 Clustered: No Distinct Count: 0 Foreign: No Ignore Nulls: No Name: FilerSeqNum Primary: No Required: No Unique: No Fields: FilerSeqNum, Ascending