public async Task <StripePaymentResultOutput> GetPaymentResult(StripePaymentResultInput input) { var payment = await _subscriptionPaymentRepository.GetAsync(input.PaymentId); var sessionId = await _subscriptionPaymentExtensionDataRepository.GetExtensionDataAsync(input.PaymentId, StripeGatewayManager.StripeSessionIdSubscriptionPaymentExtensionDataKey); if (string.IsNullOrEmpty(sessionId)) { throw new UserFriendlyException(L("ThereIsNoStripeSessionIdOnPayment", input.PaymentId)); } using (CurrentUnitOfWork.SetTenantId(null)) { var tenant = await TenantManager.GetByIdAsync(payment.TenantId); await _stripeGatewayManager.UpdateCustomerDescriptionAsync(sessionId, tenant.TenancyName); } if (payment.Status == SubscriptionPaymentStatus.Completed) { return(new StripePaymentResultOutput { PaymentDone = true }); } return(new StripePaymentResultOutput { PaymentDone = false }); }
public async Task <StripePaymentResultOutput> GetPaymentResult(StripePaymentResultInput input) { var payment = await _subscriptionPaymentRepository.GetAsync(input.PaymentId); var sessionId = await _subscriptionPaymentExtensionDataRepository.GetExtensionDataAsync(input.PaymentId, StripeGatewayManager.StripeSessionIdSubscriptionPaymentExtensionDataKey); if (string.IsNullOrEmpty(sessionId)) { throw new UserFriendlyException(L("ThereIsNoStripeSessionIdOnPayment", input.PaymentId)); } if (payment.Status == SubscriptionPaymentStatus.Completed) { return(new StripePaymentResultOutput { PaymentDone = true }); } return(new StripePaymentResultOutput { PaymentDone = false }); }