mirror of
https://github.com/bitwarden/server.git
synced 2025-05-23 12:31:06 -05:00
Check for payment method before subscription (#5631)
This commit is contained in:
parent
0928e656cc
commit
a36db63998
@ -292,15 +292,17 @@ public class OrganizationBillingController(
|
|||||||
sale.Organization.PlanType = plan.Type;
|
sale.Organization.PlanType = plan.Type;
|
||||||
sale.Organization.Plan = plan.Name;
|
sale.Organization.Plan = plan.Name;
|
||||||
sale.SubscriptionSetup.SkipTrial = true;
|
sale.SubscriptionSetup.SkipTrial = true;
|
||||||
await organizationBillingService.Finalize(sale);
|
|
||||||
|
if (organizationSignup.PaymentMethodType == null || string.IsNullOrEmpty(organizationSignup.PaymentToken))
|
||||||
|
{
|
||||||
|
return Error.BadRequest("A payment method is required to restart the subscription.");
|
||||||
|
}
|
||||||
var org = await organizationRepository.GetByIdAsync(organizationId);
|
var org = await organizationRepository.GetByIdAsync(organizationId);
|
||||||
Debug.Assert(org is not null, "This organization has already been found via this same ID, this should be fine.");
|
Debug.Assert(org is not null, "This organization has already been found via this same ID, this should be fine.");
|
||||||
if (organizationSignup.PaymentMethodType != null)
|
var paymentSource = new TokenizedPaymentSource(organizationSignup.PaymentMethodType.Value, organizationSignup.PaymentToken);
|
||||||
{
|
var taxInformation = TaxInformation.From(organizationSignup.TaxInfo);
|
||||||
var paymentSource = new TokenizedPaymentSource(organizationSignup.PaymentMethodType.Value, organizationSignup.PaymentToken);
|
await organizationBillingService.UpdatePaymentMethod(org, paymentSource, taxInformation);
|
||||||
var taxInformation = TaxInformation.From(organizationSignup.TaxInfo);
|
await organizationBillingService.Finalize(sale);
|
||||||
await organizationBillingService.UpdatePaymentMethod(org, paymentSource, taxInformation);
|
|
||||||
}
|
|
||||||
|
|
||||||
return TypedResults.Ok();
|
return TypedResults.Ok();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user