Pending 订单创建或刷新支付会话。支付动作会访问支付渠道并可能改变订单状态,调用前必须确认订单 ID、金额和支付方式。
接口概览
匿名支付的边界
匿名访问用于打开复制的支付链接后登录态丢失的场景,不需要也不应携带长期 Account Token。匿名调用:- 只允许服务端配置的托管跳转支付方式;
- 固定使用桌面支付页面;
- 不能领取零价订单;
- 受 IP 和单订单限流;
- 返回最小订单投影,不包含账户、Application 或内部 metadata。
请求示例
pay_way 使用订单模型支持的真实值,例如 WechatPay、AliPay、Stripe、Card、Airwallex、X402、PayPal、AppleIAP、Reward、BankTransfer。并非每个值都对匿名请求或每个站点开放。
响应说明
成功响应是更新后的订单对象,通常通过pay_url 提供下一步入口;不同支付方式还可能在受控字段中返回客户端继续支付所需的信息。匿名响应使用最小字段白名单,认证所有者得到完整详情。
不要依赖 payment_url、qr_code_url 或 payment_method 等旧字段名;当前 Order 契约使用 pay_url 和 pay_way。
iOS 内购
已登录的订单所有者可传入pay_way: "AppleIAP"。此请求按所选套餐的 metadata.apple_price 更新待付款订单并清除折扣,不产生扣款、不发放积分,也不返回支付链接。旧待付款订单应先完成这一步,再发起 Apple 原生付款。只支持一个已配置 Apple 商品和价格的 Usage 套餐;不支持的套餐或批量订单返回 400。
Apple 原生付款后通过 /api/v1/orders/{id}/apple-verify/ 提交 transaction_id 完成服务端验证和积分发放。积分数量来自套餐;金额使用 Apple 独立美元预设价,不叠加会员折扣或站点加价,其他地区的本币扣款金额以 Apple 确认页为准。
错误与重试
- 订单不是
Pending:返回400;不要重复创建支付会话。 - 未提供
pay_way:非零金额订单返回400。 - 匿名调用使用了不允许的方式或零价订单:返回
403,登录后由所有者重试。 - 已认证但不是订单所有者:返回
403。 - 支付渠道失败:不要盲目重复提交;先查询订单详情,确认仍是
Pending后再重试。

