最近有个项目用到了 以上3种支付,项目完了,对于支付一点心得,做个笔记。
项目模式: app(android,ios)+后台管理(java)
1.支付宝支付
核心类图如下:
支付流程:app下单--》java后台返回支付宝所需信息(回调地址,订单号,金额)--》app请求支付宝支付请求(同时把回调地址,订单号,金额)传给支付宝)-->支付宝处理app请求并轮询回调java后台的回调地址-->java后台接受支付宝回调信息(如:订单号 out_trade_no),并更新订单支付状态(如支付成功,或失败)
2. 银联支付
核心类图如下:
支付流程:app下单->>java后台拿到订单信息(订单号,金额)--》后台直接请求银联支付-->银联处理成功,返回银联流水号-->后台拿到这个流水号(再加上银联回掉函数)-->返回给app端--》app端 请求银联做真正支付-->银联支付之后-->回调java后台url(告诉你银联直接是否成功)-->java后台接收到银联支付返回的成功支付状态(respCode)及原始订单号(orderId下单的时候, 生成的订单号)之后,更新订单支付状态。
注意:银联 支付金额 为分 不是元,支付金额要把元转换成分且不能带有小数点(切记 如:100.00 这样支付会报错)
3. 微信支付
支付流程和支付宝一样
注意:支付demo 和参数说明 各官方网站上都有 一定得仔细查看!