我正在使用 Braintree
作为我的 iOS 应用程序的支付网关。
我创建了一个 Node.js 服务器来处理付款。
我想用用户管理系统中使用的用户id的客户id创建客户。
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 控制面板中启用 CVV 验证设置的情况下运行良好。 Here
但是启用 CVV 验证设置后,我得到 authorizationError: Authorization Error
,这意味着 API key 无效。 Here
我正在使用 DropIn UI
输入信用卡并将 paymentMethodNonce
正确传递给服务器。
当前测试信用卡号为 Number: 4242 4242 4242 4242
Exp: 12/2019
CVV: 123
.
这里有什么错误?它会在生产模式下工作吗? (Braintree 会在生产模式中接受有效的信用卡号吗?)
最佳答案
我在布伦特里工作。如果您还有任何疑问,请随时联系support .
您用来执行更新 API 调用的用户可能没有执行卡验证的正确权限。我建议检查用户的角色并确保它具有所有必要的权限:https://articles.braintreepayments.com/control-panel/basics/users-roles#creating-and-editing-roles
如果执行此操作后您仍然收到授权错误,我建议联系 Braintree support.
关于ios - Braintree:在沙盒模式下创建或更新具有 CVV 验证的客户时出现授权错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42593955/