From 4373fddaa884d926822a8b2a5cb774925228a15e Mon Sep 17 00:00:00 2001 From: prafull-opensignlabs <93375423+prafull-opensignlabs@users.noreply.github.com> Date: Thu, 8 Aug 2024 14:58:38 +0530 Subject: [PATCH] fix: Error while calling webhook --- .../cloud/customRoute/saveSubscription.js | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/apps/OpenSignServer/cloud/customRoute/saveSubscription.js b/apps/OpenSignServer/cloud/customRoute/saveSubscription.js index dfdca0c2b..214bb3707 100644 --- a/apps/OpenSignServer/cloud/customRoute/saveSubscription.js +++ b/apps/OpenSignServer/cloud/customRoute/saveSubscription.js @@ -1,9 +1,9 @@ export default async function saveSubscription(request, response) { - const SubscriptionId = request.body.data.subscription.subscription_id; + const SubscriptionId = request.body?.data?.subscription?.subscription_id; const body = request.body; - const Email = request.body.data.subscription.customer.email; - const Next_billing_date = request.body.data.subscription.next_billing_at; - const planCode = request.body.data.subscription.plan.plan_code + const Email = request.body.data?.subscription?.customer?.email; + const Next_billing_date = request.body?.data?.subscription?.next_billing_at; + const planCode = request.body?.data?.subscription?.plan?.plan_code; try { const extUserCls = new Parse.Query('contracts_Users'); @@ -22,7 +22,11 @@ export default async function saveSubscription(request, response) { updateSubscription.id = subscription.id; updateSubscription.set('SubscriptionId', SubscriptionId); updateSubscription.set('SubscriptionDetails', body); - updateSubscription.set('Next_billing_date', new Date(Next_billing_date)); + if (Next_billing_date) { + updateSubscription.set('Next_billing_date', new Date(Next_billing_date)); + } else { + updateSubscription.unset('Next_billing_date'); + } updateSubscription.set('PlanCode', planCode); await updateSubscription.save(null, { useMasterKey: true }); return response.status(200).json({ status: 'update subscription!' }); @@ -45,7 +49,11 @@ export default async function saveSubscription(request, response) { className: 'partners_Tenant', objectId: extUser.get('TenantId').id, }); - createSubscription.set('Next_billing_date', new Date(Next_billing_date)); + if (Next_billing_date) { + createSubscription.set('Next_billing_date', new Date(Next_billing_date)); + } else { + createSubscription.unset('Next_billing_date'); + } createSubscription.set('PlanCode', planCode); await createSubscription.save(null, { useMasterKey: true }); return response.status(200).json({ status: 'create subscription!' });