Skip to Content

支付参考

本页汇总支付功能的数据结构和取值。配置流程见支付功能概述。

支付回调数据

在 支付结果处理 中配置行为流输入时,可以绑定 支付回调 下的数据。不同事件提供的数据不同:

数据类型支付完成时退款成功时订阅状态变更时订阅续费时
支付支付表记录是是
订单已支付金额小数是
退款退款表记录是
周期性支付周期性支付表记录是
变更前状态文本是
变更前是否到期取消布尔值是
回调请求体JSON是是是
  • 支付、退款 和 周期性支付 可以选择记录本身或其字段,不能选择关联数据。
  • 订单已支付金额 是该订单所有 SUCCESSFUL 支付记录的金额合计。
  • 回调请求体 是支付平台发来的原始通知内容,各渠道格式不同。

系统表字段

支付

字段显示名说明
idid支付记录 id,退款时使用
type类型支付渠道类型
grand_total_value总金额支付金额,单位与该渠道行为的金额单位一致
currency币种币种代码
status状态见支付状态
description描述交易描述
order_id订单id关联的订单 id
transaction_id交易号支付平台的交易号
out_trade_no外部订单号Zion 发给支付平台的订单号
account_id帐户id发起支付的账户
recurring_payment_id周期性支付id订阅扣款时关联的订阅
config_id支付配置id发起支付使用的支付配置

退款

字段显示名说明
idid退款记录 id
payment_record_id支付id被退款的支付记录
account_id帐户id发起退款的账户
status状态REFUNDING、REFUNDED 或 FAILED
out_refund_no外部退款号支付平台的退款单号
amount金额退款金额

周期性支付

字段显示名说明
idid订阅 id,取消订阅时使用
account_id帐户id订阅的账户
agreement_no周期性支付协议号支付平台的订阅 id
first_order_id第一笔订单id发起订阅时的订单
status状态见订阅状态
payment_type支付方式订阅所属渠道
current_period_start当前周期开始时间
current_period_end当前周期结束时间
cancel_at_period_end周期结束时取消为 true 时,订阅会在当前周期结束后取消
config_id支付配置id发起订阅使用的支付配置

三张表都包含创建时间和更新时间。

支付状态

状态说明
PENDING已创建支付记录,等待支付平台通知
SUCCESSFUL支付成功
CANCELLED支付已取消
PARTIALLY_REFUNDED已部分退款
REFUNDED已全额退款

PENDING 只能变为 SUCCESSFUL 或 CANCELLED;SUCCESSFUL 和 PARTIALLY_REFUNDED 只能因退款变为 PARTIALLY_REFUNDED 或 REFUNDED。不符合这些规则的通知会被忽略。

只有 SUCCESSFUL 或 PARTIALLY_REFUNDED 的支付记录可以退款。退款记录从 REFUNDING 变为 REFUNDED 或 FAILED。

订阅状态

状态说明
INCOMPLETE已发起订阅,首期尚未支付
INCOMPLETE_EXPIRED首期未在期限内支付,订阅失效
TRIALING试用中
ACTIVE订阅生效
PAST_DUE扣款逾期
UNPAID未支付
CANCELED已取消

CANCELED 和 INCOMPLETE_EXPIRED 是终止状态。只改变计费周期的通知会直接更新记录,不触发 订阅状态变更时。

金额单位

渠道支付行为的金额示例
微信支付元,最多两位小数收取 10 元填写 10
支付宝元,不小于 0.01,最多两位小数收取 10 元填写 10
Stripe币种的最小单位收取 10 美元填写 1000
Airwallex主货币单位收取 10 美元填写 10

退款金额使用与原支付相同的单位。超过剩余可退金额时,按剩余可退金额退款。

校验提示

编辑器会在以下情况提示错误:

提示处理方式
行为尚未配置支付配置在支付行为中选择 支付配置
行为引用的支付配置不存在支付配置已被删除,重新选择
支付配置属于支付渠道 A,但该行为需要 B选择与行为渠道一致的支付配置
行为尚未配置支付产品在支付行为中选择 支付产品
支付产品在当前端不可用选择当前客户端可用的支付产品
支付配置未启用支付产品在支付配置的 支付产品 中勾选该产品
支付配置的字段不能为空填写商户信息中的必填项
支付配置的字段必须是 Secret 绑定把密钥类字段改为绑定 Secret
处理订阅发票创建事件的行为流必须同步执行,并输出一个 BIGINT 类型的订单 ID见处理订阅续费
支付回调数据只能在支付回调配置中使用支付回调 数据只能在 支付结果处理 的行为流输入中绑定
支付回调字段不适用于该事件类型改为绑定该事件提供的数据,见支付回调数据
Last updated on