服务热线 400-660-8066

苏州网站建设
首页 站内资讯

苏州网站建设

站内资讯
苏州网站建设 / 站内资讯 / 行业资讯 / 正文

php实现微信中的企业付款到零钱的完整教程

来源: All文章
发布时间:2023-03-28 15:00:53

  如果需要转账到用户的零钱里,需要先获取用户的open_id,也就是在公众号里登录过并保存的open_id,然后就可以实现企业付款到零钱的功能了,以下是代码详解:

  publicfunctionindex(){

  $transfer['payment_id']='202303221552123458';//订单号,可以自定义,但不能重复使用

  $transfer['open_id']=session('login_weixin');//用户的open_id

  $transfer['real_name']='张三';//用户的真实姓名

  $transfer['amount']=0.3;//要付款的金额;

  $this-dotransfer($transfer);//调用接口

  }

  /*

  *付款给用户的接口(直接调用即可完成付款)

  **/

  publicfunctiondotransfer($transfer,$msg=''){

  $url=https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers;

  $parameters=array(

  'mch_appid'=C('APPID'),//绑定支付的APPID

  'mchid'=C('MCHID'),//商户号

  'nonce_str'=$this-create_noncestr(32),//生成32位的随机字符串,见图1

  'partner_trade_no'=$transfer['payment_id'],//商户订单号,不能重复使用

  'openid'=$transfer['open_id'],//用户的open_id

  'check_name'='OPTION_CHECK',//是否检查姓名

  're_user_name'=$transfer['real_name'],//真实姓名

  'amount'=bcmul($transfer['amount'],100,0),//企业付款金额,单位为分最低1元

  'desc'='分销',//备注

  'spbill_create_ip'=strval($_SERVER['SERVER_ADDR']),//服务器I

  );

  $parameters['sign']=$this-getSign($parameters,C('KEY'));//getSign函数见图2,C('KEY'):商户支付密钥

  $xml=$this-arrayToXml($parameters);//函数见图3

  $response=$this-postXmlCurl($xml,$url,true);//函数见图4

  $result=$this-xmlToArray($response);//函数见图片5

  if($result['return_code']=='SUCCESS'){

  if($result['result_code']=='SUCCESS'){

  $this-success($transfer['payment_id'].'=payment_id付款成功');

  returntrue;

  }else{

  $this-error($result['err_code_des'].'付款失败');

  returnfalse;

  }

  }else{

  $this-error('付款失败,微信接口出现异常');

  returnfalse;

  }

  }

* 文章来源于网络,如有侵权,请联系客服删除处理。
在线 咨询

添加动力小姐姐微信

微信 咨询

电话咨询

400-660-8066

我们联系您

电话 咨询
微信扫码关注动力小姐姐 X
qr