Class SepaMessage

Namespace
Subsembly.Sepa
Assembly
Subsembly.Sepa.dll

Abstract base class for all SEPA XML messages.

public abstract class SepaMessage : SepaObject
Inheritance
SepaMessage
Derived
Inherited Members

Remarks

Currently a SepaDocument contains a single SEPA message which must be a class derived from SepaMessage. Thus all instances derived from SepaMessage will have IsMandatory set to true.

Constructors

SepaMessage(string, SepaMessageType)

protected SepaMessage(string sMessageTagName, SepaMessageType nMessageType)

Parameters

sMessageTagName string
nMessageType SepaMessageType

Properties

CreationDateTime

The date and time when the message was created.

public DateTime CreationDateTime { get; set; }

Property Value

DateTime

By default this is initialized with the current local date and time. When setting this property any date and time may be given.

IsEmpty

public override bool IsEmpty { get; }

Property Value

bool

MessageIdentification

Unique identification of the message passed to the bank.

public string MessageIdentification { get; set; }

Property Value

string

An arbitrary text with a maximum length of MaxIdLen (35) characters. By default this property is initialised with a suitable random identification string.

Remarks

The character set must match CheckCharset(string).

Exceptions

ArgumentException

An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters.

MessageName

Returns the MessageType as a string such as "pain.001" or "camt.052".

public string MessageName { get; }

Property Value

string

MessageType

Returns the fundamental type of this SEPA message.

public SepaMessageType MessageType { get; }

Property Value

SepaMessageType

Remarks

If the type is CreditTransferPaymentInitiation, then the message object is actually a SepaCreditTransferPaymentInitiation.

If the type is DirectDebitPaymentInitiation, then the message object is actually a SepaDirectDebitPaymentInitiation.

If the type is PaymentStatusReport, then the message object is actually a SepaPaymentStatusReport.

If the type is BankToCustomerAccountReport, then the message object is actually a SepaBankToCustomerAccountReport.

If the type is BankToCustomerStatement, then the message object is actually a SepaBankToCustomerStatement.

If the type is BankToCustomerDebitCreditNotification, then the message object is actually a SepaBankToCustomerDebitCreditNotification.

Methods

Clear()

public override void Clear()

OnValidate(ICollection<SepaException>, string)

protected override void OnValidate(ICollection<SepaException> vErrors, string sPath)

Parameters

vErrors ICollection<SepaException>
sPath string

ReadGroupHeaderFields(XmlReader, SepaMessageInfo)

protected void ReadGroupHeaderFields(XmlReader aXmlReader, SepaMessageInfo aMessageInfo)

Parameters

aXmlReader XmlReader
aMessageInfo SepaMessageInfo

WriteGroupHeaderFields(XmlWriter, SepaMessageInfo)

protected void WriteGroupHeaderFields(XmlWriter aXmlWriter, SepaMessageInfo aMessageInfo)

Parameters

aXmlWriter XmlWriter
aMessageInfo SepaMessageInfo