Get Transactions (need access to Daily Spending Report)

Get Transactions (Daily Spending Report)

This endpoint retrieves a list of financial account transactions for reporting purposes, with a primary focus on generating Daily Spending Reports. It supports cursor-based pagination, date range filtering, and custom JSON filters, making it suitable for both real-time dashboards and scheduled batch reporting workflows.

Endpoint

POST /Report/transactions

Authentication

Bearer token required. Obtain via:

POST https://api.banking.netevia.dev/api/auth/v2

Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.

When to use

Use this endpoint when you need to generate a Daily Spending Report or audit transaction history across financial accounts. It is ideal for partners building reporting dashboards, reconciliation tools, or compliance exports that require flexible filtering by date range, transaction type, and account attributes. Access to this endpoint requires the Daily Spending Report permission to be enabled on your partner account.

Request Body

FieldTypeRequiredDescription
cardProductIdstringNoFilter transactions to a specific card product.
takeinteger (int32)NoNumber of transactions to retrieve per page. Set to null to fetch all transactions in a single response.
afterCursorstringNoPagination cursor from a previous response. Use the endCursor value from transactionPageInfo to fetch the next page.
fromDatestring (date-time)NoStart of the date range (inclusive). ISO 8601 format. Only transactions on or after this date are returned.
toDatestring (date-time)NoEnd of the date range (inclusive). ISO 8601 format. Only transactions on or before this date are returned.
jsonFilterstringNoOptional JSON-formatted string for applying custom filters such as transaction type, account ID, or merchant details.
{
  "cardProductId": "prod_abc123",
  "take": 25,
  "afterCursor": null,
  "fromDate": "2026-06-01T00:00:00Z",
  "toDate": "2026-06-09T23:59:59Z",
  "jsonFilter": "{\"transactionType\":\"POS\"}"
}

Response

200 OK

The response contains a data object with merged activity records and pagination info, plus a filter object describing the available filter categories.

Top-level fields:

FieldTypeDescription
dataobjectContains paginated transaction activity and pagination metadata.
data.transferPageInfoarrayPagination info objects for transfer records. Each item contains startCursor, endCursor, hasNextPage, hasPreviousPage.
data.transactionPageInfoobjectPagination info for card transactions. Contains startCursor, endCursor, hasNextPage, hasPreviousPage.
data.activityarrayList of transaction/transfer activity records.
filterobjectAvailable filter categories for the result set (see filter fields below).

Activity record fields (data.activity[]):

FieldTypeDescription
idstringUnique identifier for the activity record.
typenamestringType name of the activity (e.g., CardTransaction, Transfer).
namestringHuman-readable name or label for the transaction.
typeModelstringInternal type model identifier.
pendingAmountobjectPending amount with value (int64, in cents) and currencyCode.
amountobjectSettled amount with value (int64, in cents) and currencyCode.
lastEventBalanceSnapshotobjectAccount balance after the last event, with value and currencyCode.
createdAtstring (date-time)Timestamp when the activity was created.
isCompletebooleanWhether the transaction has fully settled.
transactionSourceobjectSource details including typename, id, and transactionEvents array.
transferStatusobjectTransfer status with status and statusReasonCode fields.
companyNamestringCompany name associated with the transaction.
descriptorobjectACH descriptor with companyEntryDescription, individualName, and individualIdentificationNumber.
toFinancialAccountobjectDestination financial account with id, name, last4, externalBankAccountDetails, and provider.
fromFinancialAccountobjectSource financial account with id, name, last4, externalBankAccountDetails, and provider.
refundEventobjectEvent data for any associated refund (see transaction event fields below).
lastEventobjectMost recent event associated with this transaction.
firstEventobjectFirst event associated with this transaction.
isBetweenOwnAccountsbooleantrue if the transfer is between the same customer's own accounts.
activityInfoobjectProfile details for sender (fromProfile) and receiver (toProfile), plus historyRecords array.
purposestringPurpose or memo provided for the transaction.
giftCardOrderIdstringGift card order ID if applicable.
memostringFree-text memo attached to the transaction.
fromDBAstringDBA (doing business as) name of the sending party.
toDBAstringDBA name of the receiving party.

Transaction event fields (used in firstEvent, lastEvent, refundEvent, and transactionSource.transactionEvents[]):

FieldTypeDescription
typenamestringEvent type name.
idstringUnique event identifier.
merchantDetailsobjectMerchant category, categoryCode, countryCodeAlpha3, description, name, merchantId.
pointOfServiceDetailsobjectPOS details: panEntryMode, pinEntryMode.
responseCodestringAuthorization response code.
responseDescriptionstringHuman-readable description of the response code.
approvedAmountobjectApproved amount with value and currencyCode.
requestedAmountobjectOriginally requested amount with value and currencyCode.
paymentCardobjectCard details: id, bin, last4.
createdAtstring (date-time)Event timestamp.
authorizationExpirationstring (date-time)When the authorization expires.
processingTypestringProcessing method (e.g., CHIP, CONTACTLESS).
rewardPointsinteger (int64)Reward points earned from this event, if applicable.
accountingDirectionstringDEBIT or CREDIT.

Filter fields (filter):

FieldTypeDescription
filter.allobjectFilter item for all transaction types. Contains displayName, value, and nested items.
filter.depositobjectFilter item for deposit transactions.
filter.withdrawobjectFilter item for withdrawal transactions.
filter.transfersobjectFilter item for transfer transactions.
filter.posobjectFilter item for point-of-sale transactions.
filter.transactionStatusobjectFilter item grouped by transaction status.
filter.othersobjectFilter item for all other transaction types.
{
  "data": {
    "transferPageInfo": [
      {
        "startCursor": "cursor_start_001",
        "endCursor": "cursor_end_001",
        "hasNextPage": false,
        "hasPreviousPage": false
      }
    ],
    "transactionPageInfo": {
      "startCursor": "cursor_start_tx_001",
      "endCursor": "cursor_end_tx_025",
      "hasNextPage": true,
      "hasPreviousPage": false
    },
    "activity": [
      {
        "id": "txn_9f3a2b1c4d5e6f7a",
        "typename": "CardTransaction",
        "name": "Office Supplies Purchase",
        "typeModel": "CARD_TRANSACTION",
        "pendingAmount": {
          "value": 0,
          "currencyCode": "USD"
        },
        "amount": {
          "value": 4599,
          "currencyCode": "USD"
        },
        "lastEventBalanceSnapshot": {
          "value": 152340,
          "currencyCode": "USD"
        },
        "createdAt": "2026-06-05T14:23:11Z",
        "isComplete": true,
        "transactionSource": {
          "typename": "CardTransaction",
          "id": "src_1a2b3c4d",
          "transactionEvents": []
        },
        "transferStatus": {
          "status": null,
          "statusReasonCode": null
        },
        "companyName": "Staples Inc.",
        "descriptor": {
          "companyEntryDescription": null,
          "individualName": null,
          "individualIdentificationNumber": null
        },
        "toFinancialAccount": null,
        "fromFinancialAccount": {
          "id": "fin_acct_XXXXXXXXXX",
          "name": "Business Checking",
          "last4": "4321",
          "externalBankAccountDetails": null,
          "provider": null
        },
        "refundEvent": null,
        "lastEvent": {
          "typename": "CardTransactionClearedEvent",
          "id": "evt_5e6f7a8b",
          "merchantDetails": {
            "category": "Office Supplies",
            "categoryCode": "5112",
            "countryCodeAlpha3": "USA",
            "description": "Retail stationery and office supplies",
            "name": "Staples Inc.",
            "merchantId": "merch_xyz789"
          },
          "pointOfServiceDetails": {
            "panEntryMode": "CHIP",
            "pinEntryMode": "NOT_APPLICABLE"
          },
          "responseCode": "00",
          "responseDescription": "Approved",
          "approvedAmount": {
            "value": 4599,
            "currencyCode": "USD"
          },
          "requestedAmount": {
            "value": 4599,
            "currencyCode": "USD"
          },
          "paymentCard": {
            "id": "card_abc123",
            "bin": "411111",
            "last4": "5678"
          },
          "createdAt": "2026-06-05T14:23:11Z",
          "authorizationExpiration": null,
          "processingType": "CHIP",
          "rewardPoints": 45,
          "accountingDirection": "DEBIT"
        },
        "firstEvent": {
          "typename": "CardTransactionAuthorizationEvent",
          "id": "evt_1a2b3c4d",
          "merchantDetails": {
            "category": "Office Supplies",
            "categoryCode": "5112",
            "countryCodeAlpha3": "USA",
            "description": "Retail stationery and office supplies",
            "name": "Staples Inc.",
            "merchantId": "merch_xyz789"
          },
          "pointOfServiceDetails": {
            "panEntryMode": "CHIP",
            "pinEntryMode": "NOT_APPLICABLE"
          },
          "responseCode": "00",
          "responseDescription": "Approved",
          "approvedAmount": {
            "value": 4599,
            "currencyCode": "USD"
          },
          "requestedAmount": {
            "value": 4599,
            "currencyCode": "USD"
          },
          "paymentCard": {
            "id": "card_abc123",
            "bin": "411111",
            "last4": "5678"
          },
          "createdAt": "2026-06-05T14:22:58Z",
          "authorizationExpiration": "2026-06-12T14:22:58Z",
          "processingType": "CHIP",
          "rewardPoints": null,
          "accountingDirection": "DEBIT"
        },
        "isBetweenOwnAccounts": false,
        "activityInfo": {
          "fromProfile": {
            "id": 1042,
            "name": "Acme Corp",
            "agentId": 7
          },
          "toProfile": null,
          "historyRecords": [
            {
              "date": "2026-06-05T14:22:58Z",
              "status": "AUTHORIZED"
            },
            {
              "date": "2026-06-05T14:23:11Z",
              "status": "CLEARED"
            }
          ]
        },
        "purpose": null,
        "giftCardOrderId": null,
        "memo": null,
        "fromDBA": "Acme Corp",
        "toDBA": null
      }
    ]
  },
  "filter": {
    "all": {
      "displayName": "All",
      "value": true,
      "items": []
    },
    "deposit": {
      "displayName": "Deposits",
      "value": false,
      "items": []
    },
    "withdraw": {
      "displayName": "Withdrawals",
      "value": false,
      "items": []
    },
    "transfers": {
      "displayName": "Transfers",
      "value": false,
      "items": []
    },
    "pos": {
      "displayName": "Point of Sale",
      "value": false,
      "items": []
    },
    "transactionStatus": {
      "displayName": "Status",
      "value": false,
      "items": [
        { "displayName": "Completed", "value": true, "items": [] },
        { "displayName": "Pending", "value": false, "items": [] }
      ]
    },
    "others": {
      "displayName": "Others",
      "value": false,
      "items": []
    }
  }
}

Error Codes

CodeWhen it happens
400Missing required fields, invalid date format, or malformed jsonFilter value
401Token missing, expired, or invalid
403Partner account does not have Daily Spending Report access enabled
404Specified cardProductId or account resource not found
500Internal server error

Common Mistakes

  • Providing fromDate or toDate in a non-ISO 8601 format — always use "YYYY-MM-DDTHH:MM:SSZ" format.
  • Passing an invalid afterCursor value (e.g., one from a different query context) — cursors are tied to the specific query parameters used; reuse the cursor only with the same filter and date range.
  • Sending a jsonFilter as a parsed JSON object instead of a JSON-encoded string — the field must be a string value containing escaped JSON.
  • Calling this endpoint without Daily Spending Report access — verify that your partner account has this permission enabled before integrating.
  • Interpreting amount.value as dollars — amounts are in the smallest currency unit (cents for USD), so 4599 equals $45.99.

Related Endpoints

  • POST /api/auth/v2 — Obtain a Bearer token for authentication
  • POST /api/auth/refresh — Refresh an expiring Bearer token
  • GET /FinancialAccount/{financialAccountId}/activity — Retrieve activity for a single financial account
  • POST /Report/daily-spending — Generate a Daily Spending Report summary

Example

curl -X POST https://api.banking.netevia.dev/Report/transactions \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "cardProductId": "prod_abc123",
    "take": 25,
    "afterCursor": null,
    "fromDate": "2026-06-01T00:00:00Z",
    "toDate": "2026-06-09T23:59:59Z",
    "jsonFilter": null
  }'
Body Params
string | null
int32 | null
string | null
date-time | null
date-time | null
string | null
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
string
enum
Defaults to application/json

Generated from available request content types

Allowed:
Response

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
text/plain
application/json
text/json