簡體   English   中英

如何在 Stripe 的服務器端檢查支付是否成功

[英]How to check if payment is successful on server side in Stripe

我想使用 Stripe 支付,但在服務器端檢查支付是否成功時發現了一些問題。

如果付款成功,那么我想觸發數據庫為用戶更新付款。

我正在使用 nodejs 與 vue 集成,我的 nodejs 代碼如下所示:

app.post("/create-checkout-session", async (req, res) => {
const {
 amount,
 product,
 currency
} = req.body;
const session = await stripe.checkout.sessions.create({
payment_method_types: ["card"],
line_items: [
  {
    price_data: {
      currency: currency,
      product_data: {
        name: product,
      },
      unit_amount: amount,
    },
    quantity: 1,
  },
],
mode: "payment",
success_url: "http://localhost:3000/successPayment",
cancel_url: "http://localhost:3000/cancel",
});
res.json({ id: session.id });
});

有沒有辦法在服務器端檢查支付是否成功? 在這里檢查它是否安全,或者一旦用戶到達成功頁面我就觸發了數據庫?

正如評論所說,webhook 是執行此操作的最佳方式: https://stripe.com/docs/payments/checkout/fulfill-orders#create-event-handler

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM