退款API

数据格式

请求网易支付和通知商户的接口采用统一的参数定义规则:

参数

参数名称

长度

必填

样例

sign

根据msg和算法签名后的字符

String


msg

消息体,根据"业务参数"列表,拼装而成的消息体

String


msgType

消息类型,XML,JSON

String

XML

比如:https://epay.163.com/api/trade_refund_service?msg=&sign=&msgType=,其中msgmsgTypesign是必填参数。如果有特殊字符为避免请求被转码等问题,每个参数发送时需进行UrlEncode。所有参数只存在一级节点中,不采用多级节点嵌套。


请求URL

https://epay.163.com/api/trade_refund_service.htm?

 

调用参数

参数名

参数

必填 

长度 

样例

版本号

version

8

1.0.0

操作名称

action

40

trade_refund_service  

商户交易流水号

platformTradeId

40

唯一

2012070317CP00000001  

商户ID

platformId

40

商户号,网易支付提供

商户商品交易时间

platformTradeDate


需与下单接口中传入的时间一致 
  
格式yyyyMMdd 
  
若订单时间超过一年则该笔订单不允许退款 

商户退款ID

platformRefundId

40

987654321

同一个商户不能重复

退款金额

refundAmount


0.01

精确到分,退款金额不能超过原订单金额

退款手续费

refundHandFee


0.01

精确到分,退款金额不能超过原订单金额

是否退回用户银行卡;  

backRefund


Y-    N- 
  
以下场景忽略该参数: 
  
三个月内的非储蓄卡支付的订单,强制退回到卡; 
  
三个月前支付的订单,强制退回到网易支付余额(三个月前的订单银行不支持退款);

示例(msgbase64前的XML


<?xml versi"1.0" encoding="UTF-8" ?>

<epay>

<version>1.0.0</version>

<action>trade_refund_service</action>

<platformTradeId>2012070317CP00000001</platformTradeId>

<platformId>2008122815PT00000025</platformId>

<platformTradeDate>20120802</platformTradeDate>

<platformRefundId>789654321</platformRefundId>

<refundAmount>0.01</refundAmount>

<refundHandFee>0.01</refundHandFee>

<backRefund>N</backRefund>

</epay>


返回参数

参数名称

参数

是否为空

样例

处理结果报文

msg

如果退款失败为空


Msg签名信息

sign

如果退款失败为空


错误码

operationCode

不为空

1000

错误内容

errorMsg

如果退款失败,错误详细信息,如果退款成功为空

msg_is_null


Msg
中的参数说明

参数

参数名称

样例

platformId

商户号,原样返回

2008122815PT00000025   

platformRefundId

平台交易流水号 ,原样返回

TKCP00000001

platformTradeId

平台交易流水号 ,原样返回

2012070317CP00000001   

platformTradeTime

钱包交易时间 精确到秒,格式yyyyMMddHHmmss

20120807000000

refundAmount

本次退款金额 
  
精确到分

0.01

trueAmount

实际支付金额 
  
精确到分

0.00

orderAmount

原订单金额 
  
精确到分

0.01

refundTime

交易退款时间 精确到秒,格式yyyy-MM-dd HH:mm:ss 

20120807 00:00:00

 

返回示例(msgURL Encode前的XML

成功返回示例:

<?xml versi"1.0" encoding="utf-8" standal"yes"?> 
<epay>

<msg>PD94bWwgdmVyc2l</msg> 
<sign>Y1tn97FXldNeUs3</sign> 
<operationCode>0000</ operationCode> 
<errorMsg></errorMsg> 

</epay>

失败返回格式:

<?xml versi"1.0" encoding=" utf-8" ?> 
<epay>

<msg> </msg> 
<sign> </sign> 
<operationCode>1000</ operationCode> 
<errorMsg>MSG_IS_NULL</errorMsg>

</epay> 

对msg进行Base64.decode(msg)后的报文形式:

<?xml versi"1.0" encoding="utf-8" standal"yes"?> 
<epay>

<platformRefundId>TK20121129</platformRefundId> 
<platformTradeId>2012112911POD24939774</platformTradeId> 
<platformTradeTime>20121129114856</platformTradeTime> 
<platformId>2009061117PT25762148</platformId> 
<refundAmount>1.99</refundAmount> 
<trueAmount>1.99</trueAmount> 
<orderAmount>2.00</orderAmount> 
<refundTime>20121129150116</refundTime>

</epay> 

返回示例(JSON返回格式)

成功返回格式:

{"msg":"PD94bWwgdmVyc2l","sign":"Y1tn97FXldNeUs3","operationCode":"0000","errorMsg":""} 

对msg进行Base64.decode(msg)后的报文形式:

{"platformRefundId":"TK20121129","platformTradeId":"2012112911POD24939774","platformTradeTime":"20121129114856","platformId":"2009061117PT25762148","refundAmount":"1.99","trueAmount":"1.99","orderAmount":"2.00"} 

错误返回格式:

{"msg":"","sign":"","operationCode":"2000","errorMsg":"SYSTEM_ERROR"}


错误码

代号

解析

0000

成功

1000

msg参数为空

1001

msgType参数为空

1002

sign参数为空

1003

action为空

1004

version参数为空

1005

signType参数为空

1006

platform _id参数为空

1007

platform_trade_id参数为空

1008

platform_trade_date参数为空

1009

encoding参数为空

1010

订单时间为空

1011

开始时间为空

1012

交易状态为空

1013

PageNo为空

1014

platform_refund_id参数为空

1015

goods_name参数为空

1016

trade_amount参数为空

1017

platform_trade_time参数为空

1018

logistics_type参数为空

1019

order_id参数为空

1020

货币种类参数为空

1021

交易类型参数为空

1022

PLATFORM_PAY_TIME参数为空

1023

SELLER_ID参数为空

1024

SELLER_NICK_NAME参数为空

1025

BUYER_NICK_NAME参数为空

1026

NOTIFY_URL参数为空

1027

GOODS_URL参数为空

2000

系统异常

3000

MSG非法

3001

msg_type不支持

3002

ACTION不支持

3003

VERSION非法

3004

SIGNTYPE非法

3005

ENCODING不支持

3006

交易状态非法

3007

platform_trade_date非法

3008

pageNo非法

3009

开始时间非法

3010

结束时间非法

3011

退款金额非法

3012

退款手续费金额非法

3013

原路退回参数非法

3014

交易金额非法

3015

logistics_type非法

3016

货币种类参数非法

3017

交易种类参数非法

3018

PLATFORM_PAY_TIME非法

3019

BUYER_NICK_NAME非法

3020

TIME_OUT_IS_ILLEGAL非法

3021

GOODS_URL_IS_ILLEGAL非法

3022

PLATFORM_PRIVATE_FIELD非法

3023

SELLER_ID非法

3024

SELLER_NICK_NAME非法

3025

PLATFORM_TRADE_URL非法

3026

PLATFORM_TRADE_ID非法

3027

NOTIFY_URL非法

3028

商品名非法

3029

网易支付订单号非法

3030

商户退款ID非法

3065

platformTradeDate超过一年的订单不允许退款

4000

订单不存在

4001

开始时间、结束时间不能超过一天

4002

platform_id在网易支付不存在

4003

商户没有该权限

4004

商户IP没有该权限

4005

商户提交订单已经支付

4006

验证签名

4007

商户不存在

4008

商户没有设置费率

4009

订单不是本商户提交的

4010

订单URL已经过期

4011

商户提交订单已经关闭

4012

商户提交订单重复

4013

文件夹创建失败

4014

交易状态不合法

4015

该交易的退款不能原路退回

4016

申请退款的手续费大于订单支付时的手续费

4017

退款记录不存在

4018

该商户退款不退还手续费

4019

账户明细不存在

4020

账户余额不足

4021

传入的bankcode不支持

4022

卖家账户必须是平台账户

4023

卖家账户不能是平台账户

4024

退款订单号已经存在

4025

没有对应成功的充值记录

4026

没有充值记录

4039

账户异常

4081

该交易的退款不能退款到余额