申请退款API

业务功能
商户针对某一个已经成功支付的订单发起退款,操作结果在同一会话中同步返回。
一、退款方式
目前只支持原路返回退款。
说明:
· 退到银行卡则是非实时的,每个银行的处理速度不同,一般发起退款后1-3个工作日内到账。
· 同一笔单的部分退款需要设置相同的订单号和不同的 out_refund_no 。
· 总退款金额不能超过用户实际支付金额(现金券金额不能退款)
· 使用免充值优惠的订单仅支持全额退款,不支持部分退款
· 部分退款次数最多不能超过15次。

交互模式
请求:后台请求交互模式
返回结果+通知:后台请求交互模式+后台通知交互模式
测试url:
http://47.95.131.62:8080/api/v1/pay/polymeric/refund

请求参数(O-非必传 ,M-必传):

参数 参数名称 类型 参数说明 样例 可空
merch_no 商户编号 String 原交易商户编号(v1.42增加) M
out_refund_no 服务商退款订单号 String 服务商退款订单号(同一服务商下唯一) 161018121614000624679888 M
refund_amount 退款金额 String 退款金额,以元为单位 100 M
market_subsidy_agent_no 营销补贴代理商编号 Sting 1、不上送默认退回到服务商营销补贴代理商编号账户。
2、如上送退回上送营销补贴代理商编号账户
C
market_subsidy_info 营销补贴退款信息 JSONArray 退款金额不得大于原支付补贴金额 O
trade_no 交易订单号 String SaaS平台的交易订单编号 trade_no、out_trade_no、channel_trade_no必传其中一个,都传则以trade_no为准,推荐使用trade_no O
out_trade_no 原服务商交易订单号 String 原服务商交易订单号(v1.24增加) O
channel_trade_no 凭证条码订单号 String 付款凭证条码订单号(v1.28增加) 161018121614000624679888 O
notify_url 通知地址(v1.02) String 退款成功后的通知地址 http://test.mdun.cn/jd/pay/notice O
sn 厂商终端号 String (v1.05增加) O
pn SAAS终端号 String 标准服务商必填(v1.27增加) O
remark 交易备注 String (v1.05增加) O
acq_addn_data (银联二维码)收款方附加数据 JSON 涉及扫码点餐业务,交易需要在此上送商品信息 O
(银联二维码)收款方附加数据:acq_addn_data
参数 参数名称 类型 参数说明 样例 可空
orderInfo 订单信息 JSON 订单明细内容,如订单标 题、订单描述等 O
(银联二维码)订单信息:orderInfo
参数 参数名称 类型 参数说明 样例 可空
addnInfo 附加信息 String 银联扫码点餐相关参数,格式参考银联侧要求,例如{brandId=值&storeId=值&tableNo=值} O
营销补贴信息:market_subsidy_info
参数 参数名称 类型 参数说明 样例 可空
party 营销补贴账户 String 在海科开通的营销补贴账户号 M
amt 营销补贴金额 String 营销补贴金额(单位:元) 20 M

请求示例:

{
    "accessid": "cpostest",
    "out_refund_no": "201905060000001",
    "refund_amount": "0.01",
    "trade_no": "AL190506150636810000497062",
    "out_trade_no": "AL190506150636810000497062",
    "notify_url": "http://47.95.131.62:8080/saas/trade/success/notice/test",
    "sign": "5799A557E6E53E4ABF75EC9878AC774E"
}

返回参数:

参数 参数名称 类型 参数说明 样例 可空
refund_no 退款订单号 String SaaS平台的退款订单编号 M
channel_trade_no 凭证条码订单号 String 凭证条码订单号(v1.24增加) 161018121614000624679888 M
trade_type 被扫类型 String 微信支付:WX 支付宝支付:ALI 银联二维码支付:UNIONQR M
refund_status 退款状态 int 退款结果:

1:成功(退款申请接收成功,退款的到账时间以实际为准);

2:失败(退款申请失败,错误原因参考error_msg);

3:结果未知(退款申请处理结果未知,请调用退款查询接口获取退款结果状态)

M
error_code 错误码 String O
error_msg 错误消息 String O
trade_end_time SaaS平台交易完成时间 String SaaS平台交易完成时间,交易完成以后会返回 2019-11-18 14:11:23 O
total_amount 原消费交易总金额 String 原消费交易总金额(v1.30增加) M
refunded_amount 已退款金额 String 已退款金额(v1.30增加) M
remanent_amount 剩余可退款金额 String 剩余可退款金额(v1.30增加) M
attach 支付宝/微信/银联原生参数 JSON O
微信原生参数:attach
参数 参数名称 类型 参数说明 样例 可空
result_code 业务结果 String SUCCESS/FAIL SUCCESS M
err_code 错误代码 String SYSTEMERROR O
err_code_des 错误代码描述 String 错误返回的信息描述 系统错误 O
sub_appid 子商户公众账号id String 调用接口提交的子商户公众账号ID wx8888888888888888 O
sub_mch_id 子商户号 String 调用接口提交的子商户号 1900000109 M
nonce_str 随机字符串 String 网联返回的随机字符串 M
sign 签名 String 网联返回的签名 M
out_refund_no 商户退款单号 String 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母同一退款单号多次请求只退一笔 M
refund_id 微信退款单号 String M
refund_fee 退款金额 String 退款总金额,单位为分,可以做部分退款 M
refund_fee_type 退款货币种类 String CNY M
cash_refund_fee 现金退款金额 String 现金退款金额,单位为分,只能为整数 M
coupon_refund_fee 代金券退款总金额 String O
refund_detail 优惠退款详情 JSONArray [{“amount”:100,”promotion_id”:”21796722069”,”type”:”COUPON”,”scope”:”GLOBAL”,”refund_amount”:100}] O
优惠退款详情:refund_detail
参数 参数名称 类型 参数说明 样例 可空
promotion_id 券ID String 券或者立减优惠id 109519 M
scope 优惠范围 String GLOBAL-全场代金券
SINGLE-单品优惠
SINGLE O
type 优惠类型 String COUPON-代金券,需要走结算资金的充值型代金券,(境外商户券币种与支付币种一致)
DISCOUNT-优惠券,不走结算资金的免充 值型优惠券,(境外商户券币种与标价币种一致)
DISCOUNT O
amount 优惠券面额 String 用户享受优惠的金额 5 O
支付宝原生参数:attach
参数 参数名称 类型 参数说明 样例 可空
trade_no 网联交易号 String 2013112011001000000121536 M
out_trade_no 原支付订单的商户订单号 String 原支付订单的商户订单号,32个字符以内、可包含字母、数字、下划线;需保证在商户端不重复 20150320010101000121223452324110 M
open_id 买家支付宝用户号 String 买家支付宝用户号,该参数已废弃,请不要使用 2088102122524330 M
buyer_logon_id 用户的登录id String 用户的登录id 159****5620 M
fund_change 本次退款是否发生了资金变化 String Y M
refund_fee 退款总金额 String 单位:元 M
refund_currency 退款币种信息 String CNY O
gmt_refund_pay 退款支付时间 Date 2014/11/27 15:45:57 M
refund_detail_item_list 退款使用的资金渠道 JSONArray O
store_name 交易在支付时候的门店名称 String 望湘园联洋店 O
buyer_user_id 买家在支付宝的用户id String 2088101117955611 M
send_back_fee 本次商户实际退回金额 String O
present_refund_buyer_amount 本次退款金额中买家退款金额 String O
present_refund_discount_amount 本次退款金额中平台优惠退款金额 String O
present_refund_mdiscount_amount 本次退款金额中商家优惠退款金额 String O
code 网关返回码 String 40004 M
msg 网关返回码描述 String Business Failed M
sub_code 网关明细返回码 String isv.invalid-signature O
sub_msg 网关明细返回码描述 String 交易已被支付 O
sign 签名 String M
资金渠道:refund_detail_item_list
参数 参数名称 类型 参数说明 样例 可空
amount 该支付工具类型所使用的金额 String M
bank_code 银行卡支付时的银行代码 String CEB O
fund_channel 交易使用的资金渠道 String ALIPAYACCOUNT M
real_amount 渠道实际付款金额 String O
fund_type 渠道所使用的资金类型 String 目前只在资金渠道(fund_channel)是银行卡渠道(BANKCARD)的情况下才返回该信息(DEBIT_CARD:借记卡,CREDIT_CARD:信用卡,MIXED_CARD:借贷合一卡) O
银联原生参数:attach
参数 参数名称 类型 参数说明 样例 可空
acqAddnData 收款方附加数据 String BASE64加密后的字符串 M
issAddnData 付款方附加数据 String BASE64加密后的字符串 M
couponInfo 优惠类信息(银联单品券时使用) String BASE64加密后的字符串,解码后为JSONArray M
(银联二维码)优惠信息:couponInfo
参数 参数名称 类型 参数说明 样例 可空
spnsrId 出资方 String 银联作为出资方:固定填写00010000;付款方作为出资方:填写 8 位付款方机构代码商户作为出资方:填写 15 位商户代码(银联商户号)。 M
offstAmt 优惠金额 String 以分为单位 M
currencyCode 货币类型 String 固定:156代表人民币 O
id 项目编号 String 用于票券编号等,格式自定义 O
desc 优惠活动简称 String 可用于展示、打单等 O
addnInfo 附加信息 String O

返回示例:

{
    "refund_no": "WX190506165352286000440521",
    "channel_trade_no": "WX190506165352286000440521",
    "refund_status": 1,
    "return_code": 10000,
    "sign": "D543561A0DD8CD28DB860C787AEDA343"
}
文档更新时间: 2023-06-20 10:22   作者:admin