Class SepaDummyAccount
Helper class that can be used to generate CAMT data for a dummy test account.
Inheritance
Inherited Members
Namespace: Subsembly.Sepa
Assembly: Subsembly.Sepa.dll
Syntax
public class SepaDummyAccount
Remarks
The statement entries generated for the dummy account always have the status BOOK if they have a past entry date, and have the status PDNG if they have an entry date of Today or later.
Constructors
SepaDummyAccount(SepaAccount)
Declaration
public SepaDummyAccount(SepaAccount aAccount)
Parameters
Type | Name | Description |
---|---|---|
SepaAccount | aAccount | The account details of the account for which this class shall produce dummy data.
Must not be |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | |
System.ArgumentException | |
System.NotSupportedException |
Fields
ALTERNATE_ACCT_NO
Declaration
public const string ALTERNATE_ACCT_NO = "9999999998"
Field Value
Type | Description |
---|---|
System.String |
BUSINESS_ACCT_NO
Declaration
public const string BUSINESS_ACCT_NO = "9999999997"
Field Value
Type | Description |
---|---|
System.String |
DEFAULT_ACCT_CURRENCY
Declaration
public const string DEFAULT_ACCT_CURRENCY = "EUR"
Field Value
Type | Description |
---|---|
System.String |
MAGIC_ACCT_NO
Declaration
public const string MAGIC_ACCT_NO = "9999999999"
Field Value
Type | Description |
---|---|
System.String |
MAGIC_CARD_NO
Declaration
public const string MAGIC_CARD_NO = "2720999999999996"
Field Value
Type | Description |
---|---|
System.String |
SUBSEMBLY_ACCTHOLDER
Default value for ProduceBankAccount(String, String, String, String, String).
Declaration
public const string SUBSEMBLY_ACCTHOLDER = "Karin Schulz"
Field Value
Type | Description |
---|---|
System.String |
SUBSEMBLY_BANKCODE
Default value for ProduceBankAccount(String, String, String, String, String).
Declaration
public const string SUBSEMBLY_BANKCODE = "99000354"
Field Value
Type | Description |
---|---|
System.String |
SUBSEMBLY_BIC
Default value for ProduceBankAccount(String, String, String, String, String).
Declaration
public const string SUBSEMBLY_BIC = "SUBSDEM0000"
Field Value
Type | Description |
---|---|
System.String |
SUBSEMBLY_CARDHOLDER
Default value for ProduceCardAccount(String, String, String).
Declaration
public const string SUBSEMBLY_CARDHOLDER = "Karin Schulz"
Field Value
Type | Description |
---|---|
System.String |
SUBSEMBLY_VATID
Default value for ProduceBankAccount(String, String, String, String, String).
Declaration
public const string SUBSEMBLY_VATID = "DE999999999"
Field Value
Type | Description |
---|---|
System.String |
Remarks
TODO: This dummy VAT ID probably has a wrong check digit. Should be changed to a VAT ID with a correct check digit.
Properties
Account
The SepaAccount that was passed to the ctor.
Declaration
public SepaAccount Account { get; }
Property Value
Type | Description |
---|---|
SepaAccount |
AdditionalStmtInformation
This information is included in the AdditionalInformation property of the statement generated by ProduceBankToCustomerStatementStatement(DateTime, DateTime, Int32).
Declaration
public string AdditionalStmtInformation { get; set; }
Property Value
Type | Description |
---|---|
System.String |
CreditLimit
This limit is included as the CreditLineAmount in all balances generated for this dummy account.
Declaration
public decimal CreditLimit { get; set; }
Property Value
Type | Description |
---|---|
System.Decimal |
Methods
ProduceBalance(DateTime, SepaBalanceType)
Computes and produces the closing day balance for the given entry date.
Declaration
public SepaBalance ProduceBalance(DateTime tDate, SepaBalanceType nType = SepaBalanceType.ClosingBooked)
Parameters
Type | Name | Description |
---|---|---|
System.DateTime | tDate | The entry date for which to compute and produce the closing balance. |
SepaBalanceType | nType | Optional balance type. The default is ClosingBooked. Chosing a different balance type does not change the computed balance value. Regardless of the balance type, this method always computes and returns the closing day balance of the given date. |
Returns
Type | Description |
---|---|
SepaBalance |
ProduceBankAccount(String, String, String, String, String)
Produces a fully initialized SepaAccount instance for a German bank account.
Declaration
public static SepaAccount ProduceBankAccount(string sGermanAcctNo = "9999999999", string sBankCode = "99000354", string sBIC = "SUBSDEM0000", string sCurrencyCode = "EUR", string sAcctHolderName = "Karin Schulz")
Parameters
Type | Name | Description |
---|---|---|
System.String | sGermanAcctNo | Mandatory domestic account number with up to 10 digits length. |
System.String | sBankCode | Mandatory "Bankleitzahl" with exactly eight digits. To allow test bank codes, this is not checked to be a valid "Bankleitzahl" and may start with any digit, including "0" and "9". |
System.String | sBIC | Mandatory BIC of the bank. This must be a syntactically correct BIC that contains the country code "DE". |
System.String | sCurrencyCode | Mandatory valid account currency code. |
System.String | sAcctHolderName | Optional name of the account owner. Must not be longer than MaxNmLen characters. |
Returns
Type | Description |
---|---|
SepaAccount |
ProduceBankToCustomerAccountReport()
Produces a current CAMT 052 account report using the current CAMT 052 version.
Declaration
public SepaDocument ProduceBankToCustomerAccountReport()
Returns
Type | Description |
---|---|
SepaDocument | Returns a new SepaDocument that contains a single SepaStatement with statement entries from Today and the following three days. If there are no statement entries in this range, then an empty SepaStatement is contained. The returned statement does not contain any balance in Balances. |
ProduceBankToCustomerAccountReport(DateTime, DateTime, SepaMessageInfo)
Produces a dummy CAMT 052 account report for any date range.
Declaration
public SepaDocument ProduceBankToCustomerAccountReport(DateTime tFromDate, DateTime tToDate, SepaMessageInfo aMessageInfo = null)
Parameters
Type | Name | Description |
---|---|---|
System.DateTime | tFromDate | The entry date of the first date that shall be included in the returned statement
data. This must not be |
System.DateTime | tToDate | The entry date of the last date that shall be included in the returned statement
data. This must not be |
SepaMessageInfo | aMessageInfo | Optional specification of the CAMT message version that shall be created. If this
is |
Returns
Type | Description |
---|---|
SepaDocument | Returns a new SepaDocument that contains a single SepaStatement that contains all the statement entries from the requested date range. If there are no statement entries in the requested range, then an empty SepaStatement is contained. The returned statement does not contain any balance in Balances. |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | |
System.ArgumentException |
ProduceBankToCustomerAccountReportStatement(DateTime, DateTime)
Produces a dummy CAMT 052 account report for any past, current or future date range.
Declaration
public SepaStatement ProduceBankToCustomerAccountReportStatement(DateTime tFromDate, DateTime tToDate)
Parameters
Type | Name | Description |
---|---|---|
System.DateTime | tFromDate | The entry date of the first date that shall be included in the returned statement
data. This must not be |
System.DateTime | tToDate | The entry date of the last date that shall be included in the returned statement
data. This must not be |
Returns
Type | Description |
---|---|
SepaStatement | Returns a new SepaStatement configured as a "Bank to Customer Account Report" that contains all the statement entries from the requested date range. If there are no statement entries in the requested range, then an empty SepaStatement is returned. The returned statement does not contain any balance in Balances. |
Exceptions
Type | Condition |
---|---|
System.ArgumentException |
ProduceBankToCustomerDebitCreditNotification(DateTime, DateTime, SepaMessageInfo)
Declaration
public SepaDocument[] ProduceBankToCustomerDebitCreditNotification(DateTime tFromDate, DateTime tToDate, SepaMessageInfo aMessageInfo = null)
Parameters
Type | Name | Description |
---|---|---|
System.DateTime | tFromDate | |
System.DateTime | tToDate | |
SepaMessageInfo | aMessageInfo |
Returns
Type | Description |
---|---|
SepaDocument[] |
ProduceBankToCustomerDebitCreditNotificationStatement(String)
Declaration
public SepaStatement ProduceBankToCustomerDebitCreditNotificationStatement(string sBatchID)
Parameters
Type | Name | Description |
---|---|---|
System.String | sBatchID |
Returns
Type | Description |
---|---|
SepaStatement |
ProduceBankToCustomerStatement(DateTime, DateTime, Int32, SepaMessageInfo)
Produces a dummy CAMT 053 statement for any past date range.
Declaration
public SepaDocument ProduceBankToCustomerStatement(DateTime tFromDate, DateTime tToDate, int nElctrncSeqNb, SepaMessageInfo aMessageInfo = null)
Parameters
Type | Name | Description |
---|---|---|
System.DateTime | tFromDate | The booking date of the first date that shall be included in the returned
statement data. This must not be |
System.DateTime | tToDate | The booking date of the last date that shall be included in the returned
statement data. This must not be |
System.Int32 | nElctrncSeqNb | The Electronic Sequence Number is mandatory for CAMT.053 statements. Must not be zero or negative. |
SepaMessageInfo | aMessageInfo | Optional specification of the CAMT message version that shall be created. If this
is |
Returns
Type | Description |
---|---|
SepaDocument |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | |
System.ArgumentException | |
System.ArgumentOutOfRangeException |
ProduceBankToCustomerStatementStatement(DateTime, DateTime, Int32)
Produces a dummy CAMT 053 statement for any past date range.
Declaration
public SepaStatement ProduceBankToCustomerStatementStatement(DateTime tFromDate, DateTime tToDate, int nElctrncSeqNb)
Parameters
Type | Name | Description |
---|---|---|
System.DateTime | tFromDate | The booking date of the first date that shall be included in the returned
statement data. This must not be |
System.DateTime | tToDate | The booking date of the last date that shall be included in the returned
statement data. This must not be |
System.Int32 | nElctrncSeqNb | The Electronic Sequence Number is mandatory for CAMT.053 statements. Must not be zero or negative. |
Returns
Type | Description |
---|---|
SepaStatement | Always returns a SepaStatement, even if it does not contain any statement entries. The returned statement always contains two balances of type PreviouslyClosedBooked and ClosingBooked. |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | |
System.ArgumentOutOfRangeException |
ProduceCardAccount(String, String, String)
Produces an artificial SepaAccount instance that represents a credit card account.
Declaration
public static SepaAccount ProduceCardAccount(string sPAN = "2720999999999996", string sCurrencyCode = "EUR", string sCardHolderName = "Karin Schulz")
Parameters
Type | Name | Description |
---|---|---|
System.String | sPAN | The primary account number of the credit card. |
System.String | sCurrencyCode | |
System.String | sCardHolderName |
Returns
Type | Description |
---|---|
SepaAccount | The returned SepaAccount is ISO 20022 conforming, but it is not conforming to the rules for German CAMT documents. |
ProduceClosingBalance()
Computes and produces the current closing day balance for this account.
Declaration
public SepaBalance ProduceClosingBalance()
Returns
Type | Description |
---|---|
SepaBalance |
ProduceEntries(ICollection<SepaStatementEntry>, DateTime, DateTime)
Produces and adds dummy entries for the given date range.
Declaration
public int ProduceEntries(ICollection<SepaStatementEntry> vEntries, DateTime tFromDate, DateTime tToDate)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.ICollection<SepaStatementEntry> | vEntries | Destination collection that shall receive the entries produced. This must not be
|
System.DateTime | tFromDate | The entry date of the first date that shall be included in the returned data.
This must not be |
System.DateTime | tToDate | The entry date of the last date that shall be included in the returned data.
This must not be |
Returns
Type | Description |
---|---|
System.Int32 | Returns the number of entries added to |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | |
System.ArgumentException |