using System; using System.Collections.Generic; using System.Text; namespace Edu.Common.WeChatPayAPIv3.Model.RefundsCallback { public class RefundsCallbackDecryptModel { /// <summary> /// 直连商户的商户号,由微信支付生成并下发。 /// </summary> public string mchid { set; get; } /// <summary> /// 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一 /// 原支付交易对应的商户订单号 /// </summary> public string out_trade_no { set; get; } /// <summary> /// 微信支付交易订单号。 /// </summary> public string transaction_id { set; get; } /// <summary> /// 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母_-|*@ ,同一退款单号多次请求只退一笔。 /// 示例值:1217752501201407033233368018 /// </summary> public string out_refund_no { set; get; } /// <summary> /// 微信支付退款号。 /// </summary> public string refund_id { set; get; } /// <summary> /// 退款状态,枚举值: /// SUCCESS:退款成功 /// CLOSED:退款关闭 /// ABNORMAL:退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往【服务商平台—>交易中心】,手动处理此笔退款 /// </summary> public string refund_status { set; get; } /// <summary> /// 退款成功时间,当退款状态为退款成功时有返回。遵循rfc3339标准格式,格式为YYYY-MM-DDTHH:mm:ss+TIMEZONE,YYYY-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日13点29分35秒 /// </summary> public string success_time { set; get; } /// <summary> /// 取当前退款单的退款入账方,有以下几种情况: /// 1)退回银行卡:{银行名称}{卡类型}{ 卡尾号} /// 2)退回支付用户零钱:支付用户零钱 /// 3)退还商户:商户基本账户商户结算银行账户 /// 4)退回支付用户零钱通:支付用户零钱通。 /// </summary> public string user_received_account { set; get; } /// <summary> /// 金额信息 /// </summary> public RefundsCallbackRespAmountModel amount { set; get; } } /// <summary> /// 退款订单金额信息。 /// </summary> public class RefundsCallbackRespAmountModel { /// <summary> /// 原支付交易的订单总金额,币种的最小单位,只能为整数。 /// </summary> public int total { set; get; } /// <summary> /// 退款金额,币种的最小单位,只能为整数,不能超过原订单支付金额,如果有使用券,后台会按比例退。 /// </summary> public int refund { set; get; } /// <summary> /// 现金支付金额,单位为分,只能为整数。 /// </summary> public int payer_total { set; get; } /// <summary> /// 退款给用户的金额,不包含所有优惠券金额。 /// </summary> public int payer_refund { set; get; } } }