Class FinRemitt
Generic class that holds the information of a german domestic remittance (Ueberweisung or Lastschrift).
Inherited Members
Namespace: Subsembly.FinTS
Assembly: Subsembly.FinTS.Core.dll
Syntax
public class FinRemitt : FinPersist
Constructors
FinRemitt()
Creates an all empty FinRemitt to be initialised from scratch.
Declaration
public FinRemitt()
Remarks
This constructor actually returns with an invalid instance of the FinRemitt class. Only after all required properties have been properly initialised, the instance will be a valid remittance.
FinRemitt(FinAcct, FinAcct, String, SwiftAmt, String)
Creates a FinRemitt from scratch with the given properties.
Declaration
public FinRemitt(FinAcct aOrderingCustAcct, FinAcct aPayeePayerAcct, string sPayeePayerName, SwiftAmt aAmount, string sTextKey)
Parameters
Type | Name | Description |
---|---|---|
FinAcct | aOrderingCustAcct | The ordering custiomer account. This will be placed into the OrderingCustAcct property. |
FinAcct | aPayeePayerAcct | The payee/payer account. This will be placed into the PayeePayerAcct property. |
System.String | sPayeePayerName | One line of payee/payer name. This will be placed into the
PayeePayerName1 property. The optional second line remains
|
SwiftAmt | aAmount | Monetary amount. This will be placed into the Amount property. |
System.String | sTextKey | The text key. This will be placed into the TextKey property. The
text key extension remains |
Remarks
Note that the PaymtPurpose is optional and therefor is not initialised by this constructor.
Fields
MaxLineLength
The maximum length of text lines in a FinRemitt instance. Applies to the properties PayeePayerName1, PayeePayerName2, and PaymtPurpose.
Declaration
public const int MaxLineLength = 27
Field Value
Type | Description |
---|---|
System.Int32 |
MaxPaymtPurposeLines
The maximum number of payment purpose text lines in a FinRemitt instance. Applies to the property PaymtPurpose.
Declaration
public const int MaxPaymtPurposeLines = 14
Field Value
Type | Description |
---|---|
System.Int32 |
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. |
DtausCustNumber
The DTAUS file customer number (field C6).
Declaration
public string DtausCustNumber { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
This field is only used when converting to or from a DTAUS file format. It corresponds with the middle content of field C6 of the DTAUS file. Thus is may consist of up to 11 digits only. If it is shorted, it will be prefixed with zeroes.
DtausReferenceNumber
The DTAUS file reference number (field A10).
Declaration
public string DtausReferenceNumber { get; set; }
Property Value
Type | Description |
---|---|
System.String |
Remarks
This field is only used when converting to or from a DTAUS file format. It corresponds with field A10 of the DTAUS file. Thus is may consist of up to 10 digits only. If it is shorted, it will be prefixed with zeroes.
IsDebit
Indicates whether the current TextKey is a debit or credit text key.
Declaration
public bool IsDebit { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
Remarks
This property is true
, if, any only if, the TextKey has been
set and it is below 50
.
OrderID
Optional order ID that was assiged by the bank to this remittance.
Declaration
public string OrderID { get; set; }
Property Value
Type | Description |
---|---|
System.String | If an order ID is available for this remittance, then it shall be stored in this
property. Otherwise this property shall be |
OrderingCustAcct
Ordering customers account.
Declaration
public FinAcct OrderingCustAcct { get; set; }
Property Value
Type | Description |
---|---|
FinAcct |
PayeePayerAcct
Peer account of this remittance. Depending on the direction of transfer, this can be the payee or the payer.
Declaration
public FinAcct PayeePayerAcct { get; set; }
Property Value
Type | Description |
---|---|
FinAcct |
PayeePayerName
The concatenation of PayeePayerName1 and PayeePayerName2.
Declaration
public string PayeePayerName { get; set; }
Property Value
Type | Description |
---|---|
System.String | Setting this property automatically splits the string after MaxLineLength characters. The first halve is stored in PayeePayerName1, the second halve is stored in PayeePayerName2. Reading this property returns the concatenation of PayeePayerName1 and PayeePayerName2. If PayeePayerName1 is shorter than MaxLineLength, then a blank will be inserted between the two strings. In any case the returned string is trimmed. |
PayeePayerName1
Name of peer of this remittance. Depending on the direction of transfer, this can be the payee or the payer.
Declaration
public string PayeePayerName1 { get; set; }
Property Value
Type | Description |
---|---|
System.String | The payee/payer name can consist of up to two lines with up to
MaxLineLength (currently always 27) characters each. If a second line
is used, it is stored in the PayeePayerName2 property. The
payee/payer name is a required field of any remittance. However, it can be set to
When the remittance is transmitted or converted into DTAUS format, the characters of this property may be converted to the DTAUS character set (See ToDta(String, Boolean)). During this conversion lower case characters are converted to upper case characters and any characters that are not in the DTAUS character set are replaced by dot characters. |
PayeePayerName2
Optional second line of payee/payer name.
Declaration
public string PayeePayerName2 { get; set; }
Property Value
Type | Description |
---|---|
System.String | The payee/payer name can consist of up to two lines with up to
MaxLineLength (currently always 27) characters each. If a second
line is used, it is stored in this property. The first line is stored in the
PayeePayerName1 property. The second line is optional and therefore
may be set to a When the remittance is transmitted or converted into DTAUS format, the characters of this property may be converted to the DTAUS character set (See ToDta(String, Boolean)). During this conversion lower case characters are converted to upper case characters and any characters that are not in the DTAUS character set are replaced by dot characters. |
PaymtPurpose
The remittance text information.
Declaration
public string[] PaymtPurpose { get; set; }
Property Value
Type | Description |
---|---|
System.String[] | For a domestic money transfer the payment purpose text can consist of up to
MaxPaymtPurposeLines (currently always 14) lines with up to
MaxLineLength (currently always 27) characters on each line. It
can also be The payment purpose text is stored as a string array with a maximum length of MaxPaymtPurposeLines. Each string in the array represents a payment purpose line, which may be an empty string. When the remittance is transmitted or converted into DTAUS format, the characters of this property may be converted to the DTAUS character set (See ToDta(String, Boolean)). During this conversion lower case characters are converted to upper case characters and any characters that are not in the DTAUS character set are replaced by dot characters. |
ScheduledDate
Optional date when this remittance shall be executed.
Declaration
public SwiftDate ScheduledDate { get; set; }
Property Value
Type | Description |
---|---|
SwiftDate | This may be any date, even a past date. Past dates can be used to model historical remittance objects. If this is a null date, which it is by default, then this remittance is not scheduled for a partcular date. |
TextKey
Two digit text key of this remittance.
Declaration
public string TextKey { get; set; }
Property Value
Type | Description |
---|---|
System.String | The text key is defined by the DTAUS specification. It always consists of
exactly two digits. The text key is a required field of any remittance and
therefore cannot be set to a |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string that did not contain two digits. |
TextKeyExt
Three digit text key extension of this remittance.
Declaration
public string TextKeyExt { get; set; }
Property Value
Type | Description |
---|---|
System.String | The text key extension is defined by the DTAUS specification. It consists of
exactly three digits. The text key extension is optional and may be |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | An attempt was made to set a string that did not contain three digits. |
Methods
FromSegment(FinSegment, Boolean)
Extract all remittance data from the given standard remittance segment.
Declaration
public void FromSegment(FinSegment aSegment, bool fWithSubAcct)
Parameters
Type | Name | Description |
---|---|---|
FinSegment | aSegment | Segment that provides the remittance data. This must not be |
System.Boolean | fWithSubAcct | Indicates if the segment contains subaccount information. |
ReadXml(XmlReader)
Reads this remittance from a FinTS 4.0 format XML stream.
Declaration
public override void ReadXml(XmlReader aXmlReader)
Parameters
Type | Name | Description |
---|---|---|
System.Xml.XmlReader | aXmlReader |
Overrides
Remarks
This method does not expect a root element. It only reads the sequence of elements from <OrderingCustAcct> through <OrderID>. Only elements that are found will replace the current value of the corresponding fields. Other fields remain untouched.
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | The parameter aXmlReader was |
WriteXml(XmlWriter)
Writes this remittance as a FinTS 4.0 XML formatted stream.
Declaration
public override void WriteXml(XmlWriter aXmlWriter)
Parameters
Type | Name | Description |
---|---|---|
System.Xml.XmlWriter | aXmlWriter |
Overrides
Remarks
This method does not write a root element. It only writes the elements
<OrderingCustAcct> through <OrderID>. Any null
fields
will be omitted from the output. Empty strings are written as empty XML
elements.
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | The parameter aXmlWriter was |