Transaction
A transaction represents a movement of funds. This includes requests via the /transfer/create route, interest paid, manual adjustments, debit card transactions, incoming ACH requests, etc.
The transaction resource is used for retrieving one or more transactions. Transactions that are initiated via the /transfer/create route with external bank accounts (or via a recurring contribution) can be voided as long as the ACH request has not yet been delivered to NACHA.
Take me to the Transaction Endpoint Reference
transaction Object
Property | Data Type (length) | Description |
---|---|---|
accountId | integer | The Helix-assigned unique ID for the account this transaction posted against |
amount | decimal | The amount of funds the transaction represents. |
availableDate | datetime | The exact date and time the funds associated with the transaction became available. Returned in time zone local to the bank. Format: yyyy-MM-ddTHH:mm:ss.SSSZ Example: 2021-07-04T15:30:45.123+05:00 |
cardId | integer | The Helix-generated unique ID for the card that created the transaction. Will be empty or 0 if this transaction is not tied to a card. |
cardMerchantInfo | object | A cardMerchantInfo object |
check | object | Check object related to check deposit transaction types. |
createdDate | datetime | The exact date and time the transaction was created. Returned in time zone local to the bank. Format: yyyy-MM-ddTHH:mm:ss.SSSZ Example: 2021-07-04T15:30:45.123+05:00 |
customerId | integer | Customer who owns the bank account associated with the transaction. |
customField1 | string | Only used internally by Q2 |
depositAvailability | object | depositAvailability object related to deposit transaction types. |
description | string | Represents a client-specified description of the transaction. If transaction was received from a Nacha file ( typeCode is UNKWTH, UNKDEP , UNKPRG ) this property contains the description verbatim from the Nacha file. By law, this description must be displayed to the end user.If transaction was received from an ISO-8583 interface (i.e. debit card transaction), this property contains description verbatim from DataElement 43 (Card Acceptor Name/Location) of ISO-8583 interface plus details of any fees or surcharges that may have been incurred. By law, this description must be displayed to the end user. Otherwise, the transaction was received from a call to Helix API or it was line item in the Bulk Transfer File. This property contains the description verbatim passed by the client code. |
feeCode | enum | The code of the fee this transaction represents. Possible values: - ACH : Same Day ACH Fee- DAF : Dormancy Fee- IAF : Inactivity Fee- ICF : International Card Fee- NSF : Insufficient Funds Fee- RGD : Regulation D Fee- RTN : Return Item Fee |
feeDescription | enum | The description of the fee this transaction represents. See feeCode for possible values. |
friendlyDescription | string | A human-readable description of the transaction. This is automatically generated by Helix driven by the typeCode of the transaction. |
institutionName | string | The name of the financial institution that originated the transaction. Will be populated when possible, but is not always available for all transaction types. |
isCredit | boolean | true if the amount is crediting the given accountId , false otherwise. |
isEarlyDirectDeposit | boolean | true if the transaction was an early direct deposit |
isSameDaySettle | boolean | true if the transaction is Same Day ACH |
masterId | long integer (64-bit integer) | The unique identifier created by Helix used to group related transactions together. Examples: an ACH withdrawal and a subsequent return. A debit card authorization and its corresponding completion(s). A mobile check deposit return and its corresponding original mobile check deposit. |
nachaDescription | deprecated | Use description instead. |
nachaInfo | object | A nachaInfo object |
purposeCode | string (10) | The alphanumeric identifier describing the purpose of the transaction, is provided to the third-party fraud and risk vendor. These values are agreed upon by the bank of record and client during onboarding |
requestingCustomerId | integer | The individual who requested/initiated the transaction (if different from the business customer who owns the account). Only relevant for business accounts. |
returnCode | string | The Nacha return code representing why the transaction was returned. |
runningAccountBalance | decimal | The accountBalance of the Account this transaction posted against after the transaction is settled. |
settledDate | datetime | The exact date and time the transaction was settled. Returned in time zone local to the bank. Format: yyyy-MM-ddTHH:mm:ss.SSSZ Example: 2021-07-04T15:30:45.123+05:00 |
statementDate | datetime | Same as settledDate |
status | enum | Valid values include: - Initiated : Transaction has been created but not yet put into a NACHA file- Pending : Transaction has been created and put into a NACHA file- Settled : Transaction has been posted to the account- Voided : Transaction has been voided |
subType | enum | The description of the subtypeCode for this transaction. Applicable only to ISO-8583 based transactions (card). |
subTypeCode | string (6) | The Merchant Category Code of the merchant where the transaction originated. Categorizes merchants with similar lines of business together. Applicable only to ISO-8583 based transactions (card). |
transactionTag | string (50) | The program-wide unique identifier provided by the caller during /transfer/create. Helix does not generate this value. |
transactionCount | integer | The total transactions that meet your query criteria. Note: only a single page is returned in one call. See /transaction/list for more information.~~ |
transactionId | long integer (64-bit integer) | The Helix-assigned unique ID for the transaction. |
type | string | A human-readable description of the type of transaction. For possible values see the 'Description' column on the Transaction Type Detail table |
typeCode | string (6) | A programmatic code for the type of transaction. See Transaction Types for details. |
voidedDate | datetime | The exact date and time the transaction was voided. Returned in time zone local to the bank. |
cardMerchantInfo object
And object containing additional merchant data for card transactions
Property | Data Type (length) | Description |
---|---|---|
merchantCity | string (13) | The city of the merchant at which the transaction originated. |
merchantCountryCode | string (2) | The country code of the card acceptor. |
merchantGroupcode | string (6) | A grouping of multiple Merchant Category Codes into fewer, more useful sets. See Merchant Group Codes for more information. |
merchantId | string (15) | The identification code of the merchant that accepted the card information. |
merchantLocation | string (23) | The location of the merchant at which the transaction originated. |
merchantStateCode | string (2) | The two-character state abbreviation of the merchant at which the transaction originated. |
merchantZipCode | string (9) | The postal code of the merchant at which the transaction originated. |
nachaInfo Object
An object containing additional ACH file data for externally-originated ACH deposits into Helix accounts
Property | Data Type (length) | Description |
---|---|---|
companyDiscretionaryData | string | |
companyEntryDescription | string | |
companyIdentification | string | The companyIdentification field can be found in the Batch Header Record of an ACH File and is used to identify the Originator. |
companyName | string | |
isEarlyDeposit | boolean | |
nachaSettledDate | datetime | |
standardEntryClassCode | string |
Updated 5 months ago