2015-01-13 72 views
13

我們使用braintree的dropin用戶界面來幫助節省創建自定義付款輸入頁面的時間。很難理解的是爲什麼你只能添加新的付款方式而不能刪除。我知道能夠添加,但是如果給定的付款方式出現問題(稍後)。它永遠存在,因爲客戶無法刪除付款方式。我想刪除付款方式的唯一方法是爲我們編寫一個自定義用戶界面(從而破壞了使用dropin UI開始的目的)。客戶無法使用dropin UI刪除付款方式嗎?Braintree的Dropin UI,如何刪除付款方式

+1

我在布倫特裏工作。插入式UI僅用於處理基本用例。您有幾個選擇:自定義用戶界面,處理帶外付款方式(如果有人通過電子郵件向您要求支持的電子郵件,請勿在用戶界面中手動執行),或者不允許保存的付款方式爲刪除。如果您有更多問題,可以隨時[聯繫我們的支持團隊](https://support.braintreepayments.com/)。 – agf

+18

似乎添加和刪除是非常基本的用例。添加在那裏。如果有刪除,可以完成更新(通過刪除然後添加)。所以基本上,如果你的顧客犯了一個錯誤(例如他或她的失效日期)或者使用下拉菜單到期,你的顧客基本上就會被永久支付。除非你編寫一個自定義實現,否則調用API服務器端,這將打敗整個「dropin」概念的目的。也許https://www.braintreepayments.com/features/drop-in應該更新爲「無法刪除付款方式」。 – MacWise

+0

我已經伸出手來支持他們無法幫助解決這個問題。 – MacWise

回答

5

Braintree的DropIn用戶界面不允許用戶刪除或更新保存的付款方式。 但有一種方法可以做到這一點。例如,如果您有一個可以管理其設置的客戶資料頁面,則可以簡單地添加一個菜單,顯示與該客戶關聯的所有付款方式。

要做到這一點,你可以簡單地使用它在這裏解釋一些布倫特裏功能:https://developers.braintreepayments.com/guides/payment-methods/php

的想法是讓使用類似的客戶相關聯的所有付款方式:

$customer = Braintree_Customer::find('a_customer_id'); 
$customer->paymentMethods // array of Braintree_PaymentMethod instances 

它將返回所有付款方式的對象。然後,您可以通過單擊具體付款方式類型here(信用卡,貝寶...)來查看該對象在同一頁面的回覆。

一旦您具有這些值,就可以在表格中顯示它們,例如,並添加一個簡單的按鈕或任何你想要刪除該付款方式。 要做到這一點,你可以用下面的函數傳送令牌作爲參數

$result = Braintree_PaymentMethod::delete('the_token'); 
/*(token is a value of the object that comes from $customer->paymentMethods*/ 

最後,您可以檢查響應控制$結果(true或false)

希望這有助於價值。