Class SepaTransactionDetails
Inherited Members
Namespace: Subsembly.Sepa
Assembly: Subsembly.Sepa.dll
Syntax
public sealed class SepaTransactionDetails : SepaObject
Constructors
SepaTransactionDetails()
Declaration
public SepaTransactionDetails()
Properties
AccountServicerReference
Optional unique entry reference of this statement entry, provided by the bank.
This property value is contained in the Refs
element.
Declaration
public string AccountServicerReference { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. The character set must match CheckCharset(String). |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
AdditionalReturnReasonInformation
Optional additional information for return reason.
Declaration
public string AdditionalReturnReasonInformation { get; set; }
Property Value
Type | Description |
---|---|
System.String | If no additional information is provided, this property is |
Remarks
Only latin characters should be used. It is up to the caller to ensure that the provided string contains only characters accepted by the recipient of the SEPA document.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 105 characters, or a string that contains invalid characters. |
See Also
AdditionalTransactionInformation
Optional additional transaction information.
Declaration
public string AdditionalTransactionInformation { get; set; }
Property Value
Type | Description |
---|---|
System.String | If no additional transaction information is provided, this property is |
Remarks
Only latin characters should be used. It is up to the caller to ensure that the provided string contains only characters accepted by the recipient of the SEPA document.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 500 characters. |
Amount
The optional amount from the Transaction Details element that is settled against the account balance.
Declaration
public SepaAmount Amount { get; }
Property Value
Type | Description |
---|---|
SepaAmount |
See Also
BankTransactionCode
DEPRECATED. Use TransactionCode.ProprietaryCode instead.
Declaration
public string BankTransactionCode { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
For compatibility: Settings this property also sets the BankTransactionCodeIssuer to "DK", unless it was already set to another non-empty value.
BankTransactionCodeIssuer
DEPRECATED. Use TransactionCode.ProprietaryIssuer instead.
Declaration
public string BankTransactionCodeIssuer { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Charges
Collection of SepaChargesRecords contained in this transaction.
Declaration
public SepaCharges Charges { get; }
Property Value
Type | Description |
---|---|
SepaCharges |
ChequeNumber
Optional cheque number of this transaction.
This property value is contained in the Refs
element.
Declaration
public string ChequeNumber { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Remarks
The character set must match CheckCharset(String).
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
ClearingSystemReference
Optional clearing system reference of this transaction.
This property value is contained in the Refs
element.
Declaration
public string ClearingSystemReference { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Remarks
The character set must match CheckCharset(String).
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
Creditor
The creditor of this transaction.
Declaration
public SepaPartyIdentification Creditor { get; }
Property Value
Type | Description |
---|---|
SepaPartyIdentification |
CreditorAccount
Information about the creditor account of this transaction.
Declaration
public SepaAccount CreditorAccount { get; }
Property Value
Type | Description |
---|---|
SepaAccount |
CreditorAgent
BIC of the creditor agent (financial institution) of this transaction.
Declaration
public SepaFinancialInstitutionIdentification CreditorAgent { get; }
Property Value
Type | Description |
---|---|
SepaFinancialInstitutionIdentification |
CreditorReferenceCode
The creditor reference document type code
Declaration
public string CreditorReferenceCode { get; set; }
Property Value
Type | Description |
---|---|
System.String | This is initialized with "SCOR" but can be changed to any valid code. Setting a valid code will clear CreditorReferenceProprietary. The Code tag is written only if CreditorReferenceProprietary is null. |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a value that is not a syntactically valid code. |
CreditorReferenceInformation
Optional creditor reference information from a structured remittance information element.
Declaration
public string CreditorReferenceInformation { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
This property is extracted from a structured remittance information that uses the following format:
<Strd>
<CdtrRefInf>
<Tp>
<CdOrPrtry>
<Cd>SCOR</Cd>
</CdOrPrtry>
</Tp>
<Ref>RFXXXX</Ref>
</CdtrRefInf>
</Strd>
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters. |
CreditorReferenceProprietary
The creditor reference document type proprietary
Declaration
public string CreditorReferenceProprietary { get; set; }
Property Value
Type | Description |
---|---|
System.String | The Proprietary tag is written only if this string is set. Else the Code tag will be written. Setting this string will clear CreditorReferenceCode. |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a value that is not a syntactically valid code. |
Debtor
The debtor of this transaction.
Declaration
public SepaPartyIdentification Debtor { get; }
Property Value
Type | Description |
---|---|
SepaPartyIdentification |
DebtorAccount
Information about the debtor account of the transaction.
Declaration
public SepaAccount DebtorAccount { get; }
Property Value
Type | Description |
---|---|
SepaAccount |
DebtorAgent
BIC of the debtor agent (financial institution) of the transaction.
Declaration
public SepaFinancialInstitutionIdentification DebtorAgent { get; }
Property Value
Type | Description |
---|---|
SepaFinancialInstitutionIdentification |
EndToEndId
End-to-End Identification of this Transaction.
This property value is contained in the Refs
element.
Declaration
public string EndToEndId { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Remarks
The value must match CheckIdentification(String).
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
InstructedAmount
The optional instructed amount InstdAmt from the Amount Details element.
Declaration
public SepaAmount InstructedAmount { get; }
Property Value
Type | Description |
---|---|
SepaAmount |
Remarks
Identifies the amount of money to be moved between the debtor and creditor, before deduction of charges, expressed in the currency as ordered by the initiating party and provides currency exchange information in case the instructed amount and/or currency is/are different from the entry amount and/or currency.
InstructionIdentification
Optional Instruction Identification of this Transaction.
This property value is contained in the Refs
element.
Declaration
public string InstructionIdentification { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
IsEmpty
Declaration
public override bool IsEmpty { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Overrides
LocalInstrumentCode
Local Instrument Code.
Declaration
public string LocalInstrumentCode { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
Only one of LocalInstrumentCode or LocalInstrumentProprietary may be set. If both are set, then an exception is thrown when trying to serialize this object.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters. |
LocalInstrumentProprietary
Local Instrument Proprietary.
Declaration
public string LocalInstrumentProprietary { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
Only one of LocalInstrumentCode or LocalInstrumentProprietary may be set. If both are set, then an exception is thrown when trying to serialize this object.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters. |
MandateIdentification
Direct debit mandate reference.
This property value is contained in the Refs
element.
Declaration
public string MandateIdentification { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Remarks
The character set must match CheckCharset(String).
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
MessageIdentification
Optional unique identification of the message passed to the bank.
This property value is contained in the Refs
element.
Declaration
public string MessageIdentification { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Remarks
The character set must match CheckCharset(String).
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
PaymentInformationIdentification
Optional unique batch payment identification.
This property value is contained in the Refs
element.
Declaration
public string PaymentInformationIdentification { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
PurposeCode
Optional purpose code.
Declaration
public string PurposeCode { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
Only one of PurposeCode or PurposeProprietary may be set. If both are set, then an exception is thrown when trying to serialize this object.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string that is not a syntactically correct purpose code. |
See Also
PurposeProprietary
Optional proprietary purpose text.
Declaration
public string PurposeProprietary { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
Only one of PurposeCode or PurposeProprietary may be set. If both are set, then an exception is thrown when trying to serialize this object.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string that is longer than 35 characters. |
See Also
ReferencesProprietary
Additional proprietary references contained in the Refs element.
Declaration
public IDictionary<string, string> ReferencesProprietary { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IDictionary<System.String, System.String> |
Remarks
The proprietary references are stored as a dictionary where the proprietary reference type Tp is the key and the proprietary reference Ref is the value.
RemittanceInformation
Optional unstructured remittance information.
Declaration
public string RemittanceInformation { get; set; }
Property Value
Type | Description |
---|---|
System.String | If no remittance information is provided, this property is |
Remarks
Only latin characters should be used. It is up to the caller to ensure that the provided string contains only characters accepted by the recipient of the SEPA document.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 140 characters, or a string that contains invalid characters. |
See Also
RemittanceInformationLines
Provides the optional unstructured remittance information as an array of lines.
Declaration
public string[] RemittanceInformationLines { get; set; }
Property Value
Type | Description |
---|---|
System.String[] |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An array was set that contained |
See Also
ReturnInformationReasonCode
Optional reason code for returned transaction.
Declaration
public string ReturnInformationReasonCode { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
All codes are four alphanumeric characters. See other documentation for individual possible values. Only either ReturnInformationReasonCode or ReturnInformationReasonProprietary may be set, and never both.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a syntactically invalid code. |
ReturnInformationReasonProprietary
Optional proprietary reason code for returned transaction.
Declaration
public string ReturnInformationReasonProprietary { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
Only either ReturnInformationReasonCode or ReturnInformationReasonProprietary may be set, and never both.
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a syntactically invalid value. |
TransactionAmount
The optional transaction amount TxAmt from the Amount Details element.
Declaration
public SepaAmount TransactionAmount { get; }
Property Value
Type | Description |
---|---|
SepaAmount |
Remarks
Note that this field is optional. With newer CAMT versions, the field Amount replaces this field. The transaction amount may even contain a different amount in a different currency.
For compatibility with existing code: If no TxAmt was included when reading the CAMT document, then this property returns the value from Amount.
See Also
TransactionCode
The bank transaction code set of elements.
Declaration
public SepaBankTransactionCode TransactionCode { get; }
Property Value
Type | Description |
---|---|
SepaBankTransactionCode |
TransactionDateTime
Date and time of the underlying transaction.
Declaration
public DateTime TransactionDateTime { get; set; }
Property Value
Type | Description |
---|---|
System.DateTime |
Remarks
This appears in the Related Dates element.
TransactionIdentification
Transaction identification of accepting bank.
This property value is contained in the Refs
element.
Declaration
public string TransactionIdentification { get; set; }
Property Value
Type | Description |
---|---|
System.String | An arbitrary text with a maximum length of MaxIdLen (35) characters. |
Remarks
The value must match CheckIdentification(String).
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string longer than 35 characters, or a string that contains invalid characters. |
UltimateCreditor
The ultimate creditor of this transaction.
Declaration
public SepaPartyIdentification UltimateCreditor { get; }
Property Value
Type | Description |
---|---|
SepaPartyIdentification |
UltimateDebtor
The ultimate debtor of this transaction.
Declaration
public SepaPartyIdentification UltimateDebtor { get; }
Property Value
Type | Description |
---|---|
SepaPartyIdentification |
Methods
Clear()
Declaration
public override void Clear()
Overrides
OnReadXml(XmlReader, SepaMessageInfo)
Declaration
protected override void OnReadXml(XmlReader aXmlReader, SepaMessageInfo aMessageInfo)
Parameters
Type | Name | Description |
---|---|---|
System.Xml.XmlReader | aXmlReader | |
SepaMessageInfo | aMessageInfo |
Overrides
OnValidate(ICollection<SepaException>, String)
Declaration
protected override void OnValidate(ICollection<SepaException> vErrors, string sPath)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.ICollection<SepaException> | vErrors | |
System.String | sPath |
Overrides
OnWriteXml(XmlWriter, SepaMessageInfo)
Declaration
protected override void OnWriteXml(XmlWriter aXmlWriter, SepaMessageInfo aMessageInfo)
Parameters
Type | Name | Description |
---|---|---|
System.Xml.XmlWriter | aXmlWriter | |
SepaMessageInfo | aMessageInfo |