Ping++和BeeCloud的比較

第三方支付集成服務(wù)

隨著越來(lái)越多的移動(dòng)應(yīng)用需要集成支付功能,相比于直接與每個(gè)支付渠道對(duì)接,一些公司提供了第三方支付集成服務(wù),以統(tǒng)一的接口幫助開發(fā)者快速地集成多種不同的支付方式,并提供了穩(wěn)定可靠的云服務(wù)和數(shù)據(jù)管理平臺(tái)。這里將對(duì)其中兩個(gè)主流的產(chǎn)品進(jìn)行比較分析。

優(yōu)勢(shì)

  • 幫助商戶更快地成功申請(qǐng)支付渠道。一般初創(chuàng)公司沒(méi)有對(duì)接支付的經(jīng)驗(yàn),申請(qǐng)商戶號(hào)和相關(guān)的參數(shù)是個(gè)極其麻煩的事情,耗費(fèi)大量的時(shí)間。通過(guò)第三方支付集成服務(wù)商,他們更有經(jīng)驗(yàn),更容易申請(qǐng)到。
  • 幫助開發(fā)者快速接入多種不同的主流支付方式。通過(guò)聚合支付接口,隱藏了不同支付方式的接口差異,提供給開發(fā)者統(tǒng)一的接口和良好的錯(cuò)誤信息。
  • 提供聚合的對(duì)賬查詢的管理平臺(tái),通過(guò)一個(gè)平臺(tái),查看所有不同支付渠道的數(shù)據(jù)。

風(fēng)險(xiǎn)

  • 信息泄露
    • 支付渠道參數(shù)泄露。黑客可能會(huì)利用渠道的代扣接口進(jìn)行惡意代扣或者博彩、洗錢等非法服務(wù),最終導(dǎo)致商家被風(fēng)控系統(tǒng)監(jiān)測(cè),被加入黑名單。出現(xiàn)信息泄露問(wèn)題后,由于商家和第三方支付集成公司都持有支付參數(shù)信息,責(zé)任邊界及損失承擔(dān)方無(wú)法確認(rèn)。
    • 交易數(shù)據(jù)泄露。比如,將交易數(shù)據(jù)泄露給競(jìng)爭(zhēng)對(duì)手。
    • 客戶數(shù)據(jù)泄露。
  • 跟不上商戶業(yè)務(wù)的發(fā)展需求。
    • 直接對(duì)接支付渠道可以及時(shí)得到接口更新的信息(例如安全漏洞),但如果依賴于支付集成服務(wù)商,會(huì)有很多不可控的因素。
    • 商戶的業(yè)務(wù)需求在支付模式上的創(chuàng)新,會(huì)依賴于支付集成服務(wù)提供商的開發(fā)周期,甚至可能無(wú)法被滿足。
  • 支付系統(tǒng)的穩(wěn)定性和安全性。使用支付集成服務(wù)商可能會(huì)產(chǎn)生單點(diǎn)故障。第三方支付在防攻擊、防釣魚、容災(zāi)能力、信息安全等方面的能力一般來(lái)說(shuō)是強(qiáng)于集成服務(wù)提供商的。
  • 資金安全風(fēng)險(xiǎn)。

Ping++ vs. BeeCloud

Ping++ BeeCloud
服務(wù)功能 支付系統(tǒng)
支付渠道申請(qǐng)(15天內(nèi))
管理平臺(tái)
支付系統(tǒng)
支付渠道申請(qǐng)
管理平臺(tái)
支付渠道 支付寶
微信
銀聯(lián)
Visa/MasterCardMasterCard
支付寶
微信
銀聯(lián)
Visa/MasterCardMasterCard
PayPal
支付方式 手機(jī)app(iOS/Android/H5)
PC 網(wǎng)頁(yè)
QR 掃碼
手機(jī)app(iOS/Android/H5)
PC 網(wǎng)頁(yè)
QR 掃碼
支付場(chǎng)景 支付
查詢
退款
紅包
企業(yè)付款
賬戶系統(tǒng)(余額、優(yōu)惠券)
分期支付
支付
查詢
退款
紅包
企業(yè)付款
訂閱支付(定時(shí)自動(dòng)扣款)
秒支付button
接入開發(fā) SDK(Client & Server)
提供Test 和Live 模式
https://github.com/PingPlusPlus
SDK
提供Live 和Sandbox模式
https://github.com/beecloud

集成Ping++

  1. 分別下載服務(wù)端SDK 和客戶端SDK。
  2. 安裝部署服務(wù)端SDK,使用服務(wù)端SDK 請(qǐng)求交易對(duì)象。
  3. 安裝部署客戶端SDK,并請(qǐng)求你的服務(wù)端拿到交易對(duì)象,調(diào)用客戶端SDK 完成支付(此步驟僅限支付交易)。
  4. 配置服務(wù)端Webhooks,接收交易結(jié)果的事件通知。
  5. 根據(jù)具體場(chǎng)景,在指定時(shí)間沒(méi)有獲取Webhooks 通知的前提下,通過(guò)查詢接口獲取交易結(jié)果。

注意:以上步驟適用于Test 和Live 兩種模式。

Ping++ 支付流程
Ping++ 支付流程
  1. 用戶在客戶端選擇商品并提交訂單,客戶端需要向你的服務(wù)端傳遞支付要素。注意:Ping++ SDK 不涉及你的客戶端和你的服務(wù)端之間的數(shù)據(jù)交互,此處請(qǐng)你自定義通信方式。
  2. 服務(wù)端接收到客戶端請(qǐng)求參數(shù),并調(diào)用Server-SDK 封裝的創(chuàng)建支付Charge 的方法請(qǐng)求Ping++ 。
  3. Ping++ 響應(yīng)你的服務(wù)端請(qǐng)求,返回Charge(支付憑據(jù))給你的服務(wù)端。
  4. 你的服務(wù)端響應(yīng)你的客戶端請(qǐng)求,需要將該Charge 對(duì)象完整的返回給你的客戶端。注意:這里的Charge 返回類型必須是JSON 格式。
  5. 客戶端拿到支付憑據(jù) Charge 對(duì)象后,需要調(diào)用 Client-SDK 封裝的方法調(diào)起支付控件,用戶輸入密碼完成支付。
  6. 第三方支付渠道會(huì)直接在客戶端返回支付結(jié)果,此處不要使用客戶端的成功結(jié)果更新訂單的最終狀態(tài)。
  7. 在Ping++ 管理平臺(tái)配置Webhooks 的charge.succeeded 事件。支付完成時(shí),Ping++ 會(huì)主動(dòng)以POST 方式向你配置在管理平臺(tái)上的Webhooks 通知地址發(fā)送支付結(jié)果,服務(wù)端的訂單狀態(tài)請(qǐng)根據(jù)Webhooks 通知更新。

注意:請(qǐng)勿直接使用客戶端支付結(jié)果作為最終判定訂單狀態(tài)的依據(jù),由于Ping++ 沒(méi)有參與你的客戶端和第三方渠道的交互,無(wú)法保證客戶端支付結(jié)果的安全性,建議使用Webhooks 通知的結(jié)果去更新你的訂單狀態(tài)。

Ping++ 退款流程
Ping++ 退款流程

Ping++ 退款Refund 功能只需要服務(wù)端SDK,所以需要你在客戶端為用戶設(shè)計(jì)退款入口。

  1. 服務(wù)端調(diào)用Server-SDK 封裝的發(fā)起退款方法請(qǐng)求Ping++ 。
  2. Ping++ 響應(yīng)你的服務(wù)端請(qǐng)求,返回退款Refund 對(duì)象,請(qǐng)求是否成功可以根據(jù)返回的Refund 中的failure_msg 來(lái)判斷。如果該字段為空則代表退款請(qǐng)求成功,不代表退款已經(jīng)成功到賬。
  3. 在Ping++ 管理平臺(tái)配置Webhooks 的refund.succeeded 事件。退款成功時(shí),Ping++ 會(huì)主動(dòng)以POST 方式向你配置在管理平臺(tái)上的Webhooks 通知地址發(fā)送退款結(jié)果。
  4. 在你服務(wù)端沒(méi)有收到Webhooks 的通知或退款失敗時(shí),你也可以調(diào)用Server-SDK 封裝的查詢方法,主動(dòng)向Ping++ 發(fā)起請(qǐng)求來(lái)獲得退款狀態(tài)。

集成BeeCloud

BeeCloud 移動(dòng)端支付流程
  1. App 端發(fā)送訂單信息。做完這一步之后就會(huì)跳到相應(yīng)的支付頁(yè)面(如微信app 中),讓用戶繼續(xù)后續(xù)的支付步驟。
  2. App 端處理同步回調(diào)結(jié)果。付款完成或取消之后,會(huì)回到客戶app 中,在頁(yè)面中展示支付結(jié)果(比如彈出框告訴用戶“支付成功”或“支付失敗”)。同步回調(diào)結(jié)果只作為界面展示的依據(jù),不能作為訂單的最終支付結(jié)果,最終支付結(jié)果應(yīng)以異步回調(diào)為準(zhǔn)。
  3. 客戶服務(wù)端處理異步回調(diào)結(jié)果(Webhook)。付款完成之后,根據(jù)客戶在BeeCloud 后臺(tái)的設(shè)置,BeeCloud 會(huì)向客戶服務(wù)端發(fā)送一個(gè)Webhook 請(qǐng)求,里面包括了數(shù)字簽名,訂單號(hào),訂單金額等一系列信息??蛻粜枰诜?wù)端依據(jù)規(guī)則要驗(yàn)證數(shù)字簽名是否正確,購(gòu)買的產(chǎn)品與訂單金額是否匹配,這兩個(gè)驗(yàn)證缺一不可。驗(yàn)證結(jié)束后即可開始走支付完成后的邏輯。
BeeCloud 網(wǎng)頁(yè)端支付流程
  1. 網(wǎng)頁(yè)服務(wù)器端發(fā)送訂單信息。
  2. 收到BeeCloud 返回的渠道支付地址(比如支付寶的收銀臺(tái))
    • 微信掃碼返回的內(nèi)容不是和支付寶一樣的一個(gè)有二維碼的頁(yè)面,而是直接給出了微信的二維碼的內(nèi)容,需要用戶自己將微信二維碼輸出成二維碼的圖片展示出來(lái)。
  3. 將支付地址展示給用戶進(jìn)行支付。
  4. 用戶支付完成后通過(guò)一開始發(fā)送的訂單信息中的return_url 來(lái)返回商戶頁(yè)面。
    • 微信沒(méi)有自己的頁(yè)面,二維碼展示在商戶自己的頁(yè)面上,所以沒(méi)有return_url 的概念,需要商戶自行使用一些方法去完成這個(gè)支付完成后的跳轉(zhuǎn)(比如后臺(tái)輪詢查支付結(jié)果)
    • 此時(shí)商戶的網(wǎng)頁(yè)需要做相應(yīng)界面展示的更新(比如告訴用戶“支付成功”或“支付失敗”)。不允許使用同步回調(diào)的結(jié)果來(lái)作為最終的支付結(jié)果,因?yàn)橥交卣{(diào)有極大的可能性出現(xiàn)丟失的情況(即用戶支付完沒(méi)有執(zhí)行return_url,直接關(guān)掉了網(wǎng)站等等),最終支付結(jié)果應(yīng)以下面的異步回調(diào)為準(zhǔn)。
  5. 商戶后端服務(wù)端處理異步回調(diào)結(jié)果(Webhook)。付款完成之后,根據(jù)客戶在BeeCloud 后臺(tái)的設(shè)置,BeeCloud 會(huì)向客戶服務(wù)端發(fā)送一個(gè)Webhook 請(qǐng)求,里面包括了數(shù)字簽名,訂單號(hào),訂單金額等一系列信息。客戶需要在服務(wù)端依據(jù)規(guī)則要驗(yàn)證數(shù)字簽名是否正確,購(gòu)買的產(chǎn)品與訂單金額是否匹配,這兩個(gè)驗(yàn)證缺一不可。驗(yàn)證結(jié)束后即可開始走支付完成后的邏輯。

參考

使用第三方支付集成有何風(fēng)險(xiǎn) - 梁川的回答
Ping++, BeeCloud 這類集合支付服務(wù)產(chǎn)品的商業(yè)模式盈利模式是什么 - 陳龍的回答

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,536評(píng)論 19 139
  • 支付 1.支付寶和銀聯(lián)的支付流程 常用的支付方式有: 1、支付寶支付 https://openhome.alipa...
    丶逐漸閱讀 1,721評(píng)論 3 11
  • 微信支付邏輯? 1、顧客選擇商品 2、顧客選到心怡的商品找店員結(jié)算 3、店員拿著顧客交給他的商品生成預(yù)付單(后臺(tái)服...
    Carden閱讀 990評(píng)論 0 0
  • 實(shí)現(xiàn)支付寶支付的準(zhǔn)備工作: 1.向支付寶簽約,成為支付寶的商戶 簽約完成后,支付寶會(huì)提供一些必要的數(shù)據(jù)給我們 商戶...
    Anson楊春安閱讀 8,619評(píng)論 0 6
  • wow, people.f. mj,sx
    OK123閱讀 211評(píng)論 0 0

友情鏈接更多精彩內(nèi)容