php支付宝H5支付

业务场景:需要在手机端H5使用支付宝的支付!

一共分为六步完成!

第一步:

1:开通支付宝商户,支付宝开放平台地址放在这里了。

2:商户开通以后,开通产品里的支付宝手机支付项目

3:下载支付宝开放平台密钥工具

按照步骤:

第二步:

上传到支付宝平台,平台上有提示位置!自己找一下!

到目前我们就获取到了3个密钥!

应用共钥:xxx

应用私钥:xxx

支付宝共钥:应用共钥到支付宝平台更换的

第三步:

下载支付宝提供的支付sdk,我使用的是这个支付宝提供的php-sdk,小程序文档 - 支付宝文档中心

下载好以后,预埋到我的代码里,选择手机demo!

引入支付宝sdk

//引用

require_once root_path().'extend/aop/AopClient.php';
require_once root_path().'extend/aop/request/AlipayTradeAppPayRequest.php';

第四步:

开启逻辑

        $content = array();
        $content['subject']      = '手机支付';                 // 商品标题
        $content['body']         = '手机支付';  // 商品描述 非必须
        $content['out_trade_no'] = ;         // 订单号
        $content['total_amount'] = ;       // 要求必须为浮点型,订单金额
        $content['product_code'] = "FAST_INSTANT_TRADE_PAY";            //销售产品码,固定值
        $con                     = json_encode($content);  

        $Client               = new \AopClient();                 //实例化支付宝sdk里面的AopClient类,下单时需要的操作,都在这个类里面
        $param                = array();
        $param['app_id']      = ;         //支付宝分配给开发者的应用ID
        $param['method']      = 'alipay.trade.wap.pay';         //接口名称
        $param['charset']     = "UTF-8";       //请求使用的编码格式
        $param['sign_type']   = "RSA2";   //商户生成签名字符串所使用的签名算法类型
        $param['timestamp']   = date("Y-m-d H:i:s");   //发送请求的时间
        $param['version']     = '1.0';       //调用的接口版本,固定为:1.0
        $param['notify_url']  = 异步通知地址; //支付宝服务器主动通知地址
        $param['return_url']  = 支付完成后跳转你的网址; //支付宝服务器主动通知地址
        $param['biz_content'] = $con;              //业务请求参数的集合,长度不限,json格式
        $paramStr             = $Client->getSignContent($param);//组装请求签名参数  到此步目前没有问题
        $sign                 = $Client->alonersaSign($paramStr,这里填写你的私钥, 'RSA2'); //生成签名
        $param['sign']        = $sign;
        $str                  = $Client->getSignContentUrlencode($param);       //最终请求参数
        return $this->alipayConfig['gatewayUrl'].'?'.$str;

第五步:

异步回调  -再第四步:     $param['notify_url']  = 异步通知地址; //支付宝服务器主动通知地址

会从你填写这个地址,异步给你通知,当用户支付完成后,参数主要有:$content['out_trade_no'] 你提供过去的订单编号可以做逻辑判断!!!

第六步:

同步回调  -再第四步:     $param['return_url']  = 同步通知地址; 

会从你填写这个地址,同步给你通知,当用户支付完成后,参数主要有:$content['out_trade_no'] 你提供过去的订单编号可以做逻辑判断!!!

这里的逻辑:同步跳转回来,给你带上 $content['out_trade_no']  参数,你自己写页面请求你的订单状态,(订单状态,是第五步,异步里改变的状态!),就可以再同步里做判断了!

好了到这里,逻辑就完成了,退款等,也是一样道理了,按照这个逻辑就可以正常完成!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值