Class SepaPaymentTypeBase
Abstract base class for all Payment Information and Transaction Information classes.
public abstract class SepaPaymentTypeBase : SepaObject
- Inheritance
-
SepaPaymentTypeBase
- Derived
- Inherited Members
Remarks
This base class includes all properties of the Payment Type Information element group.
Constructors
SepaPaymentTypeBase(string, bool)
public SepaPaymentTypeBase(string sTagName, bool fIsMandatory)
Parameters
Properties
CategoryPurpose
Optional category purpose code.
public string CategoryPurpose { get; set; }
Property Value
Remarks
This element does not exist in the original German ZKA specification for namespaces pain.001.001.02 and pain.008.001.01.
The following codes are defined in the current ISO 20022 external code list. Those that are not allowed according to the German ZKA specification are marked with an asterisk.
| CASH | Transaction is a general cash management instruction. |
| CCRD* | Transaction is related to a payment of credit card. |
| CORT | Transaction is related to settlement of a trade, eg a foreign exchange deal or a securities transaction. |
| DCRD* | Transaction is related to a payment of debit card. |
| DIVI | Transaction is the payment of dividends. |
| GOVT | Transaction is a payment to or from a government department. |
| HEDG | Transaction is related to the payment of a hedging operation. |
| ICCP* | Transaction is reimbursement of credit card payment. |
| IDCP* | Transaction is reimbursement of debit card payment. |
| INTC | Transaction is an intra-company payment, ie, a payment between two companies belonging to the same group. |
| INTE | Transaction is the payment of interest. |
| LOAN | Transaction is related to the transfer of a loan to a borrower. |
| PENS | Transaction is the payment of pension. |
| SALA | Transaction is the payment of salaries. |
| SECU | Transaction is the payment of securities. |
| SSBE | Transaction is a social security benefit, ie payment made by a government to support individuals. |
| SUPP | Transaction is related to a payment to a supplier. |
| TAXS | Transaction is the payment of taxes. |
| TRAD | Transaction is related to the payment of a trade transaction. |
| TREA | Transaction is related to treasury operations. |
| VATX | Transaction is the payment of value added tax. |
| WHLD | Transaction is the payment of withholding tax. |
The German ZKA specification allows usage of all codes, except CCRD, DCRD, ICCP, and IDCP. The Austrian APC specification only lists the following codes: GOVT, INTC, LOAN, PENS, SALA, SSBE, TAXS.
Note that this property is largely ignored by German banks. If you want to provide a purpose code similar to the DTAUS text key, then you must use the transaction property PurposeCode instead.
For Austrian SEPA documents this property seems to be supported by their banks. Additional information can be supplied in the transaction property PurposeCode.
CategoryPurposeProprietary
Optional category purpose proprietary.
public string CategoryPurposeProprietary { get; set; }
Property Value
Remarks
This may be set as an alternative to CategoryPurpose. Only one of CategoryPurpose or CategoryPurposeProprietary may be set.
Exceptions
- ArgumentException
An attempt was made to set a string longer than 35 characters.
InstructionPriority
Optional Instruction Priority. Usage must be agreed with bank.
public string InstructionPriority { get; set; }
Property Value
Remarks
Allowed values are "NORM", "HIGH" or null. If not set, then the bank
assumes normal priority. Starting with
ZKA_Pain_001_003_03, the property
ServiceLevelCode can be used to mark urgent
payments.
IsEmpty
public override bool IsEmpty { get; }
Property Value
IsEmptyPaymentTypeInformation
Indicates whether none of the payment type information properties are set.
public bool IsEmptyPaymentTypeInformation { get; }
Property Value
IsSepaCompliant
Indicates whether this payment complies to the rules of a SEPA payment.
public virtual bool IsSepaCompliant { get; }
Property Value
LocalInstrumentCode
Local Instrument Code.
public string LocalInstrumentCode { get; set; }
Property Value
Exceptions
- ArgumentException
An attempt was made to set a string longer than 35 characters.
LocalInstrumentProprietary
Local Instrument Proprietary.
public string LocalInstrumentProprietary { get; set; }
Property Value
Exceptions
- ArgumentException
An attempt was made to set a string longer than 35 characters.
SequenceType
Sequence Type. Only for Direct Debits.
public string SequenceType { get; set; }
Property Value
Remarks
Allowed values are "FRST" (Initial Direct Debit of a series), "RCUR" (Recurring Direct Debit of a series), "FNAL" (Final Direct Debit of a series), and "OOFF" (Single Direct Debit).
Exceptions
- ArgumentException
An attempt was made to set an unknown code value.
ServiceLevelCode
Service Level Code.
public string ServiceLevelCode { get; set; }
Property Value
Exceptions
- ArgumentException
An attempt was made to set a string longer than 4 characters.
ServiceLevelProprietary
Service Level Proprietary.
public string ServiceLevelProprietary { get; set; }
Property Value
Exceptions
- ArgumentException
An attempt was made to set a string longer than 35 characters.
Methods
Clear()
public override void Clear()
ClearPaymentTypeInformation()
Clears all payment type information.
public void ClearPaymentTypeInformation()
OnValidate(ICollection<SepaException>, string)
protected override void OnValidate(ICollection<SepaException> vErrors, string sPath)
Parameters
vErrorsICollection<SepaException>sPathstring