Overview
The Transaction API provides comprehensive access to card transaction history with powerful filtering, pagination, and statement generation capabilities. View detailed transaction information including merchant details, amounts, fees, and crypto funding sources.Transactions are returned in reverse chronological order (most recent first) for easy access to recent activity.
Transaction Data Structure
Each transaction includes detailed information across multiple dimensions:Transaction Details
ID, timestamp, merchant, type, MCC category
Financial Data
Amounts, fees, currencies, conversion rates
Funding Sources
Crypto wallets, networks, transaction hashes
Sample Transaction
Fetching Transaction History
Basic Request
With Pagination
Pages are 0-indexed.
page=0 is the first page, page=1 is the second page, etc. If you request a page that doesn’t exist, it returns page 0 (first page).Filtering Transactions
By Date Range
Filter transactions within a specific time period:string
Start date in ISO 8601 format (YYYY-MM-DD). Required if
dateTo is specified.Example: 2024-10-01string
End date in ISO 8601 format (YYYY-MM-DD). Required if
dateFrom is specified.Example: 2024-10-31By Merchant Name
Search for transactions from specific merchants:string
Search term to filter merchant names. Case-insensitive partial match.Example:
"PayPal", "Amazon", "Starbucks"By Category
Filter by merchant category code (MCC) category:string
Comma-separated list of categories to filter by.Available Categories:
SUBSCRIPTIONS: Streaming services, membershipsFOOD: Restaurants, groceries, deliveryTRAVEL: Hotels, airlines, car rentalsENTERTAINMENT: Movies, concerts, gamesHEALTH: Healthcare, pharmacy, fitnessATM: ATM withdrawalsUTILITIES: Bills, phone, internetMISC: Everything else
"FOOD,ENTERTAINMENT", "TRAVEL"Combined Filters
All filters can be combined:Transaction Response Fields
Core Transaction Fields
string
Unique transaction identifier
string
ID of card used for transaction
string
Last 4 digits of card number
string
Merchant transaction ID
string
Transaction timestamp (ISO 8601)
enum
Transaction direction:
DEBIT or CREDITDEBIT: Money leaving account (purchase)CREDIT: Money entering account (refund, reversal)
string
Merchant name and location (e.g., “AMAZON.COM, SEATTLE”)
string
Type of merchant transaction (e.g., “OutOfWalletOnline”, “InStoreWithPin”)
number
Merchant Category Code (numeric code)
enum
Human-readable category:
SUBSCRIPTIONS, FOOD, TRAVEL, ENTERTAINMENT, HEALTH, ATM, UTILITIES, MISCFinancial Fields
string
Card currency (e.g., “EUR”, “USD”)
string
Amount charged to card (decimal string)
string
Fees charged in card currency (decimal string)
string
Merchant’s original currency
string
Original amount in merchant currency
string
Fees in original currency
string
Conversion rate used for billing
string
European Central Bank reference rate
Status Fields
enum
Transaction status:
CONFIRMED: Transaction completed successfullyPENDING: Transaction processingDECLINED: Transaction rejectedREVERTED: Transaction reversed/refunded
string
Reason for decline (only present when
status: "DECLINED")Examples: “Insufficient funds”, “Invalid PIN”, “Card frozen”Funding Source Fields
array
Array of crypto funding sources used for this transaction
Implementing Transaction History UI
Basic Transaction List
With Filters
Transaction Statements
Generate downloadable transaction statements in CSV or PDF format.Generate Statement
Statement Parameters
string
Start date for statement (ISO 8601). If omitted, includes all transactions from the beginning.
string
End date for statement (ISO 8601). If omitted, includes all transactions up to now.
string
required
Format for statement:
text/csv: CSV formatapplication/pdf: PDF format
Unlike the transactions endpoint, you can specify
dateFrom without dateTo (or vice versa) for open-ended date ranges.CSV Format
Statement Generation Component
Transaction Analytics
Spending by Category
Monthly Spending Trend
Top Merchants
Troubleshooting
Empty array returned despite having transactions
Empty array returned despite having transactions
Cause: Invalid page number or filters too restrictiveSolution: Reset to page 0 and verify filters
Date range filter returns error
Date range filter returns error
Cause: Only one of
dateFrom/dateTo specifiedSolution: Provide both dates or neitherStatement download fails
Statement download fails
Cause: Missing or incorrect Accept headerSolution: Set proper Accept header for desired format
Funding sources array is empty
Funding sources array is empty
Cause: Transaction not yet settled or failedSolution: Check transaction status
Best Practices
Performance
Implement pagination for large transaction lists
Cache recent transactions locally with reasonable TTL
Use date filters to limit data transfer
Lazy load transaction details on demand
User Experience
Show loading states during fetch
Display transaction status clearly (confirmed, pending, declined)
Group transactions by date for readability
Provide search and filter capabilities
Allow statement downloads for record keeping
Data Display
Format amounts with proper decimal places
Show currency symbols clearly
Display timestamps in user’s timezone
Use color coding for transaction types (debit/credit)
Show funding source details for transparency
Error Handling
Next Steps
Card Management
Freeze, unfreeze, and control cards
PIN Operations
Secure PIN viewing and management
Order Cards
Issue new virtual cards
API Reference
Complete API documentation