附录

错误码

接口返回 JSON 里的 code 表示结果,msg 是具体原因。页面跳转支付下单失败时,同样的原因显示在「下单失败」页面上。

返回码

code含义
1成功
-1请求没有成功,原因见 msg
-2订单已生成,但支付通道下单失败
  • -1:请求没有成功,原因见 msg(申请退款返回「退款处理中」除外,见「申请退款」)
  • -2:订单已生成,但支付通道下单失败,msg 是通道给出的原因,同时返回 trade_no

公共错误

所有接口都可能返回:

返回信息说明
商户ID不能为空pid 没传或认不出商户号
商户不存在pid 对应的商户不存在
商户已禁用商户已被停用,请联系平台
签名校验失败签名不对
请使用 POST 方式请求用 GET 调用了页面跳转支付以外的接口
请求体过大或读取失败请求内容超过 2MB,或传输中断
系统错误平台暂时无法处理,请稍后重试
  • 「商户ID不能为空」:查询、退款等接口没有传 pid,或 pid 认不出商户号
  • 「签名校验失败」:签名不对;签名方式为「RSA签名」的商户没有传 sign_type=RSA 也会返回这个

下单错误

页面跳转支付和 API 接口支付可能返回:

返回信息说明
参数不完整必填参数缺失,或 money 不大于 0
商户订单号格式不合法out_trade_no 含有不允许的字符
商户支付权限已关闭商户暂时不能收款,请联系平台
商户订单号已存在这个 out_trade_no 已经下过单
下单过于频繁,请稍后再试同一商户每分钟下单超过 120 笔
最大支付金额为 N 元金额超过平台或商户设定的上限
最小支付金额为 N 元金额低于平台或商户设定的下限
该商品禁止出售商品名称含有平台禁止的词
该 IP 已被拉黑,请联系商家处理请求来源 IP 在黑名单里
该用户已被拉黑,请联系商家处理付款人 sub_openid 在黑名单里
商户未配置可用支付通道,无法收款不传 type 下单时,商户没有任何可用的支付通道
不支持的支付方式:xxxtype 不是「支付方式」里的调用值
该支付方式已停用本站停用了这种支付方式
当前商户未开通该支付方式你的商户没有开通这种支付方式
该支付方式不支持当前设备这种支付方式限定了设备,见「设备类型」
该支付方式暂无可用通道没有能收这笔订单的支付通道
指定通道不可用channel_id 指定的通道不能用于这笔订单
商户余额不足,请先充值这笔订单要先从商户余额里扣服务费,余额不够
  • 「参数不完整」:pid、out_trade_no、notify_url、name、money 有缺失,或 money 不大于 0
  • 「商户订单号格式不合法」:out_trade_no 含有字母、数字和 . _ - | 以外的字符
  • 「商户订单号已存在」:这个 out_trade_no 已经下过单,同时返回已有订单的 trade_no 和 status
  • 「该商品禁止出售」:商品名称含有平台禁止的词,提示文字可能由平台自定义
  • 「该支付方式暂无可用通道」:没有能收这笔订单的支付通道,例如金额超出通道的限额

查询错误

返回信息说明
订单号不能为空trade_no 和 out_trade_no 都没传
订单不存在没有这笔订单,或订单不属于你的商户
退款单号不能为空refund_no 和 out_refund_no 都没传
退款记录不存在没有这笔成功的退款

退款与关单错误

申请退款的失败原因见「申请退款」,关闭订单的失败原因见「关闭订单」。