API Documentation

Card Event Notification File

A record of debit card properties which tie back to events in the corresponding Event Notification File.

Card Event Notification File Definition

This file is created by CorePro on an hourly basis. It has the following properties:

  1. Fixed-length. Header row is 129 bytes excluding line endings. Each content row is 284 bytes excluding line endings.
  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 /EventNotification
  5. File name follows a specific, case-sensitive pattern of: yyyyMMddhhmm_DEBITCARDEVENTNOTIFICATION.TXT
  6. Root-relative path on sftp.corepro.io for that file would be: /EventNotification/201809060605_DEBITCARDEVENTNOTIFICATION.TXT

Format Disclaimer
Q2 Open 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) Alignment Start Position Description
RecordType string (1) Left 1 The flag for the header row. Will always be H.
FileName string (50) Left 2 The name of this request file excluding path. Will be named following this pattern:
  1. yyyyMMddhhmm_DEBITCARDEVENTNOTIFICATION.TXT
  2. Example: 201901210939_DEBITCARDEVENTNOTIFICATION.TXT
RecordCount integer (10) Right 52 The number of records represented within the file.
NOTE: This field is zero-padded on the left side. e.g.: 0000000872
FileCreatedDate datetime (34) Right 62 The date the file was created.
Follows same format as API e.g.: 2014-10-20T10:30:31.456-05:00. See date format details.
FileEffectiveDate datetime (34) Right 96 The date to which the data in the file pertains.
Follows same format as API e.g.: 2014-10-20T23:59:59.999-05:00. See date format details.

Content Row

Property Data Type (Length) Alignment Start Position Description
UserEventID integer (19) Right 1 The unique identifier for an event. Use this field alone to cross reference against the Event Notification File or the Realtime Event sent via Azure Service Bus.
NOTE: This field is zero-padded on the left side. e.g.: 0000000872
CustomerId integer (10) Right 20 The unique identifier for a Customer.
NOTE: This field is zero-padded on the left side. e.g.: 0000000872
CardId integer (10) Right 30 The unique identifier for the card to which this event applies.
NOTE: This field is zero-padded on the left side. e.g.: 0008309285
TransactionId integer (19) Right 40 The unique identifier for the transaction object to which this event applies. May be 0000000000 if this event does not apply to a specific TransactionId.
NOTE: This field is zero-padded on the left side. e.g.: 0008309285
AuthorizationTransactionId integer (19) Right 59 The unique identifier for the associated authorization transaction.
May be 0000000000 if it does not apply.NOTE: This field is zero-padded on the left side. e.g.: 0008309285
RequestTypeCode string (3) Left 78 The method of request from the debit rails. Possible values are REQ (Request; CorePro approved or denied the message) and ADV (Advice; The network provider approved or denied the message and notified CorePro afterwards).
RESERVED string (12) Left 81 This range of bytes is reserved for future use.
MerchantCategoryCOde string (4) Left 93 The exact Merchant Category Code value received from the network provider.
MerchantGroupTypeCode string (6) Left 97 A grouping of multiple Merchant Category Codes into fewer, more useful sets. See Merchant Group Types for more information.
CashbackAmount integer (10) Right 103 The amount of cashback provided when the transaction occurred. NOTE: This field is zero-padded on the left side, and two decimals will be assumed. e.g.: 000000000000832 represents an amount of $8.32.
SurchargeAmount integer (10) Right 113 The amount of the surcharge applied when the transaction occurred. NOTE: This field is zero-padded on the left side, and two decimals will be assumed. e.g.: 000000000000832 represents an amount of $8.32.
CashDepositAmount integer (10) Right 123 The amount of cash deposited when the transaction occurred. NOTE: This field is zero-padded on the left side, and two decimals will be assumed. e.g.: 000000000000832 represents an amount of $8.32.
CheckDepositAmount integer (10) Right 133 The amount of the check deposited when the transaction occurred. NOTE: This field is zero-padded on the left side, and two decimals will be assumed. e.g.: 000000000000832 represents an amount of $8.32.
TerminalId string (15) Left 143 The identification code of the device at the merchant that accepted the card information.
MerchantId string (15) Left 158 The identification code of the merchant that accepted the card information.
MerchantLocation string (25) Left 173 The date and time the funds associated with the transaction became available. See transaction object definition for details.
MerchantCity string (13) Left 198 The city of the merchant at which the transaction originated.
MerchantStateCode string (2) Left 211 The two-character state abbreviation of the merchant at which the transaction originated.
MerchantZipCode string (9) Left 213 The postal code of the merchant at which the transaction originated.
MerchantCountryCode string (2) Left 222 The two-character country abbreviation of the merchant at which the transaction originated.
PanEntryModeTypeCode string (10) Left 224 The method by which the card number was input to the merchant's device. Possible values:
  • KEY - Manually (key) entered
  • MAG - Magnetic stripe read
  • MAN - Manual, no terminal
  • UNK - Unknown
PinEntryModeTypeCode string (10) Left 234 The method by which the card holder was validated at the merchant's device. Possible values:
  • N/A - Not Applicable
  • PIN - Network Provider-verified PIN
  • PWD - Password authentication
CardHolderPresenceTypeCode string (10) Left 244 The presence of the card holder at the time the transaction was originated. Possible values:
  • INSTALL - Cardholder not present, installment payment
  • MAILTEL - Cardholder not present, mail or telephone order
  • MOBILE - Mobile
  • NOTPRESENT - Cardholder not present, unspecified
  • PRESENT - Cardholder present
  • RECUR - Cardholder not present, recurring payment
  • TRANSFER - Money Transfer
  • UNKNOWN - Unknown
  • WEB - Web
CardPresenceTypeCode string (10) Left 254 The presence of the physical card at the time the transaction was originated. Possible values:
  • NOTPRESENT - Card not present
  • PRESENT - Card present
TerminalUnattendedTypeCode string (10) Left 264 Possible values:
  • ATTENDED - Terminal was attended
  • NOTERM - No terminal
  • UNATTENDED - Terminal was unattended
TerminalPremisesTypeCode string (10) Left 274 Location of the merchant's device in relation to the merchant's location. Possible values:
  • ECOMM - Electronic Commerce
  • OFFPREM - Off premise
  • ONPREM - On premise

Example Card Event Notification File

Content: See 201901210939_DEBITCARDEVENTNOTIFICATION.TXT


NOTE: Your browser or text editor may wrap the text to fit the window or silently convert the delimiter tab characters to spaces. Actual source file does not wrap and has delimiter tab characters.

Ready to start a conversation?

Email Us