Stripe 中分级价格的价格更新 Webhook - 不会触发 Webhook

问题描述 投票:0回答:1

我目前正在为我的应用程序设置 stripe webhook。

我遇到了分级价格更新的问题。目前,如果我更新某个层级的价格,则不会触发此事件的 Webhook。

我的其他所有内容的 Webhook 都工作正常,例如,对于统一费率的价格,当我更新价格时,Webhook 就会被触发。

我试图在文档中查找有关此内容的信息,但找不到任何明确引用此内容的内容。 Stripe 是否只是不发出定价层更新事件?

我查看了文档,并对与我的应用程序相关的所有其他 Web 挂钩进行了工作测试实现。

请参阅下面的我的代码:

stripeWebhookRoute.mjs:

import express from "express";
import bodyParser from "body-parser"
import stripePackage from 'stripe'
import { handleStripeWebhooks } from "../services/stripeServices/handleWebhooks.mjs";
const stripe = stripePackage(process.env.STRIPE_API_KEY);
const router = express.Router();




router.post('/webhook', bodyParser.raw({ type: 'application/json' }), async (req, res) => {
    
    
    let event;
    
    const sig = req.headers['stripe-signature'];
    const webHookSecret = process.env.STRIPE_WEBHOOK_KEY;
   
    try {

        if (webHookSecret) {
            event = stripe.webhooks.constructEvent(req.body, sig, webHookSecret);
        } 
    


    } catch (error) {

        console.error('⚠️  Webhook signature verification failed.', error.message);
        return res.status(400).send(`Webhook Error: ${error.message}`);

    }
    
     // Acknowledge receipt of the event right away
    res.status(200).json({ received: true });

    handleStripeWebhooks(event);
    
})





export default router; 

我的handleWebHook.mjs文件

import { handlePriceUpdate } from "./pricing/handlePricingUpdate.mjs";


/**
 * 
 * @param {*} event a stripe event
 * Receives a stripe webhook event and triggers execution logic. 
 */
export const handleStripeWebhooks = async(event) => {
   
    switch (event.type) {
        case 'price.updated':
            console.log("Price updated");
            handlePriceUpdate(event);
            break;
    
        default:
            console.log(`Unhandled event type ${event.type}.`);
    }
}
node.js stripe-payments
1个回答
0
投票

不发送

price.updated
事件预计会更改层级价格的金额,因为默认情况下,价格对象中不包含
tiers
字段。

tiers
是一个 expandable 字段,即仅在请求该特定字段的附加信息时才可用。

对于默认情况下不包含在对象中的任何可扩展字段,不会发送更新事件。

© www.soinside.com 2019 - 2024. All rights reserved.