namespace Asentrafin.Api.Entities; public class PlaidTransaction { public Guid Id { get; set; } = Guid.NewGuid(); public Guid PlaidItemId { get; set; } public PlaidItem PlaidItem { get; set; } = null!; public Guid? PlaidAccountId { get; set; } public PlaidAccount? PlaidAccount { get; set; } public string PlaidTransactionId { get; set; } = string.Empty; public string AccountPlaidId { get; set; } = string.Empty; public DateOnly Date { get; set; } public DateOnly? AuthorizedDate { get; set; } public string Name { get; set; } = string.Empty; public string? MerchantName { get; set; } public decimal Amount { get; set; } public bool Pending { get; set; } public string? IsoCurrencyCode { get; set; } public string? UnofficialCurrencyCode { get; set; } public string[] Categories { get; set; } = []; public string? PersonalFinanceCategoryPrimary { get; set; } public string? PersonalFinanceCategoryDetailed { get; set; } public DateTimeOffset CreatedAt { get; set; } = DateTimeOffset.UtcNow; public DateTimeOffset UpdatedAt { get; set; } = DateTimeOffset.UtcNow; public DateTimeOffset? RemovedAt { get; set; } public string RawJson { get; set; } = "{}"; public TransactionClassification? Classification { get; set; } }