大家好,我是剛哥!
引子
最近,有同學私信問我有沒有“支付系統源碼?有沒有開源項目?”說實話支付這么隱私的系統,后臺都不會能給人看,更別說公開源碼。
要獲得一套完整的支付系統,至少花個幾十萬,金融級別的支付系統幾百萬都很正常。
不過事情也沒那么絕對,開源社區真有這么一套全球唯一開源支付系統(反正我沒找到過第二套)JeePay聚合支付開源項目,他非常完整,并且提供源碼,你可以直接免費拿去在自己的項目中使用。
這次,對于想自己研究、找競品和創業的小伙伴們,介紹下這套開源的支付系統JeePay。
【文末有JEEPAY的文檔和演示地址】
01 JEEPAY有哪些版本
官網地址:https://www.jeequan.com/
JEEPAY定位是一個聚合支付平臺。它分為“開源版本、商業版本、解決方案和增值服務”四部分,我們重點還是看下大家關注的開源版和商業版,其它的大家可以自行了解。
![]()
JEEPAY版本
1.1、開源版系統
![]()
開源版業務架構
開源版本比較精簡,包含了“支付網關、核心能力、支付渠道”以及“商戶平臺、運營平臺”兩個管理系統。
底層的技術棧用的都是常見的開源框架,這樣做的好處是開發者都比較熟悉,容易上手,學習起來不費勁。同時,這樣做還能讓項目的成本和質量更容易控制。
1.2、商業版系統
1)商業版系統
商業版相對于開源版不僅在”商戶、運營”兩個系統上功能豐富了很多。同時也增加代理商系統、硬件設備支持更加豐富,在商家移動端管理方面提供了“商戶通”、以及更多的展業工具。
![]()
商業版業務架構
2)產品體系
開放就是好呀,產品體系和后臺功能都不需要我來扒了,JEEPAY都給你整理的很詳細了。
產品功能清單:https://docs.jeequan.com/docs/jeepay-plus//552
![]()
商業版產品能力
02 拆解開源版本
當然我們的重點還是開源版本,這是整個聚合支付系統最精簡的內核。只有內核拆解清楚,上層應用的擴展就手到擒來了。
2.1、客戶體系
首先,讓我們一起來看下JEEPAY的商戶體系結構吧。了解這個結構的層級劃分,才能更好地理解他是如何來管理客戶和產品的。
![]()
JEEPAY客戶體系
JEEPAY的客戶體系分為運營端和商戶端。
2.2.1、運營端:
運營端就是整個支付系統的“大總管”,它負責商戶的創建,應用的配置以及交易的管理。商戶要開通賬號,使用支付產品都需要運營端來設置后才能登錄。
2.2.2、商戶端:
運營端開通賬號后,商戶就可以登錄商戶端進行支付產品的配置和使用。商戶端的角色就比較復雜些了,按照微信對于商戶的定義分了三種角色。
1)普通商戶:課獨立在三方機構申請支付渠道,接口也是可以單獨調用的。
2)服務商:為商戶提供支付技術服務,幫助商戶入網和調用支付接口。
3)特約商戶:類似子商戶,服務商協助其開通三方賬戶后,把支付產品授權給服務商,由服務商幫助其調用接口。
2.2、核心服務流程
Jeepay麻雀雖小五臟俱全,它有運營端、商戶端兩個前端應用,同時“網關、支付、商戶、運營”幾個服務端應用提供后臺能力支撐。
![]()
JEEPAY核心流程
2.2.1、運營端流程
1)商戶注冊:在運營端創建商戶號同時會生成“微信、支付寶、云閃付”等幾類默認應用給商戶。
2)支付配置:如果需要的支付產品不在默認應用中,要配置支付接口來進行開發。
3)對接開發:定制開發可以通過購買接口或者自研,如果是自研則需要進行“渠道對接、服務開發以及相關前端應用的修改”。然后發布到服務端進行測試和聯調。
2.2.2、商戶端應用
1)商戶登錄:運營端開出賬號后商戶就能在登錄商戶端開始管理支付應用。
2)應用管理:商戶配置支付應用前需要提前準別好賬號參數進行配置,這里涉及appid、密鑰和證書的安裝(這些需要技術人員的配合)。
3)分賬管理:如果涉及分賬場景,可以按應用來配置分賬的賬號組和收款賬戶,以及設置分賬比例。
4)支付測試:Jeepay提供了支付測試工具,可以直接進行各種應用程序接口的測試和聯調工作。
最后,全部測試通過之后,可以把應用發布到生產環境正式對外推出使用。整個開源系統非常簡潔明了,非常適合個人開發者和中小團隊來使用。
如果需要開放接口、增加代理商、展業APP、點餐小程序、收銀機等”等應用也可以很好的擴展。
2.3、JEEPAY領域模型
通過對JEEPAY的流程、功能和數據結構的初步分析,我大致分析出了JEEPAY的領域模型。可能并不準確,但是能夠講清楚其內在的結構關系。
![]()
JEEPAY領域模型
JEEPAY分成了商戶和應用的兩大體系,一個商戶可以創建多個支付應用。
1)商戶模型
商戶分為普通商戶、特約商戶、服務商這幾個角色,其中普通商戶擁有獨立的賬號和支付權限,而特約商戶需要服務商才能設置支付權限。同時每個商戶都可以設置自己的登錄賬號和增加登錄的操作員。
需要說明的是,在開源版中僅是一個單層級”會員模型”,商業版才提供多層級的“服務商、代理商”管理。
2)應用模型
一個商戶可以配置多個支付應用,每個支付應用都需要有配置對應渠道的支付接口和支付方式,其中支付方式也是支付接口的重要參數。
3)分賬模型
分賬模型管理著支付應用與商戶賬號的綁定關系,系統可以按照商戶的支付應用來綁定分賬賬號。多組賬號通過賬號組來管理,方便對不同合作關系進行組合。
03 運營端拆解 3.1、工作臺首頁
![]()
運營工作臺
系統有默認超管賬號可以直接登錄。工作臺菜單和首頁簡潔明了, 默認的超管密碼可以在“系統管理/用戶角色管理/操作員管理”下重置。
3.2、商戶管理
前面介紹了Jeepay分為商戶和服務商兩大角色,能夠進行支付的只有商戶。因此我們要給商戶創建一個賬號和密碼這樣它才能登錄。
1)進入“商戶列表”
進入商戶列表可以管理商戶賬號,創建商戶號,并且給它配置支付應用。
![]()
商戶列表
2)創建“商戶賬號”
這里是給商戶創建登錄的商戶賬號,其中“登錄名、手機號”必須是唯一的,密碼默認是“jeepay123”,可以由運營人員“重置密碼”,也可以由商戶自己在商戶端重置。
![]()
創建商戶號
這里需要注意的是“普通商戶”和“特約商戶兩個角色的不同。
普通商戶:可以獨立創建和啟用,并且它的支付產品也是獨立申請和調用的。
特約商戶:需要關聯服務商之后才能啟用,它的支付產品也是授權服務商來進行支付的。
![]()
普通和特約商戶配置的區別
3.3、服務商管理
由于是開源版,服務商不支持多層級管理,因此,服務商的賬號配置就比較簡單,設置基本信息就可以了,并且也沒有單獨的登錄賬號。
![]()
創建服務商賬號
3.4、應用配置
在運營端,運營人員可以直接幫助商戶開通支付應用。支付應用就是已經開發好的支付產品,系統默認有“微信、支付寶、云閃付”等支付應用,客戶直接免費使用。
但是因為涉及很多的賬號、密鑰、證書等隱私信息,運營端只是輔助,一般在商戶端由商戶自行配置,詳細內容我們在后面介紹。
![]()
應用配置
3.5、服務商的“支付配置”
1)創建服務商:
特約商戶是由服務商協助入網和調用支付接口,因此需要服務商在后臺幫助商戶完成參數的設置。
![]()
服務商支付配置
2)服務商參數設置
這里主要是設置服務商自己的PID、appid、密鑰、證書等支付接口調用信息。
![]()
服務商密鑰配置
3.6、自研的“支付配置”
如果需要對接的支付渠道不包含在默認的“微信、支付寶、云閃付”中,就需要通過接口市場購買或者自己研發對接。在支付配置中可以修改默認配置,也可以直接新增一個支付應用產品。
1)支付接口配置
這里的應用是提供給服務商或者商戶的開發人員在開發前進行配置。
![]()
支付接口配置
2)接口配置與應用的關系
支付配置包含了“支付接口”和“支付方式”兩項配置,它也與商戶使用的“支付參數”和“支付通道”兩項參數一一對應起來。
![]()
商戶應用與接口配置關系
支付接口:配置接口定義,包含了接口代碼、接口定義參數以及支付方式等重要的接口開發參數。
支付方式:告訴開發者在配置支付接口時,可以選擇哪些支付方式和了解相關費率。
運營端設置了商戶號后商戶就能登錄了。商戶端主要是支付產品的使用,因此主要包含了“應用管理、支付測試、轉賬、訂單管理、分賬管理”等業務操作功能。
![]()
商戶端工作臺
4.1、應用管理
1)查看支付應用
在運營端創建商戶的同時就會默認創建一個支付應用,商戶可以對支付應用進行配置。這個支付應用的Appid是與商戶關聯的。
![]()
商戶支付應用
2)支付參數配置
這里集成了已經發布的支付應用,商戶可以通過技術人員的協助來完成支付參數的配置。
![]()
商戶支付參數設置
3)支付參數詳情
支付配置主要是渠道側開通支付參數、密鑰和證書等比較敏感的安全信息,同時也需要在渠道側后臺(例如:微信支付后臺,支付寶后臺)配置對應的回調地址。
![]()
商戶支付參數詳情
4)支付通道配置
支付通道參數主要是生效支付方式,并且設置對應的支付費率,該費率作為系統內部登記使用的,實際的費率還是要以渠道產生的為準。
這種設置模式比較適合服務商、代理商,通過這里可以設置給不同商戶的報價,這樣就能賺取分潤了。
![]()
商戶支付通道配置
4.2、支付測試
完成支付配置后,商戶可以為不同的業務設置多個支付應用,每個應用都能單獨設置支付方式并測試。這樣做可以讓支付設置更符合各種業務需求。
測試支付時,你可以試用不同的支付方法,還能處理不同分賬方式,比如不分賬、自動分賬或手動分賬。測試金額也可以自己設定。
![]()
商戶支付測試頁面
4.3、分賬管理
對于現在大家都比較關注的分賬能力,也提供了分賬管理功能,它與支付應用是關聯在一起的,你可以通過“賬號組”來管理多個賬號。
分賬賬號有兩種:一種是個人分賬,需要用微信或支付寶掃碼綁定;另一種是商戶分賬,直接填寫賬號就行。
為了保障賬號的準確,在保存前會發送到支付渠道校驗賬號的有效性,這樣支付時就不容易出錯。
![]()
商戶分賬賬戶管理
05 JEEPAY開源系統總結
作為一個開源聚合支付系統,JEEPAY小巧而易于擴展。
5.1、商業模式分享
從商業模式上JEEPAY有一個完整的商業閉環。
1)開源版:提供基礎支付系統,方便學習和搭建,幫助更多人了解和使用。
2)商業版:為需要自己搭建支付系統的企業提供完整、安全的解決方案,確保支付穩定、安全、保護隱私。
3)行業版:根據不同行業需求,提供專門的支付解決方案,幫助企業更好地服務客戶。
4)支付備案:如果要經營支付業務就需要“收單外包備案”,顯然這樣的資質需要專業的服務和資源的。
5)支付服務:JEEPAY通過“接口市場”和“軟硬件商城”,幫助商戶簡化了支付渠道對接和設備的使用,同時也為JEEPAY帶來了服務收入。
![]()
JEEPAY商業模式
5.2、JEEPAY優劣勢分析
針對JEEPAY的功能和使用體驗我們也來分析下它的優勢和不足。
5.2.1、JEEPAY的優勢
JEEPAY最大的優勢自然是開源,“它通過開源提供真實的支付系統,并且提供完善的支付解決方案,以此突破行業同質化瓶頸”。
1)開源集成到商業軟件
JEEPAY功能簡潔靈活,適合中小企業快速構建和擴展支付應用。它采用LGPL-3.0開源協議,允許以庫文件形式集成到商業軟件中,無需公開源代碼。
2)完善的開發文檔和部署腳本
作為開源軟件,JEEPAY提供了完整的開發文檔和安裝部署腳本。并且也提供更加方便的寶塔面板一件安裝。
3)全套方案演示環境
此外,JEEPAY不僅有開源版的演示環境,商業版、行業方案也同樣提供了演示環境,供你隨意訪問。這展現其對產品自信,同時也與客戶減少信息差,并降低溝通成本。
這種做法與我的觀點一致:支付系統功能已趨于成熟且同質化嚴重,單靠功能難以形成獨特賣點。如今客戶看中的是產品如何給他帶來更多的收入,更低的經營風險,以及更好的支付資源。沒有這些價值,那就只能站在成本角度聊聊價格了,降本增效最終的結果大家也都知道(全都卷死)。
5.2.2、JEEPAY的不足
JEEPAY的不足還是“渠道接口配置”比較技術化,對于非技術人員學習和使用成本還是有點高的。
JEEPAY默認的“微信、支付寶、云閃付”等支付應用可以免費使用,但是非標準的渠道接口接入還是需要花費一定時間去學習它的開發規范和標準的。
渠道接口配置這塊可以抽象出更多的共性做成配置化,這樣客戶新增渠道接入的效率也就能更高,同時放到商業版也是個非常好的增值賣點。
5.3、JEEPAY的資源匯總
時間原因,對于JEEPAY的拆解僅限于開源版本,商業版和行業解決方案我也沒有深入的去了解,我把JEEPAY的資源匯總下,更多的寶藏大家自己去研究和開發吧。
5.3.1、開源版本資源
1)JEEPAY主頁:https://www.jeequan.com/
2)開源版演示和部署:
https://www.jeequan.com/doc/detail_84.html
3)寶塔一鍵安裝:
https://docs.jeequan.com/docs/jeepay/jeepay-1g4h1figddgfm
4)一鍵部署視頻教程:
https://www.bilibili.com/video/BV17C411Y7EZ/?share_source=copy_web&vd_source=e48f1c20ae2c74b29a0b959a168914f2
4)開源社區:
https://gitee.com/jeequan/jeepay
5.3.2、商業版本資源
1)商業版演示賬號:
https://docs.jeequan.com/docs/jeepay-plus/jeepay-plus-1doq35st0u4vu
2)商業版開發文檔:
https://docs.jeequan.com/docs/jeepay-plus/jeepay-plus-1dmfn5bmqbgrr
5.3.3、行業方案資源
1)計全付開放文檔:
https://docs.jeequan.com/docs/jeepay-open/jeepay-open-1dvtplvn8vvlf
2)行業方案演示賬號:
https://docs.jeequan.com/docs/jeepay-open/jeepay-open-1ecc90rmvtdbt
【入群交流添加我微信,請注明來源從事"行業+崗位“】
特別說明:本人不介紹通道,不推廣通道
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.