Trial Balance File

A listing of all accounts within a bank of record with these qualities (as of the effective date of the file):

  • All customer accounts in an Open status
  • All customer accounts which have a non-zero balance
  • All program accounts

Trial Balance File Definition

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

  1. Exactly one tab-delimited header line.
  2. Zero or more tab-delimited content lines.
  3. A tab character (\t, or 0x09) embedded in actual text content will be replaced with a space character (" ", or 0x20) during file generation
  4. This file is tab-delimited to help reduce the size of file as it may grow considerably over time and possibly contain large sections of empty columns.
  5. ANSI encoded
  6. Line endings are Windows-style CarriageReturn + LineFeed (\r\n, or 0x0D0A)
  7. File will be available in the relative directory of /TrialBalanceFiles/Daily. The file created for the last day of a given month will also be copied /TrialBalanceFiles/Monthly. (i.e. two copies of same file will exist in each of Daily and Monthly subfolders)
  8. File name follows a specific, case-sensitive pattern of: yyyyMMddhhmm_{BANKNAME}_TrialBalanceExport_{PRODUCTCATEGORY}.TXT where {BANKNAME} is the name of the bank, and {PRODUCTCATEGORY} is either DDA or Savings.

🚧

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)

Tab Offset

Description

FileName

string (50)

0

The name of this request file excluding path.
Example:
201410210148_EXAMPLEBANK_TrialBalanceExport_DDA.TXT

RecordCount

integer (10)

1

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

FileCreatedDate

datetime (34)

2

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)

3

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

Content Row

Property

Data Type (Max Length)

Tab Offset

Description

Program Name

string (50)

0

The name of the program with which the line item is associated.

Client Name

string (50)

1

The name of the client with which the line item is associated.

CustomerId

integer (10)

2

The customerId property of the customer object.

FirstName

string (64)

3

The firstName property of the customer object.

MiddleName

string (64)

4

The middleName property of the customer object.

LastName

string (128)

5

The lastName property of the customer object.

FullName

string (256)

6

A nicely formatted concatenation of the firstName, middleName and lastName properties of the customer object.

AccountCreatedDate

datetime

7

The createdDate property of the account object. Follows same format as API.
Example: 2014-10-20T23:59:59.999-05:00
See data format guidelines

AccountName

string (50)

8

The name property of the account object.

AccountNumber

string (17)

9

The accountNumber property of the account object.

EffectiveDateEndingBalance

decimal

10

The accountBalance property of the account object as of the FileEffectiveDate in the file header. Always contains two digits of precision to the right of the decimal. Follows same format as API for monetary values.
Example 13.00

EffectiveDateInterestAccrued

decimal

11

The interest accrued for the account on the day of the FileEffectiveDate in the file header. Always contains four digits of precision to the right of the decimal. Follows same format as API for Interest values.
Example: 0.0020

PeriodAverageDailyBalance

decimal

12

The average daily balance for the account from the beginning of the period through the FileEffectiveDate in the file header. Always contains two digits of precision to the right of the decimal. Follows same format as API for monetary values.
Example: 13.00

PeriodInterestAccrued

decimal

13

The interest accrued for the account from the beginning of the period through the FileEffectiveDate in the file header. Always contains four digits of precision to the right of the decimal. Follows same format as API for Interest values.
Example: 0.0020

PeriodRoundedInterestAccrued

decimal

14

The rounded interest accrued for the account from the beginning of the period through the FileEffectiveDate in the file header. Always contains two digits of precision to the right of the decimal. Follows same format as API for Interest values.
Example: 0.01

PeriodInterestPaid

decimal

15

The total amount of interest paid on the account from the beginning of the period through the FileEffectiveDate in the file header. Always contains two digits of precision to the right of the decimal. Follows same format as API for monetary values.
Example: 13.00

YearToDateInterestPaid

decimal

16

The total amount of interest paid on the account from the beginning of the year through the FileEffectiveDate in the file header. Always contains two digits of precision to the right of the decimal. Follows same format as API for monetary values.
Example: 13.00

InterestRate

decimal

17

The Annual Percentage Rate (configured in Helix Admin) used during interest calculations on the account that was effective on the FileEffectiveDate in the file header. Always contains eleven digits of precision to the right of the decimal. Follows same format as API for monetary values.
Example: 0.00957389763

BeneficiaryCount

integer (10)

18

The number of active beneficiaries the customer had effective on the FileEffectiveDate in the file header.

ProductName

string (100)

19

The name property of the customer object.

TaxId

string (30)

20

The taxId property of the customer object.

AccountId

integer (10)

21

The accountId property of the account object.

productId

integer (10)

22

The unique identifier of the product of which the account is associated.

{ "file_type": "tab_delimited" }