• API Overview
  • EBICS API
  • FinTS API
  • XS2A API
  • SEPA API

    Class SepaTransactionDetails

    Inheritance
    System.Object
    SepaObject
    SepaTransactionDetails
    Inherited Members
    SepaObject.TagName
    SepaObject.IsMandatory
    SepaObject.WriteXml(XmlWriter, SepaMessageInfo)
    SepaObject.WriteXml(XmlWriter, SepaMessageInfo, String)
    SepaObject.ReadXml(XmlReader, SepaMessageInfo)
    SepaObject.ReadXml(XmlReader, SepaMessageInfo, String)
    SepaObject.IsValid
    SepaObject.Validate(ICollection<SepaException>, String)
    SepaObject.OnAfterXmlRead(SepaMessageInfo)
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    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.

    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 null, which is also its default value. Transactions details may contain multiple additional information (AddtlInf) elements. If so, the elements are concatenated with an Environment.NewLine separator. Empty elements are empty strings. Each line of additional information must not be longer than 105 characters.

    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
    ReturnInformationReasonCode

    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 null, which is also its default value. The additional transaction information must not be longer than 500 characters.

    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
    TransactionAmount

    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.

    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.

    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.

    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 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.

    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.

    IsEmpty

    Declaration
    public override bool IsEmpty { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    SepaObject.IsEmpty

    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.

    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.

    PaymentInformationIdentification

    Optional unique batch payment identification.

    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
    PurposeCode
    PurposeProprietary

    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
    PurposeCode

    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 null, which is also its default value. Transactions details may contain multiple unstructured remittance information (Ustrd) elements. If so, the elements are concatenated with an Environment.NewLine separator. Empty elements are empty strings. Each line of unstructured remittance information must not be longer than MaxRmtInfLen (140) characters.

    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
    CreditorReferenceInformation

    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 null string entries, or entries with strings longer than 140 characters.

    See Also
    RemittanceInformation

    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

    The currency of this amount must match the account currency. Note that this field is also optional. If no amount is given here, then the Amount shall be used.

    For compatibility with existing code: If no TxAmt was set, then this property returns the value from Amount.

    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.

    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 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.

    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
    SepaObject.Clear()

    OnReadXml(XmlReader, SepaMessageInfo)

    Declaration
    protected override void OnReadXml(XmlReader aXmlReader, SepaMessageInfo aMessageInfo)
    Parameters
    Type Name Description
    System.Xml.XmlReader aXmlReader
    SepaMessageInfo aMessageInfo
    Overrides
    SepaObject.OnReadXml(XmlReader, SepaMessageInfo)

    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
    SepaObject.OnValidate(ICollection<SepaException>, String)

    OnWriteXml(XmlWriter, SepaMessageInfo)

    Declaration
    protected override void OnWriteXml(XmlWriter aXmlWriter, SepaMessageInfo aMessageInfo)
    Parameters
    Type Name Description
    System.Xml.XmlWriter aXmlWriter
    SepaMessageInfo aMessageInfo
    Overrides
    SepaObject.OnWriteXml(XmlWriter, SepaMessageInfo)

    Extension Methods

    ScraperUtil.AppendRemittanceInformationLine(SepaTransactionDetails, String)
    Back to top Copyright 2009-2023 Subsembly GmbH