From 3f1e75646783ab4751d4c3f216479ab8f5f9d993 Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Mon, 22 Dec 2025 08:28:37 -0500 Subject: [PATCH] wip (#529) --- lib/routes/stripe/webhook.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/routes/stripe/webhook.js b/lib/routes/stripe/webhook.js index fc5cc16..a792b84 100644 --- a/lib/routes/stripe/webhook.js +++ b/lib/routes/stripe/webhook.js @@ -13,6 +13,10 @@ const handleInvoicePaymentSucceeded = async(logger, obj) => { const sub = await retrieveSubscription(logger, subscription); if ('active' === sub.status) { const {account_sid} = sub.metadata; + if (!account_sid) { + logger.info({subscription}, `handleInvoicePaymentSucceeded: received subscription ${sub.id} without account_sid`); + return; + } if (await Account.activateSubscription(logger, account_sid, sub.id, 'subscription_create' === obj.billing_reason ? 'upgrade to paid plan' : 'change plan details')) { logger.info(`handleInvoicePaymentSucceeded: activated subscription for account ${account_sid}`); @@ -35,6 +39,10 @@ const handleInvoicePaymentFailed = async(logger, obj) => { const sub = await retrieveSubscription(logger, subscription); logger.debug({obj}, `payment for ${obj.billing_reason} failed, subscription status is ${sub.status}`); const {account_sid} = sub.metadata; + if (!account_sid) { + logger.info({subscription}, `handleInvoicePaymentFailed: received subscription ${sub.id} without account_sid`); + return; + } if (await Account.deactivateSubscription(logger, account_sid, 'payment failed')) { logger.info(`handleInvoicePaymentFailed: deactivated subscription for account ${account_sid}`); }