Брейнтри Node.js не удается получить транзакцию.продажа для работы

#javascript #node.js #reactjs #braintree #braintree-sandbox

Вопрос:

Я создаю приложение reactjs, которое, среди прочего, будет включать интеграцию пользовательского интерфейса Braintree Dropin. До сих пор мне удавалось заставить пользовательский интерфейс отображаться и отправлять полезную нагрузку на серверную часть. Однако я не могу заставить работать часть gateway.transaction.sale (). Вот соответствующие части моего кода:

Когда пользователь нажимает кнопку «Оплатить», это срабатывает:

 instance.requestPaymentMethod().then(function (payload) {
    console.log(payload);
    completePayment(amount, payload.nonce, userId, sessionId).then((result) => {
        console.log( result );
    });
}).catch(function (err) {
    alert(err.message);
});
 

И это код, который должен обрабатывать транзакцию:

 return gateway.transaction.sale({
    amount: amount,
    paymentMethodNonce: nonce,
    customFields: {
        session_id: sessionId,
        user_id: userId
    },
    options: {
        submitForSettlement: true
    }
}).then(function (result) {
    if (result.success) {
        console.log('Transaction ID: '   result.transaction.id);
    } else {
        console.error(result.message);
    }
}).catch(( error ) => {
    alert(error);
});
 

Каждый раз, когда эта функция запускается, я получаю эту ошибку от catch:

Ошибка типа: не удается присвоить свойству «успех» значение :не объект

Может ли кто-нибудь указать мне правильное направление?

Пожалуйста, обратите внимание, что я не очень хорошо знаком с react, node и т. Д., Поэтому мой код может быть не самым лучшим…