Skip to main content

概览

提现允许用户将资金从其 Fluz 余额转至外部账户。用户可以从两种余额类型中提现:
  • 现金余额(Cash Balance) - 用户存入其 Fluz 账户的资金
  • 奖励余额(Rewards Balance) - 购物累计的返现收益
Fluz 支持以下提现方式:

提现现金余额

示例请求

你可以使用 withdrawCashBalance mutation 发起提现。该 mutation 会将用户的 Fluz 余额资金转至其指定的外部账户。
该 mutation 需要 WithdrawCashBalanceInput 输入类型。架构中带感叹号(!)的字段为必填,必须在请求中提供。

输入字段

WithdrawCashBalanceInput


示例响应

withdrawCashBalance mutation 的响应包含提现记录以及用户更新后的余额。

响应字段

Withdraw 对象


必需的 Scope

此 mutation 需要将 MAKE_WITHDRAWAL scope 授予访问令牌。getWithdrawFeeEstimate 查询同样需要该 scope。

各账户类型的提现方式


提现前预览费用

使用 getWithdrawFeeEstimate 查询在提交前对提现进行报价。传入你计划使用的相同 amountmethodsourceisExpedited,响应会精确告知用户将实际收到的金额。
费用从提现金额中扣除,而非额外叠加:余额会扣减完整的 amount,目的账户收到 netAmount。将 FLUZPAY 作为 method 传入会返回 ARG-0001

推卡提现(OCT)

BANK_CARD 提现是推卡付款,以**原始贷记交易(OCT)**的卡网络交易类型将资金打到卡上。它需要 bankCardId,且绑定的借记卡必须支持 OCT。不符合条件的卡无法通过其他方式入账,用户需选择其他提现方式。 isExpedited 控制到账速度:
处于 PENDING 的推卡提现尚未最终完成。标准提现会在结算延迟后入账,但届时仍可能失败——例如该卡已无法接收该笔付款。若失败,资金将退回至来源余额。请对提现状态进行对账,而不要将初始的 PENDING 响应视为已完成的付款。

卡片可用性

大多数 Visa 与 Mastercard 借记卡均可接收推卡付款。可用性会在提交提现时评估,这是卡片本身的属性,并非可由你配置。
可用性无法提前获知,且与存款的可用性不互通。没有可查询卡片是否支持 OCT 的接口——它只会在对该卡首次提现时显现。提现与存款的可用性相互独立,因此用户成功用于存款的卡片,并不一定可用于接收提现。参见 从外部账户存款
BANK_CARD 提现不受 cardType 限制:PREPAID 卡不会被预先排除,与其他卡一样基于可用性决定接受或拒绝。由于 BANK_CARD 没有替代的交付路径,请务必在你的界面中保持 BANK_ACHPAYPALVENMO 可选,以防不合格卡片导致流程中断。推卡失败会表现为 HN-0124BC-0004 —— 见下方的 错误处理

错误处理

常见错误场景: ARG-* 错误会在资金发生任何变动之前抛出。

错误响应示例


多笔提现

在某些情况下,单个提现请求可能会生成多条提现记录。这通常发生在提现金额被拆分至多个席位(网络位置)时。响应会包含所有创建的提现记录。

最佳实践

  1. 始终使用唯一的幂等键 - 为每次提现请求生成新的 UUID,防止重复交易。
  2. 提现前检查余额 - 使用 getWallet 查询在发起提现前验证用户资金是否充足。
  3. 处理待处理状态 - 提现可能需要时间处理。status 字段会指示提现当前状态。
  4. 存储交易引用 - 保存 withdrawIdtransactionLogId 以便对账与支持。

更新日志

v1.3.0

加急提现与费用预览
  • 重新引入 WithdrawCashBalanceInput 上的 isExpedited。它控制 BANK_CARD 提现的到账速度:true 表示在请求期间推送至该卡,false 或省略表示按标准进度结算。这取代了下面 v1.2.0 的说明(此前表示该字段已被移除)。
  • 新增 getWithdrawFeeEstimate 查询以及 GetWithdrawFeeEstimateInput / WithdrawFeeEstimate 类型,可在提交前预览费用、净额与结算时间。
  • 补充了关于推卡提现作为原始贷记交易(OCT)的说明,包括卡片可用性,以及标准提现在提交后仍可能失败并退回至来源余额的事实。
  • 更正了 withdrawCashBalance 的必需 scope 为 MAKE_WITHDRAWAL。此前页面列出的 MANAGE_PAYMENT 有误;同时,Withdraw 类型上的 seat_id 也是可选的(UUID),而非 v1.2.0 所述的必填。
  • 说明了虽然 FLUZPAY 存在于 WithdrawMethods 枚举中,但并不是可用的提现方式:withdrawCashBalance 会以 WDR-0004(提现方式无效)拒绝,getWithdrawFeeEstimate 则以 ARG-0001 拒绝。

v1.2.0 - 2024-11-20

架构优化与字段清理
  • WithdrawCashBalanceInput 中移除了 isExpedited 字段——加急 ACH 不再通过 API 配置
  • Withdraw 类型上的 seat_id 字段从可选改为必填(UUIDUUID!
  • 更新了对 BANK_CARD 方式的描述,删除了“加急”相关表述

v1.1.0 - 2024-10-15

新增 Venmo 支持与奖励余额提现
  • WithdrawMethods 枚举中新增 VENMO
  • WithdrawCashBalanceInput 中新增 venmoAccountId 字段
  • WithdrawSource 枚举中新增 REWARDS_BALANCE,支持提现返现收益
  • Withdraw 响应类型中新增 seat_id 字段以支持多席位账户跟踪

v1.0.0 - 2024-09-01

初始发布
  • 引入 withdrawCashBalance mutation,并要求 MAKE_WITHDRAWAL scope
  • 新增 WithdrawMethods 枚举,包含 PAYPALBANK_ACHBANK_CARD 方式
  • 新增 WithdrawSource 枚举,包含 CASH_BALANCE 来源
  • 新增支持幂等的 WithdrawCashBalanceInput 输入类型
  • 新增包含完整提现记录详情的 Withdraw 响应类型
  • 新增返回提现记录与更新后余额的 WithdrawCashBalanceResponse 类型
  • 集成 payout-service 以处理提现
  • 新增应用操作日志以用于审计追踪