Skip to main content

Download CSV template

Transactions file template with column headers and descriptions.

Overview

Context — All purchase and refund transactions for all merchants on a given day. File Type — CSV File Name<company_name>_transactions_YYYYMMDDHHmmSS
  • Example: <company_name>_transactions_20221110233030
  • company_name = your company’s name
Frequency — Daily

Data Columns

The following table outlines the column definitions for the transaction data provided by Payment Service Providers (PSPs). This data includes both purchases and refunds, consolidated into a single file. Each row represents a distinct transaction.
ColumnTypeRequiredDescription
environmentenumMandatoryEnvironment to which the transaction belongs. Allowed: PRODUCTION, TESTING. Files should only contain records from a single environment.
transaction_idstringMandatoryInternal transaction ID in the PSP system. Must be unique; duplicates will be merged using the latest version by ingestion time. To update a transaction, re-send it with updated values. IDs longer than 64 characters will be truncated. Example: 6e088a06-3b6f-4b9b-a60a-d2fd985397be.
transaction_typeenumMandatoryType of the transaction. Allowed: PURCHASE, REFUND.
merchant_registration_idstringMandatoryLegal registration ID of the merchant. If no matching merchant exists at processing time, a new merchant is created in a UNIDENTIFIED state until a matching record arrives via the merchants file. See Merchant Registration ID Types.
merchant_registration_id_typestringMandatoryType of registration ID — see Merchant Registration ID Types. Example: UEN.
merchant_registered_countrycountryMandatoryCountry where the merchant is legally registered — ISO 3166 alpha-2. Example: SG.
internal_merchant_idstringOptionalInternal merchant ID of the account to which this transaction belongs. IDs longer than 64 characters will be truncated. Example: 398-347-598.
authorisation_idstringMandatoryUnique identifier for the authorisation of the transaction. Only populated when payment_method is CARD; may be blank otherwise. IDs longer than 64 characters will be truncated. See the authorisation specification. Example: b0a93f05-2e8d-4c3c-b409-6322d26b270e.
transaction_currencycurrencyMandatoryCurrency of the transaction — ISO 4217 alpha-3. May differ from the merchant trading currency (e.g. for Multi-Currency Pricing). Example: USD.
transaction_amountdecimalMandatoryTransaction amount in the main unit of the currency, no thousand delimiters, dot as decimal separator. Amounts are rounded per Unicode CLDR. Negative values are converted via absolute value. Zero-amount records are rejected. Example: 20.00.
processing_date_timedatetimeMandatoryTime at which the transaction was processed (submitted and accepted for settlement) by the payment network — ISO 8601. Different from the authorisation time. Ideally UTC with a Z designator or UTC offset. Example: 2024-06-19T09:34:45Z.
payment_methodenumMandatoryPayment method used. Allowed: CARD, WALLET, CASH, VOUCHER, BNPL, ACCOUNT_TO_ACCOUNT, BANK_TRANSFER, OTHER.
mccstringMandatoryMerchant Category Code used for this transaction or which best represents the merchant — 4-digit string, ISO 18245. Example: 5251.
website_urlurlMandatoryWebsite URL where the customer completed the transaction. Required when channel is ONLINE; may be blank otherwise. Example: www.timstiles.com.
billing_descriptorstringMandatoryBilling descriptor used for the transaction. Required when payment_method is CARD; may be blank otherwise. Example: TIMS TILES.
card_binstringMandatoryFirst 6 or 8 digits of the card number. Required when payment_method is CARD; may be blank otherwise. Must be exactly 6 or 8 digits. Example: 413756.
channelstringMandatoryChannel through which the transaction was processed. Allowed: POS, ONLINE, OTHER. Any other values are relabeled as OTHER.
scheme_midstringOptionalScheme merchant ID (MID) used for this transaction, if known. Example: 1286459.
ip_addressstringMandatoryIPv4 or IPv6 address from which the transaction was initiated. Required when channel is ONLINE. Unparseable values are nullified. Example: 83.48.126.235.
terminal_idstringMandatoryUnique identifier of the terminal that processed the transaction. Required when channel is POS. Example: 10350001.
Invalid values for any mandatory column will cause the record to be rejected and it must be re-sent in a subsequent file.