2011-07-20 61 views
3

我正在爲Web應用程序實現Express Checkout API,並且一切正常。儘管如此,我仍然懷疑手術的流程。PayPal Express Checkout API - 用戶沒有確認金額?

如果我沒理解好,用戶體驗如下:

  1. 用戶訂單的一些項目上的商家網站
  2. 支付之前,用戶發送到PayPal網站
  3. 認證後,用戶可以確認一些關於交易的細節,例如發貨訂單,但是不是總金額
  4. 用戶被重定向到商家網站,在那裏他可以確認其他信息,部分訂單總金額
  5. 付款已完成,用戶從商家處獲得確認頁面。

SetExpressCheckout的調用發生1和2之間,GetExpressCheckoutDetails之間4和5

之間3 4,最後 DoExpressCheckoutPayment

該用戶沒有機會來確認在步驟總量的事實3是因爲此時商家可能沒有關於運輸成本的信息。事實上,文件says explicitly的數量可以在撥打SetExpressCheckout和撥打之間改變。

那麼,如果商家謊言給用戶呢?我可能會說您確認了20EUR的付款並向您收取2000歐元。現在,這是一種欺詐行爲,我可能會被起訴,但不應該被允許。

注意的是,文件還claims是獲取關於通過調用該交易的細節,GetExpressCheckoutDetails是可選的。類似地,用戶查看付款細節的步驟4可以完全跳過,並且在這種情況下用戶不會確認任何金額!

我錯了,還是有這個工作的理由?

回答

3

那麼,如果商家謊言給用戶呢?我可能會說您確認了20EUR的付款並向您收取2000歐元。現在,這是一種欺詐行爲,我可能會被起訴,但不應該被允許。

沒有辦法確認PayPal可以告訴你顯示什麼,用戶在步驟4圍繞它的唯一辦法是貝寶基於消除,以確定稅收和運輸能力爲商家客戶地址(或要求this sort of thing在PayPal付款流程中更新它)。

我錯了,還是有跳過第4步工作的理由?

有時,某商家有沒有必要步驟4中,所以在迫使他們與他們只是在步驟3在PayPal上看到了同樣的信息顯示屏幕沒有任何意義,甚至有an option改變PayPal的屏幕在步驟3中反映將沒有第4步屏幕。

當然,如果商家正在從第3步顯示的內容中更改稅金或運費值,那麼他們不應該使用此功能。

+0

你能在快速結帳要求設置的屬性,以防止步驟4中發生的?非常感謝。 –

+2

@PaulGrimshaw:啊,貝寶已經重組了他們的網站。將'useraction = commit'添加到重定向到PayPal現在提到[這裏](https://cms.paypal.com/uk/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_ECCustomizing#id0864860D0YK)。請記住,您仍然需要調用'DoExpressCheckoutPayment',這可以讓您在跳過之前跳過顯示確認屏幕。 – Anomie

+0

太好了,這就是謝謝!正在通過房產狩獵,沒有想到的Url。 –

0

通過授權,您可以捕獲多達115%的付款,或超過您在DoExpressCheckoutPayment請求中指定的金額的75美元。如果您在收取付款之前需要運送貨物,或者有任何理由不立即接受付款,請選擇此付款操作。

Documentation | PayPal Developer