Skip to main content

Overview

The Transactions API allows you to retrieve a comprehensive history of all financial transactions associated with your account. This includes purchases, deposits, withdrawals, transfers, bill payments, and all other financial activities. Endpoint Type: GraphQL Query
Authentication: Required (JWT Bearer Token)
Required Scopes: LIST_PAYMENT AND LIST_PURCHASES
Rate Limit: Standard GraphQL rate limits apply

Quick Start

Basic Query



Query Structure

Parameters


Response Structure

TransactionConnection


Filter Options

TransactionFilterInput

Filter Field Details

Record & Status Filters

recordId
Type: [UUID]
Description: Filter by specific transaction record IDs.
Example:
status
Type: [TransactionStatus]
Description: Filter by transaction status.
Options:
  • PENDING - Transaction is being processed
  • SETTLED - Transaction completed successfully
Example:

Amount Filters

amount, amountGte, amountLte
Type: Float
Description: Filter by exact amount or amount range in USD.
  • amount - Exact amount match
  • amountGte - Minimum amount (greater than or equal)
  • amountLte - Maximum amount (less than or equal)
Example:
finalAmount, finalAmountGte, finalAmountLte
Type: Float
Description: Filter by final amount (amount + fees).
Example:

Cashback Filters

cashbackAmount, cashbackAmountGte, cashbackAmountLte
Type: Float
Description: Filter by cashback amount earned.
Example:
cashbackPercentage, cashbackPercentageGte, cashbackPercentageLte
Type: Float
Description: Filter by cashback rate percentage.
Example:

Fee Filters

feeAmount, feeAmountGte, feeAmountLte
Type: Float
Description: Filter by transaction fee amount.
Example:

Date Filters

createdGte, createdLte
Type: DateTime
Format: ISO 8601 (e.g., 2025-01-01T00:00:00Z)
Description: Filter by transaction creation date range.
Example:
updatedGte, updatedLte
Type: DateTime
Description: Filter by transaction last update date range.

Merchant Filters

merchantId
Type: [UUID]
Description: Filter by specific merchant IDs.
Example:
merchant
Type: [String]
Description: Filter by merchant names (matches against destination field).
Example:

Transaction Properties

transactionType
Type: [String]
Description: Filter by specific transaction types.
Common Values:
  • Add Money - Deposits
  • Gift Card Purchase - Gift card purchases
  • Transfer - In - Incoming transfers
  • Transfer - Out - Outgoing transfers
  • Virtual Card Purchase - Virtual card purchases
  • Withdrawal

Example:
channel
Type: [String!]
Description: Filter by platform channel.
Common Values:
  • WEB - Web browser
  • MOBILE - Mobile app
  • API - API requests
Example:
category
Type: [String]
Description: Filter by transaction category.
Example:

Virtual Card Filters

virtualCardProgram
Type: [String]
Description: Filter by virtual card program/issuer.
Example:
virtualCard
Type: [UUID]
Description: Filter by specific virtual card IDs.
Example:

Other Filters

fundingSource
Type: [String]
Description: Search for funding source names (partial match on source or destination).
Example:
referenceId
Type: String
Description: Filter by external reference ID (e.g., purchase display ID).
Example:
liabilityId
Type: UUID
Description: Filter by liability ID (for bill payments).

Pagination

OffsetInput

Example - Page 1:
Example - Page 2:
Example - Check if more pages exist:

Transaction Type

Field Descriptions

Core Transaction Fields

Financial Details

Balance Snapshots

Important: All balance fields show the balance after this transaction was applied.

Transaction Details

Merchant Information

Virtual Card Information

Currency Conversion

Metadata


Examples

Example 1: Basic Transaction List

Query:
Response:

Example 2: Filtered by Date Range

Query:

Example 3: Purchases Only with Balances

Query:
Response:

Example 4: High-Cashback Transactions

Query:

Example 5: Amount Range Filter

Query:

Example 6: Virtual Card Transactions

Query:

Example 7: Pagination Example

Query - Get first page and check for more:
Response shows hasNextPage=true:
Query - Get second page:

Error Handling

Common Errors

Missing or Invalid Token

HTTP Status: 401 Unauthorized

Insufficient Permissions

HTTP Status: 403 Forbidden

Invalid Filter Parameters

HTTP Status: 400 Bad Request

Rate Limit Exceeded

HTTP Status: 429 Too Many Requests

Best Practices

1. Use Pagination Effectively

Always check hasNextPage to determine if more results exist:

2. Request Only Needed Fields

Specify only the fields you need to reduce response size:

3. Use Date Filters for Historical Queries

When querying older transactions, always use date filters:

4. Cache Settled Transactions

Transactions with status: SETTLED are immutable and can be cached:

5. Combine Filters Efficiently

Use range filters to narrow results before applying other filters:

Rate Limits

Headers:
  • X-RateLimit-Limit - Maximum requests allowed
  • X-RateLimit-Remaining - Requests remaining in current window
  • X-RateLimit-Reset - Time when the rate limit resets (Unix timestamp)

Code Examples

JavaScript/TypeScript


Python


cURL


FAQ

Q: What’s the maximum number of transactions I can retrieve in one request?

A: The maximum limit is 20 transactions per request. Use the hasNextPage field to implement pagination.

Q: How far back does transaction history go?

A: All transactions from account creation are available indefinitely.

Q: Are pending transactions included?

A: Yes, pending transactions are included by default. Filter by status: [SETTLED] to exclude them.

Q: What timezone are the timestamps in?

A: All timestamps are in UTC (ISO 8601 format).

Q: What scopes do I need?

A: You need both LIST_PAYMENT AND LIST_PURCHASES scopes.

Q: Can I filter by user ID within my account?

A: No, the API always returns all transactions for your account. There is no user-level filtering.

Q: What’s the difference between amount and finalAmount filters?

A:
  • amount filters the base transaction amount
  • finalAmount filters amount + fees (the total charged to the user)

Q: How do I filter by date range?

A: Use createdGte and createdLte for creation date:

Support


Changelog

v1.0.0 (Branch: 13-fluz-15659-add-transactions-query-and-webhook-to-api)

  • Initial release of Transactions Query API
  • Support for comprehensive filtering (15+ filter types)
  • Pagination with TransactionConnection response type
  • Balance snapshots included in transaction records
  • Requires LIST_PAYMENT and LIST_PURCHASES scopes
  • Account-level transaction access only

Need help? Contact our developer support team at api-support@fluz.app or visit our Developer Portal.