美團外賣的支付流程比較安全,全部流程在服務器完成。
App端選擇商店後進入RestaurantActivity,此時從服務器拉下該商店的所有商品及附加信息。此時將菜品加入購物車全部在app端完成。
完成後提交訂單進入OrderConfirmActivity,將各商品的id發到服務器,生成訂單和價格,服務器返回訂單id及詳細信息。此時選擇紅包等優惠後,發送紅包id到服務器,服務器重新計算訂單信息,並返回相關信息
點擊結算時進入PayActivity,先根據訂單id去服務器拉下支付信息,支付商家,支付金額,支付方式等等,用戶選擇對應支付方式後,
如果選擇支付寶支付,同樣發送訂單id到服務器,服務器生成支付的url,支付完成後回調的url,並用美團的支付寶私鑰簽名url,附加在url的末尾,返回給App,App使用簽名後的url調用支付寶SDK的PayTask.pay(url),拉起支付寶由用戶支付。
支付完成後,由支付寶回調提供的回調url,在服務器端完成訂單支付。
最後由App端調用notify接口去服務器獲取訂單支付的狀態。