fix(infra): update transaction amount handling to use CanonicalAmount and ensure negative values in transaction tests

This commit is contained in:
Stevan Freeborn
2026-03-11 20:01:23 -05:00
parent e3acb2166d
commit 559908a150
5 changed files with 7 additions and 2 deletions
@@ -89,7 +89,7 @@ internal sealed class PlaidAddedTransactionHandler : IPlaidAddedTransactionHandl
account.Id,
addedTransaction.Merchant,
addedTransaction.Description,
addedTransaction.Amount,
addedTransaction.CanonicalAmount,
addedTransaction.PostedDate,
transactionMetadata
);
@@ -7,6 +7,7 @@ public static class PlaidExtensions
{
public string Merchant => transaction.MerchantName ?? "Unknown merchant";
public string Description => transaction.OriginalDescription ?? "";
public decimal? CanonicalAmount => transaction.Amount is decimal amount ? -amount : null;
public DateTimeOffset PostedDate => transaction.Datetime ?? (
transaction.Date.HasValue
? new DateTimeOffset(
@@ -84,7 +84,7 @@ internal sealed class PlaidModifiedTransactionHandler : IPlaidModifiedTransactio
existing.AccountId,
plaidModifiedTransaction.Merchant,
plaidModifiedTransaction.Description,
plaidModifiedTransaction.Amount,
plaidModifiedTransaction.CanonicalAmount,
plaidModifiedTransaction.PostedDate,
plaidMetadata
);