[跨境金流串接] 支付寶台灣收款(不需大陸開戶或註冊大陸法人)

By Hikari

[跨境金流串接] 使用玉山銀行兩岸支付通+藍新閘道特店實現支付寶台灣收款(不需大陸開戶,註冊大陸法人)

相信有不少OPENCART商家,都有跟中國有生意往來,一般來說台灣的第三方支付如:藍新、綠界,都支援「銀聯卡」收款,所以要跟中國買家收款,其實不是問題。另外也可以使用OPENCART原生的PAYPAL EXPRESS模組跨境收款,只是手續費高一些(3.5%)。

收款不是問題了,那這篇文章是要討論什麼呢?

主要原因還是因為大陸兩大支付:微信支付以及支付寶普及率太高,相對地使用銀聯卡刷卡有點麻煩,商家們還是會很擔心客戶因此猶豫就Bounce(跳出)了!盡量降低客人猶豫的時間,減少行銷漏斗損失也是大家很在意的方向。

新版Opencart其實內建支付寶金流模組,但很不幸的,如果你在大陸沒有法人的話,你是無法使用這個服務,所以為了收支付寶,跑去大陸開一家公司,似乎有點殺雞用牛刀。

稍微研究一下,發現其實是有辦法的,基本上只要透過玉山銀行兩岸支付通,也就是玉山幫你代收,收完之後把錢到你的玉山帳戶內即可。

但其實玉山API並不是想像中的好接,尤其是你必須要在玉山的後台建立產品(金額還要跟結帳一致),這一點完全沒考慮到電商可能每天都會有不同的價格這樣的情況,而在每次發動購物API前,同時要新增產品,然後才發動API,實在是很麻煩。然後我發現早就已經打通API的藍新(智付通)跟玉山已經接好了,只要你資料有辦法送到藍新,他就會直接幫你以閘道特店的方式傳送給玉山,省去不少麻煩

以下正式開始串接流程

 

 

首先要先跟玉山開戶、簽約,開通兩岸支付通帳號

第一步驟應該沒什麼好說的,就是直接去玉山開戶,並且說出關鍵字

我要接兩岸支付通!

然後就是等合約完成,專員會寫信給你API手冊、範例程式等等開發所需的一切東西。

這邊要特別提醒,你必須先提供三台主機IP,分別是

  • 你的購物車伺服器主機
  • 你辦公室要看玉山後台的故定位址電腦IP
  • 藍新所有發動API的IP(有好幾組,請跟你的業務要)

開發測試環境

第一階段,他們會幫你開啟測試環境伺服器,並開啟測試用後台,你必須發動一次以上成功的購物交易,才能進入下個階段。因此在這個階段只要手動建一個新產品,並且寫個測試程式,發動一次以上的交易即可。值得一提的是,開發包裡面已經有php測試程式了,可以直接改一下就立馬發動交易。我當時沒仔細看開發包,沒發現有這個好東西,是自己寫的,也不會太難,只要注意幾件事情

  • 標頭檔必須是xml
  • 使用get發動交易
  • 在php中,直接呼叫sha1函數壓碼即可

應該沒什麼問題就可以順利完成

 

玉山測試環境

這個階段基本上就是把上面的事情在做一次而已。對玉山來說,這是正式的交易環境圍出來的沙盒,但對我們來說就是把上面的程式再次發動即可,但要注要主機網址不同,而且這次後台必須要用白名單IP才連得進去。我這邊房東含水電跟網路,為了進後台牽一條固網有點瞎。所以最終我在AWS 起了一台WIN的EC2 (效能選第二低的就可以,不要選最低的會跑不動瀏覽器),用這台EC2申請Elastic IP,並在步驟一提交此IP為白名單。之後就用這台電腦開啟後台,並手動建立一個產品。

這邊要提醒的是:目標伺服器位址跟步驟一不同,而且Hashkey也會變動喔

玉山正式環境

到這一步,基本上已經不需要上面這隻測試程式了

直接跟藍新說你要開通支付寶收款,你要開玉山閘道特店,也是要寫個申請單就可以了

可以從藍新寫好的Opencart模組修改(官方只更新到2.1,如果你是2.2以上請來信索取量子音樂自行開發的版本,但拿回去之後還是要自己修改程式才能支援跨境金流喔),如果你恰好是2.2版本,我們有已經改好的跨境版本可以直接提供(免費)

接下來就由藍新直接拋出API給玉山即可

這邊有個坑,就是傳給藍新的時候,記得要帶ALIPAY=1,這件事情技術手冊都沒寫超坑的。

另外就是閘道版技術手冊第15頁有載明,你必須額外傳遞以下值(其實都跟非跨境的重複,但這邊就是要求要另外送),否則會在玉山被擋掉

$aio->Send[‘Receiver’] =$user_info[‘LastName’] . $user_info[‘FirstName’];

$aio->Send[‘Tel1’]=$user_info[‘Phone’];

$aio->Send[‘Tel2’]=$user_info[‘Phone’];

$aio->Send[‘Count’]=1;

$aio->Send[‘Pid1’]=$order;

$aio->Send[‘Title1’]=$productsall;

$aio->Send[‘Desc1’]=$productsall;

$aio->Send[‘Price1’]=$aio->Send[‘Amt’];

$aio->Send[‘Qty1’]=1;

 

 Category: 未分類

Leave a Reply