Class EbicsAccountInfo

Namespace
Subsembly.EBICS
Assembly
Subsembly.EBICS.Core.dll

Holds an EBICS AccountInfo XML element.

public class EbicsAccountInfo : EbicsElement
Inheritance
EbicsAccountInfo
Inherited Members

Remarks

An AccountInfo element is part of a HKDResponseOrderData, a HTDResponseOrderData, a HVZResponseOrderData, or a HVTResponseOrderData. In each case it has different elements and constraints. This class supports all these variations by including all possible element values and attributes. Be careful when generating an AccountInfo to only set element values and attributes that are applicable for the desired order data type.

Currently this implementation can successfully parse AccountInfo elements with NationalAccountNumber and/or NationalBankCode sub-elements, however, it cannot generate these sub-elements. For generating an AccountInfo only the sub-elements AccountNumber, BankCode, and AccountHolder are supported.

Fields

ROLE_CHARGES

Constant string for Charges role for AcctNoRole.

public const string ROLE_CHARGES = "Charges"

Field Value

string

ROLE_CORRESPONDENT

Constant string for Correspondent role for BankCodeRole.

public const string ROLE_CORRESPONDENT = "Correspondent"

Field Value

string

ROLE_ORIGINATOR

Constant string for Originator role for AcctNoRole, BankCodeRole, or AccountHolderRole.

public const string ROLE_ORIGINATOR = "Originator"

Field Value

string

ROLE_OTHER

Constant string for Other role for AcctNoRole, BankCodeRole, or AccountHolderRole.

public const string ROLE_OTHER = "Other"

Field Value

string

ROLE_PRESENTER

Constant string for Presenter role for AccountHolderRole.

public const string ROLE_PRESENTER = "Presenter"

Field Value

string

ROLE_RECIPIENT

Constant string for Recipient role for AcctNoRole, BankCodeRole, or AccountHolderRole.

public const string ROLE_RECIPIENT = "Recipient"

Field Value

string

Properties

AccountHolder

The name of the account holder.

public string AccountHolder { get; set; }

Property Value

string

Remarks

This is extracted from the AccountHolder XML element. If no such element was found during parsing, then this will be null.

AccountHolderRole

Role of the account holder of this account in an order.

public string AccountHolderRole { get; set; }

Property Value

string

Remarks

This is only included in account informations from AccountInfos and must not be set for other AccountInfo elements.

Only the values ROLE_ORIGINATOR, ROLE_RECIPIENT, ROLE_PRESENTER, and ROLE_OTHER are allowed.

AcctNo

The domestic account number.

public string AcctNo { get; set; }

Property Value

string

Remarks

This is extracted from the AccountNumber element with an international attribute with value "false", or from a NationalAccountNumber element. If no such element was found during parsing, then this will be null.

When generating an AccountInfo element this value will always be used to generate an AccountNumber element with an international attribute with value "false". It will never generate a NationalAccountNumber element.

AcctNoRole

Role of this account in an order.

public string AcctNoRole { get; set; }

Property Value

string

Remarks

This is only included in account informations from AccountInfos and must not be set for other AccountInfo elements.

Only the values ROLE_ORIGINATOR, ROLE_RECIPIENT, ROLE_CHARGES, and ROLE_OTHER are allowed.

BIC

The BIC.

public string BIC { get; set; }

Property Value

string

Remarks

This is extracted from the BankCode element with an "international" attribute with value "true". If no such element was found during parsing, then this will be null.

BankCode

The domestic bank code.

public string BankCode { get; set; }

Property Value

string

Remarks

This is extracted from the BankCode element with an "international" attribute with value "false", or from a NationalBankCode element. If no such element was found during parsing, then this will be null.

When generating an AccountInfo element this value will always be used to generate an BankCode element with an international attribute with value "false". It will never generate a NationalBankCode element.

BankCodeRole

Role of this bank in an order.

public string BankCodeRole { get; set; }

Property Value

string

Remarks

This is only included in account informations from AccountInfos and must not be set for other AccountInfo elements.

Only the values ROLE_ORIGINATOR, ROLE_RECIPIENT, ROLE_CORRESPONDENT, and ROLE_OTHER are allowed.

Currency

The value of the Currency attribute of the AccountInfo element. This must be a valid ISO Currency Code.

public string Currency { get; set; }

Property Value

string

Remarks

If no Currency attribute was present while parsing the XML, then this will be null.

Description

The value of the Description attribute of the AccountInfo element.

public string Description { get; set; }

Property Value

string

IBAN

The account IBAN.

public string IBAN { get; set; }

Property Value

string

Remarks

This is extracted from the AccountNumber element with an "international" attribute with value "true". If no such element was found during parsing, then this will be null.

ID

The value of the ID attribute of the AccountInfo element.

public string ID { get; set; }

Property Value

string

Remarks

If no ID attribute was present while parsing the XML, then this will be null.

The ID attribute is mandatory in AccountInfo elements contained in a HKDResponseOrderData or a HTDResponseOrderData. It is not allowed in HVZResponseOrderData or a HVTResponseOrderData. Hence, when building a HVZResponseOrderData or a HVTResponseOrderData, this property must not be set.

Methods

AugmentAccountInfo(EbicsAccountInfo)

Augment account details missing in this instance, with account details from another EbicsAccountInfo instance.

public void AugmentAccountInfo(EbicsAccountInfo aAccountInfo)

Parameters

aAccountInfo EbicsAccountInfo

An EbicsAccountInfo instance that provides additional details for this account. This must essentially represent the same account, but with maybe more details. If this is null, then this method does nothing.

Remarks

Only details that are missing in this account, may be augmented with details from the given aAccountInfo.

BuildXml(XmlDocument, EbicsVersion)

public override XmlElement BuildXml(XmlDocument xmlDocument, EbicsVersion nVersion)

Parameters

xmlDocument XmlDocument
nVersion EbicsVersion

Returns

XmlElement

FromSepaAccount(SepaAccount)

public static EbicsAccountInfo FromSepaAccount(SepaAccount aSepaAccount)

Parameters

aSepaAccount SepaAccount

Returns

EbicsAccountInfo

FromSepaStatement(SepaStatement)

public static EbicsAccountInfo FromSepaStatement(SepaStatement aStatement)

Parameters

aStatement SepaStatement

Returns

EbicsAccountInfo

Exceptions

ArgumentException

ParseXml(XmlElement, EbicsVersion)

public override void ParseXml(XmlElement xmlElement, EbicsVersion nVersion)

Parameters

xmlElement XmlElement
nVersion EbicsVersion