Check21 Component
Properties Methods Events Config Settings Errors
The Check21 component is used to construct a file containing scanned images of paper checks, and optionally upload it to an FTPS server.
Syntax
DPayments.InPay.Check21
Remarks
An X9.37 file created by this component will contain the following records:
- File Header Record (1)
- Cash Letter Header Record (1)
- Bundle Header Record (1)
- Check detail record structure (0 to Checks.Count), which contains:
- Check Detail Record (1)
- Check Detail Addenda A (1)
- Front Image View Detail Record (0 or 1)
- Front Image View Data Record (0 or 1)
- Back Image View Detail Record (0 or 1)
- Back Image View Data Record (0 or 1)
- Bundle Control Record (1)
- Cash Letter Control Record (1)
- File Control Record (1)
This component makes creating the above file very easy.
First set the Origin fields with information about the institution that is originating this file, and
the destination it is to be deposited to. Also set the ReturnRoutingNumber.
Check21.Origin.OriginName = "First Bank of Thor"
Check21.Origin.RoutingNumber = "111012822"
Check21.Origin.ContactName = "Jake Olsen"
Check21.Origin.ContactPhone = "800-555-5555"
Check21.DestinationRoutingNumber = "051000321"
Check21.DestinationName = "First Bank of Loki"
Check21.ReturnRoutingNumber = "111012822"
This file must be differentiated from other files, so now set the
CashLetterId and CycleNumber properties, as well as the Filename.
(Alternatively Filename may be left empty, and the component will write
the file to memory and store it in the FileData property).
Check21.CashLetterId = "123456"
Check21.CycleNumber = "01"
Check21.Filename = "sample_output.dat"
This file is going to contain scanned images of paper checks, so RecordType should be
set to rtChecksAndImages and make sure the DocumentationType is set to a compatible
value ("G" through "J" are valid when RecordType is rtChecksAndImages).
Check21.RecordType = rtChecksAndImages
Check21.DocumentationType = "G"
This sample file is to contain only one check, but a real file may contain any number of checks.
To add a check,
create a new CheckDetail object and fill the fields
with information
read off the check's MICR line, as well as the Payee's name and the amount of the check.
CheckDetail check = new CheckDetail()
check.MICROnUs = "1234567890101" ' Account number on the check
check.MICRRoutingNumber = "902113700"
check.Amount = "50000" ' $500.00
check.SequenceNumber = "407"
check.PayeeName = "Bruce Banner"
Then set information about the Bank of First Deposit. This may be identical to the Origin.
The BOFDConversionIndicator should also be set to "2" if this bank converted the
original check into the image being included.
check.BOFDRoutingNumber = "111012822"
check.BOFDAccountNumber = "181818181818181818"
check.BOFDBranch = "Asgard"
check.BOFDConversionIndicator = "2"
Finally, you must include images of the front and back of the check, and indicate the format and compression
used to create those images. You may use FrontImageFilename and BackImageFilename fields to
point to image files on disk, or you may set the binary data directly in FrontImageData and
BackImageData. You also need to set a unique identifier that can be used to retrieve the images
at a later date.
check.ImageFormat = ifTIFF ' default
check.ImageCompression = icJPEG ' default
check.CanRecreateImages = True ' default
check.FrontImageFilename = "front.jpg"
check.FrontImageReferenceKey = "72234215front"
check.BackImageFilename = "back.jpg"
check.BackImageReferenceKey = "72234215back"
Finally add the check image to the component's Checks collection.
Check21.Checks.Add(check)
Now call BuildFile to build the file and save it to the Filename you indicated earlier.
If you have an FTPS server (TLS/SSL-secured FTP) to upload the files to, you may set the FTP fields
and call BuildAndUploadFile method instead.
Property List
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
BusinessDate | The year, month, and day that designates the business date at the Bank of First Deposit. |
CashLetterId | A code used to uniquely identify the cash letter inside the file. |
Checks | Collection of checks to be written to the file. |
CollectionType | A code that indicates the type of cash letter and bundle contained in the file. |
CycleNumber | Denotes the cycle under which the file is created. |
DestinationName | The short name that identifies the institution that receives the file. |
DestinationRoutingNumber | This number identifies the institution that receives the file. |
DocumentationType | A code that indicates the type of documentation that supports all Checks records in the file. |
FileData | Contains the binary contents of the X9.37 file created by the BuildFile method. |
Filename | Path and name of the file to be written to disk by the BuildFile method. |
FTP | Information about the FTP or FTPS server you're uploading to. |
Origin | Contains information about the originator of this file and the checks contained within. |
RecordType | A code that indicates the type of records contained in this file. |
ReturnRoutingNumber | A routing number indicating the location to which returns and return notifications should be sent. |
SettlementDate | The date that the institution that created the file expects settlement. |
SSLAcceptServerCert | Instructs the component to unconditionally accept the server certificate that matches the supplied certificate. |
SSLCert | The certificate to be used during SSL negotiation. |
SSLProvider | This specifies the SSL/TLS implementation to use. |
SSLServerCert | The server certificate for the last established connection. |
SSLStartMode | Determines how the component starts the SSL negotiation. |
Method List
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
BuildAndUploadFile | Builds an X9.37 file and uploads it to an FTP server. |
BuildFile | Builds an X9.37 file. |
Config | Sets or retrieves a configuration setting. |
DoEvents | Processes events from the internal message queue. |
Interrupt | Interrupt the current method. |
Reset | Reset the internal state of the component and all properties to their default values. |
Event List
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
Error | Information about non-fatal errors encountered during file construction. |
SSLServerAuthentication | Fired after the server presents its certificate to the client. |
SSLStatus | Shows the progress of the secure connection. |
Status | Traces the commands sent to the server, and the respective replies. |
Config Settings
The following is a list of config settings for the component with short descriptions. Click on the links for further details.
AllowAllBOFDIndicators | Allows for any value to be specified within the BOFDIndicator field. |
ArchiveType | Indicates the type of archive that supports each Check in this file. |
ASCIIOutput | Indicates whether to output ASCII or EBCDIC. |
BOFDIndicator | Indicates whether the origin is also the bank of first deposit. |
BundleCount | Total number of bundles in the file. |
BundleCreationDate | The date the bundle is created. |
BundleId | Unique identifier for the bundle inside the Cash Letter. |
BundleIndex | Index of the current bundle. |
CashLetterCreationDate | The date the cash letter is created. |
CashLetterCreationTime | The time the cash letter is created. |
CheckIsCredit[i] | Indicates whether a Check is to be sent as a Credit (61) Record. |
CountryCode | A code that identifies the country in which the payor bank is located. |
DetailAddendumRecordNumber | The Check Detail Addendum A Record Number. |
FedWorkType | Federal Reserve work type. |
FileCreationDate | The date the file is created. |
FileCreationTime | The time the file is created. |
FileId | A code used to uniquely identify this file. |
FileUserField | A User Field. |
IncludeAddendA | Whether to include Detail Addendum A Record. |
Overwrite | Indicates whether local files can be overwritten. |
OverwriteRemoteFile | Indicates whether remote files can be overwritten on the FTP server. |
ResendIndicator | Indicates whether the file being built has been previously transmitted in its entirety. |
ReservedField | A field reserved for future use. |
ReturnAcceptance | A code that indicates whether the institution that creates this file will or will not support electronic return processing. |
TestFile | Indicates whether the file being built is a test file or a production file. |
BuildInfo | Information about the product's build. |
GUIAvailable | Tells the component whether or not a message loop is available for processing events. |
LicenseInfo | Information about the current license. |
MaskSensitive | Whether sensitive data is masked in log messages. |
UseInternalSecurityAPI | Tells the component whether or not to use the system security libraries or an internal implementation. |
BusinessDate Property (Check21 Component)
The year, month, and day that designates the business date at the Bank of First Deposit.
Syntax
Default Value
""
Remarks
This property is 8 characters in length and in the format "YYYYMMDD". If no value is supplied in this property the current system date will be used.
This field is part of the Cash Letter Header record (type 10), Bundle Header record (type 20), Check Detail Addendum A record (type 26), and Image View Data record (type 52).
CashLetterId Property (Check21 Component)
A code used to uniquely identify the cash letter inside the file.
Syntax
Default Value
""
Remarks
This code identifies the cash letter, and is assigned by the institution that creates the file. This property is part of the Cash Letter Header record (type 10), and is 8 characters in length. The same value will also be used in the Bundle Header Record (type 20) for the "Bundle Id".
Checks Property (Check21 Component)
Collection of checks to be written to the file.
Syntax
public CheckDetailList Checks { get; }
Public Property Checks As CheckDetailList
Remarks
This property contains a collection of CheckDetail objects. Each of those objects must include MICR information read off of a physical check, as well as the Bank of First Deposit's routing number and the name of the payee. Each check object may also optionally contain a scan of the front and back of the paper check.
This property is not available at design time.
CollectionType Property (Check21 Component)
A code that indicates the type of cash letter and bundle contained in the file.
Syntax
public Check21CollectionTypes CollectionType { get; set; }
enum Check21CollectionTypes { ctForwardInfo, ctFowardPresentment, ctForwardSameDay, ctNoDetail }
Public Property CollectionType As Check21CollectionTypes
Enum Check21CollectionTypes ctForwardInfo ctFowardPresentment ctForwardSameDay ctNoDetail End Enum
Default Value
1
Remarks
This property is part of the Cash Letter Header record (type 10), and is exactly 2 characters in length. Valid values for this property are listed below.
ctForwardInfo (1) | Preliminary Forward Information - Used when information may change and the information is treated as not final. |
ctForwardPresentment (2) | Forward Presentment - For the collection and settlement of checks (demand instruments). Data is treated as final. |
ctForwardSameDay (3) | Forward Presentment, Same-Day Settlement - For the collection and settlement of checks (demand instruments) presented under the Federal Reserve's same day settlement amendments to Regulation CC. Data is treated as final. |
ctNoDetail (20) | No Detail - There are no checks contained within the file. |
CycleNumber Property (Check21 Component)
Denotes the cycle under which the file is created.
Syntax
Default Value
""
Remarks
This code is assigned by the institution that creates the file. This property is part of the Bundle Header record (type 20) and Image View Data record (type 52).
DestinationName Property (Check21 Component)
The short name that identifies the institution that receives the file.
Syntax
Default Value
""
Remarks
This field is part of the File Header record (type 01), and is exactly 9 characters long, including the check digit.
DestinationRoutingNumber Property (Check21 Component)
This number identifies the institution that receives the file.
Syntax
public string DestinationRoutingNumber { get; set; }
Public Property DestinationRoutingNumber As String
Default Value
""
Remarks
This field is part of the File Header record (type 01), Cash Letter Header Record (type 10), and Bundle Header Record (type 20), and is exactly 9 characters long including the check digit.
DocumentationType Property (Check21 Component)
A code that indicates the type of documentation that supports all Checks records in the file.
Syntax
Default Value
""
Remarks
This field is part of the Cash Letter record (type 10) and Check detail record (type 25), and may be any of the values listed below:
A | No image provided, paper provided separately. |
B | No image provided, paper provided separately, image upon request. |
C | Image provided separately, no paper provided. |
D | Image provided separately, no paper provided, image upon request. |
E | Image and paper provided separately. |
F | Image and paper provided separately, image upon request. |
G | Image included, no paper provided. |
H | Image included, no paper provided, image upon request. |
I | Image included, paper provided separately. |
J | Image included, paper provided separately, image upon request. |
K | No image provided, no paper provided. |
L | No image provided, no paper provided, image upon request. |
M | No image provided, Electronic Check provided separately. |
FileData Property (Check21 Component)
Contains the binary contents of the X9.37 file created by the BuildFile method.
Syntax
Default Value
""
Remarks
If Filename is specified BuildFile will save to disk, and FileData will remain empty. However if Filename is blank, the file will be created in-memory and stored in this property.
This property is read-only.
Filename Property (Check21 Component)
Path and name of the file to be written to disk by the BuildFile method.
Syntax
Default Value
""
Remarks
If Filename is blank, the BuildFile method will create the file in-memory and store it in the FileData property.
When using the BuildAndUploadFile method, Filename is used slightly different. If a path and filename is specified, the file will be written to disk and uploaded to the RemoteHost. If Filename contains only a path (and ends in "/" or "\"), that directory will be used to store temporary files before uploading to the RemoteHost. If Filename is blank the system temp directory will be used. All temporary files are deleted after a successful upload.
FTP Property (Check21 Component)
Information about the FTP or FTPS server you're uploading to.
Syntax
public FTPSettings FTP { get; set; }
Public Property FTP As FTPSettings
Remarks
These ftp fields are only necessary when using the BuildAndUploadFile method to upload an X9.37 file to an FTP or FTPS server. The RemoteHost and RemotePath fields specify the server you wish to connect to. RemotePath contains the path at which you wish to save the file, and RemoteFile indicates the filename that will be saved on the FTP server after upload. (It does not have to match the Filename property). User and Password contain your logon credentials for the FTP server.
This property is not available at design time.
Origin Property (Check21 Component)
Contains information about the originator of this file and the checks contained within.
Syntax
Remarks
These fields are used in many places in the different records that make up an X9.37 file.
This property is not available at design time.
RecordType Property (Check21 Component)
A code that indicates the type of records contained in this file.
Syntax
public Check21RecordTypes RecordType { get; set; }
enum Check21RecordTypes { rtNoChecks, rtChecksNoImages, rtChecksAndImages, rtImagesForCashLetter }
Public Property RecordType As Check21RecordTypes
Enum Check21RecordTypes rtNoChecks rtChecksNoImages rtChecksAndImages rtImagesForCashLetter End Enum
Default Value
0
Remarks
If an image is associated with any (even one) CheckDetail detail record, this property must be set to rtChecksAndImages or rtImagesForCashLetter. This property is part of the Cash Letter record (type 10) and may be set to any of the values listed below:
rtNoChecks | No electronic check records or image records. (only applicable for an empty cash letter with no Checks.) |
rtChecksNoImages | File contains electronic check records with no images. |
rtChecksAndImages | File contains electronic check records with images. |
rtImagesForCashLetter | File contains electronic check records and images that correspond to a previously sent file (ie, a file sent with a RecordType of rtChecksNoImages). The Checks in this file that contain posting data shall not be changed from the previously sent file with CollectionType 1 or 2. |
ReturnRoutingNumber Property (Check21 Component)
A routing number indicating the location to which returns and return notifications should be sent.
Syntax
Default Value
""
Remarks
This routing number is specified by the institution that creates the file, and specifies the location to which returns, return notifications, and preliminary return notifications should be sent. This property is part of the Bundle Header record (type 20), and is exactly 9 characters long including the check digit.
SettlementDate Property (Check21 Component)
The date that the institution that created the file expects settlement.
Syntax
Default Value
""
Remarks
This field is part of the Cash Letter Control record (type 90), and is in the format YYYYMMDD.
SSLAcceptServerCert Property (Check21 Component)
Instructs the component to unconditionally accept the server certificate that matches the supplied certificate.
Syntax
public Certificate SSLAcceptServerCert { get; set; }
Public Property SSLAcceptServerCert As Certificate
Remarks
If it finds any issues with the certificate presented by the server, the component will normally terminate the connection with an error.
You may override this behavior by supplying a value for SSLAcceptServerCert. If the certificate supplied in SSLAcceptServerCert is the same as the certificate presented by the server, then the server certificate is accepted unconditionally, and the connection will continue normally.
Please note that this functionality is provided only for cases where you otherwise know that you are communicating with the right server. If used improperly, this property may create a security breach. Use it at your own risk.
SSLCert Property (Check21 Component)
The certificate to be used during SSL negotiation.
Syntax
public Certificate SSLCert { get; set; }
Public Property SSLCert As Certificate
Remarks
The digital certificate that the component will use during SSL negotiation. Set this property to a valid certificate before starting SSL negotiation. To set a certificate, you may set the Encoded field to the encoded certificate. To select a certificate, use the store and subject fields.
SSLProvider Property (Check21 Component)
This specifies the SSL/TLS implementation to use.
Syntax
public Check21SSLProviders SSLProvider { get; set; }
enum Check21SSLProviders { sslpAutomatic, sslpPlatform, sslpInternal }
Public Property SSLProvider As Check21SSLProviders
Enum Check21SSLProviders sslpAutomatic sslpPlatform sslpInternal End Enum
Default Value
0
Remarks
This property specifies the SSL/TLS implementation to use. In most cases the default value of 0 (Automatic) is recommended and should not be changed. When set to 0 (Automatic) the component will select whether to use the platform implementation or the internal implementation depending on the operating system as well as the TLS version being used.
Possible values are:
0 (sslpAutomatic - default) | Automatically selects the appropriate implementation. |
1 (sslpPlatform) | Uses the platform/system implementation. |
2 (sslpInternal) | Uses the internal implementation. |
In most cases using the default value (Automatic) is recommended. The component will select a provider depending on the current platform.
When Automatic is selected, on Windows the component will use the platform implementation. On Linux/macOS the component will use the internal implementation. When TLS 1.3 is enabled via SSLEnabledProtocols the internal implementation is used on all platforms.
The .NET Standard library will always use the internal implementation on all platforms.
SSLServerCert Property (Check21 Component)
The server certificate for the last established connection.
Syntax
public Certificate SSLServerCert { get; }
Public ReadOnly Property SSLServerCert As Certificate
Remarks
SSLServerCert contains the server certificate for the last established connection.
SSLServerCert is reset every time a new connection is attempted.
This property is read-only.
SSLStartMode Property (Check21 Component)
Determines how the component starts the SSL negotiation.
Syntax
public Check21SSLStartModes SSLStartMode { get; set; }
enum Check21SSLStartModes { sslAutomatic, sslImplicit, sslExplicit, sslNone }
Public Property SSLStartMode As Check21SSLStartModes
Enum Check21SSLStartModes sslAutomatic sslImplicit sslExplicit sslNone End Enum
Default Value
3
Remarks
The SSLStartMode property may have one of the following values:
0 (sslAutomatic) | If the remote port is set to the standard plaintext port of the protocol (where applicable), the component will behave the same as if SSLStartMode is set to sslExplicit. In all other cases, SSL negotiation will be implicit (sslImplicit). |
1 (sslImplicit) | The SSL negotiation will start immediately after the connection is established. |
2 (sslExplicit) | The component will first connect in plaintext, and then explicitly start SSL negotiation through a protocol command such as STARTTLS. |
3 (sslNone - default) | No SSL negotiation, no SSL security. All communication will be in plaintext mode. |
BuildAndUploadFile Method (Check21 Component)
Builds an X9.37 file and uploads it to an FTP server.
Syntax
public void BuildAndUploadFile();
Public Sub BuildAndUploadFile()
Remarks
This method builds a complete X9.37 file and uploads it to the server specified in the RemoteHost field. If an Filename is specified, it will be saved on the local disc as well. If Filename contains only a path (Filename must terminate in a "/" or "\"), that path will be used to create a temporary file which will be deleted after the upload. If Filename is empty, the system temp directory will be used for creating the temporary file.
An X9.37 file created by this component will contain the following records:
- File Header Record (1)
- Cash Letter Header Record (1)
- Bundle Header Record (1)
- Check detail record structure (0 to Checks.Count), which contains:
- Check Detail Record (1)
- Check Detail Addenda A (1)
- Front Image View Detail Record (0 or 1)
- Front Image View Data Record (0 or 1)
- Back Image View Detail Record (0 or 1)
- Back Image View Data Record (0 or 1)
- Bundle Control Record (1)
- Cash Letter Control Record (1)
- File Control Record (1)
BuildFile Method (Check21 Component)
Builds an X9.37 file.
Syntax
public void BuildFile();
Public Sub BuildFile()
Remarks
This method builds a complete X9.37 file. If the Filename is specified, the file will be saved to the path and filename indicated there. If no Filename is given, the resultant file will be stored in memory, and can be accessed in the FileData property.
An X9.37 file created by this component will contain the following records:
- File Header Record (1)
- Cash Letter Header Record (1)
- Bundle Header Record (1)
- Check detail record structure (0 to Checks.Count), which contains:
- Check Detail Record (1)
- Check Detail Addenda A (1)
- Front Image View Detail Record (0 or 1)
- Front Image View Data Record (0 or 1)
- Back Image View Detail Record (0 or 1)
- Back Image View Data Record (0 or 1)
- Bundle Control Record (1)
- Cash Letter Control Record (1)
- File Control Record (1)
Config Method (Check21 Component)
Sets or retrieves a configuration setting.
Syntax
Remarks
Config is a generic method available in every component. It is used to set and retrieve configuration settings for the component.
These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.
To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).
To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.
DoEvents Method (Check21 Component)
Processes events from the internal message queue.
Syntax
public void DoEvents();
Public Sub DoEvents()
Remarks
When DoEvents is called, the component processes any available events. If no events are available, it waits for a preset period of time, and then returns.
Interrupt Method (Check21 Component)
Interrupt the current method.
Syntax
public void Interrupt();
Public Sub Interrupt()
Remarks
If there is no method in progress, Interrupt simply returns, doing nothing.
Reset Method (Check21 Component)
Reset the internal state of the component and all properties to their default values.
Syntax
public void Reset();
Public Sub Reset()
Remarks
The Reset method doesn't have any parameters and doesn't return any value.
Error Event (Check21 Component)
Information about non-fatal errors encountered during file construction.
Syntax
public event OnErrorHandler OnError; public delegate void OnErrorHandler(object sender, Check21ErrorEventArgs e); public class Check21ErrorEventArgs : EventArgs { public int ErrorCode { get; } public string Description { get; } }
Public Event OnError As OnErrorHandler Public Delegate Sub OnErrorHandler(sender As Object, e As Check21ErrorEventArgs) Public Class Check21ErrorEventArgs Inherits EventArgs Public ReadOnly Property ErrorCode As Integer Public ReadOnly Property Description As String End Class
Remarks
The Error event is fired to warn the user that it may be operating differently than the user expects. For instance, if the CollectionType is set to ctNoDetail, but check detail records are provided in the Checks collection the component will fire this event indicating that the specified Checks were ignored.
ErrorCode contains an error code and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to the Error Codes section.
SSLServerAuthentication Event (Check21 Component)
Fired after the server presents its certificate to the client.
Syntax
public event OnSSLServerAuthenticationHandler OnSSLServerAuthentication; public delegate void OnSSLServerAuthenticationHandler(object sender, Check21SSLServerAuthenticationEventArgs e); public class Check21SSLServerAuthenticationEventArgs : EventArgs { public string CertEncoded { get; }
public byte[] CertEncodedB { get; } public string CertSubject { get; } public string CertIssuer { get; } public string Status { get; } public bool Accept { get; set; } }
Public Event OnSSLServerAuthentication As OnSSLServerAuthenticationHandler Public Delegate Sub OnSSLServerAuthenticationHandler(sender As Object, e As Check21SSLServerAuthenticationEventArgs) Public Class Check21SSLServerAuthenticationEventArgs Inherits EventArgs Public ReadOnly Property CertEncoded As String
Public ReadOnly Property CertEncodedB As Byte() Public ReadOnly Property CertSubject As String Public ReadOnly Property CertIssuer As String Public ReadOnly Property Status As String Public Property Accept As Boolean End Class
Remarks
This event is where the client can decide whether to continue with the connection process or not. The Accept parameter is a recommendation on whether to continue or close the connection. This is just a suggestion: application software must use its own logic to determine whether to continue or not.
When Accept is False, Status shows why the verification failed (otherwise, Status contains the string "OK"). If it is decided to continue, you can override and accept the certificate by setting the Accept parameter to True.
SSLStatus Event (Check21 Component)
Shows the progress of the secure connection.
Syntax
public event OnSSLStatusHandler OnSSLStatus; public delegate void OnSSLStatusHandler(object sender, Check21SSLStatusEventArgs e); public class Check21SSLStatusEventArgs : EventArgs { public string Message { get; } }
Public Event OnSSLStatus As OnSSLStatusHandler Public Delegate Sub OnSSLStatusHandler(sender As Object, e As Check21SSLStatusEventArgs) Public Class Check21SSLStatusEventArgs Inherits EventArgs Public ReadOnly Property Message As String End Class
Remarks
The event is fired for informational and logging purposes only. Used to track the progress of the connection.
Status Event (Check21 Component)
Traces the commands sent to the server, and the respective replies.
Syntax
public event OnStatusHandler OnStatus; public delegate void OnStatusHandler(object sender, Check21StatusEventArgs e); public class Check21StatusEventArgs : EventArgs { public string Message { get; } }
Public Event OnStatus As OnStatusHandler Public Delegate Sub OnStatusHandler(sender As Object, e As Check21StatusEventArgs) Public Class Check21StatusEventArgs Inherits EventArgs Public ReadOnly Property Message As String End Class
Remarks
The Status event is useful for debugging purposes. It shows all the interaction between the client and the server, line by line.
Certificate Type
This is the digital certificate being used.
Remarks
This type describes the current digital certificate. The certificate may be a public or private key. The fields are used to identify or select certificates.
Fields
EffectiveDate String |
This is the date on which this certificate becomes valid. Before this date, it is not valid. The following example illustrates the format of an encoded date: 23-Jan-2000 15:00:00. |
||||||||||||||||||||||||||||||||||||||||||||||||
Encoded String |
This is the certificate (PEM/base64 encoded). This field is used to assign a specific certificate. The Store and Subject fields also may be used to specify a certificate. When Encoded is set, a search is initiated in the current Store for the private key of the certificate. If the key is found, Subject is updated to reflect the full subject of the selected certificate; otherwise, Subject is set to an empty string. |
||||||||||||||||||||||||||||||||||||||||||||||||
EncodedB Byte [] |
This is the certificate (PEM/base64 encoded). This field is used to assign a specific certificate. The Store and Subject fields also may be used to specify a certificate. When Encoded is set, a search is initiated in the current Store for the private key of the certificate. If the key is found, Subject is updated to reflect the full subject of the selected certificate; otherwise, Subject is set to an empty string. |
||||||||||||||||||||||||||||||||||||||||||||||||
ExpirationDate String |
This is the date the certificate expires. After this date, the certificate will no longer be valid. The following example illustrates the format of an encoded date: 23-Jan-2001 15:00:00. |
||||||||||||||||||||||||||||||||||||||||||||||||
ExtendedKeyUsage String |
This is a comma-delimited list of extended key usage identifiers. These are the same as ASN.1 object identifiers (OIDs). |
||||||||||||||||||||||||||||||||||||||||||||||||
Fingerprint String |
This is the hex-encoded, 16-byte MD5 fingerprint of the certificate. This property is primarily used for keys which do not have a corresponding X.509 public certificate, such as PEM keys that only contain a private key. It is commonly used for SSH keys. The following example illustrates the format: bc:2a:72:af:fe:58:17:43:7a:5f:ba:5a:7c:90:f7:02 |
||||||||||||||||||||||||||||||||||||||||||||||||
FingerprintSHA1 String |
This is the hex-encoded, 20-byte SHA-1 fingerprint of the certificate. This property is primarily used for keys which do not have a corresponding X.509 public certificate, such as PEM keys that only contain a private key. It is commonly used for SSH keys. The following example illustrates the format: 30:7b:fa:38:65:83:ff:da:b4:4e:07:3f:17:b8:a4:ed:80:be:ff:84 |
||||||||||||||||||||||||||||||||||||||||||||||||
FingerprintSHA256 String |
This is the hex-encoded, 32-byte SHA-256 fingerprint of the certificate. This property is primarily used for keys which do not have a corresponding X.509 public certificate, such as PEM keys that only contain a private key. It is commonly used for SSH keys. The following example illustrates the format: 6a:80:5c:33:a9:43:ea:b0:96:12:8a:64:96:30:ef:4a:8a:96:86:ce:f4:c7:be:10:24:8e:2b:60:9e:f3:59:53 |
||||||||||||||||||||||||||||||||||||||||||||||||
Issuer String |
This is the issuer of the certificate. This field contains a string representation of the name of the issuing authority for the certificate. |
||||||||||||||||||||||||||||||||||||||||||||||||
PrivateKey String |
This is the private key of the certificate (if available). The key is provided as PEM/Base64-encoded data. Note: The PrivateKey may be available but not exportable. In this case, PrivateKey returns an empty string. |
||||||||||||||||||||||||||||||||||||||||||||||||
PrivateKeyAvailable Boolean |
This field shows whether a PrivateKey is available for the selected certificate. If PrivateKeyAvailable is True, the certificate may be used for authentication purposes (e.g., server authentication). |
||||||||||||||||||||||||||||||||||||||||||||||||
PrivateKeyContainer String |
This is the name of the PrivateKey container for the certificate (if available). This functionality is available only on Windows platforms. |
||||||||||||||||||||||||||||||||||||||||||||||||
PublicKey String |
This is the public key of the certificate. The key is provided as PEM/Base64-encoded data. |
||||||||||||||||||||||||||||||||||||||||||||||||
PublicKeyAlgorithm String |
This field contains the textual description of the certificate's public key algorithm. The property contains either the name of the algorithm (e.g., "RSA" or "RSA_DH") or an object identifier (OID) string representing the algorithm. |
||||||||||||||||||||||||||||||||||||||||||||||||
PublicKeyLength Integer |
This is the length of the certificate's public key (in bits). Common values are 512, 1024, and 2048. |
||||||||||||||||||||||||||||||||||||||||||||||||
SerialNumber String |
This is the serial number of the certificate encoded as a string. The number is encoded as a series of hexadecimal digits, with each pair representing a byte of the serial number. |
||||||||||||||||||||||||||||||||||||||||||||||||
SignatureAlgorithm String |
The field contains the text description of the certificate's signature algorithm. The property contains either the name of the algorithm (e.g., "RSA" or "RSA_MD5RSA") or an object identifier (OID) string representing the algorithm. |
||||||||||||||||||||||||||||||||||||||||||||||||
Store String |
This is the name of the certificate store for the client certificate. The StoreType field denotes the type of the certificate store specified by Store. If the store is password protected, specify the password in StorePassword. Store is used in conjunction with the Subject field to specify client certificates. If Store has a value, and Subject or Encoded is set, a search for a certificate is initiated. Please see the Subject field for details. Designations of certificate stores are platform-dependent. The following are designations of the most common User and Machine certificate stores in Windows:
When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (i.e. PKCS12 certificate store). |
||||||||||||||||||||||||||||||||||||||||||||||||
StoreB Byte [] |
This is the name of the certificate store for the client certificate. The StoreType field denotes the type of the certificate store specified by Store. If the store is password protected, specify the password in StorePassword. Store is used in conjunction with the Subject field to specify client certificates. If Store has a value, and Subject or Encoded is set, a search for a certificate is initiated. Please see the Subject field for details. Designations of certificate stores are platform-dependent. The following are designations of the most common User and Machine certificate stores in Windows:
When the certificate store type is PFXFile, this property must be set to the name of the file. When the type is PFXBlob, the property must be set to the binary contents of a PFX file (i.e. PKCS12 certificate store). |
||||||||||||||||||||||||||||||||||||||||||||||||
StorePassword String |
If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store. |
||||||||||||||||||||||||||||||||||||||||||||||||
StoreType CertStoreTypes |
This is the type of certificate store for this certificate. The component supports both public and private keys in a variety of formats. When the cstAuto value is used the component will automatically determine the type. This field can take one of the following values:
|
||||||||||||||||||||||||||||||||||||||||||||||||
Subject String |
This is the subject of the certificate used for client authentication. This field will be populated with the full subject of the loaded certificate. When loading a certificate the subject is used to locate the certificate in the store. If an exact match is not found, the store is searched for subjects containing the value of the property. If a match is still not found, the property is set to an empty string, and no certificate is selected. The special value "*" picks a random certificate in the certificate store. The certificate subject is a comma separated list of distinguished name fields and values. For instance "CN=www.server.com, OU=test, C=US, E=support@nsoftware.com". Common fields and their meanings are displayed below.
If a field value contains a comma it must be quoted. |
||||||||||||||||||||||||||||||||||||||||||||||||
SubjectAltNames String |
This field contains comma-separated lists of alternative subject names for the certificate. |
||||||||||||||||||||||||||||||||||||||||||||||||
ThumbprintMD5 String |
This field contains the MD5 hash of the certificate. It is primarily used for X.509 certificates. If the hash does not already exist, it is automatically computed. |
||||||||||||||||||||||||||||||||||||||||||||||||
ThumbprintSHA1 String |
This field contains the SHA-1 hash of the certificate. It is primarily used for X.509 certificates. If the hash does not already exist, it is automatically computed. |
||||||||||||||||||||||||||||||||||||||||||||||||
ThumbprintSHA256 String |
This field contains the SHA-256 hash of the certificate. It is primarily used for X.509 certificates. If the hash does not already exist, it is automatically computed. |
||||||||||||||||||||||||||||||||||||||||||||||||
Usage String |
This field contains the text description of UsageFlags. This value will be of one or more of the following strings and will be separated by commas:
If the provider is OpenSSL, the value is a comma-separated list of X.509 certificate extension names. |
||||||||||||||||||||||||||||||||||||||||||||||||
UsageFlags Integer |
This field contains the flags that show intended use for the certificate. The value of UsageFlags is a combination of the following flags:
Please see the Usage field for a text representation of UsageFlags. This functionality currently is not available when the provider is OpenSSL. |
||||||||||||||||||||||||||||||||||||||||||||||||
Version String |
This field contains the certificate's version number. The possible values are the strings "V1", "V2", and "V3". |
Constructors
public Certificate();
Public Certificate()
Creates a Certificate instance whose properties can be set. This is useful for use with CERTMGR when generating new certificates.
public Certificate(string certificateFile);
Public Certificate(ByVal CertificateFile As String)
Opens CertificateFile and reads out the contents as an X509 public key.
public Certificate(byte[] certificateData);
Public Certificate(ByVal CertificateData As Byte())
Parses CertificateData as an X509 public key.
public Certificate(CertStoreTypes certStoreType, string store, string storePassword, string subject);
Public Certificate(ByVal CertStoreType As CertStoreTypes, ByVal Store As String, ByVal StorePassword As String, ByVal Subject As String)
CertStoreType identifies the type of certificate store to use. See StoreType for descriptions of the different certificate stores. Store is a file containing the certificate store. StorePassword is the password used to protect the store. After the store has been successfully opened, the component will attempt to find the certificate identified by Subject . This can be either a complete or a substring match of the X509 certificate's subject Distinguished Name (DN).
public Certificate(CertStoreTypes certStoreType, string store, string storePassword, string subject, string configurationString);
Public Certificate(ByVal CertStoreType As CertStoreTypes, ByVal Store As String, ByVal StorePassword As String, ByVal Subject As String, ByVal ConfigurationString As String)
CertStoreType identifies the type of certificate store to use. See StoreType for descriptions of the different certificate stores. Store is a file containing the certificate store. StorePassword is the password used to protect the store. ConfigurationString is a newline separated list of name-value pairs that may be used to modify the default behavior. Possible values include "PersistPFXKey", which shows whether or not the PFX key is persisted after performing operations with the private key. This correlates to the PKCS12_NO_PERSIST_KEY CyrptoAPI option. The default value is True (the key is persisted). "Thumbprint" - a MD5, SHA1, or SHA256 thumbprint of the certificate to load. When specified, this value is used to select the certificate in the store. This is applicable to cstUser, cstMachine, cstPublicKeyFile, and cstPFXFile store types. "UseInternalSecurityAPI" shows whether the platform (default) or the internal security API is used when performing certificate-related operations. After the store has been successfully opened, the component will attempt to find the certificate identified by Subject . This can be either a complete or a substring match of the X509 certificate's subject Distinguished Name (DN).
public Certificate(CertStoreTypes certStoreType, string store, string storePassword, byte[] encoded);
Public Certificate(ByVal CertStoreType As CertStoreTypes, ByVal Store As String, ByVal StorePassword As String, ByVal Encoded As Byte())
CertStoreType identifies the type of certificate store to use. See StoreType for descriptions of the different certificate stores. Store is a file containing the certificate store. StorePassword is the password used to protect the store. After the store has been successfully opened, the component will load Encoded as an X509 certificate and search the opened store for a corresponding private key.
public Certificate(CertStoreTypes certStoreType, byte[] storeBlob, string storePassword, string subject);
Public Certificate(ByVal CertStoreType As CertStoreTypes, ByVal StoreBlob As Byte(), ByVal StorePassword As String, ByVal Subject As String)
CertStoreType identifies the type of certificate store to use. See StoreType for descriptions of the different certificate stores. StoreBlob is a string (binary- or base64-encoded) containing the certificate data. StorePassword is the password used to protect the store. After the store has been successfully opened, the component will attempt to find the certificate identified by Subject . This can be either a complete or a substring match of the X509 certificate's subject Distinguished Name (DN).
public Certificate(CertStoreTypes certStoreType, byte[] storeBlob, string storePassword, string subject, string configurationString);
Public Certificate(ByVal CertStoreType As CertStoreTypes, ByVal StoreBlob As Byte(), ByVal StorePassword As String, ByVal Subject As String, ByVal ConfigurationString As String)
CertStoreType identifies the type of certificate store to use. See StoreType for descriptions of the different certificate stores. StoreBlob is a string (binary- or base64-encoded) containing the certificate data. StorePassword is the password used to protect the store. After the store has been successfully opened, the component will attempt to find the certificate identified by Subject . This can be either a complete or a substring match of the X509 certificate's subject Distinguished Name (DN).
public Certificate(CertStoreTypes certStoreType, byte[] storeBlob, string storePassword, byte[] encoded);
Public Certificate(ByVal CertStoreType As CertStoreTypes, ByVal StoreBlob As Byte(), ByVal StorePassword As String, ByVal Encoded As Byte())
CertStoreType identifies the type of certificate store to use. See StoreType for descriptions of the different certificate stores. Store is a string (binary- or base64-encoded) containing the certificate store. StorePassword is the password used to protect the store. After the store has been successfully opened, the component will load Encoded as an X509 certificate and search the opened store for a corresponding private key.
CheckDetail Type
Contains information about a check to be written to file.
Remarks
A CheckDetail type contains MICR information read off of a physical check, as well as the Bank of First Deposit's routing number and the name of the payee. A check may also optionally contain a scan of the front and back of the paper check.
Fields
Amount String |
The US dollar value of the check. This field is part of the Check detail record (type 25), and is 10 characters in length. |
||||||||||||||||||
BackImageCreationDate String |
Date assigned by the image creator for the image contained in BackImageData. This field is part of the Image View Detail record (type 50), and is in the format "YYYYMMDD". |
||||||||||||||||||
BackImageData String |
This field contains the scanned image of the back of the physical check, in the format specified by ImageFormat and compressed using the designated ImageCompression. You may either specify the raw binary image data in this field, or specify the path and filename of an image on disk in the BackImageFilename field. If both are specified BackImageData will be used. If both fields are left empty, no records referencing the back image of the check will be added to the file. |
||||||||||||||||||
BackImageDataB Byte [] |
This field contains the scanned image of the back of the physical check, in the format specified by ImageFormat and compressed using the designated ImageCompression. You may either specify the raw binary image data in this field, or specify the path and filename of an image on disk in the BackImageFilename field. If both are specified BackImageData will be used. If both fields are left empty, no records referencing the back image of the check will be added to the file. |
||||||||||||||||||
BackImageFilename String |
This field contains location of a scanned image of the back of the physical check, in the format specified by ImageFormat and compressed using the designated ImageCompression. You may either specify the path and filename of an image on disk in this field, or you may set the raw binary image data in the BackImageData field. If both fields are specified BackImageData will be used and BackImageFilename will be ignored. If both fields are left empty, no records referencing the back image of the check will be added to the file. |
||||||||||||||||||
BackImageReferenceKey String |
A designator assigned by the ECE institution that uniquely identifies the BackImageData. This designator could be a key that would be used by the creating institution to located the unique associated image, or it could provide a full access path and name that would allow direct external look up and access of the image. For example, this could be a URL. |
||||||||||||||||||
BOFDAccountNumber String |
A number that identifies the depository account at the Bank of First Deposit. This field is part of the Check Detail Addendum A record (type 26), and is 18 characters in length. |
||||||||||||||||||
BOFDBranch String |
A code that identifies the branch at the Bank of First Deposit. This field is part of the Check Detail Addendum A record (type 26), and is 5 characters in length. |
||||||||||||||||||
BOFDConversionIndicator String |
A code that indicates the conversion within the processing institution between original paper check, image, and IRD. The indicator is specific to the action of this BOFD endorser. This field is part of the Check Detail Addendum A record (type 26), and may be set to one of the following values:
|
||||||||||||||||||
BOFDRoutingNumber String |
A number that identifies the Bank of First Deposit. This field is part of the Check Detail Addendum A record (type 26), and is exactly 9 characters long, including the check digit. |
||||||||||||||||||
BOFDTruncator Boolean |
Identifies if this BOFD is the truncator of the original check. This field is part of the Check Detail Addendum A record (type 26), and is True by default. |
||||||||||||||||||
CanRecreateImages Boolean |
A code that indicates whether the sender has the ability to recreate the check images (from the original source) for the duration of the agreed to retention time frame. |
||||||||||||||||||
FrontImageCreationDate String |
Date assigned by the image creator for the image contained in FrontImageData. This field is part of the Image View Detail record (type 50), and is in the format "YYYYMMDD". |
||||||||||||||||||
FrontImageData String |
This field contains the scanned image of the front of the physical check, in the format specified by ImageFormat and compressed using the designated ImageCompression. You may either specify the raw binary image data in this field, or specify the path and filename of an image on disk in the FrontImageFilename field. If both are specified FrontImageData will be used. If both fields are left empty, no records referencing the front image of the check will be added to the file. |
||||||||||||||||||
FrontImageDataB Byte [] |
This field contains the scanned image of the front of the physical check, in the format specified by ImageFormat and compressed using the designated ImageCompression. You may either specify the raw binary image data in this field, or specify the path and filename of an image on disk in the FrontImageFilename field. If both are specified FrontImageData will be used. If both fields are left empty, no records referencing the front image of the check will be added to the file. |
||||||||||||||||||
FrontImageFilename String |
This field contains location of a scanned image of the front of the physical check, in the format specified by ImageFormat and compressed using the designated ImageCompression. You may either specify the path and filename of an image on disk in this field, or you may set the raw binary image data in the FrontImageData field. If both fields are specified FrontImageData will be used and FrontImageFilename will be ignored. If both fields are left empty, no records referencing the front image of the check will be added to the file. |
||||||||||||||||||
FrontImageReferenceKey String |
A designator assigned by the ECE institution that uniquely identifies the FrontImageData. This designator could be a key that would be used by the creating institution to located the unique associated image, or it could provide a full access path and name that would allow direct external look up and access of the image. For example, this could be a URL. |
||||||||||||||||||
ImageCompression CompressionTypes |
A code that identifies the algorithm or method used to compress the images stored in the FrontImageData and BackImageData fields. Values 0-20 may be used without a pre-existing agreement. Values 21-99 shall only be used when an agreement exists indicating that sender and receiver both support the specified image compression method and the method is specified below or on the X9 web site. This field is part of the Image View Detail record (type 50), and may be any of the values below:
|
||||||||||||||||||
ImageCreatorRoutingNumber String |
A number that identifies the financial institution that created the image (if different from BOFDRoutingNumber). This field is part of the Image View Detail record (type 50), and is exactly 9 characters long, including the check digit. If this field is not specified the Originator routing number will be used. |
||||||||||||||||||
ImageFormat ImageFormats |
A code that identifies the type of image format used for the images contained in the FrontImageData and BackImageData fields. Values 0-19 may e used without a pre-existing agreement. Values 20-99 shall only be used when an agreement exists indicating that the sender and receiver both support the specified image format type and the type is specified below or on the X9 web site. The image format type is also commonly specified by reference to the file extension used when the FrontImageData or BackImageData is saved as an image file. The file extension for each image format is included below for reference.
|
||||||||||||||||||
MICRAuxOnUs String |
A code used on commercial checks at the discretion of the payor bank, read off of the MICR line on a check. This field is part of the Check detail record (type 25), and is 15 characters in length. |
||||||||||||||||||
MICROnUs String |
Account number data specified by the payor bank and read from the MICR line on a check. On-Us data usually consists of the payor's account number, a serial number or transaction code, or both. ANS X9.37 requires the collecting bank to capture the entire On-Us field from the physical check. Blanks are to be suppressed, dashes are optional, and each On-Us symbol must be translated to a forward slash ('/'). This field is part of the Check detail record (type 25), and is 20 characters in length. |
||||||||||||||||||
MICRProcessingCode String |
The external processing code from the MICR line of a check, if present. This is also known as "Position 44",. and is used for special purposes as authorized by the Accredited Standards Committee X9. This field is part of the Check detail record (type 25), and is 1 character in length. |
||||||||||||||||||
MICRRoutingNumber String |
Payor bank routing number, read from the MICR line of a check. This number identifies the institution by or through which the item is payable. This field is part of the Check detail record (type 25), and is exactly 9 characters long, including the check digit. |
||||||||||||||||||
PayeeName String |
The name of the payee from the check. This field is part of the Check Detail Addendum A record (type 26), and is 15 characters in length. |
||||||||||||||||||
SequenceNumber String |
ECE Institution Item Sequence Number, assigned by the institution that creates the file. The ECE institution must construct the sequence number to guarantee uniqueness for a given RoutingNumber, BusinessDate, and CycleNumber. This field is part of the Check detail record (type 25) and Image View Data Record (type 52), and is 15 characters in length. |
Constructors
public CheckDetail();
Public CheckDetail()
FTPSettings Type
Used to connect to an FTP or FTPS server for uploading X9.37 files.
Remarks
These ftp fields are only necessary when uploading an X9.37 file to an FTP or FTPS server. The RemoteHost and RemotePath fields specify the server you wish to connect to. RemotePath contains the path at which you wish to save the file, and RemoteFile indicates the filename that will be saved on the FTP server after upload. (It does not have to match the Filename property). User and Password contain your logon credentials for the FTP server.
Fields
Password String |
The password to login with. This field must be set before the component begins a file upload. |
RemoteFile String |
The name of the file as it will appear on the server after upload. The RemoteFile can contain only the file name, an absolute path and filename, or a relative path based on RemotePath. |
RemoteHost String |
The domain name or IP address of the FTP server the file is to be uploaded to. The RemoteHost field specifies the IP address (IP number in dotted internet format) or Domain Name of the FTP server. It is set before a connection is attempted and cannot be changed once a connection is in progress. If the RemoteHost field is set to a Domain Name, a DNS request is initiated and upon successful termination of the request, the RemoteHost field is set to the corresponding address. If the search is not successful, an error is returned. If the component is configured to use a SOCKS firewall, the value assigned to this property may be preceded with an "*". If this is the case, the host name is passed to the firewall unresolved and the firewall performs the DNS resolution. |
RemotePath String |
The current path on the FTP server. The RemotePath shows the current working directory on the FTP server. It can also be used to change the working directory by setting it to an absolute directory path, or a relative path with respect to the existing value of RemotePath. If the first two bytes of the new path are "..", then a change to one level above in the directory tree is performed. The RemotePath must be set before the component begins a file upload. |
RemotePort Integer |
The port for the FTP service (default is 21). A valid port number (a value between 1 and 65535) is required for the connection to take place. The property must be set before a connection is attempted and cannot be changed once a connection is established. Any attempt to change this property while connected will fail with an error. |
Timeout Integer |
A timeout to use when uploading via FTP. When uploading the X9.37 file to the FTP RemoteHost, the component will use this field to determine how long to wait for the operation to complete before returning control. The Timeout field cannot be set to 0 The default value for the Timeout field is 60 (seconds). |
User String |
The user id to login as. This field must be set before the component begins a file upload. |
Constructors
public FTPSettings();
Public FTPSettings()
Origin Type
Specifies the originator of a file and the checks contained within.
Remarks
These fields are used in many places in the different records that make up an X9.37 file.
Fields
ContactName String |
A contact at the institution that creates the file. This field is part of the File Control record (type 99), and is 14 characters in length. |
ContactPhone String |
The phone number of the ContactName at the institution that created the file. This field is part of the Cash Letter Header record (type 10) and File Control record (type 99), and is 10 characters in length. |
OriginName String |
The short name of the ECE institution that created the file. This field is part of the Cash Letter Header record (type 10) and Cash Letter Control record (type 90), and is 14 characters in length. |
RoutingNumber String |
A number that identifies the ECE institution that originates the file. This field is part of the File Header record (type 01) and Cash Letter Header record (type 10), and Bundle Header record (type 20), and is exactly 9 characters long including the check digit. |
Constructors
Config Settings (Check21 Component)
The component accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the component, access to these internal properties is provided through the Config method.Check21 Config Settings
AllowAllBOFDIndicators: Allows for any value to be specified within the BOFDIndicator field.The default value is False, indicating that the BOFDIndicator is limited to the allowable values listed. | |||||||||||||||||||||||||||||||||
ArchiveType:
Indicates the type of archive that supports each Check in this file.This code indicates the way the Checks are archived. Access method,
availability, and timeframes shall be defined by clearing arrangements. Valid values
for this field include:
|
|||||||||||||||||||||||||||||||||
ASCIIOutput: Indicates whether to output ASCII or EBCDIC.If set to True, the component will create check21 files using the ASCII character set instead of the default EBCDIC character set. | |||||||||||||||||||||||||||||||||
BOFDIndicator:
Indicates whether the origin is also the bank of first deposit.This code indicates whether the ECE institution specified in the Origin fields is
the Bank of First Deposit (BOFD). Allowable values include:
|
|||||||||||||||||||||||||||||||||
BundleCount: Total number of bundles in the file.By default, each cash letter contains one bundle. If you wish to specify multiple bundles, increase the BundleCount and then set the BundleIndex to the bundle you wish to operate on. The CycleNumber, ReturnRoutingNumber, and Checks properties should be set for each bundle contained in the file. | |||||||||||||||||||||||||||||||||
BundleCreationDate: The date the bundle is created.The component normally uses the current system date when building the bundle inside a file. You can override this functionality by setting the BundleCreationDate manually through Config. | |||||||||||||||||||||||||||||||||
BundleId: Unique identifier for the bundle inside the Cash Letter.The component normally uses the same CashLetterId as the BundleId when constructing a bundle header record. You can override this functionality by setting the BundleId manually through Config. | |||||||||||||||||||||||||||||||||
BundleIndex: Index of the current bundle.By default, each cash letter contains one bundle. If you wish to specify multiple bundles, increase the BundleCount and then set the BundleIndex to the bundle you wish to operate on. The CycleNumber, ReturnRoutingNumber, and Checks properties should be set for each bundle contained in the file. | |||||||||||||||||||||||||||||||||
CashLetterCreationDate: The date the cash letter is created.The component normally uses the current system date when building the cash letter inside a file. You can override this functionality by setting the CashLetterCreationDate manually through Config. | |||||||||||||||||||||||||||||||||
CashLetterCreationTime: The time the cash letter is created.The component normally uses the current system time when building a the cash letter inside a file. You can override this functionality by setting the CashLetterCreationTime manually through Config. | |||||||||||||||||||||||||||||||||
CheckIsCredit[i]:
Indicates whether a Check is to be sent as a Credit (61) Record.Valid array indices are from 0 to Checks.Count - 1.
When set to True, the Check at the specified index 'i' will be sent as a Credit Record (61) within the X9.37 file. The DocumentationType is used in the creation of this record as are the following Checks fields: MICRAuxOnUs, MICRProcessingCode, MICRRoutingNumber, MICROnUs, Amount, and SequenceNumber. The default value is False. |
|||||||||||||||||||||||||||||||||
CountryCode: A code that identifies the country in which the payor bank is located.The default is "US". | |||||||||||||||||||||||||||||||||
DetailAddendumRecordNumber: The Check Detail Addendum A Record Number.This field is used to specify the record number within the Check Detail Addendum A Record. The default value used is '0' but can be changed with this field. | |||||||||||||||||||||||||||||||||
FedWorkType:
Federal Reserve work type.A code that specifies the Federal Reserve work type.
Valid values include:
|
|||||||||||||||||||||||||||||||||
FileCreationDate: The date the file is created.The component normally uses the current system date when building a file. You can override this functionality by setting the FileCreationDate manually through Config. | |||||||||||||||||||||||||||||||||
FileCreationTime: The time the file is created.The component normally uses the current system time when building a file. You can override this functionality by setting the FileCreationTime manually through Config. | |||||||||||||||||||||||||||||||||
FileId: A code used to uniquely identify this file.This 1-character code permits multiple files, created on the same date, same time, and between the same institutions to be distinguished from one another. This property is part of the File Header record (type 01), and has a default value of "0". | |||||||||||||||||||||||||||||||||
FileUserField: A User Field.A field used at the discretion of users. | |||||||||||||||||||||||||||||||||
IncludeAddendA: Whether to include Detail Addendum A Record.Whether to include Detail Addendum A Record (Record 26) in the file. Default value is True. If set to False the Detail Addendum A Record will not be included in the file. | |||||||||||||||||||||||||||||||||
Overwrite: Indicates whether local files can be overwritten.If the file specified by Filename exists and Overwrite is False, BuildFile and BuildAndUploadFile will fail with an error indicating the file exists. Overwrite is true by default. | |||||||||||||||||||||||||||||||||
OverwriteRemoteFile: Indicates whether remote files can be overwritten on the FTP server.If the file specified by RemoteFile exists and OverwriteRemoteFile is False, BuildAndUploadFile will fail with an error indicating the file exists. OverwriteRemoteFile is true by default. | |||||||||||||||||||||||||||||||||
ResendIndicator: Indicates whether the file being built has been previously transmitted in its entirety.The default value for this setting is False. | |||||||||||||||||||||||||||||||||
ReservedField: A field reserved for future use.A field reserved for future use by the Accredited Standards Committee X9. | |||||||||||||||||||||||||||||||||
ReturnAcceptance:
A code that indicates whether the institution that creates this file will or will not support electronic return processing.Valid values include:
|
|||||||||||||||||||||||||||||||||
TestFile: Indicates whether the file being built is a test file or a production file.The default value for TestFile is False, indicating that production files are being construction. |
Base Config Settings
BuildInfo: Information about the product's build.When queried, this setting will return a string containing information about the product's build. | |
GUIAvailable:
Tells the component whether or not a message loop is available for processing events.In a GUI-based application, long-running blocking operations may cause the application to stop responding to input until the operation returns. The component will attempt to discover whether or not the application has a message loop and, if one is discovered, it will process events in that message loop during any such blocking operation.
In some non-GUI applications, an invalid message loop may be discovered that will result in errant behavior. In these cases, setting GUIAvailable to false will ensure that the component does not attempt to process external events. |
|
LicenseInfo:
Information about the current license.When queried, this setting will return a string containing information about the license this instance of a component is using. It will return the following information:
|
|
MaskSensitive:
Whether sensitive data is masked in log messages.In certain circumstances it may be beneficial to mask sensitive data, like passwords, in log messages. Set this to true to mask sensitive data. The default is true.
This setting only works on these components: AS3Receiver, AS3Sender, Atom, Client(3DS), FTP, FTPServer, IMAP, OFTPClient, SSHClient, SCP, Server(3DS), Sexec, SFTP, SFTPServer, SSHServer, TCPClient, TCPServer. |
|
UseInternalSecurityAPI:
Tells the component whether or not to use the system security libraries or an internal implementation.
When set to false, the component will use the system security libraries by default to perform cryptographic functions where applicable.
In this case, calls to unmanaged code will be made. In certain environments this is not desirable.
To use a completely managed security implementation set this setting to true.
Setting this setting to true tells the component to use the internal implementation instead of using the system security libraries. On Windows, this setting is set to false by default. On Linux/macOS, this setting is set to true by default. If using the .NET Standard Library, this setting will be true on all platforms. The .NET Standard library does not support using the system security libraries. Note: This setting is static. The value set is applicable to all components used in the application. When this value is set the product's system DLL is no longer required as a reference, as all unmanaged code is stored in that file. |
Trappable Errors (Check21 Component)
Check21 Errors
143 Busy performing current action |
The component may also return one of the following error codes, which are inherited from other components.