2017-03-04 6 views
0

Braintree을 내 iOS 앱의 결제 게이트웨이로 사용하고 있습니다.
지불을 처리하기 위해 Node.js 서버를 만들었습니다.
사용자 관리 시스템에서 사용되는 사용자 ID의 고객 ID로 고객을 생성하려고합니다.Braintree : Sandbox 모드에서 CVV 확인을 사용하여 고객을 만들거나 업데이트 할 때 승인 오류

BraintreeGateway.customer.update(req.uid, { 
    paymentMethodNonce, 
    verifyCard: process.env.NODE_ENV === 'production' 
}, (err, result) => { 
    if (err) { 
    next(err); 
    } else { 
    if (result.success) { 
     req.customer = result.customer 
     console.info('Payment Method:', result.customer.paymentMethods[0]) 
     res.send({ 
     status: HttpStatus.OK, 
     message: 'Successfully updated!' 
     }) 
    } else { 
     next({ 
     error: 'Failed to update a payment method!', 
     result 
     }) 
    } 
    } 
}) 

여기서 req.uid은 사용자의 고유 한 식별자입니다.
Braintree Control Panel에서 CVV 확인 설정을 사용하지 않으면 제대로 작동합니다. Here
CVV 확인 설정을 사용하면 잘못된 API 키인 authorizationError: Authorization Error이 표시됩니다. Here
DropIn UI을 사용하여 신용 카드를 입력하고 paymentMethodNonce을 서버에 올바르게 전달합니다.
현재 시험용 신용 카드 번호는 번호 : 4242 4242 4242 4242 만료 : 12/2019 CVV : 123입니다.

여기에 무슨 실수가 있나요? 생산 모드에서 작동합니까? (Braintree는 생산 모드에서 유효한 신용 카드 번호를 수락합니까?)

답변

1

저는 Braintree에서 일합니다. 더 궁금한 점이 있으시면 support으로 연락하십시오.

업데이트 API 호출을 수행하는 데 사용하는 사용자에게 카드 확인을 수행 할 수있는 올바른 권한이없는 것 같습니다. 나는 사용자의 역할을 확인하고 필요한 모든 권한을 가지고 있는지 확인하는 것이 좋습니다 : https://articles.braintreepayments.com/control-panel/basics/users-roles#creating-and-editing-roles

이렇게 후에도 권한 오류가 발생하면, 나는 브레인 support.

을 청하는 것이 좋습니다