条带付款方法中出现未处理的拒绝错误



我使用条纹作为付款。在我的代码中,它的generate clientSecret和request出现在我的stripe帐户中,但它不符合要求并显示为客户尚未输入他们的付款方式。当我点击"立即付款"按钮时,出现错误

Unhandled Rejection (TypeError): Cannot read property 'uid' of undefined

在控制台中。。。

POST https://api.stripe.com/v1/payment_intents/pi_1HWKxuFi3enyg1Glqirj0Wto/confirm 400
undefine  //that means paymentIntent is not definr
Uncaught (in promise) TypeError: Cannot read property 'uid' of undefined 
at async handleSubmit 

这是我的密码。。

useEffect(() => {
const getClientSecret = async () => {
const response = await axios({

method: 'post',
url: `/payments/create?total=${getBasketTotal(basket) * 100}`
})
console.log('response is >>>>>>>>>>>', response)

setClientSecret(response.data.clientSecret)
}
getClientSecret()
}, [basket])

console.log('the secrate is >>>>>>>>', clientSecret)


const handleSubmit = async (event) => {
event.preventDefault()
setProcessing(true)
const payload = await stripe.confirmCardPayment(clientSecret, {
payment_method: {
card: elements.getElement(CardElement)
}

}).then(({ paymentIntent }) => {
console.log(paymentIntent)
db
.collection('users')
.doc(user?.uid)
.collection('orders')
.doc(paymentIntent.uid)
.set({
basket: basket,
amount: paymentIntent.amount,
created: paymentIntent.created
})

//payment  
setSucceeded(true)
setError(null)
setProcessing(false)

dispatch({
type: 'EMTY_BASKET'
})
history.replace('/orders')
})
}

为什么是错误?为什么我会得到它??

我的答案解决了。。。

只要确保你投的是相同的货币。

例如:如果你提到印度是你的国家,那么就把";inr";否则";美元;

最新更新