一. 开发前的准备
二. 支付宝支付流程
安装支付宝支付流程
- 用户在商家App中选择商品下单、确认购买,进入支付环节,选择支付宝,用户点击确认支付;
- 进入到支付宝页面,调起支付宝支付,出现确认支付界面;
- 用户确认收款方和金额,点击立即支付后出现输入密码界面;
- 输入正确密码后,支付宝端显示支付结果;
- 自动回跳到商家App中,商家根据付款结果个性化展示订单处理结果。
用户未安装支付宝支付流程
- 用户在商家App中选择商品下单、确认购买,进入支付环节,选择支付宝,用户点击确认支付;
- 用户未安装支付宝客户端,则调起支付宝网页支付收银台,用户登录支付宝账户;
- 登录成功后,进入确认付款页面;
- 用户点击确认付款,进入支付密码页面;
- 用户输入密码,完成支付,展示支付结果。
- 系统交互流程:
三. App支付iOS集成流程
1. 导入支付宝SDK:
- 通过CocoaPods导入,在工程的Podfile里面添加以下代码:
1 | pod 'AlipaySDK-iOS' |
保存并执行 pod install
- 手动导入SDK
支付宝SDK下载地址 新版本
下载完成后,把下面的文件拷贝到项目文件夹下,导入到项目中,并添加依赖库。
1 | AlipaySDK.bundle |
选择你的工程设置项,选中“TARGETS”一栏,在“Build Phases”标签栏的“Link Binary With Libraries“添加以下依赖库:
关于设置URL Types在上篇文章微信支付有写传送门。
到此,项目集成SDK完成下面进入代码环节。
2. 代码
代码仅供参考 有所删减
- 在调用支付宝之前需要创建订单创建订单成功后后台会把调用支付宝的参数返回,如密码APPID等,目前新版是,拿到后台的返回数据后只需全部给支付宝就OK,同时还需要把Scheme传给支付宝。
- 注意点:支付宝的调用接口有一个支付回调,只有网页支付才会触发,APP走appdelegate。
1 | //点击支付调的方法其中有微信支付 |
- 支付回调 使用支付宝APP才会走的回调
1 | - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { |
- 支付宝resultStatus结果码含义
返回码 | 含义 |
---|---|
9000 | 订单支付成功 |
8000 | 正在处理中,支付结果未知(有可能已经支付成功),请查询商户订单列表中订单的支付状态 |
4000 | 订单支付失败 |
5000 | 重复请求 |
6001 | 用户中途取消 |
6002 | 网络连接出错 |
6004 | 支付结果未知(有可能已经支付成功),请查询商户订单列表中订单的支付状态 |
其它 | 其它支付错误 |
关于处理支付结果根据需求来写,这里就不写了。