mirror of
https://github.com/bitwarden/server.git
synced 2025-04-07 05:58:13 -05:00
changing payment method for bank account token
This commit is contained in:
parent
e470301327
commit
10ff21983b
@ -264,6 +264,7 @@ namespace Bit.Core.Services
|
|||||||
var updatedSubscriber = false;
|
var updatedSubscriber = false;
|
||||||
|
|
||||||
var cardService = new StripeCardService();
|
var cardService = new StripeCardService();
|
||||||
|
var bankSerice = new BankAccountService();
|
||||||
var customerService = new StripeCustomerService();
|
var customerService = new StripeCustomerService();
|
||||||
StripeCustomer customer = null;
|
StripeCustomer customer = null;
|
||||||
|
|
||||||
@ -287,14 +288,32 @@ namespace Bit.Core.Services
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
await cardService.CreateAsync(customer.Id, new StripeCardCreateOptions
|
if(paymentToken.StartsWith("btok_"))
|
||||||
{
|
{
|
||||||
SourceToken = paymentToken
|
await bankSerice.CreateAsync(customer.Id, new BankAccountCreateOptions
|
||||||
});
|
{
|
||||||
|
SourceToken = paymentToken
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
await cardService.CreateAsync(customer.Id, new StripeCardCreateOptions
|
||||||
|
{
|
||||||
|
SourceToken = paymentToken
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
if(!string.IsNullOrWhiteSpace(customer.DefaultSourceId))
|
if(!string.IsNullOrWhiteSpace(customer.DefaultSourceId))
|
||||||
{
|
{
|
||||||
await cardService.DeleteAsync(customer.Id, customer.DefaultSourceId);
|
var source = customer.Sources.FirstOrDefault(s => s.Id == customer.DefaultSourceId);
|
||||||
|
if(source.BankAccount != null)
|
||||||
|
{
|
||||||
|
await bankSerice.DeleteAsync(customer.Id, customer.DefaultSourceId);
|
||||||
|
}
|
||||||
|
else if(source.Card != null)
|
||||||
|
{
|
||||||
|
await cardService.DeleteAsync(customer.Id, customer.DefaultSourceId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user