DTA-BACS sets up files which hold the details of the master bank account and so on, and then creates a BACS work file from data supplied by the user, either by direct input, the raw output of another package or an ASCII file in the format detailed below. This file is then processed and the data sent to the BACS computer via a modem link or by magnetic media transfer (floppy disk or magnetic tape). The modem link option involves the use of the GNS network, and an error correcting modem is required.

DTA-BACS is controlled by a menu. Depending on the version required there are up to 11 options on it. Set up HOST Bank Details, Set up Customer Bank Details, Set up Direct Debit Details, Enter and Check Transactions,Create Submission Workfile, Generate Direct Debit Transactions, Display Reports, Generate Submission, Transfer to Output Device, Perform On-line Enquiries and Resend Submission.

Set up HOST Bank Details - This option needs to be run when setting up the host bank account details. It requests the BACS User Id which is supplied by BACS when setting up the service. Next it wants the six digit bank sort code. Then it requests the eight digit bank account number and finally the bank account name, or as much of it as will fit into 18 characters. Before writing the details to the baccdet.dat file the program asks whether the details are OK, and if and only if 'y' or 'Y' is entered is the data put to the file.

*Set up Customer Bank Details - This option allows the user to set up the details required by BACS for the processing of customer transactions. The details needed are the account number, sort code, a customer reference number and name and the bank branch.

*Set up Direct Debit Details - This option allows the user to enter direct debit data, including total amount to be debited, the frequency of payments and the start date. The program also allows the user to see the current state of a customer's direct debit account.

*Enter and Check Transactions - This option allows the user to enter BACS transactions directly into a file. Transactions may only be entered for customers who have had their details set up.

*Generate Direct Debit Transactions - This option analyses the file set up by the Set up Direct Debit Details program and generates a transaction file for processing by the Generate Submission program.

Create Submission Workfile - This option processes either the cuspay.dta file produced independently of this suite, or files produced by the other options, depending on the version being used. The format of cuspay.dta is shown below. The program reads each record from the file and validates it. If invalid records are found they are listed in bacserr.dta with a description of the error. Valid data is put into the file BACSwork.dta.

Generate Submission - This option processes the data in BACSwork.dta to create the files BACSHDR, BACS.SUB and BACSTLR. It creates a unique file serial number which it keeps track of in the file subhist.dta. It also copies the files to a new file in the submits sub-directory called SUB.Snnnnnn where nnnnnn is the file serial number. When it has completed the job it deletes BACSwork.dta and cuspay.dta. When using the communications option the submission is created and sent in the same process, and a password is requested. In all options the processing date and the file expiry date are needed.

Transfer to Output Device - This option puts the BACSHDR, BACS.SUB and BACSTLR files onto the appropriate output device. The BACS.SUB file is put onto a magnetic tape with a block size of 1800 characters, or onto a floppy disk with a block size of 500 characters.

Perform On-line Enquiries - This option allows the user to do enquiries, get reprints of reports, request newsletters and reports of password usage via the communications line. Reports received are put into the BACS.ADV file for printing or displaying by the Display Reports option.

Resend Submission - This option allows the user to resend all or part of a submission file if the transmission has failed. It asks for the record number to transmit from. If a 1 is entered the whole file is sent again.

Display Reports - This option allows the user to print or display reports sent back from BACS and other files.

Credit Card Menu - This option enables the entering, deletion, listing and processing of credit card transactions.

Options marked with * do not apply if the user supplies the data file cuspay.dta or an equivalent.

DTA-BACS can handle the BACS format files produced by many accounting packages, or a file (cuspay.dta) in the format below. All records are 65 characters long. L means left justified blank padded, R means right justified zero padded, and N means numeric digits only.

Structure of cuspay.dta
1DestRef180Destination Reference (1)
2DestSortCode618Dest Sort Code
3DestAccno8R24Dest Accno N
4DestType132Account Type N (2)
5DestName18L33Dest Acc Name (3)
6TransType251Transaction Type (4)
7TransAmount11R53Amount in pence
8EndOfRecord1 (2)64LineFeed (CRLF in DOS)


  1. The DestRef is passed to BACS for information purposes. It is usually the database reference number which will enable a rogue reference to be quickly identified.
  2. The DestType is usually 0, but in some case where the account number has more than 8 digits it has another value. See the BACS documentation for details.
  3. The DestAccName will identify the account to be debited or credited if the account number field 3 is not a valid account at the sorting code 2 branch. Upper case letters only.
  4. Transaction Types are: 01-First Payment Direct Debit, 04-Life Office Direct Debit (Net of Tax Relief), 17-Direct Debit, 18-Re-Presented Direct Debit, 19-Final Payment Direct Debit, E1-Credit Card CDebit Record, 99-Bank Giro Credit.

Email: Tel: (+44) 77 9324 1819 Fax: (+44) 70 9231 4906
4 Clifton Lawn,RAMSGATE, CT11 9PB, UK