braintree - una - principios de diseño de interfaz de usuario
La interfaz de usuario Dropin de Braintree, cómo eliminar el método de pago (2)
La capacidad de eliminar los métodos de pago abovedados mediante la interfaz de usuario de Braintree se agregó alrededor del 7 de agosto de 2018 y está disponible en braintree-web-drop-in 1.12.0+. Esta característica ahora se encuentra en su documentación:
Nombre : vaultManager
Tipo : boolean
Atributos : optional
Predeterminado : false
Descripción :
Ya sea para permitir o no que un cliente elimine los métodos de pago guardados cuando se utiliza con un token de cliente con una identificación de cliente. Nota: Eliminar un método de pago de Drop-in eliminará permanentemente el método de pago, por lo que esta opción no se recomienda para los comerciantes que utilizan el sistema de facturación recurrente de Braintree. Esta característica no es compatible con Internet Explorer 9.
Para habilitar "Vault Manager" (la capacidad de eliminar métodos de pago abovedados), configure vaultManager: true
al crear el menú desplegable:
braintree.dropin.create({
authorization: ''CLIENT_AUTHORIZATION'',
vaultManager: true,
/* your other braintree options */
})
Estamos utilizando la IU de Dropin de braintree para ayudar a ahorrar tiempo al tener que crear páginas de entrada de pago personalizadas. Lo que es difícil de entender es por qué solo puede agregar un nuevo método de pago y no eliminar. Entiendo que puedo agregar, pero si hubo un problema con un método de pago determinado (más adelante). Está ahí para siempre porque el cliente no puede eliminar un método de pago. Supongo que la única forma de eliminar un método de pago es que escribamos una interfaz de usuario personalizada (por lo tanto, para evitar el propósito de usar la interfaz de usuario dropin). ¿No hay forma de que un cliente elimine un método de pago utilizando la interfaz de usuario dropin?
La interfaz de usuario DropIn de Braintree no permite a los usuarios eliminar o actualizar el método de pago guardado. Pero hay una manera de hacer eso. Por ejemplo, si tiene una página de perfil de cliente donde pueden administrar sus configuraciones, simplemente puede agregar un menú que muestre todos los métodos de pago asociados con el cliente.
Para hacer esto, simplemente puede usar algunas funciones de Braintree que se explican aquí: https://developers.braintreepayments.com/guides/payment-methods/php
La idea es obtener todos los métodos de pago asociados con el cliente utilizando algo como:
$customer = Braintree_Customer::find(''a_customer_id'');
$customer->paymentMethods // array of Braintree_PaymentMethod instances
Se devolverá un objeto para todos los métodos de pago. Luego puede verificar la respuesta de ese objeto desde la misma página haciendo clic en el tipo de método de pago específico here (tarjeta de crédito, paypal ...)
Una vez que tenga estos valores, puede mostrarlos en una tabla, por ejemplo, y agregar un botón simple o lo que desee para eliminar ese método de pago. Para hacer esto, puedes usar la siguiente función pasando el TOKEN como un argumento
$result = Braintree_PaymentMethod::delete(''the_token'');
/*(token is a value of the object that comes from $customer->paymentMethods*/
Finalmente, puede verificar la respuesta controlando el valor de $ resultado (verdadero o falso)
Espero que esto ayude.