美文网首页
微信分账

微信分账

作者: 昵称违规 | 来源:发表于2019-08-15 18:01 被阅读0次

最近,微信分账终于更新了微信开发文档,普通商户和服务商都可以分账,微信现在文档还是比较全了,没那么坑了,认真通读文档,开发起来没什么压力。

简单说下微信分账的意思,用户发起一笔微信支付,这笔订单可以标记为分账订单,前提是要在商户后台添加微信分账功能,配置分账比例,通知等。分账前,要先添加分账接收方,添加一次,后续没变化,可以不添加,但是微信好像没提供查询分账接收方列表功能,然后就可以一步一步按文档分账。

这里我想简单说下分账我遇到的问题,

分账接口需要证书,证书路径是个问题,这里借鉴此方法证书路径问题,然后就是带证书post请求方法,这里贴一个自己网上找的ssl方法

/**

* SSL代码

*/

public static StringpostSSL(String url, String data, String certPath, String certPass) {

try {

KeyStore clientStore = KeyStore.getInstance("PKCS12");

        // 读取本机存放的PKCS12证书文件

        FileInputStream inputStream =new FileInputStream(certPath);

        try {

// 指定PKCS12的密码(商户ID)

            clientStore.load(inputStream, certPass.toCharArray());

        }finally {

inputStream.close();

        }

SSLContext sslcontext = SSLContexts.custom().loadKeyMaterial(clientStore, certPass.toCharArray()).build();

        // 指定TLS版本

        SSLConnectionSocketFactory sslsf =new SSLConnectionSocketFactory(sslcontext, new String[]{"TLSv1"}, null,

                SSLConnectionSocketFactory.getDefaultHostnameVerifier());

        // 设置httpclient的SSLSocketFactory

        CloseableHttpClient httpclient = HttpClients.custom().setSSLSocketFactory(sslsf).build();

        try {

HttpPost httpost =new HttpPost(url); // 设置响应头信息

            httpost.addHeader("Connection", "keep-alive");

            httpost.addHeader("Accept", "*/*");

            httpost.addHeader("Content-Type", "*");

            httpost.addHeader("X-Requested-With", "XMLHttpRequest");

            httpost.addHeader("Cache-Control", "max-age=0");

            httpost.addHeader("User-Agent", "*");

            httpost.setEntity(new StringEntity(data, "UTF-8"));

            CloseableHttpResponse response = httpclient.execute(httpost);

            try {

HttpEntity entity = response.getEntity();

                String jsonStr = EntityUtils.toString(response.getEntity(), "UTF-8");

                EntityUtils.consume(entity);

                return jsonStr;

            }finally {

response.close();

            }

}finally {

httpclient.close();

        }

}catch (Exception e) {

log.error("", e);

        throw new RuntimeException(e);

    }

}

可能要到httpclient 包。

微信开发建议用wxjava大牛开发的工具包比较全,目前好像还没加入分账功能,毕竟微信也没开放多久。推荐lombok和国产工具包hutool

后续有什么问题再更新。

相关文章

  • 电商-微信分账

    微信分账 使用场景 分账流程 分账金额=(订单支付金额-微信手续费)*分账比例(服务商:max=100%,普通的商...

  • 微信分账

    最近,微信分账终于更新了微信开发文档,普通商户和服务商都可以分账,微信现在文档还是比较全了,没那么坑了,认真通读文...

  • 微信支付如何做分账?

    01什么是微信分账? 微信分账的推出主要有三个方面的原因: ①市场方面: 在现有环境下,电商平台或者多级分销、加盟...

  • 微信支付分账

    微信分账的推出主要有三个方面的原因: ①市场方面: 在现有环境下,电商平台或者多级分销、加盟代理模式,订单参与方较...

  • 微信活动页开发中的遇到的坑

    1、微信网页登录,关于切换微信账户区分账户信息的cookie与localStorage 存储在localStora...

  • 微信商家分账API

    普通商户官方文档:https://pay.weixin.qq.com/wiki/doc/api/allocatio...

  • 微信分账(服务商-Native扫码分账)

    官方文档:https://pay.weixin.qq.com/wiki/doc/api/allocation_sl...

  • 微信支付分账功能分析

    在电商平台和商户服务商ISV(俗称四方支付或者行业软件开发商)出现后,如何为商户解决资金的分账,这是一个老生常谈的...

  • 微信支付资金分账功能分析

    在电商平台和商户服务商ISV(俗称四方支付或者行业软件开发商)出现后,如何为商户解决资金的分账,这是一个老生常谈的...

  • 【转载】微信支付分账功能怎么实现?

    现有的流程是用户支付到公司公众账号,公众账号T+1自动提现到公司对公账户。比如有供应商A、零售商B、平台C,100...

网友评论

      本文标题:微信分账

      本文链接:https://www.haomeiwen.com/subject/usctsctx.html