mirror of
https://github.com/bitwarden/server.git
synced 2025-02-17 02:01:53 +01:00
handle appleReceipt already existing on customer
This commit is contained in:
parent
d04d92bb89
commit
5e7ac0a9bc
@ -1297,7 +1297,20 @@ namespace Bit.Core.Services
|
||||
|
||||
if(appleReceiptStatus != null)
|
||||
{
|
||||
stripeCustomerMetadata.Add("appleReceipt", appleReceiptStatus.GetOriginalTransactionId());
|
||||
var originalTransactionId = appleReceiptStatus.GetOriginalTransactionId();
|
||||
if(stripeCustomerMetadata.ContainsKey("appleReceipt"))
|
||||
{
|
||||
if(originalTransactionId != stripeCustomerMetadata["appleReceipt"])
|
||||
{
|
||||
var nowSec = Utilities.CoreHelpers.ToEpocSeconds(DateTime.UtcNow);
|
||||
stripeCustomerMetadata.Add($"appleReceipt_{nowSec}", stripeCustomerMetadata["appleReceipt"]);
|
||||
}
|
||||
stripeCustomerMetadata["appleReceipt"] = originalTransactionId;
|
||||
}
|
||||
else
|
||||
{
|
||||
stripeCustomerMetadata.Add("appleReceipt", originalTransactionId);
|
||||
}
|
||||
await _appleIapService.SaveReceiptAsync(appleReceiptStatus, subscriber.Id);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user