public async Task <Subscription> CancelSubscriptionAsync(SubscriptionCancelRequest request)
        {
            var workContext = _workContextAccessor.WorkContext;

            return((await _subscriptionApi.CancelSubscriptionAsync(new AutoRestClients.SubscriptionModuleApi.Models.SubscriptionCancelRequest
            {
                CancelReason = request.CancelReason,
                SubscriptionId = request.SubscriptionId
            })).ToSubscription(workContext.AllCurrencies, workContext.CurrentLanguage));
        }
        public async Task <Subscription> CancelSubscriptionAsync(SubscriptionCancelRequest request)
        {
            var workContext = _workContextAccessor.WorkContext;
            var result      = (await _subscriptionApi.CancelSubscriptionAsync(new AutoRestClients.SubscriptionModuleApi.Models.SubscriptionCancelRequest
            {
                CancelReason = request.CancelReason,
                SubscriptionId = request.SubscriptionId
            })).ToSubscription(workContext.AllCurrencies, workContext.CurrentLanguage);

            SubscriptionCacheRegion.ExpireCustomerSubscription(request.CustomerId);

            return(result);
        }