通用场景
如果创建商品的退款政策refund_need_merchant_confirm值为1时,则是支付宝发起退款前需要向商户确认是否可以退款。 如果商户确认是需要等待一段时间,则返回等待确认,通过接入退款确认结果api(alipay.marketing.activity.order.refundconfirmcommit)进行回复。
1、退款咨询商户确认spi:商户需同步返回确认结果【同意/拒绝/等待】,【等待】值下需10分钟内调用异步回调接口返回结果(同意/拒绝),未返回结果,则支付宝侧自动退款给用户
2、若退款咨询商户确认spi发生异常(商户侧未实现spi、实现参数不正确、系统抖动等原因),支付宝侧会进行重试,若5分钟内重试失败,则支付宝侧自动退款给用户
3、退款咨询商户返回【拒绝】值:商户需在24小时内同步凭证核销消息,若未同步 支付宝侧自动退款给用户
2、若退款咨询商户确认spi发生异常(商户侧未实现spi、实现参数不正确、系统抖动等原因),支付宝侧会进行重试,若5分钟内重试失败,则支付宝侧自动退款给用户
3、退款咨询商户返回【拒绝】值:商户需在24小时内同步凭证核销消息,若未同步 支付宝侧自动退款给用户
公共请求参数
业务请求参数
body参数
order_id|订单号必选string(64)
【描述】订单号
【示例值】2015042321001004720200028594
refund_type|订单退款类型必选string(32)
【描述】订单退款类型
【枚举值】
过期自动退: auto_expire
用户主动退: user_refund
【示例值】auto_expire
refund_confirm_certificate_info_list|申请退款的凭证列表必选refundconfirmcertificateinfo[]
【描述】申请退款的凭证列表
certificate_id|凭证标识id可选string(128)
【描述】凭证标识id
【示例值】2016042700826004508401111111
code|三方码可选string(64)
【描述】三方码
【示例值】123abc
total_count|可核销总次数可选number(16)
【描述】可核销总次数
【注意事项】1. 当前仅支持总次数为1
【示例值】1
used_count|已核销次数可选number(16)
【描述】已核销次数
【注意事项】1. 当前仅支持核销次数最大为1
【示例值】0
常见请求示例
默认示例
curl -x post 'spi_implementation_url?sign=${sign}&method=spi.alipay.marketing.certificate.order.refundconfirm&charset=utf-8&version=1.0&utc_timestamp=${now}&sign_type=rsa2' \
--header 'content-type: application/x-www-form-urlencoded;charset=utf-8' \
--data-urlencode 'refund_type=auto_expire' \
--data-urlencode 'refund_confirm_certificate_info_list=[{"certificate_id":"2016042700826004508401111111","code":"123abc","used_count":0,"total_count":1}]' \
--data-urlencode 'order_id=2015042321001004720200028594'
说明:spi_implementation_url是开发者在开放平台实现spi接口时填写的后端服务地址,详情请查看
业务响应参数
response
code必选string
【描述】错误码,只有两种:
成功-10000
失败-40004
返回其他值会被认为非法响应,区分大小写。
成功-10000
失败-40004
返回其他值会被认为非法响应,区分大小写。
【示例值】40004
msg必选string
【描述】错误描述,只有两种:
成功-success
失败-business failed
返回其他值会被认为非法响应,区分大小写。
成功-success
失败-business failed
返回其他值会被认为非法响应,区分大小写。
【示例值】business failed
result|退款前向商户确认退款结果必选string(32)
【描述】退款前向商户确认退款结果
【枚举值】
接受退款: accept
拒绝退款: reject
等待确认: wait_confirm
【示例值】accept
reason|拒绝原因特殊可选string(256)
【描述】拒绝原因
【示例值】不符合退款条件:商家线下协商后已经退款
code_list|三方码列表特殊可选string[](64)
该参数已废弃
凭证退款同步确认接口无需code_list参数
【描述】拒绝退款的三方码列表
【示例值】["123abc"]
sub_code可选string
【描述】业务错误码,在业务失败的情况下返回,与 spi 接口文档里的“业务错误码”保持一致,值不能为 null 或 “”,在业务成功的情况下不能返回。
【示例值】invalid_params
sub_msg可选string
【描述】业务错误描述,在业务失败的情况下返回。
【示例值】无效参数
sign必选string
【描述】签名,详见
【示例值】dzxh8eetuahoye3w1j poiphfdxoybfunn1lket/v7p4zjdyojwea6izs6hz0ydw5cp/viufub5i0/v5wens3oyr8zredqo6d futdlhdc efyckiqhbxizgngpdpdfp1pis7bdhhzrszhbrqb7o4k3dxc aanfauu4v6zdwczo=
响应示例
正常示例
异常示例
{
"response": {
"code": "10000",
"msg": "success",
"result": "accept",
"reason": "不符合退款条件:商家线下协商后已经退款"
},
"sign": "eritjkeijkjhkkkkkkkhjereeeeeeeeeee"
}
说明:本示例仅供参考。
业务错误码
错误码 | 错误描述 | 凯发app官方网站的解决方案 |
---|---|---|
invalid_parameter | 参数有误,请检查参数 | 请根据接口返回的参数非法的具体错误信息,修改参数后进行重试 |
system_error | 系统繁忙 | 可能发生了网络或者系统异常,导致服务调用失败,商户可以用同样的请求发起重试 |
接口工具
spi使用文档
获取sdk