Transaction master file
Overview
This file captures all balance-affecting transactions you or the processor post to the ledger each business day. Use it for transaction monitoring, fraud detection, and settlement
File delivery and format
Refer here for file delivery and file format details.
Sample transaction master file
The following file contains sample data. If you have any questions, please be in touch with your onboarding team.
Explanation of fields
Each record must include the fields below, separated by commas. Please take note of the data type to avoid formatting or parsing issues.
This file covers several programs. The tables below show how to populate the fields:
Core fields: Mandatory
Field | Data Type | Description | Required/ Conditional |
|---|---|---|---|
unique_program_id | VARCHAR(12) | Identifier provided by the processor to distinguish programs for settlement and reconciliation. | Required |
product_id | VARCHAR(12) | If a given program has more than one type of card, the processor should include a product identifier. | Required |
user_id | VARCHAR(50) | Identifier given to each unique customer or cardholder. | Required |
card_id | VARCHAR(50) | Identifier given to each unique card issued to an account. | Required |
first_digits | VARCHAR(8) | First 8 digits of the card number, also known as BIN | Conditional |
last_digits | VARCHAR(4) | Last 4 digits of the card number | Conditional |
transaction_id | VARCHAR(50) | Unique identifier for each transaction. | Required |
posted_date | DATETIME (YYYY-MM-DD HH:MM:SS.sss) | The date the transaction is posted to the customer account | Required |
settlement_date | DATETIME (YYYY-MM-DD HH:MM:SS.sss) | Date and time when the transaction was settled. For ACH- date funds were settled via FED. | Conditional- blank if not yet settled |
transaction_type | VARCHAR(20) | Type of transaction performed. | Required |
transaction_status | VARCHAR(20) | Current status of the transaction. | Required |
Billing_amt | DECIMAL(18,4) | The amount of the transaction in the currency of the cardholder account | Required/ Conditional |
Settlement_amt | DECIMAL(18,4) | The amount of the transaction in the currency of settlement between issuer and acquirer | Conditional |
transaction_amount | DECIMAL(18,4) | Amount of the transaction in settlement currency. | Required |
transaction_currency | VARCHAR(3) | ISO 4217 currency code for the transaction. | Required |
billing_currency | VARCHAR(3) | ISO 4217 standard currency code of the cardholder account, in this case, U.S. dollar | Conditional |
settlement_currency | VARCHAR(3) | ISO 4217 standard currency code of settlement between issuer and acquirer – usually U.S. dollar | Conditional |
transaction_country_code | VARCHAR(3) | Country code at point of sale | Required/ Conditional |
is_cashback | BOOL | Indicator that a Purchase included a cashback component | Conditional |
cashback_amt | DECIMAL(18,4) | Indicate cash amount from a purchase with cashback | Conditional |
transaction_CDI | VARCHAR(1) | Transaction Credit (C) or Debit (D) indicator | Required |
network | VARCHAR(10) | Card network the transaction was processed on. | Required |
is_chargeback | BOOL | Chargeback transaction indicator (True, False) | Conditional |
Interchange | DECIMAL(18,4) | Interchange fee associated to this transaction | Required/ Conditional |
description | VARCHAR(100) | Human-readable transaction description. | Required |
is_ecommerce | BOOL | E-commerce indicator (True, False) | Conditional |
is_pin | BOOL | PIN transaction indicator(True, False) | Required/ Conditional |
is_sig | BOOL | Signature transaction indicator(True, False) | Required/ Conditional |
Merchant_id | VARCHAR(50) | Merchant identifier from the card network | Conditional |
merchant_category_code | VARCHAR(4) | Code identifying category of the merchant, also known as MCC | Required |
merchant_name | NVARCHAR(100) | Merchant name as sent by the card network | Required |
merchant_city | VARCHAR(50) | Merchant city as sent by the card network | Required |
merchant_state | VARCHAR(20) | Merchant state as sent by the card network | Required |
merchant_country | NVARCHAR(100) | Merchant country as sent by the card network | Required |
is_mobile | BOOL | Whether a token requestor ID was present, indicative of a mobile wallet transaction(True, False) | Conditional |
is_contactless | BOOL | Whether the card used contactless POS interface(True, False) | Conditional |
card_present | BOOL | Whether the card was physically present when conducting the transaction(True, False) | Conditional |
ACH programs
Field | Data Type | Description | Required/ Conditional |
|---|---|---|---|
ach_sec_code | VARCHAR(3) | Standard NACHA defined entry Class code identifying the type of ACH entry. | Required |
ach_direction | VARCHAR(10) | Direction of the ACH entry relative to the cardholder's account. | Required |
source_trace | VARCHAR(20) | ACH Trace Number assigned by the external ODFI to incoming ACH transactions | Required |
originator_routing_code | VARCHAR(9) | 9-digit ABA routing number identifying the bank that initiated the ACH transaction. Tells you which institution the payment came from. | Required |
recipient_routing_code | VARCHAR(9) | ABA routing number of the receiving financial institution. | Conditional |
originator_name | VARCHAR(50) | Name of the ACH originator (company or individual). | Required |
payee_name | VARCHAR(50) | Name of the ACH payee/receiver. | Conditional |
ach_return_code | VARCHAR(4) | Reason code if the ACH entry was returned. | Conditional |
ach_return_date | DATETIME | Date and time the ACH return was received. | Conditional |
ach_batch_number | VARCHAR(7) | Batch number within the ACH file this entry belongs to. | Required |
ach_effective_entry_date | DATE | Date the originator intended the entry to settle. | Required |
odfi_id | VARCHAR(9) | Routing number of the Originating Depository Financial Institution. | Required |
Prepaid/GPR programs
Field | Data Type | Description | Required/ Conditional |
|---|---|---|---|
load_source | VARCHAR(30) | Source of the card load/funding. | Required |
load_amount | DECIMAL(18,4) | Amount loaded onto the card in this transaction. | Conditional |
load_channel | VARCHAR(20) | Channel through which the load was performed. | Conditional |
fee_type | VARCHAR(30) | Type of fee charged (if transaction is a fee). | Conditional |
fee_amount | DECIMAL(18,4) | Fee amount charged. | Conditional |
Credit programs
Field | Data Type | Description | Required/ Conditional |
|---|---|---|---|
credit_limit | DECIMAL(18,4) | Total credit limit on the account at time of transaction. | Required |
interest_charged | DECIMAL(18,4) | Interest amount charged in this cycle (if transaction is interest posting). | Conditional |
charge_off_amount | DECIMAL(18,4) | Balance at time of closing following a charge-off. | Conditional |
charge_off_date | DATETIME | Date and time the account was charged off. | Conditional |
is_cash_advance | BOOLEAN | Whether this transaction is a cash advance. | Required |
Commercial programs
Field | Data Type | Description | Required/ Conditional |
|---|---|---|---|
pos_entry_type | VARCHAR(20) | How the card was read on that specific swipe (chip, swipe, manual key, contactless, etc.) | Conditional |
blocked_mcc_violation | BOOLEAN | Whether this transaction attempted a blocked MCC category. | Required |
expense_category | VARCHAR(30) | Each individual transaction gets categorized (travel, meals, office supplies, fuel, etc.) | Conditional |
receipt_attached | BOOLEAN | Whether a receipt/documentation was attached to this transaction. | Conditional |