Class FinIntRemitt
Generic class that holds the information of an international remittance (DTAZV).
public class FinIntRemitt
- Inheritance
-
FinIntRemitt
- Inherited Members
Remarks
The class FinDtaBuilder provides the method GenerateDTAZV(FinIntRemitt, int) that generates a complete DTAZV file from a FinIntRemitt instance.
Constructors
FinIntRemitt()
public FinIntRemitt()
Fields
AlphaCountryCodes
Table of 2-letter alpha country codes of all SEPA countries.
public static readonly string[] AlphaCountryCodes
Field Value
- 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.
public const int MaxLineLength = 35
Field Value
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.
public const int MaxTextLength = 140
Field Value
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.
public const int MaxTextLines = 4
Field Value
NumericCountryCodes
Table of 3-digit numeric country codes of all SEPA countries.
public static readonly string[] NumericCountryCodes
Field Value
- 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.
public SwiftAmt Amount { get; set; }
Property Value
- SwiftAmt
The amount is a required field of any remittance.
CostBearer
Who is paying for transaction expenses.
public FinIntRemittCostBearer CostBearer { get; set; }
Property Value
- 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.
public FinAcct CostBearerAcct { get; set; }
Property Value
InstructionAdditionalInfo
Additional narrative information to InstructionCodes.
public string InstructionAdditionalInfo { get; set; }
Property Value
- string
This string must not be longer than 25 characters. It is inserted into field T20 when generating a DTAZV.
InstructionCode1
public string InstructionCode1 { get; set; }
Property Value
InstructionCode2
public string InstructionCode2 { get; set; }
Property Value
InstructionCode3
public string InstructionCode3 { get; set; }
Property Value
InstructionCode4
public string InstructionCode4 { get; set; }
Property Value
InstructionCodes
Ordered set of instruction codes (Weisungsschluessel 1-4).
public string InstructionCodes { get; set; }
Property Value
- 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.
public bool IsValid { get; }
Property Value
NameAndPhoneForInquiries
Name and phone number for inquiries.
public string NameAndPhoneForInquiries { get; set; }
Property Value
- string
This string must not be longer than 35 characters. It is inserted into field T24 when generating a DTAZV.
OrderingCustAcct
Ordering customers account.
public FinAcct OrderingCustAcct { get; set; }
Property Value
- FinAcct
The ordering customer account is a required field of any remittance and therefore cannot be set to a
null
value. However, it can benull
immediately after construction of an empty FinIntRemitt instance.
Exceptions
- ArgumentNullException
An attempt to set a
null
reference will cause an ArgumentNullException to be thrown.
OrderingCustName
The name of the ordering customer.
public SwiftTextLines OrderingCustName { get; set; }
Property Value
OwnReference
Internal reference of the ordering party. Will not be transmitted to the payee.
public string OwnReference { get; set; }
Property Value
- 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.
public FinAcct PayeeAcct { get; set; }
Property Value
- FinAcct
The payee account is a required field of any remittance and therefore cannot be set to a
null
value. However, it can benull
immediately after construction of an empty FinIntRemitt instance.
Exceptions
- ArgumentNullException
An attempt to set a
null
reference will cause an ArgumentNullException to be thrown.
PayeeCountry
The 2-letter alpha country code of the residence of the payee.
public string PayeeCountry { get; set; }
Property Value
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.
public string PayeeInstCountry { get; set; }
Property Value
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.
public SwiftTextLines PayeeInstName { get; set; }
Property Value
- 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.
public SwiftTextLines PayeeName { get; set; }
Property Value
PaymtPurpose
Provides access to the payment purpose text field of the remittance.
public SwiftTextLines PaymtPurpose { get; set; }
Property Value
- SwiftTextLines
The payment purpose field is generally limited to a maximum of lines.
PaymtType
Optional type of payment indicator.
public string PaymtType { get; set; }
Property Value
- 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.
public static string GetAlphaCountryCode(string sNumericCountryCode)
Parameters
sNumericCountryCode
stringThe 3-digit numeric country code to get the 2-letter alpha country code for.
Returns
- 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
null
is returned.
Exceptions
- ArgumentNullException
The parameter sNumericCountryCode was
null
.- 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.
public static string GetNumericCountryCode(string sAlphaCountryCode)
Parameters
sAlphaCountryCode
stringThe 2-letter alpha country code to get the 3-digit numeric country code for.
Returns
- 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
null
is returned.
Exceptions
- ArgumentNullException
The parameter sAlphaCountryCode was
null
.- ArgumentException
The parameter sAlphaCountryCode did not consist of exactly two upper case letters.
IsEuAlphaCountryCode(string)
public static bool IsEuAlphaCountryCode(string sAlphaCountryCode)
Parameters
sAlphaCountryCode
string