wss1051 发表于 2017-12-30 14:31:21

php调微信支付,支付宝支付

  One:前言:微信支付和支付宝支付pc端和app端是不同的两种形式,以下是我整理的demo,大家可以下载:
  Two:下载:
  1>微信pc:http://www.taikongliu.com/pay/example/WxpayAPI_php_v3.zip
  (也可以在微信支付平台/开发者文档/扫码支付下载sdk包)
  2>支付宝pc:http://www.taikongliu.com/pay/example/pc_ali.zip
  (也可以在:https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.iUPkW7&treeId=203&        articleId=105910&docType=1)
  3>微信和支付宝app:http://www.taikongliu.com/pay/example/pay_app.zip
  (https://github.com/dcloudio/H5P.Server/tree/master/payment/alipay)
  Three:微信开放平台和微信公众平台的区别和作用:
  1>微信开放平台:主要面向App开发者,通常是拥有成熟的应用程序之后,通过开放平台将内容分享至朋友圈或发送给某个微    信好友/群聊
  2>信公众平台:强调信息流,向微博一样主要推送内容,像10086一样根据用户发来的消息进行智能回复或后台实现某些功    能
  Four:微信支付(微信开放平台):
  使用微信支付功能需到微信开放平台申请移动应用并开通支付功能
  微信APP支付接入商户服务中心
  申请应用后可以获取AppID和AppSecret值。
  开通支付功能后可获取支付业务服务器配置数据
  PARTNER:财付通商户号
  PARTNER_KEY:财付通密钥s
  PAYSIGNKEY:支付签名密钥
  1》微信pc:
  1>下载下demo后,在lib/WxPay.Config.php中配置
  const APPID = ‘绑定支付的APPID’
  const MCHID = 商户号
  const KEY = '商户支付密钥,参考开户邮件设置';
  const APPSECRET = 公众帐号secert
  cert/文件下把加密的证书进行全部换掉
  2>访问example/native.php,把订单号,金额,同步回掉地址,异步回调等支付信息配置好,就可以生成一张漂亮的二维      码啦!
  3>支付成功,在异步回掉接到回掉的订单号等各种微信支付成功的信息,然后进行写上自己的业务逻辑
  4>最后记得一定要在异步回掉写上日志,记录交易是否成功等记录
  2》微信app:(建议下载Hbuilder调试app端)
  1>下载下demo后,在wapay/index.php中配置
  2>财付通商户号
  $PARTNER = "%商户号(PartnerID)%";
  $PARTNER_KEY = 财付通密钥
  $APP_ID="appid;
  $APP_SECRET= 公众帐号secert
  $PaySignKey="签名;
  $notify_url = "支付完成后的异步回调处理页面";
  3>配置号这些信息之后,通过jsonp请求发送需要的订单号(唯一的),每次用这些订单号查询出商品的价格,名称,商品详    情,等这些信息,有了这些信息之后,demo会自定调起微信支付!
  4>支付成功,在异步回掉接到回掉的订单号等各种微信支付成功的信息,然后进行写上自己的业务逻辑
  5>最后记得一定要在异步回掉写上日志,记录交易是否成功等记录
  Five:支付宝支付(蚂蚁金服)
  1》首先是申请(企业账户认证,需要准备以下资料):
  1>营业执照
  2>申请人有效身份证信息
  3>提交申请人企业委托授权书
  4>银行对公账户
  2》申请流程:(蚂蚁金服:https://cshall.alipay.com/enterprise/index.htm)
  1>注册账户
  2>实名认证
  3>签约申请-(后申请签约手机支付)
  https://b.alipay.com/order/productDetail.htm?productId=2013080604609688
  4>通过审核,技术集成
  3》审核通过后需要提过接入的PID/KEY
  1>合作者身份Id(partner)和交易安全效验码(key)是商户与支付宝签约后,商户获得的支付宝商户唯一识别码与密钥
  ,当商户把支付宝功能接入商户网站时会用到它们,以便让支付宝认证商户。
  2>登陆支付宝官网(www.alipay.com)
  3>点击导航栏中(“商家服务”)
  4>点击查询(PID,KEY),即可查询到合作者身份ID,以2008开头的16位纯数字
  5>输入支付密码,查询key
  pc支付:
  1>下载demo后,在alipay.config.php中配置
  $alipay_config['partner']= 合作身份者ID,签约账号,以2088开头由16位纯数字组成的字符串,
  $alipay_config['key']= 'MD5密钥,安全检验码,由数字和字母组成的32位字符串';
  $alipay_config['notify_url'] = "http://商户网址/create_direct_pay_by_user-PHP-UTF-8/notify_url.php";    //     服务器异步通知页面路径
  $alipay_config['return_url'] = "http://www.month11.com/pay/alipay2/return_url.php";      //同步回掉路径
  2>在alipayapi.php中配置
  $out_trade_no = $_POST['WIDout_trade_no'];         //商户订单号,商户网站订单系统中唯一订单号,必填
  $subject = $_POST['WIDsubject'];            //订单名称,必填
  $total_fee = $_POST['WIDtotal_fee'];         //付款金额,必填
  $body = $_POST['WIDbody'];         //商品描述,可空
  3>配置好之后访问到alipayapi.php,就会生成很漂亮的二维码
  4>支付成功,在异步回掉接到回掉的订单号等各种微信支付成功的信息,然后进行写上自己的业务逻辑
  5>最后记得一定要在异步回掉写上日志,记录交易是否成功等记录
  app支付:
  1>下载demo后,在index.php中配置//
  $priKey = "-----BEGIN RSA PRIVATE KEY-----生成密钥时获取的私钥字符串,直接使用pem文件的完整字符串        -----END   RSA PRIVATE KEY-----";
  $partner = "%支付宝PartnerID%";    //支付宝合作者身份ID,以2088开头的16位纯数字
  $seller_id = '%支付宝账号,通常为邮箱地址%';      // 支付宝账号
  $base_path = urlencode('http://101.***4***38/moblie/index.html');    //同步回掉
  $notify_url = urlencode('http://www.t******tify_url.php');    // 异步通知地址
  $subject = '***';
  $body = '*****';    // 订单详情
  $out_trade_no = date('YmdHis', time());   // 订单号,示例代码使用时间值作为唯一的订单ID号
  2>配置好这些之后,在通过jsonp传递订单号,支付宝就会调起支付宝支付
  3>支付成功,在异步回掉接到回掉的订单号等各种微信支付成功的信息,然后进行写上自己的业务逻辑
  4>最后记得一定要在异步回掉写上日志,记录交易是否成功等记录
  注意:所有的异步回调地址,必须写日志或者信息入库,为了防止用户偷单,还要判断用户支付的金额是否和该商品的价格相同
  如果不一致,则订单状态不改变
  six:complete!
页: [1]
查看完整版本: php调微信支付,支付宝支付