zoukankan      html  css  js  c++  java
  • 微信支付-JSAPI支付V3-下载对账单

    接口链接

    https://api.mch.weixin.qq.com/pay/downloadbill

    是否需要证书

    不需要。

    请求参数

    字段名

    变量名

    必填

    类型

    示例值

    描述

    公众账号ID

    appid

    String(32)

    wx8888888888888888

    微信分配的公众账号ID

    商户号

    mch_id

    String(32)

    1900000109

    微信支付分配的商户号

    设备号

    device_info

    String(32)

    013467007045764

    微信支付分配的终端设备号,填写此字段,只下载该设备号的对账单

    随机字符串

    nonce_str

    String(32)

    5K8264ILTKCH16CQ2502SI8ZNMTM67VS

    随机字符串,不长于32位。推荐随机数生成算法

    签名

    sign

    String(32)

    C380BEC2BFD727A4B6845133519F3AD6

    签名,详见签名生成算法

    对账单日期

    bill_date

    String(8)

    20140603

    下载对账单的日期,格式:20140603

    账单类型

    bill_type

    String(8)

    ALL

    ALL,返回当日所有订单信息,默认值

    SUCCESS,返回当日成功支付的订单

    REFUND,返回当日退款订单

    REVOKED,已撤销的订单

    后台代码:

      /// <summary>
            /// 下载对账单
            /// </summary>
            /// <param name="trade"></param>
            /// <returns></returns>
            public JsonResult DownloadBill(TRADE_Model trade)
            {
    
                string nonceStr = Senparc.Weixin.MP.TenPayLibV3.TenPayV3Util.GetNoncestr();
    
                Senparc.Weixin.MP.TenPayLibV3.RequestHandler packageReqHandler = new Senparc.Weixin.MP.TenPayLibV3.RequestHandler(null);
    
                packageReqHandler.SetKey(Key);
    
                packageReqHandler.SetParameter("appid", AppId);
                packageReqHandler.SetParameter("mch_id", MchId);
                packageReqHandler.SetParameter("nonce_str", nonceStr);
                packageReqHandler.SetParameter("bill_date", "20150505");//下载对账单的日期,格式:20140603
                
                //ALL,返回当日所有订单信息,默认值
                //SUCCESS,返回当日成功支付的订单
                //REFUND,返回当日退款订单
                //REVOKED,已撤销的订单
                packageReqHandler.SetParameter("bill_type","ALL");//账单类型
                
                string querysign = packageReqHandler.CreateMd5Sign("key", Key);
    
                packageReqHandler.SetParameter("sign", querysign);                        //签名
                    
                string data = packageReqHandler.ParseXML();
    
                var result = Senparc.Weixin.MP.AdvancedAPIs.TenPayV3.RefundQuery(data);
                var res = System.Xml.Linq.XDocument.Parse(result);
    
                //对账单的返回参数:
                //ALL:    交易时间,公众账号ID,商户号,子商户号,设备号,微信订单号,商户订单号,用户标识,交易类型,交易状态,付款银行,货币种类,总金额,代金券或立减优惠金额,微信退款单号,商户退款单号,退款金额, 代金券或立减优惠退款金额,退款类型,退款状态,商品名称,商户数据包,手续费,费率
                //SUCCESS:交易时间,公众账号ID,商户号,子商户号,设备号,微信订单号,商户订单号,用户标识,交易类型,交易状态,付款银行,货币种类,总金额, 代金券或立减优惠金额,商品名称,商户数据包,手续费,费率
                //REFUND: 交易时间,公众账号ID,商户号,子商户号,设备号,微信订单号,商户订单号,用户标识,交易类型,交易状态,付款银行,货币种类,总金额, 代金券或立减优惠金额,退款申请时间,退款成功时间,微信退款单号,商户退款单号,退款金额, 代金券或立减优惠退款金额,退款类型,退款状态,商品名称,商户数据包,手续费,费率
                
                Hashtable hashtable = new Hashtable();
    
    
                return Json(hashtable);
            }
  • 相关阅读:
    【自然框架】 之 资源角色——列表过滤方案(思路篇)
    【自然框架】 之 主从表的添加、修改
    今天你进步了吗?
    【自然框架】通用权限的视频演示(一):添加角色,权限到功能节点和按钮
    【杂谈】您是以什么姿态来参与讨论、回帖的?
    【自然框架】之通用权限:用PowerDesigner重新设计了一下数据库,有ER图和表关系图
    【自然框架】 页面里的父类—— 改进和想法、解释
    页面里的父类——BaseUI源代码下载(2009.10.15更新)
    【自然框架】 页面里的父类——把共用的东东都交给父类,让子类专注于其他。
    【自然框架】之通用权限:数据库设计的几种使用方式
  • 原文地址:https://www.cnblogs.com/rockchen/p/4479044.html
Copyright © 2011-2022 走看看