Automated Cash Application – ACA Programs

This section describes the Automated Cash Application programs that are available in the SreamII system.  These programs are still in use at some sites, but are not included in the StreamV applicatoin.

When electronic records of cash receipts are available from your bank, the automated cash application system can be used to process the customer payments and update the appropriate accounts receivable invoices.  This can reduce labor requirements and increase accuracy.  The data provided can come from a variety of sources; EDI, ASCII files, or from bank reports that have been parsed. 

The first step in the automated cash application process is to create a standard payment input file.  Each bank or other data source provides data in its own format, and a small mapping program is created to convert this data from the bank’s format to the standard Cove input format.

When the user starts the automated cash application program (FVACA) the system prompts the user with a list of the available mapping routines by checking the Gencode Table F19: ACAMAPS.  The user selects the mapping routine to use and is prompted for the name of the input file which defaults to ACA.NEW.  Once this file name is entered, the system reads the input file and does the following.

The program does a preprocessing run to verify the information in the source or bank file.  The mapping program checks each invoice specified in the bank file to see if it is valid.  In this case, valid means that the invoice exists, the invoice is open for at least the amount of the payment, the invoice is in the correct currency (local currency), and the invoice is of the proper type (OI, DI, IN, PP, OP, DM).  In addition, the system checks that all invoices for a specific check are assigned to the same company.  If the check points to multiple companies, it is not imported,  as this condition could be result of a mis-keyed invoice number (a bank error when creating the file) or it may be due to a parent company or financing arrangement.  These payments must be manually processed.

The system also compares the amount of each check in the bank file to the detail on the invoices to be paid from the same file.  If a valid invoice is found, but invoice detail is missing for part of the payment, the program can be configured to either skip automatic processing for that check record, or it can add lines to the cove standard input file to indicate that a document must be created for this check.  The new lines in the input file contain the information that is required by the payment application program to create the document.

The mapping program creates the standard cove input file ACA.IN which is used to apply the payments.  This file contains 1 line for each invoice to be updated.  Each line stores the invoice number and the amount of the payment.  The file also contains lines for each of the documents that the system will create in order to balance specific transactions if the system is configured to create documents.

The mapping program produces a log file that is specific to the mapping routine.  This log file is displayed automatically to the user.  The log file identifies any situations in which the system will create a document in order to balance a specific payment transaction (these situations are identified with a notice message), and it also identifies any payments that cannot be applied automatically by the system (these situations are identified with an error message).

The log file should be printed and it is used to manually apply any payments that cannot be processed automatically.

Once the mapping routine has created the standard input file, the system reads through the input file and applies the payments as recorded in the file. 

Once the system has found the invoice as specified in the input file, the system applies the payment to the invoice.  The invoice CBAL_AMT, PAYMENTS and or ADJUSTMENTS fields are updated, and the open accounts receivable balance for the customer being processed is adjusted as appropriate.  The system also creates the appropriate journal entries to support the transaction, and an ARCHECK record.  An AR comment is attached to the invoice record with the automated payment information.

Once the ACA program has completed processing, the standard AR Deposit processing program can be used to verify the deposit total and to move the amounts applied from the Cash Clearing Account to the correct Cash Account.

During the payment application process the system produces a payment application error report (fvaca.err).  The payment application error report will list any invoices which could not be processed by the program (situations in which the payment could not be applied).

The whole payment application run is wrapped in a Transaction to assure that the complete job is successfully run or nothing is applied.

Automated Cash Application – Technical Notes

This section provides some reference information about the automated cash application (ACA) programs.

ACA Standard Payment Input File – The automated cash application programs consist of a mapping program which is specific to each customer or bank file format, and a standard program which is used to actually apply the payments from the standard input file.  The standard input file produced by the mapping program is an ASCII Carriage Return delimited file containing one line for each payment to be applied.  Each line contains the following data separated by the TAB character.


Data Element Name



House Invoice Number


The A/R invoice number that the payment is to be applied to.

If a negative sign precedes the invoice number, this indicates that the system should create an overpayment or prepayment credit memo for the specified pmt amt (this is done when the invoice detail for the payment is incomplete, and it allows the entire check amount to be posted if at least one valid invoice for the payment is found (confirming that we know the customer we should be applying the payment to).

Payment Amount


The amount that the customer has paid.  If the payment amount is negative, this indicates that the customer is taking a credit memo as part of the payment transaction.



The following information is written to the AR Comment attached to the invoice.

Currency Code


The currency that the payment is in.  Blank indicates house currency.  Only payments in the invoices currency will be applied.       

Document Number


Number identifying the payment, this could be a wire transfer number or statement number.

Document Line


A line number identifying the payment within the above document number.

Batch Date


Batch Date

Check Date


Date on the Check

Check Number


Number on the Check



Who the check is from

Additional Information


Additional Information, i.e. Lockbox number


ACA Control Information – is the information that the system uses to correctly post the payments to the general ledger.  The following information is displayed to the operator for confirmation prior to processing.





Bank Account

The Bank Account the funds have been deposited in.

Defaults based on System Parameter F248:ACA-BANK

A/R Account

The Accounts receivable account to post the payment against.

Uses the AR autopost number from the invoice or customer.  If the AR autopost is not present in the invoice or customer record, the System Parameter F248: ACA-AR is used to determine the autopost number of the accounts receivable control account.

Post Date

The date that should be recorded as the post date in the Journal Entries created.

Today’s Date


ACA Journal Entry Information

The Journal Entry Lines create by the automated cash application system are created with a journal entry source of “AD”.

“ACA” is written to the Code Field of the journal entry lines.

ACA Gencode Tables

The ACA system makes use of the Gencode Table ACAMAPS:  This Gencode table stores a list of the mapping routines that are available on the system.  For each non-title record in this Gencode table, the CODE field should be set to the name of the overlay or mapping routine that is used for a specific bank.  The description should be loaded with something humanly readable such as the name of the bank that the file was received from.