如何使用Node.js在Braintree沙箱帐户中添加持卡人姓名

Hir*_*ati 4 javascript braintree

我必须使用node js应用程序动态添加信用卡持卡人名称。我使用Braintree进行付款交易。我添加了信用卡号,有效期和CVV。但不添加信用卡持卡人姓名。我该怎么办?

braintree.hostedFields.create({
    client: clientInstance,
    styles: {
        'input.invalid': {
            'color': 'red'
        },
        'input.valid': {
            'color': 'green'
        }
    },
    fields: {
        number: {
            selector: '#cardNumber'
        },
        cvv: {
            selector: '#cardCVC'
        },
        expirationDate: {
            selector: '#cardExpiry'
        }
    }
Run Code Online (Sandbox Code Playgroud)

Car*_*ter 5

全面披露:我在Braintree工作。如果您还有其他疑问,请随时与支持小组联系

Braintree托管字段不支持将iFrame用于持卡人姓名。这里fieldOptions列出可用的。相反,您需要向HTML form元素添加其他输入:

<form action="/" id="my-sample-form" method="post">
  <label for="card-number">Card Number</label>
  <div id="card-number"></div>

  <label for="cvv">CVV</label>
  <div id="cvv"></div>

  <label for="expiration-date">Expiration Date</label>
  <div id="expiration-date"></div>

  <label for="cardholder-name">Cardholder Name</label>
  <input id="cardholder-name" name="cardholderName" placeholder="Cardholder Name"/>

  <input type="submit" value="Pay" disabled />
</form>
Run Code Online (Sandbox Code Playgroud)

cardholderName输入的值随后可以在braintree.hostedFields.create调用中访问,event.target.cardholderName.value并且可以包含在tokenize调用options对象中

    braintree.hostedFields.create({
      client: clientInstance,
      styles: {
        'input.invalid': {
          'color': 'red'
        },
        'input.valid': {
          'color': 'green'
        }
      },
      fields: {
        number: {
          selector: '#card-number',
          placeholder: '4111 1111 1111 1111'
        },
        cvv: {
          selector: '#cvv',
          placeholder: '123'
        },
        expirationDate: {
          selector: '#expiration-date',
          placeholder: '10/2019'
        }
      }
    }, function (hostedFieldsErr, hostedFieldsInstance) {
      if (hostedFieldsErr) {
        console.error(hostedFieldsErr);
        return;
      }

      submit.removeAttribute('disabled');

      form.addEventListener('submit', function (event) {
        event.preventDefault();

        hostedFieldsInstance.tokenize({
          cardholderName: event.target.cardholderName.value
        }, function (tokenizeErr, payload) {
          if (tokenizeErr) {
            console.error(tokenizeErr);
            return;
          }

          // Submit nonce to your server here
          console.log(payload.nonce);

        });
      }, false);
    });
Run Code Online (Sandbox Code Playgroud)