大家好
 
最近有機會接觸到 paypal 的串接,其實大家知道,paypal 的付款功能其實可以很簡單套用
例如:
單次購買的按鈕
可以直接建立讓客戶購買的按鈕
甚至沒有 paypal 帳戶也OK !
(說實在我不是很懂他的機制...)
 
但是其實可以發現
 
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="zoearthmoon@gmail.com">
<input type="hidden" name="lc" value="TW">
<input type="hidden" name="item_name" value="test">
<input type="hidden" name="item_number" value="10">
<input type="hidden" name="amount" value="100">
<input type="hidden" name="currency_code" value="TWD">
<input type="hidden" name="button_subtype" value="services">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="tax_rate" value="1.000">
<input type="hidden" name="shipping" value="10">
<input type="hidden" name="bn" value="PP-BuyNowBF:btn_buynowCC_LG_wCUP.gif:NonHostedGuest">
<input type="image" src="https://www.paypalobjects.com/zh_TW/TW/i/btn/btn_buynowCC_LG_wCUP.gif" border="0" name="submit" alt="PayPal - 更安全、更簡單的線上付款方式!">
<img alt="" border="0" src="https://www.paypalobjects.com/zh_TW/i/scr/pixel.gif" width="1" height="1">
</form>

 

他這個按鈕只是單純的 form 表單,以前我的套用方式也是用這簡單的方式去套用。
但是這樣套用會出現一個問題
 
可以被輕易修改內容:
   說實在話,付款這種事情,其實是多付少付都是自己的損失,但是有時候也會對店家帶來困擾,如果今天有個人修改表單內容,將商品改成 1元然後刷卡了,商家自己可以去後台退款,但是如果可以讓每一筆付款都是經過系統驗證的,應該會更好。
 
所以我經過考慮,我認為應該使用API的方式去新增訂單,才會比較安全性
主要目標是
1.防止訂單內容竄改
2.配合購物車方式新增訂單
3.完善訂單描述
 
那我就找了找文件與列出常用網址
 
測試paypal 網址
https://www.sandbox.paypal.com/   (這邊可以新增測試用 paypal 帳號)
API 說明
 
串接網址為
 
注意!必須使用商業paypal帳戶才能申請API憑證
(就是升級成商業帳戶這樣而已,但是有時候會有怎麼樣都收不到認證信的問題,導致無法申請成功)
 
取得API的   帳號,密碼,簽名
之後就可以開始套用API 了
 
參考這邊文件設定參數
(paypal 文件真的超級亂...)
 
說實在,因為我英文不是很好
所以我真的不明白paypal到底有幾種付款或是API串接方式,大概是因為我串接的都是國內銀行與金流的串接,很少接觸國外的串接方式,說實在話,不是很明白為什麼串接paypal 的文件會這麼複雜= =。
 
總之
我這篇文章要說明的重點是以下
 
#############################
 
當我串好API之後,新增訂單與刷卡,但是到paypal後台會發現不能針對該訂單請款,怎麼樣就是沒有請款按鈕,之後直接打電話去問paypal客服也是雞同鴨講。之後寫信到 paypal 技術部門才明白說,重點在於
 
PAYMENTREQUEST_0_PAYMENTACTION 必須是 Sale
 
否則就會無法請款
因為  Order 是"預定單"的意思
 
這邊小抱怨一下:
我覺得paypalAPI 串接文件做得真的很差,更不要提那個paypal後台更是怪,不僅功能後台沒有統一,介面也常常更新卻沒有更新文件,天啊...。
 
看來對於國外金流最困難的果然還是英文的閱讀能力。