POST TIME:2018-12-03 21:33
在線支付業務是所有電商平臺的核心業務,我在人人都是產品經理的網站上使用關鍵字“支付”檢索了下,發現關于支付業務的設計少之又少,不光是支付,關于商品、產品、購物車等等領域模型的設計也很少,大家都集中討論在產品外在設計上,告訴你這個事情是怎么回事,但是沒有告訴設計應該如何落地,個人認為一個合格的產品經理是一個既能進行需求分析、業務設計、同時也能做數據設計、分析的。
本文主要以2B2B平臺為例對嘗試著對支付綁定、支付解綁、在線支付、退款等業務流程及設計方式進行說明、梳理。如果您覺得有些幫手或者覺得哪里分歧錯誤,希望小伙伴留言進行交流或者點個贊。
設計策略在做支付業務設計的時候,產品經理不光要分析業務流程還要考慮設計策略,關于支付業務的設計策略主要表現在數據安適性和擴展性。
1、數據安適性采用銀聯簽名機制、加密機制確保支付過程中支付的安適性。
報文簽名與驗簽機制的共同點:首先都需要對報文中出現簽名域(signature)之外的所有數據元采用key=value的形式根據名稱排序,然后以&作為連接符拼接成待簽名串。其次,對待簽名串使用SHA-1算法做摘要。
報文簽名機制與驗簽機制差別點:
報文的簽名處理機制如下:使用銀聯頒布給商戶的商戶RSA私鑰證書對摘要做簽名。最后,對簽名做Base64編碼,將編碼后的簽名串放在簽名(signature)表單域里和其他表單域一起通過HTTP Post的方式傳輸給銀聯在線支付平臺。報文的驗簽處理機制如下:使用商戶入網時銀聯提供的銀聯在線支付通訊RSA公鑰證書對摘要做簽名。最后,對簽名做Base64編碼,與返回報文表單中的簽名(signature)域簽名串做比較,如一致則驗簽成功,不然驗簽失敗。加密機制:對于持卡人密碼銀聯在線支付平臺使用RSA公鑰證書對ANSI X9.8帶主帳號格式的PIN加密并做Base64編碼后傳輸,,以保障密碼的安適性。依據商戶可選配置,對于CVN2、有效期、卡號使用RSA公鑰證書別離做加密并Base64處理。對于敏感信息銀行卡驗證信息及身份信息部分內容,采用Base64編碼后傳輸,以做數據屏蔽。對于文件內容,使用DEFLATE壓縮算法壓縮后,Base64編碼的方式傳輸,壓縮編碼后的內容參與簽名摘要運算。
2、程序擴展性在支付業務分析設計后,其相關數據庫表包孕支付記錄表 支付記錄表支付銀行表 支付綁定表 支付異常表、支付訂單表;以后再有類似的在線銀聯支付業務可以直接進行復用,不消新建表。此外以下業務流程設計也可以進行擴展使用。
支付業務流程設計首先介紹整個業務的整體業務流程、資金流業務流程。其次別離介紹支付綁定、解綁、支付、退款等業務流程的設計。
1、支付業務整體流程圖2、支付業務資金流挨次圖3、銀行卡綁定業務挨次圖綁定業務:首先要建立綁定關系
建立綁定關系,指商戶/收單機構的用戶號(即報文中的綁定標識號)與用戶的銀聯卡信息進行關聯,關聯信息留存在銀聯系統中。建立綁定關系可分為前臺模式和后臺模式,前臺模式時,用戶在銀聯頁面輸入相關銀行卡信息;后臺模式由商戶采集銀行卡信息發送至銀聯進行綁定。下面以前臺模式為例進行說明,業務流程圖如下所示:
流程說明:
如果采購方沒有綁定過銀行卡,會提示“請先綁定銀行開再支付”;如果綁定過銀行卡,會跳轉至支付頁面;在綁定銀行卡頁面,如果第一次綁定銀行卡,綁定信息中會進行“交易平臺支付密碼”新增操作,不然無此操作,一個采購方只能有一個“交易平臺支付密碼”,可在會員中心修改此支付密碼;在銀聯綁定卡頁面,可選擇儲蓄卡和信用卡,點擊“綁定”,跳轉至銀聯綁定頁面,輸入卡號等綁定信息,綁定成功后會跳轉到平臺頁面,綁定成功的卡可進行解綁。綁定卡以后,可進行支付,在支付頁面,選擇一張綁定銀行卡,輸入手機驗證碼和“交易平臺支付密碼”,支付點擊“支付”,支付成功會跳轉至支付成功頁面,訂單列表中可看到支付成功后訂單信息。在已付款訂單列表頁,可對當天清算前訂單進行退款,點擊“退款”,會返回退款結果;如果訂單支付成功,配送商(銷售)可進行接單;采購方在配送商(銷售)接單后可進行“確認收貨”操作;