概览
Transactions API 允许你检索与你的账户关联的所有金融交易的完整历史。这包括购买、存款、取款、转账、账单支付以及所有其他金融活动。 端点类型: GraphQL 查询身份验证: 必需(JWT Bearer Token)
所需范围:
LIST_PAYMENT AND LIST_PURCHASES速率限制: 适用标准 GraphQL 速率限制
快速开始
基本查询
查询结构
参数
响应结构
TransactionConnection
筛选选项
TransactionFilterInput
筛选字段详情
记录与状态筛选
recordId
类型: [UUID]描述: 按特定交易记录 ID 进行筛选。 示例:
status
类型: [TransactionStatus]描述: 按交易状态进行筛选。 选项:
PENDING- 交易处理中SETTLED- 交易已成功完成
金额筛选
amount, amountGte, amountLte
类型: Float描述: 按美元的精确金额或金额区间进行筛选。
amount- 精确金额匹配amountGte- 最小金额(大于等于)amountLte- 最大金额(小于等于)
finalAmount, finalAmountGte, finalAmountLte
类型: Float描述: 按最终金额(金额 + 手续费)筛选。 示例:
返现筛选
cashbackAmount, cashbackAmountGte, cashbackAmountLte
类型: Float描述: 按获得的返现金额进行筛选。 示例:
cashbackPercentage, cashbackPercentageGte, cashbackPercentageLte
类型: Float描述: 按返现比例(百分比)进行筛选。 示例:
手续费筛选
feeAmount, feeAmountGte, feeAmountLte
类型: Float描述: 按交易手续费金额进行筛选。 示例:
日期筛选
createdGte, createdLte
类型: DateTime格式: ISO 8601(例如,
2025-01-01T00:00:00Z)描述: 按交易创建时间范围筛选。 示例:
updatedGte, updatedLte
类型: DateTime描述: 按交易最后更新时间范围筛选。
商户筛选
merchantId
类型: [UUID]描述: 按特定商户 ID 进行筛选。 示例:
merchant
类型: [String]描述: 按商户名称进行筛选(与 destination 字段匹配)。 示例:
交易属性
transactionType
类型: [String]描述: 按特定交易类型筛选。 常见值:
Add Money- 存款Gift Card Purchase- 礼品卡购买Transfer - In- 转入Transfer - Out- 转出Virtual Card Purchase- 虚拟卡购买Withdrawal
示例:
channel
类型: [String!]描述: 按平台渠道筛选。 常见值:
WEB- 网页MOBILE- 移动应用API- API 请求
category
类型: [String]描述: 按交易类别筛选。 示例:
虚拟卡筛选
virtualCardProgram
类型: [String]描述: 按虚拟卡项目/发卡方筛选。 示例:
virtualCard
类型: [UUID]描述: 按特定虚拟卡 ID 筛选。 示例:
其他筛选
fundingSource
类型: [String]描述: 搜索资金来源名称(对来源或去向进行部分匹配)。 示例:
referenceId
类型: String描述: 按外部参考 ID(例如购买展示 ID)筛选。 示例:
liabilityId
类型: UUID描述: 按负债 ID 筛选(用于账单支付)。
分页
OffsetInput
示例 - 第 1 页:
交易类型
字段描述
核心交易字段
财务明细
余额快照
重要: 所有余额字段均显示此交易应用后的余额。交易详情
商户信息
虚拟卡信息
货币转换
元数据
示例
示例 1:基础交易列表
查询:示例 2:按日期范围筛选
查询:示例 3:仅购买且包含余额
查询:示例 4:高返现交易
查询:示例 5:金额区间筛选
查询:示例 6:虚拟卡交易
查询:示例 7:分页示例
查询 - 获取第一页并检查是否有更多:错误处理
常见错误
缺失或无效令牌
权限不足
无效的筛选参数
超出速率限制
最佳实践
1. 有效使用分页
始终检查hasNextPage 以判断是否存在更多结果:
2. 仅请求所需字段
仅指定你需要的字段以减少响应大小:3. 对历史查询使用日期筛选
在查询较早的交易时,务必使用日期筛选:4. 缓存已结算交易
status: SETTLED 的交易是不可变的,可以进行缓存:
5. 高效组合筛选
使用范围筛选先收窄结果,再应用其他筛选:速率限制
响应头:
X-RateLimit-Limit- 允许的最大请求数X-RateLimit-Remaining- 当前窗口剩余请求数X-RateLimit-Reset- 速率限制重置时间(Unix 时间戳)
代码示例
JavaScript/TypeScript
Python
cURL
常见问题
问:一次请求最多能获取多少笔交易?
答:每次请求的最大数量为 20 笔。使用hasNextPage 字段实现分页。
问:交易历史能追溯到多久以前?
答:自账户创建以来的所有交易可无限期访问。问:是否包含待处理交易?
答:是,默认会包含待处理交易。若要排除,请筛选status: [SETTLED]。
问:时间戳使用什么时区?
答:所有时间戳均为 UTC(ISO 8601 格式)。问:我需要哪些权限范围(scopes)?
答:你需要同时具备LIST_PAYMENT 和 LIST_PURCHASES 两个范围。
问:我可以按账户内的用户 ID 进行筛选吗?
答:不可以。该 API 始终返回你账户的所有交易,不支持用户级别筛选。问:amount 与 finalAmount 筛选有何区别?
答:
amount筛选基础交易金额finalAmount筛选 金额 + 手续费(向用户收取的总额)
问:如何按日期范围筛选?
答:使用创建时间的createdGte 和 createdLte:
支持
- API 状态: https://status.fluz.app
- 开发者门户: https://developers.fluz.app
- 支持邮箱: api-support@fluz.app
- Slack 社区: https://fluz-dev.slack.com
变更日志
v1.0.0(分支:13-fluz-15659-add-transactions-query-and-webhook-to-api)
- 首次发布 Transactions 查询 API
- 支持全面筛选(15+ 种筛选类型)
- 使用
TransactionConnection响应类型的分页 - 交易记录中包含余额快照
- 需要
LIST_PAYMENT和LIST_PURCHASES范围 - 仅账户级交易访问
需要帮助?请联系开发者支持团队:api-support@fluz.app 或访问我们的开发者门户。