diff --git a/source/VMelnalksnis.NordigenDotNet/Accounts/BookedTransaction.cs b/source/VMelnalksnis.NordigenDotNet/Accounts/BookedTransaction.cs deleted file mode 100644 index 2e995ba..0000000 --- a/source/VMelnalksnis.NordigenDotNet/Accounts/BookedTransaction.cs +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2022 Valters Melnalksnis -// Licensed under the Apache License 2.0. -// See LICENSE file in the project root for full license information. - -using System; - -using NodaTime; - -using VMelnalksnis.NordigenDotNet.Institutions; - -namespace VMelnalksnis.NordigenDotNet.Accounts; - -/// A transaction that has been booked - posted to an account on the account servicer's books. -public record BookedTransaction : Transaction -{ - /// Gets or sets a unique transaction id created by the . - public string TransactionId { get; set; } = null!; - - /// Gets or sets a unique transaction id created by Nordigen. - public string InternalTransactionId { get; set; } = null!; - - /// Gets or sets the date when an entry is posted to an account on the account servicer's books. - public DateTimeOffset BookingDate { get; set; } - - /// Gets or sets the name of the counterparty that sends during the transaction. - public string? DebtorName { get; set; } - - /// Gets or sets the account of the counterparty that sends during the transaction. - public TransactionAccount? DebtorAccount { get; set; } - - /// Gets or sets the name of the counterparty that receives during the transaction. - public string? CreditorName { get; set; } - - /// Gets or sets the account of the counterparty that receives during the transaction. - public TransactionAccount? CreditorAccount { get; set; } - - /// Gets or sets the ISO 20022 bank transaction code. - /// Some example values: - /// - /// PMNT-ICDT-STDO - /// PMNT-IRCT-STDO - /// - public string? BankTransactionCode { get; set; } - - /// Gets or sets a transaction id, used both by the transaction and any fees paid to the for the transaction. - public string? EntryReference { get; set; } - - /// Gets or sets additional structured information about the transaction from the institution. - /// - /// - /// PURCHASE - /// INWARD TRANSFER - /// - public string? AdditionalInformation { get; set; } -} diff --git a/source/VMelnalksnis.NordigenDotNet/Accounts/PendingTransaction.cs b/source/VMelnalksnis.NordigenDotNet/Accounts/PendingTransaction.cs deleted file mode 100644 index 1af3bec..0000000 --- a/source/VMelnalksnis.NordigenDotNet/Accounts/PendingTransaction.cs +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2022 Valters Melnalksnis -// Licensed under the Apache License 2.0. -// See LICENSE file in the project root for full license information. - -namespace VMelnalksnis.NordigenDotNet.Accounts; - -/// A transaction that is still pending. -public record PendingTransaction : Transaction; diff --git a/source/VMelnalksnis.NordigenDotNet/Accounts/Transaction.cs b/source/VMelnalksnis.NordigenDotNet/Accounts/Transaction.cs index 51b5e6e..c33bd52 100644 --- a/source/VMelnalksnis.NordigenDotNet/Accounts/Transaction.cs +++ b/source/VMelnalksnis.NordigenDotNet/Accounts/Transaction.cs @@ -10,7 +10,7 @@ using NodaTime; namespace VMelnalksnis.NordigenDotNet.Accounts; /// Common information for all transactions. -public abstract record Transaction +public record Transaction { /// Gets or sets the amount transferred in this transaction. public AmountInCurrency TransactionAmount { get; set; } = null!; @@ -21,4 +21,49 @@ public abstract record Transaction /// Gets or sets the date when the transaction was valued at. public DateTimeOffset? ValueDate { get; set; } + + /// Gets or sets a unique transaction id created by the . + public string TransactionId { get; set; } = null!; + + /// Gets or sets a unique transaction id created by Nordigen. + public string InternalTransactionId { get; set; } = null!; + + /// Gets or sets the date when an entry is posted to an account on the account servicer's books. + public DateTimeOffset? BookingDate { get; set; } + + /// Gets or sets the name of the counterparty that sends during the transaction. + public string? DebtorName { get; set; } + + /// Gets or sets the account of the counterparty that sends during the transaction. + public TransactionAccount? DebtorAccount { get; set; } + + /// Gets or sets the name of the counterparty that receives during the transaction. + public string? CreditorName { get; set; } + + /// Gets or sets the account of the counterparty that receives during the transaction. + public TransactionAccount? CreditorAccount { get; set; } + + /// Gets or sets the ISO 20022 bank transaction code. + /// Some example values: + /// + /// PMNT-ICDT-STDO + /// PMNT-IRCT-STDO + /// + public string? BankTransactionCode { get; set; } + + /// Gets or sets a transaction id, used both by the transaction and any fees paid to the for the transaction. + public string? EntryReference { get; set; } + + /// Gets or sets additional structured information about the transaction from the institution. + /// + /// + /// PURCHASE + /// INWARD TRANSFER + /// + public string? AdditionalInformation { get; set; } +} + + +public record PendingTransaction : Transaction +{ } diff --git a/source/VMelnalksnis.NordigenDotNet/Accounts/Transactions.cs b/source/VMelnalksnis.NordigenDotNet/Accounts/Transactions.cs index dd605a0..6e883c2 100644 --- a/source/VMelnalksnis.NordigenDotNet/Accounts/Transactions.cs +++ b/source/VMelnalksnis.NordigenDotNet/Accounts/Transactions.cs @@ -10,7 +10,7 @@ namespace VMelnalksnis.NordigenDotNet.Accounts; public record Transactions { /// Gets or sets all transactions that have been booked. - public List Booked { get; set; } = null!; + public List Booked { get; set; } = null!; /// Gets or sets all transaction that are still pending. public List Pending { get; set; } = null!; diff --git a/source/VMelnalksnis.NordigenDotNet/VMelnalksnis.NordigenDotNet.csproj b/source/VMelnalksnis.NordigenDotNet/VMelnalksnis.NordigenDotNet.csproj index 6cdde71..96daef7 100644 --- a/source/VMelnalksnis.NordigenDotNet/VMelnalksnis.NordigenDotNet.csproj +++ b/source/VMelnalksnis.NordigenDotNet/VMelnalksnis.NordigenDotNet.csproj @@ -14,17 +14,17 @@ - - - + + + - + - +