Posted Transaction File

A summary of transactions which have posted for a given day.

Posted Transaction File Definition

The Posted 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 /PostedTransaction
  5. File name follows a specific, case-sensitive pattern of: yyyyMMddhhmm_POSTEDTRANSACTION.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

PropertyData Type (Length)AlignmentStart PositionDescription
RecordTypestring (1)Left1The flag for the header row. Will always be H.
FileNamestring (50)Left2The name of this request file excluding path.
Format: yyyyMMddhhmm_POSTEDTRANSACTION.TXT
Example: 201410210215_POSTEDTRANSACTION.TXT
RecordCountinteger (10)Right52The number of records represented within the file. This field is zero-padded on the left side.
Example: 0000000872
FileCreatedDatedatetime (34)Left62The date the file was created. Follows same format as API.
Example: 2014-10-20T10:30:31.456-05:00
See data format guidelines
FileEffectiveDatedatetime (34)Left96The 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

PropertyData Type (Length)AlignmentStart PositionDescription
CustomerIdinteger (10)Right1The Helix-assigned unique identifier for a customer. This field is zero-padded on the left side.
Example: 0000000872
CustomerTagstring (50)Left11The 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.
AccountIdinteger (10)Right61Deprecated; use DebitAccountId and CreditAccountId instead.
AccountTagstring (50)Left71Deprecated; use DebitAccountId and CreditAccountId in conjunction with the Account Balance File and External Account File
AccountNamestring (50)Left121Deprecated; use DebitAccountId and CreditAccountId in conjunction with the Account Balance File and External Account File
TransactionIdlong integer (19)Right171The unique identifier for the transaction. This field is zero-padded on the left side.
Example: 0000000000008309285
TransactionTagstring (50)Left190The client-supplied unique identifier for the transaction. See transaction object definition for details.
TransactionTypeCodestring (6)Left240The typeCode of the transaction object.
TransactionAmountinteger (10)Right246The amount of funds that was transferred. This field is zero-padded on the left side and two decimals will be assumed, e.g., 000000000000832 represents an amount of $8.32.
Actionstring (1)Left256Will be C if the Helix account is being credited, D if debited.
TransactionDescriptionstring (255)Left257The Helix-generated description for this transaction.
NachaDescriptionstring (255)Left512The NACHA-supplied description for this transaction.
CreatedDatedatetime (34)Left767The date the transaction was created. Follows same format as API.
Example: 2014-10-20T10:30:31.456-05:00
See data format guidelines
SettledDatedatetime (34)Left801The date the transaction was settled / is projected to settle. Follows same format as API.
Example: 2014-10-20T10:30:31.456-05:00
See data format guidelines
AvailableDatedatetime (34)Left835The date the transaction was made available / is projected to be made available. Follows same format as API.
Example: 2014-10-20T10:30:31.456-05:00
See data format guidelines
MasterIdlong integer (19)Right869A Helix-generated key that groups related transactions together. If a transaction directly relates to one or more other transactions, they will all have the same value for the masterId property.
ReturnCodestring (3)Left888The ACH return code associated with the transaction, e.g., R01, R10 etc.
FeeCodestring (3)Left891The fee code the transaction represents. See the feeCode property on the transaction object definition for possible values.
ExternalAccountIdinteger (10)Right894Deprecated; use DebitAccountId and CreditAccountId instead.
ReturnedTransactionIdlong integer (19)Right904The unique identifier of the transaction on which an ACH return was performed. i.e. This line item's transaction is returning another transaction, and this property specifies exactly which transactionId that is. Note the MasterId value should match for both this line item and the one represented by ReturnedTransactionId. Also, these will typically not appear in the same file, as returns of ACH transactions tend to happen days apart.
DebitAccountIdinteger (10)Right923The unique identifier for the account from which funds will be withdrawn. This field is zero-padded on the left side.
Example: 0008309285
This is NOT an account number. It is the accountId of an account or an externalAccountId of an externalAccount object.
CreditAccountIdinteger (10)Right933The unique identifier for the account to which funds will be credited. This field is zero-padded on the left side.
Example: 0008309285
This is NOT an account number. It is the accountId of an account or an externalAccountId of an externalAccount object.
productIdinteger (10)Right943The unique identifier of the product of which the account the transaction posted against is associated.

{ "file_type": "fixed_length" }