# 代币支付退款

接口应在服务器端调用,不可在前端(小程序、网页、APP等)直接调用,具体可参考接口调用指南

接口英文名:cancel_currency_pay

本接口用于代币支付退款(currency_pay接口的逆操作)

# 1. 调用方式

# HTTPS 调用

POST https://api.weixin.qq.com/xpay/cancel_currency_pay?access_token=ACCESS_TOKEN&signature=SIGNATURE&pay_sig=PAY_SIG

# 云调用

  • 本接口不支持云调用。

# 第三方调用

  • 本接口支持第三方平台代商家调用。

  • 该接口所属的权限集 id 为:157

  • 服务商获得其中之一权限集授权后,可通过使用 authorizer_access_token 代商家进行调用,具体可查看 第三方调用 说明文档。

# 2. 请求参数

# 查询参数 Query String Parameters

参数名类型必填示例说明
access_tokenstringACCESS_TOKEN接口调用凭证,可使用 access_tokenauthorizer_access_token
signaturestring-用户态签名
pay_sigstring-支付签名

# 请求体 Request Payload

参数名类型必填说明
openidstring用户的openid
envnumber0-正式环境 1-沙箱环境
user_ipstring用户ip,例如1.1.1.1
pay_order_idstring代币支付(调用currency_pay接口时)时传的order_id
order_idstring本次退款单的单号
amountnumber退款金额

# 3. 返回参数

# 返回体 Response Payload

参数名类型说明
errcodenumber错误码
errmsgstring错误信息
order_idstring退款订单号

# 4. 注意事项

使用用户态签名与支付签名

# 用户态签名

签名参数为 signature,加在 query 后面

例如接口地址是:https://api.weixin.qq.com/xpay/query_user_balance?access_token=xxxx

加上签名后则需要传 https://api.weixin.qq.com/xpay/query_user_balance?access_token=xxxx&signature=xxx

# 支付签名

签名参数为 pay_sig,加在 query 后面

例如接口地址是:https://api.weixin.qq.com/xpay/query_user_balance?access_token=xxxx

加上签名后则需要传 https://api.weixin.qq.com/xpay/query_user_balance?access_token=xxxx&pay_sig=xxx

# 5. 代码示例

请求示例

{
    "openid": "",
    "env": 0,
    "user_ip": "",
    "pay_order_id": "",
    "order_id": "",
    "amount": 0
}

返回示例

{
    "errcode": 0,
    "errmsg": "",
    "order_id": ""
}

# 6. 错误码

以下是本接口的错误码列表,其他错误码可参考 通用错误码;调用接口遇到报错,可使用官方提供的 API 诊断工具 辅助定位和分析问题。

错误码错误描述
-1系统错误
268490001openid错误
268490002请求参数字段错误,具体看errmsg
268490003签名错误
268490004重复操作(赠送和代币支付和充值广告金相关接口会返回,表示之前的操作已经成功)
268490005订单已经通过cancel_currency_pay接口退款,不支持再退款
268490006代币的退款/支付操作金额不足
268490007图片或文字存在敏感内容,禁止使用
268490008代币未发布,不允许进行代币操作
268490009用户session_key不存在或已过期,请重新登录
268490011数据生成中,请稍后调用本接口获取
268490012批量任务运行中,请等待完成后才能再次运行
268490013禁止对核销状态的单进行退款
268490014退款操作进行中,稍后可以使用相同参数重试
268490015频率限制
268490016退款的left_fee字段与实际不符,请通过query_order接口查询确认
268490018广告金充值帐户行业 id 不匹配
268490019广告金充值帐户 id已绑定其他 appid
268490020广告金充值帐户主体名称错误
268490021账户未完成进件
268490022广告金充值账户无效
268490023广告金余额不足
268490024广告金充值金额必须大于 0

# 7. 适用范围

本接口暂未明确可调用账号类型,或在业务中根据调用传参自行确定是否可调用,请以实际调用情况为准。