我正在使用Braintree托管字段来处理付款,但是在查找或查找如何为客户提交现有付款方式的示例时遇到了问题。使用braintree_customer_id,我可以检索客户信息,包括creditCards数组,该数组包含最后4位数字,cardType,令牌和其他信息。由于我使用的是托管字段,因此我使用的javascript如下所示:

braintree.setup("<?= $clientToken ?>", 'custom', {
  id: 'my-form',
  hostedFields: {
    styles: {
      'input': {
        'font-family': '"Helvetica Neue", Helvetica, Arial, sans-serif',
        'font-size': '14px',
      },
      '::-moz-placeholder': { 'color': '#999' },
      ':-ms-input-placeholder': { 'color': '#999' },
      '::-webkit-input-placeholder': { 'color': '#999' },
    },
    number: {
      selector: '#hosted-fields-number',
      placeholder: 'Credit Card Number'
    },onFieldEvent: handleFieldEvent,
    cvv: {
      selector: '#hosted-fields-cvv',
      placeholder: 'CVV'
    },
    expirationDate: {
      selector: '#hosted-fields-expiration',
      placeholder: 'Expiration Date'
    }
  }, onPaymentMethodReceived: function (obj) {
        var nonce = obj.nonce;
        console.log(obj);
        if(nonce){
            final_checkout(nonce);
        }
    },
    onError: function (){
        alert('wrong details');
    }
});


如何获得能够执行付款流程所需的付款方式随机数?以下示例使用托管字段,如何使用customer_id和令牌处理现有客户?

最佳答案

全面披露:我在Braintree工作。如果您还有其他疑问,请随时contact support

paymentMethodToken是收取特定客户的付款方式所需要的全部。由于此信息不是PCI敏感数据,因此可以将其直接传递到服务器并进行Braintree_Transaction::sale调用。这可以在托管字段流之外完成。您可以让客户指定特定的付款方式,或为新的付款方式输入信息。

10-06 11:32
查看更多