APP支付宝支付

现在APP软件越来越多,涉及到支付的也越来越多,所以今天帮我之前写的APP在线支付的思路和大家分享一下,如果有不准确的地方请指教。

第一步:申请一个公司账户的支付宝账号,当申请成功后,你就可以完成网页支付了,但是我们要在 APP上面使用还是不可以的。我们需要申请允许进行APP支付,然后创建应用并获取APPID。具体参考支付宝文档https://docs.open.alipay.com/204/;【注意新版本好像新申请的账号不可以用,具体可以咨询一下客服】

第二步:说说他的支付流程,移动端发起支付请求【可以进行是否可以支付的条件判断】, 后台进行加密处理; 然后就输入密码(这个就已经是支付宝的操作了);等待(1、放弃支付-app直接进行处理;2、支付成功支付宝同步通知APP,异步通知后台);然后就结束支付了。
流程图:这里写图片描述

第三步:身为一个phper我们就直接下载一个服务器端的sdk,sdk下载地址https://docs.open.alipay.com/54/106370/ 把它下载下来,放在该放的地方,我们需要调用他的函数;

PHP服务端SDK生成APP支付订单信息示例

$aop = new AopClient;
$aop->gatewayUrl = "https://openapi.alipay.com/gateway.do";
$aop->appId = "app_id";
$aop->rsaPrivateKey = '请填写开发者私钥去头去尾去回车,一行字符串';
$aop->format = "json";
$aop->charset = "UTF-8";
$aop->signType = "RSA2";
$aop->alipayrsaPublicKey = '请填写支付宝公钥,一行字符串';
//实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
$request = new AlipayTradeAppPayRequest();
//SDK已经封装掉了公共参数,这里只需要传入业务参数
$bizcontent = "{\"body\":\"我是测试数据\"," 
            . "\"subject\": \"App支付测试\","
            . "\"out_trade_no\": \"20170125test01\","
            . "\"timeout_express\": \"30m\"," 
            . "\"total_amount\": \"0.01\","
            . "\"product_code\":\"QUICK_MSECURITY_PAY\""
            . "}";
$request->setNotifyUrl("商户外网可以访问的异步地址");
$request->setBizContent($bizcontent);
//这里和普通的接口调用不同,使用的是sdkExecute
$response = $aop->sdkExecute($request);
//htmlspecialchars是为了输出到页面时防止被浏览器将关键参数html转义,实际打印到日志以及http传输不会有这个问题
echo htmlspecialchars($response);//就是orderString 可以直接给客户端请求,无需再做处理。

PHP服务端验证异步通知信息参数示例

$aop = new AopClient;
$aop->alipayrsaPublicKey = '请填写支付宝公钥,一行字符串';
$flag = $aop->rsaCheckV1($_POST, NULL, "RSA2");

如果可以唤起支付,那么就成功了,在异步通知里面进行支付状态的修改支付就结束了【建议可以先不把他放到你的应用程序里面,直接试,当成功后再放应用程序,就可以排除一些错误】;
写的不好,请多指教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值