NachaTech is a software application that helps financial institutions validate NACHA files to eliminate rejections.
How to Generate ACH Reversal File with NachaTech
Here is the list of reversal codes, along with short descriptions
R01 - Insufficient Funds R02 - Account Closed R03 - No Account/Unable to Locate Account R04 - Invalid Account Number R06 - Returned per Originating Depository Request R07 - Authorization Revoked by Customer R08 - Payment Stopped R09 - Uncollected Funds R10 - Customer Advises not Authorized R11 - Check Truncation Entry Return R12 - Branch Sold to Another Depository R13 - R.D.F.I. not Qualified to Participate R14 - Representative Payee deceased R15 - Beneficiary or Account Holder deceased R16 - Account Frozen R17 - File Record Edit Criteria R18 - Improper Effective Entry Date R19 - Amount Field Error R20 - Non-transaction Account R21 - Invalid Company Identification R22 - Invalid Individual I.D. Number R23 - Credit Entry Refused by Receiver R24 - Duplicate Entry R25 - Addenda Error R26 - Mandatory Field Error R27 - Trace Number Error R28 - Routing Number Check Digit Error R29 - Corporate Customer Advises not Authorized R30 - RDFI not Participant R31 - Permissible return entry (CCD) R32 - R.D.F.I. Non-Settlement R33 - Return of XCK Entry R34 - Limited Participation D.F.I. R35 - Return of Improper Debit Entry R36 - Return of Improper Credit Entry R37 - Source Document Presented for Payment R38 - Stop Payment on Source Document R39 - Improper Source Document R40 - Non Participant in E.N.R. Program R41 - Invalid Transaction Code (E.N.R. only) R42 - Routing Number/Check Digit Error R43 - Invalid D.F.I. Account Number R44 - Invalid Individual I.D. Number R45 - Invalid Individual Name R46 - Invalid Representative Payee Indicator R47 - Duplicate Enrollment R50 - State Law Prohibits Truncated Checks R51 - Notice not Provided/Signature not Authentic R52 - Stop Pay on Item R53 - Item and A.C.H. Entry Presented for Payment R61 - Misrouted Return R62 - Incorrect Trace Number R63 - Incorrect Dollar Amount R64 - Incorrect Individual Identification R65 - Incorrect Transaction Code R66 - Incorrect Company Identification R67 - Duplicate Return R68 - Untimely Return R69 - Field Errors R70 - Permissible Return Entry Not Accepted R71 - Misrouted Dishonor Return R72 - Untimely Dishonored Return R73 - Timely Original Return R74 - Corrected Return R75 - Original Return not a Duplicate R76 - No Errors Found R80 - Cross-Border Payment Coding Error R81 - Non-Participant in Cross-Border Program R82 - Invalid Foreign RDFI Identification R83 - Foreign Receiving D.F.I. Unable to Settle R84 - Entry Not Processed by O.G.O.
How to Generate an ACH Correction File Using NachaTech
Here is the list of correction codes, along with short descriptions
C01 - Account Number C02 - Routing Number C03 - Routing Number & Account Number C04 - Account Name C05 - Transaction Code C06 - Account Number and Transaction Code C07 - Routing Number, Account Number, Trans Code C09 - Individual ID Number C10 - Company Name C11 - Company Identification C12 - Company Name & Company Identification C13 - Addenda Format Error C61 - Misrouted Notification of Change C62 - Incorrect Trace Number C63 - Incorrect Company Identification Number C64 - Incorrect Individual Identification Number C65 - Incorrectly Formatted Addenda Information C66 - Incorrect Discretionary Data C67 - Routing Number Not From Orig Trans C68 - DFI Account Number Not From Original Trans C69 - Incorrect Transaction Code
Transactions may need to be removed from ACH files for various reasons. Transactions can be removed from their fields by right clicking on the transaction in the tree view and clicking remove.
NachaTech provides functionality to create an ACH file from a CSV file. The CSV file has 1 or more transactions listed on multiple rows. The CSV file is expected to have the following header.
RDFI,Account,Amount,Receiving Company Name
A shortened header for “Receiving Company Name” could be used as “Company.” Here is an example:
RDFI,Account,Amount,Company
Please be aware that uppercase, lowercase, and mixed-case headings are acceptable. So, the following are all acceptable headers
RDFI,ACCOUNT,AMOUNT,COMPANY
RDFI,Account,Amount,Company
rdfi,account,amount,company
Pressing the CSV button in the menu bar launches the CSV dialog box, as shown below.
Select a CSV file.
Then, click OK. The generated ACH is automatically loaded in NachaTech as shown below.
NachaTech includes a Batch Insights panel at the bottom of the window, which is available in the third tab. This feature provides a bar chart that displays the amounts of each transaction. Debit transactions are displayed in blue as positive values, whereas credit transactions are shown in red as negative values.
Batch insights provide a visual to check if any transaction falls outside an expected range.
Bulk update is a command-line tool for updating certain data elements in an ACH file. It is available in the Enterprise version.
Here is how to run the bulk update command:
nachatech.exe -b -c "bulk-changes.ini" -i "input.txt" -o "updated.txt"
Here is a sample bulk update configuration file.
[fileheader] immediate.destination = 122000661 immediate.destination.name = Nova Scotia Bank immediate.origin = 333333333 immediate.origin.name = Bank of America [batchheader] company.name = Good Company company.id = 777 odfi = 12288866 [transaction] rdfi = 12200066 check.digit = 1 dfi = 77777 identification = 678 receiving.company.name = Hello Bank [batchcontrol] company.id = 777 odfi = 12288866
The above fields in their respective record types are supported at the present time.
The program will update the values provided. Remove any values that do not need to be updated. For example, if odfi does need to be modified for batch control, then supply only the field that needs to be updated “company.id” as follows:
[batchcontrol] company.id = 777
After performing the update, the program will recalculate the HASH values and save the updated document.
NachaTech CLI now supports command-line validation of ACH files. This feature enables automation of ACH validation.
Here is how to run command-line validation:
nachatech-cli.exe -v -i ach.txt
If the ACH file has validation errors, they will be displayed as follows:
1 : FileHeader -- Immediate Destination -- ABA lookup failed for 121140111 2 : BatchHeader -- Originating DFI ID -- Partial ABA lookup failed for 12114111 3 : Transaction -- RDFI -- Partial ABA lookup failed for 06400011 3 : Transaction -- Check Digit FAILED 5 : BatchControl -- hash 6400001 not matching calculated hash value 6400011 5 : BatchBatchControl -- Batch Control ODFI 12114039 not matching Batch Header ODFI 12114111 6 : FileControl -- hash 6400001 not matching calculated hash value 6400011