Skip to content

Getting Transactions

If you want to receive a paged list of all RCC type transactions that are currently in the system, you can use the following endpoint:

GET /api/v3/RccTransactions/companycode/{companyCode}

If you want to retrieve a single RCC transaction by its itemId, you can use the following endpoint:

GET /api/v3/RccTransactions/companycode/{companyCode}/{itemId}

After a transaction has been processed, FLEX predetermines the SendDate, CheckDate, and SettlementDate. Most of the fields are immutable, especially those that are provided to us.

  • Immutable fields - These are the values that you provide on the submission (or we calculated them) and they will NOT change
  • Mutable fields - These are the values that are status related fields that we calculate at the time of submission
  1. Transaction is submitted to FLEX. We calculate the SendDate, CheckDate, and SettlementDate based on the provided information and our internal logic.
  2. You may receive back one of the following status values:
    • ItemStatus=“B”; item is blocked. Return Date is set to the current date and the records are locked.
    • ItemStatus=“I”; item is invalid. Return Date is set to the current date and the records are locked.
    • ItemStatus=“W”; item is good to go and is queued for sendoff to the bank.
  3. FLEX will then package the items up and send them to the bank. ItemStatus will be set to “S.” This status means the transaction is on its way to the bank and will usually settle if the item does not return on or prior to the SettlementDate.
    • It is also at this time that the DepositDateTime is set.
  4. Once the item is sent to the bank, the ItemStatus can only be changed to “R” for returned. At this point, FLEX again sets the ReturnDate to the current date that it was returned on.

Searching for Blocked, Invalid, or Returned Transactions

Section titled “Searching for Blocked, Invalid, or Returned Transactions”

If you want to search for transactions that have been blocked, invalid, or returned you can scope and find these items by filtering for those specific item statuses (listed above) and then scoping by the ReturnDateStart and ReturnDateEnd. In practice, you would do this by capturing them the night that the items were sent provided with a sufficient date range (e.g. going back a week or a smaller scope).

For example using:

GET https://api.flx-payments.com/api/v3/RccTransactions/companycode/<yourCompanyCode>?page=0&pageSize=200&sendDateStart=<YYYY-MM-DD>&sendDateEnd=<YYYY-MM-DD>

With this endpoint, you can search and find the items each night that have changed state. You would only need ItemStatus = “R” in this case, however FLEX recommends to pay attention to all three statuses.

Another way would be to use:

GET https://api.flx-payments.com/api/v3/RccTransactions/companycode/<yourCompanyCode>?itemStatus=B&itemStatus=I&itemStatus=R&page=0&pageSize=200&returnDateStart=<YYYY-MM-DD>&returnDateEnd=<YYYY-MM-DD>

It is important that no matter what method is used, you add a scope to it so you’re not pulling all the B, I, and R records in the system.

These are the parts of the return payload that you should pay attention to when searching for B, I, and R transactions.

Return Payload
{
"transactions": [
{
"rccItemId": 0,
"companyCode": "string",
"flexBatchId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"itemStatus": "string",
"itemStatusDescription": "string",
"firstSignerFirstName": "string",
"firstSignerLastName": "string",
"secondSignerFirstName": "string",
"secondSignerLastName": "string",
"address1": "string",
"address2": "string",
"city": "string",
"state": "string",
"zip": "string",
"yourReferenceNumber": "string",
"amount": 0,
"bankName": "string",
"bankRoutingNumber": "string",
"bankAccountNumber": "string",
"bankCity": "string",
"bankState": "string",
"bankZip": "string",
"checkNumber": 0,
"returnReason": "string",
"returnMessage": "string",
"payeeName": "string",
"payeeAccountNumber": "string",
"payeePhone": "string",
"itemSource": "string",
"returnItemId": 0,
"reportStatus": "string",
"checkDate": "2026-05-27T19:01:06.674Z",
"sendDate": "2026-05-27T19:01:06.674Z",
"receivedDateTime": "2026-05-27T19:01:06.674Z",
"settleDate": "2026-05-27T19:01:06.674Z",
"returnDate": "2026-05-27T19:01:06.674Z",
"bankId": 0,
"depositDateTime": "2026-05-27T19:01:06.674Z",
"apiReportDateTime": "2026-05-27T19:01:06.674Z",
"createdBy": {
"id": "string",
"name": "string",
"username": "string"
}
}
]
}