Подтвердить что ты не робот

Пользовательский интерфейс Braintree Dropin, как удалить способ оплаты

Мы используем пользовательский интерфейс dropdown, чтобы экономить время на создание пользовательских страниц ввода платежей. Трудно понять, почему вы можете только добавить новый способ оплаты и не удалить. Я понимаю, что могу добавить, но если возникла проблема с данным способом оплаты (позже). Он существует навсегда, потому что клиент не может удалить способ оплаты. Я предполагаю, что единственный способ удалить способ оплаты - это написать пользовательский интерфейс (таким образом, для того, чтобы начать с использования пользовательского интерфейса dropin). Невозможно ли для клиента удалить способ оплаты с помощью пользовательского интерфейса dropin?

4b9b3361

Ответ 1

Пользовательский интерфейс Braintree DropIn не позволяет пользователям удалять или обновлять сохраненный способ оплаты. Но есть способ сделать это. Например, если у вас есть страница профиля клиента, где они могут управлять своими настройками, вы можете просто добавить меню, в котором будут показаны все способы оплаты, связанные с клиентом.

Для этого вы можете просто использовать некоторые функции Braintree, которые объясняются здесь: https://developers.braintreepayments.com/guides/payment-methods/php

Идея состоит в том, чтобы получить все способы оплаты, связанные с клиентом, используя что-то вроде:

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

Он вернет объект для всех способов оплаты. Затем вы можете проверить ответ этого объекта с той же страницы, нажав на конкретный тип метода оплаты здесь (кредитная карта, paypal...)

Как только у вас есть эти значения, вы можете отобразить их в таблице, например, и добавить просто кнопку или все, что вы хотите удалить, этот способ оплаты. Для этого вы можете использовать следующую функцию, передающую TOKEN в качестве аргумента

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

Наконец, вы можете проверить ответ, управляющий значением $result (true или false)

Надеюсь, что это поможет.