ACH Transaction File

A summary of ACH transactions which have posted for a given day (hourly delivery available upon request). It is intended to be used in conjunction with the Posted Transaction File.

ACH Transaction File Definition

The ACH Transaction File is created by Helix on a daily basis. It has the following properties:

  1. Fixed-length
  2. ANSI encoded
  3. Line endings are Windows-style CarriageReturn + LineFeed (\r\n, or 0x0D0A)
  4. File will be available in the relative directory of /AchTransaction
  5. File name follows a specific, case-sensitive pattern of: yyyyMMddhhmm_ACHTRANSACTION.TXT

🚧

Format Disclaimer
Helix reserves the right to append new field(s) to the end of any Header or Content line without notice. This is to allow new data points to be added as needed in a timely fashion.

Implementation Note
Your code should be written such that unexpected characters after the "last" field but prior to the end of each line should be ignored. That is, if the file is documented as being 872 bytes per line, receiving a file with 984 bytes per line should not disrupt your processing. This applies to both Header and Content lines.

File Name Disclaimer
The date in file name should be used as a guideline for human eyes only. Any date-related programmatic dependencies should rely on the FileCreatedDate or FileEffectiveDate contained within the header line of each file, as these will be precise to the second and will be in the appropriate timezone.

Header Row

Property

Data Type (Length)

Alignment

Start Position

Description

RecordType

string (1)

Left

1

The flag for the header row. Will always be H.

FileName

string (50)

Left

2

The name of this request file excluding path.
Format: yyyyMMddhhmm_ACHTRANSACTION.TXT
Example: 201410210215_ACHTRANSACTION.TXT

RecordCount

integer (10)

Right

52

The number of records represented within the file. This field is zero-padded on the left side.
Example: 0000000872

FileCreatedDate

datetime (34)

Left

62

The date the file was created. Follows same format as API.
Example: 2014-10-20T10:30:31.456-05:00
See data format guidelines

FileEffectiveDate

datetime (34)

Left

96

The date to which the data in the file pertains. Follows same format as API. Example: 2014-10-20T23:59:59.999-05:00
See data format guidelines

Content Row

Property

Data Type (Length)

Alignment

Start Position

Description

CustomerId

integer (10)

Right

1

The unique identifier for a customer. This field is zero-padded on the left side. e.g.: 0000000872

CustomerTag

string (50)

Left

11

The client-supplied unique identifier for the customer, aka the tag property on the customer object. This may be empty as it is an optional property.

AccountId

integer (10)

Right

61

The unique identifier for the bank account from which funds will be withdrawn. This field is zero-padded on the left side. e.g.: 0008309285. This is NOT an account number. It is the accountId of an account object or an externalAccountId of an externalAccount object.

AccountTag

string (50)

Left

71

The client-supplied unique identifier for the account, aka the tag property on the account object. This may be empty as it is an optional property.

AccountName

string (50)

Left

121

The name of the account or externalAccount.

TransactionId

long integer (19)

Right

171

The unique identifier for the transaction. This field is zero-padded on the left side. e.g.: 0008309285

TransactionTag

string (50)

Left

190

The client-supplied unique identifier for the transaction. See transaction object definition for details.

TransactionTypeCode

string (6)

Left

240

The typeCode of the transaction object.

TraceNumber

string (15)

Left

246

The traceNumber of the Nacha file entry detail record.

StandardEntryClassCode

string (3)

Left

261

The standardEntryClassCode of the Nacha file batch record.

CompanyName

string (16)

Left

264

The companyName of the Nacha file batch record.

CompanyDiscretionaryData

string (20)

Left

280

The companyDiscretionaryData of the Nacha file batch record.

CompanyEntryDescription

string (10)

Left

300

The companyEntryDescription of the Nacha file batch record.

ReceivingCompanyName

string (22)

Left

310

The receivingCompanyName (Individual Name) of the Nacha file entry detail record.

IdentificationNumber

string (15)

Left

332

The identificationNumber of the Nacha file entry detail record, positions 40-54

IsEarlyDeposit

string(1)

Left

347

The isEarlyDeposit indicator for the Nacha file entry detail record.
N indicates the ACH entry was not posted as an early ACH item
Y indicates the ACH entry was posted as an early ACH item

Amount

string(11)

Right

348

The amount of the Nacha file entry detail record.

HeaderCompanyIdentification

string(10)

Left

359

The headerCompanyIdentification for the Nacha file entry detail record.

NachaSettledDate

datetime(34)

Left

369

The nachaSettledDate exists only when IsEarlyDeposit is Y and indicates the Original Nacha Settlement Date from the ACH Batch Header record.

TransactionSettledDate

datetime(34)

Left

403

The date in which the ACH item has settled in the Helix account. This date is also the Nacha Settlement Date from the ACH Batch Header record.