Files
shaguabijia-app-server/docs/api/admin/withdraws/admin-withdraw-refresh.md
T
guke a563c1ca4b @ (#111)
docs/api目录文档分类和补全

---------

Co-authored-by: guke <guke@autohome.com.cn>
Reviewed-on: #111
2026-07-03 15:00:37 +08:00

2.2 KiB
Raw Blame History

POST /admin/api/withdraws/{out_bill_no}/refresh — 单笔提现重试查单

所属:Admin·提现 组(前缀 /admin/api/withdraws | 鉴权:Bearer admin_token(角色:financesuper_admin 恒通过) | ← 返回 API 索引

对单笔提现单调微信查单并归一化:SUCCESSsuccessFAIL/CANCELLED/CLOSED→退款+failed;查到 WAIT_USER_CONFIRM 视为用户放弃(cancel_if_unconfirmed=True),撤单+退款;ACCEPTED/PROCESSING 等仍在途则保持 pending。已是终态的单直接返回、不再查。

入参

  • 路径:out_bill_nostring — 商户提现单号
  • body:无

出参

响应 200:WithdrawOrderOut(归一化后的最新提现单)

WithdrawOrderOut

字段 类型 说明
id int 提现单主键
user_id int 所属用户
out_bill_no string 商户提现单号
amount_cents int 提现金额,单位:
status string 单状态(pending / success / failed
wechat_state string | null 微信侧转账状态
transfer_bill_no string | null 微信转账单号
fail_reason string | null 失败/退款原因
created_at datetime 创建时间(ISO 8601 UTC
updated_at datetime 更新时间(ISO 8601 UTC

错误码

  • 401 未带/无效/过期 admin token、管理员被禁用(响应头带 WWW-Authenticate: Bearer
  • 403 角色不足(需 financesuper_admin
  • 404 提现单不存在(detail="提现单不存在"
  • 503 微信支付未配置(捕获 WxPayNotConfiguredErrordetail="微信支付未配置"

注:微信查单本身失败(非未配置)时不抛错、不改状态,单保持 pending 等下次重试,故无 502

说明

  • 调用底层 app.repositories.wallet.refresh_withdraw_status(..., cancel_if_unconfirmed=True)(内部调微信查单/撤单/退款并 commit)。
  • 写操作记审计 admin_audit_logaction="withdraw.refresh"target_id=out_bill_nodetail{status, wechat_state},含触发管理员与客户端 IP)。
  • 关联 withdraw_order。金额单位为分。