Class FinIntRemitt
Generic class that holds the information of an international remittance (DTAZV).
Inheritance
Inherited Members
Namespace: Subsembly.FinTS
Assembly: Subsembly.FinTS.Core.dll
Syntax
public class FinIntRemitt
Remarks
The class FinDtaBuilder provides the method GenerateDTAZV(FinIntRemitt, Int32) that generates a complete DTAZV file from a FinIntRemitt instance.
Constructors
FinIntRemitt()
Declaration
public FinIntRemitt()
Fields
AlphaCountryCodes
Table of 2-letter alpha country codes of all SEPA countries.
Declaration
public static readonly string[] AlphaCountryCodes
Field Value
Type | Description |
---|---|
System.String[] |
Remarks
This table includes all SEPA countries as effective from 2019-03-19, including Germany.
The index of a country in this table is equal to the index of the same country in the table NumericCountryCodes.
MaxLineLength
The maximum number of characters in each text field line in a FinIntRemitt instance. Applies to the properties OrderingCustName, PayeeName, PayeeInstName, and PaymtPurpose. Currently this value is 35.
Declaration
public const int MaxLineLength = 35
Field Value
Type | Description |
---|---|
System.Int32 |
MaxTextLength
The maximum total number of all characters in each text field in a FinIntRemitt instance. Applies to the properties OrderingCustName, PayeeName, PayeeInstName, and PaymtPurpose. Currently this value is 140.
Declaration
public const int MaxTextLength = 140
Field Value
Type | Description |
---|---|
System.Int32 |
MaxTextLines
The maximum number of lines in text fields in a FinIntRemitt instance. Applies to the properties OrderingCustName, PayeeName, PayeeInstName, and PaymtPurpose. Currently this value is 4.
Declaration
public const int MaxTextLines = 4
Field Value
Type | Description |
---|---|
System.Int32 |
NumericCountryCodes
Table of 3-digit numeric country codes of all SEPA countries.
Declaration
public static readonly string[] NumericCountryCodes
Field Value
Type | Description |
---|---|
System.String[] |
Remarks
This table includes all SEPA countries as effective from 2019-03-19, including Germany.
The index of a country in this table is equal to the index of the same country in the table AlphaCountryCodes.
Properties
Amount
The monetary amount of this remittance.
Declaration
public SwiftAmt Amount { get; set; }
Property Value
Type | Description |
---|---|
SwiftAmt | The amount is a required field of any remittance. |
CostBearer
Who is paying for transaction expenses.
Declaration
public FinIntRemittCostBearer CostBearer { get; set; }
Property Value
Type | Description |
---|---|
FinIntRemittCostBearer | By default the value of this property is undefined. Therefore it must be set to one of the enumerated values before this remittance can be persisted or converted in any way. |
CostBearerAcct
Optional Cost Bearer account.
Declaration
public FinAcct CostBearerAcct { get; set; }
Property Value
Type | Description |
---|---|
FinAcct |
InstructionAdditionalInfo
Additional narrative information to InstructionCodes.
Declaration
public string InstructionAdditionalInfo { get; set; }
Property Value
Type | Description |
---|---|
System.String | This string must not be longer than 25 characters. It is inserted into field T20 when generating a DTAZV. |
InstructionCode1
Declaration
public string InstructionCode1 { get; set; }
Property Value
Type | Description |
---|---|
System.String |
InstructionCode2
Declaration
public string InstructionCode2 { get; set; }
Property Value
Type | Description |
---|---|
System.String |
InstructionCode3
Declaration
public string InstructionCode3 { get; set; }
Property Value
Type | Description |
---|---|
System.String |
InstructionCode4
Declaration
public string InstructionCode4 { get; set; }
Property Value
Type | Description |
---|---|
System.String |
InstructionCodes
Ordered set of instruction codes (Weisungsschluessel 1-4).
Declaration
public string InstructionCodes { get; set; }
Property Value
Type | Description |
---|---|
System.String | The string must consist of an ordered concatenation of 2-digit instruction codes as defined by the DTAZV specification. The instruction codes are inserted into the DTAZV fields T16, T17, T18, and T19 in the same order as they appear in the string. If present, the code "91" must always be the last (or only) code in the string. As a special case, the code "91" will always be inserted into field T19 when generating a DTAZV. |
IsValid
Validates all the properties of this international remittance and indicates whether it is a valid international remittance.
Declaration
public bool IsValid { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
NameAndPhoneForInquiries
Name and phone number for inquiries.
Declaration
public string NameAndPhoneForInquiries { get; set; }
Property Value
Type | Description |
---|---|
System.String | This string must not be longer than 35 characters. It is inserted into field T24 when generating a DTAZV. |
OrderingCustAcct
Ordering customers account.
Declaration
public FinAcct OrderingCustAcct { get; set; }
Property Value
Type | Description |
---|---|
FinAcct | The ordering customer account is a required field of any remittance and therefore
cannot be set to a |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | An attempt to set a |
OrderingCustName
The name of the ordering customer.
Declaration
public SwiftTextLines OrderingCustName { get; set; }
Property Value
Type | Description |
---|---|
SwiftTextLines |
OwnReference
Internal reference of the ordering party. Will not be transmitted to the payee.
Declaration
public string OwnReference { get; set; }
Property Value
Type | Description |
---|---|
System.String | This string must not be longer than 27 characters. It is inserted into field T23 when generating a DTAZV. |
PayeeAcct
Payee account for this international remittance.
Declaration
public FinAcct PayeeAcct { get; set; }
Property Value
Type | Description |
---|---|
FinAcct | The payee account is a required field of any remittance and therefore cannot be set
to a |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | An attempt to set a |
PayeeCountry
The 2-letter alpha country code of the residence of the payee.
Declaration
public string PayeeCountry { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
If this is not explicitly set, then an attempt is made to retrieve it from
the payee account BIC property, or the payee account
CountryCode property when getting. If the numeric
country code from the payee account cannot be translated into a 2-letter alpha
country code, then null
is ultimately returned.
PayeeInstCountry
The 2-letter alpha country code of the country of the payee bank.
Declaration
public string PayeeInstCountry { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
If this is not explicitly set, then an attempt is made to retrieve it from
the payee account BIC property, or the payee account
CountryCode property when getting. If the numeric
country code from the payee account cannot be translated into a 2-letter alpha
country code, then null
is ultimately returned.
PayeeInstName
The name of the bank of the payee.
Declaration
public SwiftTextLines PayeeInstName { get; set; }
Property Value
Type | Description |
---|---|
SwiftTextLines | For a standard EU remittance this field is actually not required to contain anything meaningful. However, it still must be set to some non-empty value in order be syntactically complete. It is suggested that the application sets this property to the value "Bank" in such cases. |
PayeeName
The name of the payee.
Declaration
public SwiftTextLines PayeeName { get; set; }
Property Value
Type | Description |
---|---|
SwiftTextLines |
PaymtPurpose
Provides access to the payment purpose text field of the remittance.
Declaration
public SwiftTextLines PaymtPurpose { get; set; }
Property Value
Type | Description |
---|---|
SwiftTextLines | The payment purpose field is generally limited to a maximum of lines. |
PaymtType
Optional type of payment indicator.
Declaration
public string PaymtType { get; set; }
Property Value
Type | Description |
---|---|
System.String | For an EU standard remittance this should be "13". Other values are defined for DTAZV based international remittances as "Kennzeichnung der Zahlungsart" stored in DTAZV field T22. |
Remarks
If this is null
, then a suitable value is used automatically.
Methods
GetAlphaCountryCode(String)
Gets the 2-letter alpha country code for a numeric country code.
Declaration
public static string GetAlphaCountryCode(string sNumericCountryCode)
Parameters
Type | Name | Description |
---|---|---|
System.String | sNumericCountryCode | The 3-digit numeric country code to get the 2-letter alpha country code for. |
Returns
Type | Description |
---|---|
System.String | Returns the 2-letter alpha country code for the given 3-digit numeric country code.
If the given country code is not one of a counrty where the EU regulation applies,
then |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | The parameter sNumericCountryCode was |
System.ArgumentException | The parameter sNumericCountryCode did not consist of exactly three digits. |
GetNumericCountryCode(String)
Gets the 3-digit numeric country code for an alpha country code.
Declaration
public static string GetNumericCountryCode(string sAlphaCountryCode)
Parameters
Type | Name | Description |
---|---|---|
System.String | sAlphaCountryCode | The 2-letter alpha country code to get the 3-digit numeric country code for. |
Returns
Type | Description |
---|---|
System.String | Returns the 3-digit numeric country code for the given alpha country code.
If the given country code is not one of a counrty where the EU regulation applies,
then |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | The parameter sAlphaCountryCode was |
System.ArgumentException | The parameter sAlphaCountryCode did not consist of exactly two upper case letters. |
IsEuAlphaCountryCode(String)
Declaration
public static bool IsEuAlphaCountryCode(string sAlphaCountryCode)
Parameters
Type | Name | Description |
---|---|---|
System.String | sAlphaCountryCode |
Returns
Type | Description |
---|---|
System.Boolean |