• API Overview
  • EBICS API
  • FinTS API
  • XS2A API
  • SEPA API
Search Results for

    Class SepaDirectDebitTransactionInformation

    Spezialized Transaction Information for direct debits.

    Inheritance
    System.Object
    SepaObject
    SepaPaymentTypeBase
    SepaTransactionInformation
    SepaDirectDebitTransactionInformation
    Inherited Members
    SepaTransactionInformation.InstructionIdentification
    SepaTransactionInformation.EndToEndId
    SepaTransactionInformation.Amount
    SepaTransactionInformation.AmountCurrency
    SepaTransactionInformation.PurposeCode
    SepaTransactionInformation.RemittanceInformationObject
    SepaTransactionInformation.RemittanceInformation
    SepaTransactionInformation.CreditorReferenceInformation
    SepaPaymentTypeBase.ClearPaymentTypeInformation()
    SepaPaymentTypeBase.IsEmptyPaymentTypeInformation
    SepaPaymentTypeBase.InstructionPriority
    SepaPaymentTypeBase.ServiceLevelCode
    SepaPaymentTypeBase.ServiceLevelProprietary
    SepaPaymentTypeBase.LocalInstrumentCode
    SepaPaymentTypeBase.LocalInstrumentProprietary
    SepaPaymentTypeBase.SequenceType
    SepaPaymentTypeBase.CategoryPurpose
    SepaPaymentTypeBase.CategoryPurposeProprietary
    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.OnWriteObjectXml(XmlWriter, SepaMessageInfo, String)
    SepaObject.OnReadObjectXml(XmlReader, SepaMessageInfo, 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 SepaDirectDebitTransactionInformation : SepaTransactionInformation

    Constructors

    SepaDirectDebitTransactionInformation()

    Creates a new SepaCreditTransferTransactionInformation object which can be added to the transaction object collection of a SepaDirectDebitPaymentInformation object.

    Declaration
    public SepaDirectDebitTransactionInformation()

    Fields

    SMNDA

    In case of a SEPA mandate amendment, if the original debtor account is not known, then this special IBAN can be used to indicate a changed account.

    Declaration
    public static readonly SepaIBAN SMNDA
    Field Value
    Type Description
    SepaIBAN
    Remarks

    This is only supported starting with SEPA Direct Debit Rulebook Version 9.0. It may not be used before November, 20th 2016.

    Properties

    CounterParty

    Returns Debtor.

    Declaration
    public override SepaPartyIdentification CounterParty { get; }
    Property Value
    Type Description
    SepaPartyIdentification
    Overrides
    SepaTransactionInformation.CounterParty

    CounterPartyAccount

    Returns DebtorAccount

    Declaration
    public override SepaAccount CounterPartyAccount { get; }
    Property Value
    Type Description
    SepaAccount
    Overrides
    SepaTransactionInformation.CounterPartyAccount

    CounterPartyAgent

    Returns DebtorAgent

    Declaration
    public override SepaAgent CounterPartyAgent { get; }
    Property Value
    Type Description
    SepaAgent
    Overrides
    SepaTransactionInformation.CounterPartyAgent

    CreditorSchemeIdentification

    Identifier of the creditor (CI).

    Declaration
    public string CreditorSchemeIdentification { get; set; }
    Property Value
    Type Description
    System.String
    Remarks

    In version 01 of pain.008 the creditor identifier only existed at the transaction level. In version 02 the creditor identifier exists optionally at the payment information level or the transaction level. However, there was always the usage rule that recommended that all transactions within the same Payment Information block have the same Creditor Scheme Identification.

    The CI may be set either at the payment information level, or the transaction level. It must be set at either level, but never be set at both levels. If it is set at the transaction level, then it must be set in all SepaDirectDebitTransactionInformation objects.

    For version 01 the CI is always written at the transaction level, even if it was set at the payment information level.

    Exceptions
    Type Condition
    System.ArgumentNullException

    An attempt was made to set a null value.

    System.ArgumentException

    An empty or otherwise invalid value was set.

    Debtor

    The debtor of this transaction.

    Declaration
    public SepaPartyIdentification Debtor { get; }
    Property Value
    Type Description
    SepaPartyIdentification

    The Debtor is a required element, therefore at least the Name property of this SepaPartyIdentification must be set before the XML document can be generated.

    DebtorAccount

    Mandatory debtor account of this transaction.

    Declaration
    public SepaAccount DebtorAccount { get; }
    Property Value
    Type Description
    SepaAccount

    DebtorAccountIBAN

    Shortcut to the IBAN of the debtor account of this transaction.

    Declaration
    public SepaIBAN DebtorAccountIBAN { get; set; }
    Property Value
    Type Description
    SepaIBAN
    See Also
    DebtorAccount

    DebtorAgent

    Declaration
    public SepaAgent DebtorAgent { get; }
    Property Value
    Type Description
    SepaAgent

    DebtorAgentBIC

    BIC of the debtor agent (financial institution) of this transaction.

    Declaration
    public SepaBIC DebtorAgentBIC { get; set; }
    Property Value
    Type Description
    SepaBIC

    This is initially a null BIC value and should be initialized before a XML document is generated for this transaction.

    Remarks

    This field is mandatory prior to ZKA_Pain_001_003_03. In order to create an always valid SEPA output, it is highly recommended to always set this field with a valid BIC.

    DebtorAgentFinancialInstitutionIdentification

    Shortcut to DebtorAgent.FinancialInstitutionIdentification.

    Declaration
    public SepaFinancialInstitutionIdentification DebtorAgentFinancialInstitutionIdentification { get; }
    Property Value
    Type Description
    SepaFinancialInstitutionIdentification

    InstructionForCreditorAgent

    Optional instrcution for creditor agent.

    Declaration
    public string InstructionForCreditorAgent { get; set; }
    Property Value
    Type Description
    System.String

    Initially null, may be arbitrary text with up tp 140 characters.

    Remarks

    Further information, related to the processing of the payment instruction, that may need to be acted upon by the creditor agent, depending on agreement between creditor and the creditor agent.

    Exceptions
    Type Condition
    System.ArgumentException

    An attempt was made to set a string longer than 140 characters.

    IsEmpty

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

    IsSepaCompliant

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

    MandateDateOfSignature

    Mandatory date of signing of the mandate.

    Declaration
    public DateTime MandateDateOfSignature { get; set; }
    Property Value
    Type Description
    System.DateTime
    Exceptions
    Type Condition
    System.ArgumentException

    An attempt was made to set this property to DateTime.MinValue. The value DateTime.MinValue is often used to indicate a logical Null-DateTime and therefore is not permitted here.

    MandateElectronicSignature

    Optional electronic signature of mandate.

    Declaration
    public string MandateElectronicSignature { get; set; }
    Property Value
    Type Description
    System.String
    Remarks

    This may only be used if agreed with the bank or if defined for a particular country.

    MandateIdentification

    Mandatory unique mandate reference.

    Declaration
    public string MandateIdentification { get; set; }
    Property Value
    Type Description
    System.String

    OriginalCreditorName

    Optional original creditor name.

    Declaration
    public string OriginalCreditorName { get; set; }
    Property Value
    Type Description
    System.String
    Remarks

    If this is not null or an empty string, then an Amendment Information Details element is present.

    Exceptions
    Type Condition
    System.ArgumentException

    An attempt was made to set a string longer than 70 characters.

    OriginalCreditorSchemeIdentification

    Optional original creditor scheme ID.

    Declaration
    public string OriginalCreditorSchemeIdentification { get; set; }
    Property Value
    Type Description
    System.String
    Remarks

    If this is not null or an empty string, then an Amendment Information Details element is present.

    Exceptions
    Type Condition
    System.ArgumentNullException

    An attempt was made to set a null value.

    System.ArgumentException

    An empty or otherwise invalid value was set.

    OriginalDebtorAccount

    Optional original debtor account of this transaction.

    Declaration
    public SepaAccount OriginalDebtorAccount { get; }
    Property Value
    Type Description
    SepaAccount
    See Also
    OriginalDebtorAccountIBAN

    OriginalDebtorAccountIBAN

    Optional IBAN of the original debtor account of this transaction.

    Declaration
    public SepaIBAN OriginalDebtorAccountIBAN { get; set; }
    Property Value
    Type Description
    SepaIBAN
    Remarks

    If this is not null or an empty string, then an Amendment Information Details element is present. Starting with SEPA Direct Debit Rulebook Version 9.0 the special value SMNDA may be used, if the account has changed, but the original IBAN is not known.

    See Also
    OriginalDebtorAccount

    OriginalMandateIdentification

    Optional original mandate reference.

    Declaration
    public string OriginalMandateIdentification { get; set; }
    Property Value
    Type Description
    System.String
    Remarks

    If this is not null or an empty string, then an Amendment Information Details element is present.

    UltimateCreditor

    Optional name of the ultimate creditor. Rarely needed.

    Declaration
    public SepaPartyIdentification UltimateCreditor { get; }
    Property Value
    Type Description
    SepaPartyIdentification

    Only the Name property of this SepaPartyIdentification may be used.

    Remarks

    The ultimate creditor may be set here, or at the collection level UltimateCreditor property. It must not be set at both levels.

    UltimateDebtor

    Optional name of the ultimate debtor. Rarely needed.

    Declaration
    public SepaPartyIdentification UltimateDebtor { get; }
    Property Value
    Type Description
    SepaPartyIdentification

    Only the Name property of this SepaPartyIdentification may be used.

    Remarks

    Required if explicitly provided in the debtor mandate.

    Methods

    Clear()

    Declaration
    public override void Clear()
    Overrides
    SepaTransactionInformation.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
    SepaTransactionInformation.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)
    In This Article
    Back to top Copyright 2009-2025 Subsembly GmbH