Nightly SFTP Reports

Nightly we generate reports for the SFTP. This data is available through our ActiveReports, but these versions are being delivered to a client SFTP.

Funding Reject

This is a report of returned disbursements. That is a merchant funding attempt that was returned. For the purpose of this report I’ll be using the terms Disbursement and Settlement as the same.

Name

Type

Description

Example

Return_Date

Date

The Date that the disbursement was returned. Format is “MM/dd/yyyy”

Original_Date

Date

The Effective Entry Date of the Disbursement. Format is: MM/dd/yyyy

Attempted_Funds_Transfer_Date

Date

The Date the settlement was created. This is a banking business day before the Effective Entry Date

Merchant_Name

String(50)

Merchant Name

Sub_Merchant_Business_Name

String(50)

The Entry Name

Funding_Sub_Merchant_ID

String(32)

The 6 or 10 Digit Check Commerce MID

Funds_Transfer_Request_ID

String(100)

The Chain Code

Vantiv_Payment_ID

String(40)

The Reference Number of the transaction

TxnType

String(4)

When this is a Debit, then the Transaction Type is “FIPD”. When the item is a Credit, then the Transaction Type is “FIPC”

Funds_Transfer_Amount

Money

The amount of the disbursement

Reason_Code

String(3)

The Return Code

Reason_Message

String(100)

The description of the return

Routing_Number

String(9)

The Routing number of the settlement bank account

Account_Number

String(17)

The bank account number of the settlement

Account_Name

String(100)

The Name on the Transaction

NOC

Nightly NOC Reporting can come in two varieties, although they show very similar data. NOCReport and NOCInformation. NOCs, or Notices of Change, are zero dollar returns from the receiving bank to inform the sender of updated information.

NOCReport

Name

Type

Description

Example

Funds Transfer Date

Date

Date of the NOC

Merchant Name

String(100)

Merchant Name

PayFac Submerchant ID

String(20)

MID

NOC Reason Code

String(3)

Return Code, but will start with a 'C'

C02

NOC Reason Message

String(100)

Return description

INCORRECT ROUTING NUMBER

Old Routing Number

String(9)

Depending on the NOC the routing number, Account number, or name could change. There are more options, but this report focuses on those changes.

291070001

Old Account Number

String(19)

Old Name

String(30)

New Routing Number

String(9)

024356268

New Account Number

String(19)

New Name

String(30)

NOCInformation

Name

Type

Description

Example

MID

String(10)

The 6 or 10 digit Check Commerce Merchant Id

MerchantName

String(100)

Name of the Merchant

DBA

String(100)

The Doing Business As of the Merchant

EED

DateTime

The effective entry date of the original transaction

Consumer

String(100)

Consumer Name on the Transaction

ExtID

Long

Often the TransactionId, but this is the External Id of source entry

ExtSource

String(3)

External Source

TranCode

String(2)

  • XY

  • X

    • 2 = Checking

    • 3 = Checking

  • Y

    • 7 = Debit

    • 2 = Credit

  • A 27 would be a Debit to a Checking Account

AccountNo

String(19)

Masked Bank Account Number

xxxx1234

RoutingNo

String(9)

Routing Number of the Transaction

ReferenceNo

String(40)

The ReferenceNumber on the transaction when present, and if not, then the IdentNum

CreatedDate

DateTime

The Date and Time the transaction was created.

NOCDate

DateTime

The Date component of the returned NOC

NOCCode

String(3)

The Return Code, starting with a C for the Notice of Change

C01

NOCDescription

String(100)

Description of the Notice of Change

INCORRECT DFI ACCOUNT NUMBER

CorrectedData

String(80)

For each type of NOC, this will be a slightly different format. We try to parse these out in the next several columns, but this is a loose standard. These are also at 80 characters wide because that is the maximum size of the incoming field from the ACH file. Not all types of data can be this long.

CorrectedAccountNo

String(80)

CorrectedRoutingNo

String(80)

CorrectedName

String(80)

CorrectedTranCode

String(80)

TaileredFieldMID

String(100)

A Tailered Field is a custom field of data that we can store on the merchant during onboarding. These are typically fields that contain an external identifier. For instance a MID in a non-CheckCommerce system, or a sales channel in an external system.

TaileredFieldCGID

String(100)

MerchantChainCode

String(100)

If the merchant, or parent has a chain code

GlobalMID

String(100)

If the merchant has a Global MID specified

TaileredFieldSTW

String(100)

Transaction List

The Transaction list returns items in our Transaction Log. This also includes information about it’s build status and other warehouse related information

Name

Type

Description

Example

TransactionLogId

Long

The ID of the Transaction

1502354420

RefNo

String(40)

The Reference Number

3815466017

ApprovalCode

String(25)

The Approval Code, this is usually blank.

DateProcessed

DateTime

Name

String(50)

Name of the Consumer

PhoneNumber

String(25)

US Phone number. This is validated

IndividualID

String(40)

Amount

Money

Amount of the transaction

10000.00

Resubmitted

Int

For the original item, the resubmitted will increment for each time it is resubmitted

1

ResubmittedReferenceNumber

String(40)

The Check Commerce Transaction Id of the original item

1502282501

DateSettled

DateTime

The last funded date

10/7/2021 12:00:00 AM

BankRoutingNumber

Int

The Routing Number for the receiving side of the transaction

This will not be 0 padded

63000047

CheckNumber

int

AmountDisbursed

Money

The amount that was disbursed to the merchant last. This may be negative if there was a return.

Status1

Int

The status of the transaction in numeric form.

Transaction Status Codes

Note

String(900)

Notes on a Transaction. This can include items passed into initial transaction, cancellation notes, and updates from our system as the item passes through processes.

Address1

String(50)

Address2

String(50)

city

String(50)

state

Char(2)

Validated to US, Canada and US Territories.

2 characters only

zip

String(40)

CustomerEMail

String(50)

BirthDate

DateTime

DLNIssueState

String(2)

Validated to US, Canada and US Territories.

2 characters only

NOCDisbursed

NOCInfoData

String(40)

The Notice of Change information returned from the RDFI

NOCDate

DateTime

Date component only. The Date of the last received Notice of Change

IsLive

Bit

  • 1 = Live

  • 2 = Test

  • Blank/Null = Live

DateLastUpdated

DateTime

Date and Time of the last update or touch to the transaction. This may be updated even when the data of the transaction does not change. This affects when a transaction will appear in an incremental report pull

BankAccountNoMasked

String(25)

The Masked version of the submitted bank account

xxxx1234

****1234

OriginateDate

DateTime

The Date that a transaction is intended to originate. IE, the date must be past for this to be sent

Refunds

Int

Number of Refunds for this transaction

RefundedID

Long

Transaction Log Id of the refunded item

SECCode

String(3)

The Authorization type used for the Entry Class in the outbound ACH file. This may be blank to indicate the default for the merchant was used. This is what was submitted. There is a SECCode2, that is what the item was built with.

WEB

Descriptor

String(40)

The descriptor used for the outbound ACH batch, if the merchant is allowed to submit this information

Payment

InitialWarehouseId

Long

In the case that the transaction started as a Warehouse entry with no initial transaction, this will be filled in. This happens when an item is created for Recycles.

BatchUploadID

String(10)

If the item was batch uploaded, this is the batch upload Id.

AuthID

Long

If the transaction was pre-authorized this will be filled in

MerchantNumber

Long

The 6 or 10 digit merchant number

123456

CustRefId

String(80)

A free text field used by the submitter of the transaction

Description

String(40)

The Status Description of the Transaction

Processed

WarehouseId

Long

The Warehouse entry Id, if present

BuildStatus

String(25)

Description of if the item was built

  • NotBuilt

  • Built

Built

ReturnStatus

String(25)

Description of the return status

  • NotReturned

  • Returned

Returned

TransCode

String(2)

The built Transaction Code

  • 2x – Checking

  • 3x – Savings

  • x7 – Debit

  • x2 – Credit

27

Trace_Number_8

String(8)

Trace_Number_7

String(7)

SECCode2

The Authorization type used for the Entry Class in the outbound ACH file. This is what was actually in the outbound file.

Ext_Id

Long

Ext_Source

String(3)

EntryDescription

String(10)

Entry Description used in the outbound file

ABC

ReturnDate

DateTime

Date component only of the date the entry was returned

ReturnCode

String(3)

The Return Code, if the entry is returned.

Return Reason Codes

R10

ReturnDescription

String(100)

The full description of the return

Improper Effective Entry Date

MerchantChainCode

String(100)

The Chain Code, if specified on the merchant or parent

A02021

TaileredFieldCGID

String(100)

A Tailered Field is a custom field of data that we can store on the merchant during onboarding. These are typically fields that contain an external identifier. For instance a MID in a non-CheckCommerce system, or a sales channel in an external system.

TaileredFieldMID

String(100)

A Tailered Field is a custom field of data that we can store on the merchant during onboarding. These are typically fields that contain an external identifier. For instance a MID in a non-CheckCommerce system, or a sales channel in an external system.

TaileredFieldREP

String(100)

A Tailered Field is a custom field of data that we can store on the merchant during onboarding. These are typically fields that contain an external identifier. For instance a MID in a non-CheckCommerce system, or a sales channel in an external system.

TaileredFieldSTW

String(100)

A Tailered Field is a custom field of data that we can store on the merchant during onboarding. These are typically fields that contain an external identifier. For instance a MID in a non-CheckCommerce system, or a sales channel in an external system.

MerchantName

String(100)

The name of the merchant

Batch Download

This is the same report from the ACH Specification: Status File Download

We upload a few different versions of this report nightly. Incremental and for a recent date range.

Auth Report

This report comes in two flavors, a daily list and a summary. This is a list of Authorizations run through the Check Commerce system. An Authorization is stored in the AuthLog, it does not move money and is stored as a separate entity.

Daily

Column Definition

Name

Type

Description

Example

C_REF_ID

String(40)

The Reference Number submitted with the transaction

ABC123

C_REQUEST_START_TIME

DateTime

The Date the item was processed

9/26/2021 1:59:13 AM

C_REQUEST_END_TIME

DateTime

The Date the item was processed

9/26/2021 1:59:13 AM

C_CHECK_COMMERCE_TRN_ID

Long

The Check Commerce Authorization Id

1500505017

C_RESPONSE

String(100)

The Status of the Authorization.

  • Accepted

  • Declined

Accepted

C_SEVERITY

int

The Severity of the response. 0 Being accepted up to 9 being an error. You can see a list here: https://checkcommercesupport.atlassian.net/wiki/spaces/CHECKCOMME/pages/1325563923/ACH+In+RealTime#SEVERITY-CODES

3

C_NODE_ID

Empty String

Always empty

C_WORLDPAY_MID

String(128)

Currently returning a static value. This is planned to return the WorldPay MID and the Check Commerce MID

4422332233|123456

Summary

This has the grouped information over a time-period for the Authorization Log.

Column Definition

Name

Type

Description

Example

C_YEAR

Int

The Year component of the Date Processed

2021

C_MONTH

Int

The Month component of the Date Processed

2

C_DAY

Int

The Day component of the Date Processed

22

C_RESPONSE

string

The status of the Authorization. Accepted or Declined

Accepted

C_WORLDPAY_MID

String

Currently returning a static value. This is planned to return the WorldPay MID and the Check Commerce MID

4422332233|123456

C_COUNT

Int

The count of the number of items group by Year, Month, Day, and Response per Merchant

100

Remittance Info

Description

The daily transactions that are remitted to the merchant. This is generated once nightly for a single merchant or parent and children.

Your daily remittances summed together create disbursements. Disbursements are the deposits to the merchant for the consumer facing activity.

Format

CSV. With Quotes for Escaped characters.

Column Definitions

Name

Type

Description

Example

WarehouseId

long

Internal Check Commerce Id of the transaction. You may see the same WarehouseId over multiple days.

233630241

RemittancePK

long

Internal Check Commerce Id for this remittance of the transaction.

221401702

WebId

long

The original Web Transaction Id we return

1962376067

ExternalId

long

The external Id may often be the Web Transaction Id, but it is possible to have transactions with other sources.

1264055288

ExternalSource

CHAR(3)

Common sources:

  • WEB – Web Initiated transaction

  • DCL – Declined Transaction ( these don’t originate )

  • WRF – Web Refund

  • DIS – Disbursement Transaction

  • GRT – Guarantee Transaction

  • RAT – Reserve Account Transfer

  • IVF – Invoice Transaction

  • MFE – Monthly Fee Transaction

This is not all enclusive.

WEB

Company

string(10)

The 6 or 10 digit Check Commerce MID

999997

CompanyName

string(60)

The Company Name

Test Company

Settlemented

DateTime

The date we’re pushing out the settlement. Only the Date component is used

9/17/2021 12:00:00 AM

Credit

MONEY

Amount to send to the merchant

16278.19

Debit

MONEY

Amount to take from the merchant

0.00

Collected

MONEY

Amount we collected for this remit action

16278.19

Disbursed

MONEY

Amount we’re going to give to the merchant. This is the summation of the Credit and the Debit.

16278.19

EED

DateTime

Effective Entry Date. Time component is ignored.

9/14/2021 12:00:00 AM

EntryAmount

MONEY

The amount of the original entry/transaction

16278.19

RoutingNo

CHAR(9)

Routing Number

111915327

AccountNo

String(17)

Masked Bank Account number for the Consumer’s bank account

xxxx4477

IdentNum

String(40)

The Identification Number found in the outbound ACH file. This is usually a portion of the Reference Number.

EntryName

string(22)

The Name of the consumer’s bank account

Ted Tester

EntryDescription

String(10)

The description on the transaction.

Trace15

CHAR(15)

The outbound trace number we send up to the ODFI. These may be replaced before they get to the FED.

096016936454570

Trans_Code

CHAR(2)

The Transaction Code.

  • x2 = Credits

  • x7 = Debits

  • 3x = Savings Account

  • 2x = Checking Account

27

This would mean a Debit to a Checking Account

BatchStatus

String(32)

  • None

    • Transaction does not have a status yet

  • Held

    • Transaction is either pending being sent, or was stopped for a reason ( see Origination Status )

  • Sent

Sent

OriginationStatus

string(16)

Reference Table and Codes

See BO Exception Codes. 0 Meaning no problem and any other Origination Status meaning there was an issue.

This can be comma seperated

9,51

  • 9 = Name is missing

  • 51 = Dollars Daily Max Threshold Exceeded

ReturnId

long

The internal Check Commerce Id of the return

ReturnDate

DateTime

Date we received the return.

Ignore the time component

9/14/2021 12:00:00 AM

ReturnDescription

String(50)

The description of the return

Authorization Revoked by Customer

ReturnCode

CHAR(3)

The three digit code of the return.

Return Reason Codes

R07

TaileredFieldMID

String(128)

There are several Tailored Fields on the merchant that can carry through to the reporting. This is often an external merchant identifier.

0A0101

TaileredFieldCGID

String(128)

There are several Tailored Fields on the merchant that can carry through to the reporting. This is often an external merchant identifier.

4441111111111

TaileredFieldSTW

String(128)

There are several Tailored Fields on the merchant that can carry through to the reporting. This is often the Chain Code or Channel.

Health

ChainCode

String(128)

The recorded chain code in our system for this Merchant account

0A0101

ParentChainCode

String(128)

The recorded chain code in our system for this Merchant account

0A0101

GlobalMID

String(128)

This is often an external merchant identifier.

999995

ParentMID

String(10)

The parent’s 6 or 10 digit Check Commerce MID

999998

ParentIsPayfac

Boolean

Boolean

True

TheirReferenceNumber

String(40)

The reference number we receive on the incoming original transaction

DateModified

DateTime

The last time the Remittance Record was touched. This usually does not change. But allows you to see when the item was created and therefore what disbursement it may be part of.

9/14/2021 4:52:00 PM

DiscountFee

Money

If you are allowed to view this data, the fee associated with the discount for this transaction. Usually this will be zero.

1.23

TransactionFee

Money

If you are allowed to view this data, the fee associated with the origination for this transaction.

0.10

ReturnFee

Money

If you are allowed to view this data, the fee associated with the return or chargeback for this transaction. This will usually have a value if the item is returned.

0.50