서버 측 결제 수단 (result = Braintree::PaymentMethod.delete("the_token")
)을 삭제하는 기능이 있지만 결제 수단 토큰이 필요합니다. 고객으로부터의 nonce를 사용하여 지불 방법 토큰을 얻으려면 어떻게해야합니까?Braintree, 고객의 nonce가 포함 된 사용자 신용 카드를 어떻게 삭제합니까?
편집 : UI에서 드롭을 사용하고 있지 않습니다. 사용자가 가지고있는 신용 카드의 맞춤 목록이 있습니다 (Javascript v3 SDK 사용). 카드를 삭제할 수있는 버튼이 필요합니다. JS SDK dosnt는 신용 카드 토큰을 제공합니다. 클라이언트가 사용할 수있는 데이터를 서버의 카드를 삭제하는 데 사용할 수있게 만드는 프로세스는 무엇입니까?
edit2 : clent 측의 신용 카드 목록은 JavaScript v3 SDK의 VaultManager을 사용합니다. fetchPaymentMethodsPayload을 반환합니다.
_loadPaymentMethods() {
this.paymentService.getBraintreeToken().then(token => {
this.braintreeClient.create({
authorization: token
}, (clientErr, clientInstance) => {
if (clientErr) {
// Handle error in client creation
return;
}
var options = {
client: clientInstance,
};
this.vaultManager.create(options, (err, vaultInstance) => {
if (err) {
console.log(err);
return;
}
vaultInstance.fetchPaymentMethods({ defaultFirst: true }, (err, paymentMethods) => {
paymentMethods.forEach(paymentMethod => {
if(paymentMethod.type == 'CreditCard') {
this.cards.push(paymentMethod);
if(paymentMethod.default) {
this.card = paymentMethod;
}
}
});
});
});
});
});
}
[결제 방법 nonce] (https://developers.braintreepayments.com/start/overview#payment-method-nonce)는 일반적으로 아예 보관 된 [결제 수단] (https : //developers.braintreepayments. co.kr/reference/response/payment-method). nonce는 소비 될 임시 지불 정보를 나타냅니다. 가장 큰 예외는 드롭 인 UI를 사용하고 클라이언트 토큰에 ['customer_id'를 포함하는 경우입니다 (https://developers.braintreepayments.com/guides/drop-in/javascript/#customer- 신분증). 드롭 인 UI의 자동 저장 기능을 사용하는지 여부를 묻는 질문을 편집 할 수 있습니까? – zepp
[고객 오브젝트] (https://developers.braintreepayments.com/reference/response/customer)를 찾아 사용자의 신용 카드 사용자 정의 목록을 생성한다고 가정하면 [지불 방법 토큰] (https : //developers.braintreepayments.com/reference/response/payment-method)에서 [고객의 지불 방법 속성] (https://developers.braintreepayments.com/reference/response/customer/#payment_methods)을 참조하십시오. 이런 방식으로 결제 수단을 채우지 않는 경우 사용자의 신용 카드 목록을 생성하는 코드를 추가 할 수 있습니까? –