iT邦幫忙

2021 iThome 鐵人賽

DAY 25
0
永豐金融APIs

錢進!永豐金融APIs程式串接實戰最前線系列 第 25

Day25 - [豐收款] 永豐線上收款支付API功能實作總結(1)

今天開始要把我們先前花了24天研究與實作的永豐線上收付款API -- 豐收款 (funBIZ),作一些總結與回顧,讓有興趣要使用的朋友,了解要注意的地方,以及還有哪些不在本次實作範圍內,但可以額外添加的部份。

你是誰?你需要豐收款服務嗎?

要談這個問題,當然需要知道豐收款是作什麼的。豐收款是永豐APIs眾多服務中的一個,專門提供給電商網站平台作為金流服務支付款的解決方案。

所以誰需要?你如果滿足以下情境你就可以是豐收款的用戶。

  1. 你有一個自己規劃設計與建置的電商網站,且需要提供客戶賣買行為的網站
  2. 你有購物邏輯,但你自己沒辦法處理金流的部份
  3. 你希望可以提供以下金流方式給顧額
    • ATM轉帳 (A. 產生虛擬轉帳帳戶給顧額 / B. 提供線上WebATM或OTP轉帳網址 )
    • 線上刷信用卡服務
    • 提供LINEPay線上支付 (規格書有提及,但沒有說到細節)

https://ithelp.ithome.com.tw/upload/images/20211010/20130354AylfGJYwjP.png
圖:只有在文件中的收款情境提到LINEPay一次,但無提供規格內容

如果你符合上述情境,恭喜你,永豐APIs的豐收款可以幫助你解決這個問題。

事前要做些什麼?

既然你希望你電商平台的顧客,可以透過永豐提供的線上付款方式來付款,比如確認訂單後,就把網址導入到永豐的信用卡刷卡網址,顧客開心的刷完錢後等待後續的出貨流程等等。

所以在此之前,你當然需要先正式的和永豐豐收款運行單位接洽,提供永豐所需要的資訊與申請流程,中間有哪些規範與審核流程等,需要有興的朋友直接與永豐接洽。

需要先進行相關申請程序後,你才能取得如整系列文章中提到的「商店代號」以及「4組Hash代碼」。

完整豐收款的服務,其實是在永豐的數位支付整合服務中,網址請到:
https://funcashier.sinopac.com/digital_payment/index.html

而有興趣申請的朋友,可透過以下連結與永豐聯繫:
https://funcashier.sinopac.com/WebSite/Pages/api_webform.aspx

豐收款可完整的服務,但此次未提及的部份

其實豐收款的服務範圍,比這次提供的線上收付款(ATM、信用卡)還要多,從上面官網可以了解到:

提供多種收款方式
「豐收款」可彈性符合您的商業模式與多種收款情境,透過技術串接方式將收款金流整合到既有的購物網站。若您也準備拓展陸客市場,可選擇透過QR Code收款或POS收銀台掃描進行實體店面支付寶收款。

其中,在收款方式又分為境內收款以及跨境收款兩種。

境內收款

而境內收款,可以看到其實除了線上收款的服務,永豐也提供了超商取貨付款的延伸介接。(以目前的時間點看,是與全家便利商店合作,未來是否會再和其他更多的超商,請再官網關注)
https://ithelp.ithome.com.tw/upload/images/20211010/20130354ZEw2f25sdP.png

跨境收款

而跨境收款,是提供「實體通路」的服務,當然你需要有實體店面的買賣才會需要使用。但主要可提供大陸消費者用支付寶來付款。
https://ithelp.ithome.com.tw/upload/images/20211010/20130354N2fUqRAkR5.png
https://ithelp.ithome.com.tw/upload/images/20211010/201303543J0pu7uzWa.png

電商有了金流服務,然後我怎麼收款。

上述了解完後,我們再跳回來電商平台的金流服務。你的電商顧客刷完卡後,你的後續服務流程會繼續走,該出貨的出貨,但顧客是把款項付給了永豐,因此當然在申請流程中永豐會和你要作帳務連結的銀行戶頭等資料。

你的金流先由永豐代收後,需要由電商主自行依照永豐定的請款流程和永豐申請款項,這部份細節不在這次的技術推廣範圍之內,但是這是必需要理解會產生的環節。包含不同的支付方式的請款的期限與週期多久,或請款流程中的服務費用等,這都請和永豐洽談才會知道。

我的電商平台要怎麼介接與實作的環境?

這次我鐵人賽是以Python為基礎,使用Python的Django Web框架,透過Heroku PaaS平台建置與佈署,資料庫使用Postgres,中間很雞肋的帶了一些Vue以及Bootstrap5,這些如果你是從前面開始看文章的朋友應該很清楚。

但豐收款API,是一個REST API,所以你可以使用任何符合HTTP標準的Request/Response方式串接的程式語言與架構,都能實作,因此並無什麼實作環境與語言選擇的限制。

你一直說「開發規格書」,到底在哪裡呀?

其實這一系列文章,因為我們報名了iThome鐵人賽,所以因為合作關係我們會與永豐提出參賽的測試申請,因此會取得由永豐寄來給參賽者的相關文件與資料。

其中包含了:

  1. 開發規格書 一份
  2. 所需的測試用商店資料(ShopNo, Hash代碼4組)
  3. Sample Code一份 (C#, PHP)

因此,如果看這系列文章的讀者,手上雖然沒有開發規格書,但我認為不影響你了解整個豐收款的功能與實作細節。但如果你是透過上述方式取得了永豐提供的正式文件者,你是也會有一份開發規格書的,那想必你會更清楚的知道所有規格書中提及的內容。

因此,即規格書中使用的都是測試環境好像整份提供出來應無大礙,但還是先維持符合永豐與iThome鐵人賽的合作關係,我們雖然文章中也有從規格習中引用或截圖等的部份資訊,但沒有取得同意下就不放上整份文件給大家參考。

好啦,給你看一下封面 (笑)。
https://ithelp.ithome.com.tw/upload/images/20211010/20130354888fcMGYDO.png

聊聊語言與框架的選用

而有興趣是以C#或PHP來實作的朋友,就可以直接參考永豐官方提供的Sample Code。但這次鐵人賽當然希望研究些不同的東西,即使這兩個網頁開發架構都是我原本熟悉或多年前接觸的,因此反而為了冒險與創利,刻意不選用這兩個語言與框架來撰文。

但如果你是以電商實作為目標,反而你挑選這兩種其一,會比較有直接可參考的程式碼。(至少是官方寫的)

不選我一直認為,語言只是一個基礎工具,就像一篇在講述如何教你作菜的文章或影片,被翻譯成多國語言一樣。本質還是在講作作菜的流程與手法,語言不同並不是太大問題。

當然,你可能要從中挑語病,會說Django是框架,不是語言呀,語言只有Python吧。但這就和教你作菜中的老師,他用的爐子、鍋子、鏟子等,想必和你手中的爐子、鍋子、鏟子的牌品與規格略有不同,但他們都是有相同的功能的工具。

Django是Web框架,雖然和ASP.Net (或.NET Core)或PHP提供的細節不同,但概念是一樣的。我認為這也不直接影響你會學會這一道菜的目標。

因此,有興趣想快速了解永豐API的實作過程,這些都不應該對剖析與了解有太大影響,當然如果你本身就對Python實作有興趣者,希望這系列文章有幫助到你理解。雖然我不能說我的實作寫法是最好的,但至少從零開始到確定可完成實作結果。

今天就先寫到這裡,下一篇繼續聊聊。


上一篇
Day24 - [豐收款] 以Django Web框架實作永豐API線上支付模擬情境(5) - 我的訂單
下一篇
Day26 - [豐收款] 永豐線上收款支付API功能實作總結(2)
系列文
錢進!永豐金融APIs程式串接實戰最前線30

尚未有邦友留言

立即登入留言