diff --git a/services/web/app/src/Features/Subscription/SubscriptionController.js b/services/web/app/src/Features/Subscription/SubscriptionController.js index dd464094e6..c1b186b476 100644 --- a/services/web/app/src/Features/Subscription/SubscriptionController.js +++ b/services/web/app/src/Features/Subscription/SubscriptionController.js @@ -355,12 +355,16 @@ module.exports = SubscriptionController = { recurlyCallback(req, res, next) { logger.log({ data: req.body }, 'received recurly callback') // we only care if a subscription has exipired + const event = Object.keys(req.body)[0] + const eventData = req.body[event] if ( - req.body != null && - req.body['expired_subscription_notification'] != null + [ + 'new_subscription_notification', + 'updated_subscription_notification', + 'expired_subscription_notification' + ].includes(event) ) { - const recurlySubscription = - req.body['expired_subscription_notification'].subscription + const recurlySubscription = eventData.subscription return SubscriptionHandler.recurlyCallback( recurlySubscription, { ip: req.ip }, diff --git a/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js b/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js index 44898c7fad..eb009a9013 100644 --- a/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js +++ b/services/web/test/unit/src/Subscription/SubscriptionControllerTests.js @@ -550,7 +550,7 @@ describe('SubscriptionController', function() { this.user.id = this.activeRecurlySubscription.account.account_code this.req = { body: { - new_subscription_notification: { + renewed_subscription_notification: { subscription: { uuid: this.activeRecurlySubscription.uuid }