Use filters and sorting parameters to achieve specific returns on the transactions data set.
Description
A combination of fields, conditions, sort parameters, and pagination information can be used to filter transaction data in order to meticulously and quickly get the data needed for a given use case. Below details available fields, the respective field types, available conditions and other information
Available Fields
| Field Name | Type |
|---|---|
| uuid | VARCHAT(255) |
| numericid | INT |
| companyuuid | VARCHAR(255) |
| companyname | VARCHAR(255) |
| categoryuuid | VARCHAR(255) |
| amount | INT |
| batchedat | TIMESTAMP |
| batchuuid | VARCHAR(255) |
| batchnumericid | INT |
| category | VARCHAR(255) |
| createdat | TIMESTAMP |
| effectivedate | TIMESTAMP |
| externaluniqueid | VARCHAR(255) |
| method | VARCHAR(255) |
| name | VARCHAR(255) |
| accounttype | VARCHAR(255) |
| routingnumber | VARCHAR(255) |
| accountnumber | VARCHAR(255) |
| latereturnedat | TIMESTAMP |
| returncode | VARCHAR(4) |
| returnedat | TIMESTAMP |
| returnreason | VARCHAR(255) |
| returnnumericid | VARCHAR(255) |
| returnuuid | VARCHAR(255) |
| expectedtosettleat | TIMESTAMP |
| latereturnsettlementprocessedat | TIMESTAMP |
| latereturnsettmentuuid | VARCHAR(255) |
| latereturnsettlementnumericid | VARCHAR(255) |
| settlementprocessedat | TIMESTAMP |
| settlementuuid | VARCHAR(255) |
| settlementnumericid | INT |
| changecode | VARCHAR(255) |
| changereason | VARCHAR(255) |
| changedat | TIMESTAMP |
| nocreceivedat | TIMESTAMP |
| changenewvalue | JSONB |
| changeoldvalue | JSONB |
| standardentryclasscode | VARCHAR(4) |
| status | VARCHAR(255) |
| type | VARCHAR(255) |
| holdreason | VARCHAR(255) |
| releasedat | TIMESTAMP |
| voidedat | TIMESTAMP |
| isduplicate | BOOLEAN |
| sequenceuuid | VARCHAR(255) |
| historicalid | VARCHAR(255) |
| panfirstsix | VARCHAR(6) |
| panlastfour | VARCHAR(4) |
| issameday | BOOLEAN |
Available Conditions
| Condition Name | Condition |
|---|---|
| eq | = |
| gt | > |
| gte | = |
| lt | < |
| lte | <= |
| neq | != |
| nn | IS NOT NULL |
| null | IS NULL |
| empty | = '' |
| like | ILIKE x |
| in | IN('x','y','z') |
Sorting
A field can also be provided to sort the data. This corresponds to an ORDER BY statement in the SQL query. the sort key is provided to get this desired functionality. The value is the field in which we want to sort by. The sortDir can be used with values ASC or DESC to get the desired sort direction.
Examples
Example 1
For example, if we wanted to get all debit transactions that had an amount greater than 1000 ($10.00 in cents), but less than 5000 ($50.00 in cents), the query would look like:
/transactions?page=0&pageSize=50&amount:gt=1000&amount:lt=5000&type=Debit
The page and pageSize parameters are required in order to detail how many results we want, and what page of the results we want. This is used for pagination of the data. The page=0 details that we want the first page of results, with each page containing 50 results, i.e. pageSize=50.
The amount:gt=1000 details that we want results with an amount greater than (>) 1000, similarly amount:lt=5000 details that we want results with an amount less than (<) 5000.
The type=Debit ensures that we grab only debit transactions by filtering transactions with the type "Debit"
Example 2
Say for instance, we want to get all transactions that we're created after January 1st, 2025 and we want to sort the results by id. The query for this would be:
/transactions?page=0&pageSize=10&createdat:gt=2025-01-01T00:00:00Z&sort=id&sortDir=ASC
As normal, the page and pageSize fields define how we want the data paginated.
The createdat:gt=2025-01-01T00:00:00Z checks that transactions createdat field is after the ISO 8601 timestamp for January 1st, 2025.
Finally, sort=id ensures that the results are sorted by the id field and is sorted ascending due to sortDir=ASC.
Example Response
{
"status": "success",
"data": [
{
"companyUuid": "53d993ae-fa4c-489d-be3d-e747c3235b0c",
"categoryUuid": "transactions#dbf1b9b8-cb47-4f78-8da2-f21c50a83ec0",
"category": "transactions",
"changeDetails": {
"changeCode": "",
"changeReason": "",
"changedAt": null,
"nocReceivedAt": null,
"oldValues": null,
"newValues": null,
"filterUuid": ""
},
"uuid": "dbf1b9b8-cb47-4f78-8da2-f21c50a83ec0",
"numericId": 5,
"method": "ACH",
"type": "Debit",
"amount": 592,
"status": "Settled",
"standardEntryClassCode": "PPD",
"paymentDetails": {
"name": "Jennifer Schamberger",
"accountType": "Checking",
"accountNumber": "123456789",
"routingNumber": "121000248"
},
"createdAt": "2025-05-05T13:32:25.72707Z",
"batchDetails": {
"batchUuid": "1315d84d-d0d3-4876-9c9d-598704722590",
"batchNumericId": "191",
"batchedAt": "2025-07-22T21:17:03.015073Z"
},
"settlementDetails": {
"settlementUuid": "9b694ffb-ce2f-492f-98b3-20964e65613c",
"settlementNumericId": "4",
"expectedToSettleAt": "2025-07-24",
"settlementProcessedAt": "2025-07-24T17:45:19.553773Z",
"lateReturnSettlementUuid": null,
"lateReturnSettlementNumericId": null,
"lateReturnSettlementProcessedAt": null
},
"returnDetails": {
"returnCode": "",
"returnReason": "",
"returnNumericId": null,
"returnUuid": null,
"returnedAt": null,
"lateReturnedAt": null,
"csvFileSentAt": null
},
"rejectDetails": null,
"holdDetails": {
"holdReason": "Debit is not allowed for this SEC Code",
"holdCode": "",
"releasedAt": "2025-05-05T16:19:30.69921Z"
},
"voidDetails": {
"voidedAt": null
},
"externalUniqueId": null,
"companyName": "Merchant C",
"effectiveDate": "2025-03-14T00:00:00Z",
"submittedForDate": null,
"rtpTransactionId": null,
"shazamTransactionId": null,
"isDuplicate": false,
"sequenceUuid": null,
"failureReason": null,
"externalCustomerId": null,
"customerEmail": null,
"description": null,
"memo": null,
"historicalID": null,
"isSameDay": false
}
],
"errors": null,
"meta": {
"pagination": {
"page": 0,
"pageSize": 10,
"totalFilteredRows": 1,
"totalRows": 1648
},
"timestamp": "2025-08-14T19:06:24Z",
"version": "0.0.0"
}
}