zoukankan      html  css  js  c++  java
  • 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!

  • 相关阅读:
    CAD开发中遇到的疑难问题整理与开发技巧
    使用jquery插件jquery.qrcode生成二维码
    小程序 跳转页面
    【已解决】Intel NUC10 拔插USB口/登录QQ/蓝牙连接等导致显示器黑屏
    element-ui表格el-table回显时默认全选数据
    设计模式
    react lib-flexible postcss-px2rem集成
    odoo 接口请求原理
    odoo 更改返回的json 格式
    git 合并两个仓库
  • 原文地址:https://www.cnblogs.com/taikongliu/p/6689760.html
Copyright © 2011-2022 走看看