From ec248f86052973944b737ff91f4fb8752b436a0c Mon Sep 17 00:00:00 2001 From: martmull Date: Tue, 21 May 2024 12:08:51 +0200 Subject: [PATCH] Remove dumb code placement (#5494) Fix a bug introduced in [this PR](https://github.com/twentyhq/twenty/pull/5254/files) When a subscription is created, we need to create the subscription, #5254 return if no subscription is created so the sub can never be created at all This PR fixes that --- .../core-modules/billing/billing.service.ts | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/packages/twenty-server/src/engine/core-modules/billing/billing.service.ts b/packages/twenty-server/src/engine/core-modules/billing/billing.service.ts index 356cdec4e..8228788f4 100644 --- a/packages/twenty-server/src/engine/core-modules/billing/billing.service.ts +++ b/packages/twenty-server/src/engine/core-modules/billing/billing.service.ts @@ -96,6 +96,12 @@ export class BillingService { return notCanceledSubscriptions?.[0]; } + async getBillingSubscription(stripeSubscriptionId: string) { + return this.billingSubscriptionRepository.findOneOrFail({ + where: { stripeSubscriptionId }, + }); + } + async getStripeCustomerId(workspaceId: string) { const subscriptions = await this.billingSubscriptionRepository.find({ where: { workspaceId }, @@ -265,14 +271,6 @@ export class BillingService { subscriptionStatus: data.object.status, }); - const billingSubscription = await this.getCurrentBillingSubscription({ - workspaceId, - }); - - if (!billingSubscription) { - return; - } - await this.billingSubscriptionRepository.upsert( { workspaceId: workspaceId, @@ -287,6 +285,10 @@ export class BillingService { }, ); + const billingSubscription = await this.getBillingSubscription( + data.object.id, + ); + await this.billingSubscriptionItemRepository.upsert( data.object.items.data.map((item) => { return {