OFXBatch Class

Properties   Methods   Events   Config Settings   Errors  

Enables sending of multiple requests to an OFX server through a single connection.

Class Name

InEBank_OFXBatch

Procedural Interface

 inebank_ofxbatch_open();
 inebank_ofxbatch_close($res);
 inebank_ofxbatch_register_callback($res, $id, $function);
 inebank_ofxbatch_get_last_error($res);
 inebank_ofxbatch_get_last_error_code($res);
 inebank_ofxbatch_set($res, $id, $index, $value);
 inebank_ofxbatch_get($res, $id, $index);
 inebank_ofxbatch_do_config($res, $configurationstring);
 inebank_ofxbatch_do_postrequest($res);
 inebank_ofxbatch_do_readofxdatafile($res, $filename);
 inebank_ofxbatch_do_reset($res);
 inebank_ofxbatch_do_writeofxdatafile($res, $filename);

Remarks

The OFXBatch class allows your application to download account information, bank, credit card, investment, loan statements, make intrabank and/or interbank transfers, and/or download your FI profile in one single request submitted to the FI's OFX server. This class provides for applying a single authentication context to multiple requests in order to reduce the overhead of user authentication.

All downloads are batched into a single secure HTTPS connection to the financial institution. To use the OFXBatch class first identify the financial institution by setting the FIId, FIOrganization and FIUrl,properties. Next identify the OFX user and application by setting the OFXUser, OFXPassword, OFXAppId and OFXAppVersion properties. The same signon information will be used for the entire batch.

To build the request, depending on each request type, the corresponding components should be used. So, if account information, bank, credit card, investment, loan statement, bank transfer, and FI profile are part of this multiple request, then instances of Account, BankStatement, CCStatement, InvStatement, LoanStatement, BankTransfer, and FIProfile (corresponding to the each request type) should be used. The individual components that generate the OFX request aggregate will not need the sign on data to generate their request.

Set properties of each corresponding component (excluding the SignOn part which is already set), as you would do when using these components to send single requests to the server. Please refer to each class help files for details on how to build each individual OFX request .

Once you have finished setting the properties that describe each individual request, set the OFXBatchItemRequest in OFXBatch to the OFXRequest of each corresponding component. For example:

OFXBatch.OFXBatchItems[0].Request = BankStatement.OFXRequest; OFXBatch.OFXBatchItems[1].Request = CCStatement.OFXRequest; OFXBatch.OFXBatchItems[2].Request = FIProfile.OFXRequest;

Then, use the PostRequest method to build and transmit the request automatically.

Message sets will/must appear in the following order in the request: Signon, Signup, Bank statement, Intrabank funds transfers, Credit card statements, Loan statements, Investment statements, Interbank funds transfers, and FI Profile, regardless of their order while populating the OFXBatchItems. In the server response, the message sets will be returned in the server response in the same order.

Upon successful response, the OFXBatchItemResponse array property will be populated automatically, which will contain several blocks of information consisting of a server response for each request. To parse this response, the OFXBatchItemResponse at the same index should be passed as OFXResponse of the corresponding component using the same order as submitted in the request.

BankStatement.OFXResponse = OFXBatch.OFXBatchItems[0].Response; CCStatement.OFXResponse = OFXBatch.OFXBatchItems[1].Response; FIProfile.OFXResponse = OFXBatch.OFXBatchItems[2].Response;

Properties of each class are now populated and ready for retrieval.

Note: If signon data is different across components, then they cannot be used in the same batch, otherwise an error will be thrown.

Property List


The following is the full list of the properties of the class with short descriptions. Click on the links for further details.

FIIdFinancial institution identifier.
FIOrganizationFinancial institution organization name.
FirewallAutoDetectWhether to automatically detect and use firewall system settings, if available.
FirewallTypeThe type of firewall to connect through.
FirewallHostThe name or IP address of the firewall (optional).
FirewallPasswordA password if authentication is to be used when connecting through the firewall.
FirewallPortThe Transmission Control Protocol (TCP) port for the firewall Host .
FirewallUserA username if authentication is to be used when connecting through a firewall.
FIUrlFinancial institution URL.
OFXAppIdOFX application identifier.
OFXAppVersionOFX application version.
OFXBatchItemCountThe number of records in the OFXBatchItem arrays.
OFXBatchItemRequestOFX request aggregate.
OFXBatchItemRequestTypeThe type of OFX request included in the batch.
OFXBatchItemRequestUIDThe current batch item's unique transaction ID.
OFXBatchItemResponseThe OFX response aggregate.
OFXPasswordUser's password.
OFXUserUser's id.
ProxyAuthSchemeThe type of authorization to perform when connecting to the proxy.
ProxyAutoDetectWhether to automatically detect and use proxy system settings, if available.
ProxyPasswordA password if authentication is to be used for the proxy.
ProxyPortThe Transmission Control Protocol (TCP) port for the proxy Server (default 80).
ProxyServerIf a proxy Server is given, then the HTTP request is sent to the proxy instead of the server otherwise specified.
ProxySSLWhen to use a Secure Sockets Layer (SSL) for the connection to the proxy.
ProxyUserA username if authentication is to be used for the proxy.
SSLAcceptServerCertEffectiveDateThe date on which this certificate becomes valid.
SSLAcceptServerCertExpirationDateThe date on which the certificate expires.
SSLAcceptServerCertExtendedKeyUsageA comma-delimited list of extended key usage identifiers.
SSLAcceptServerCertFingerprintThe hex-encoded, 16-byte MD5 fingerprint of the certificate.
SSLAcceptServerCertFingerprintSHA1The hex-encoded, 20-byte SHA-1 fingerprint of the certificate.
SSLAcceptServerCertFingerprintSHA256The hex-encoded, 32-byte SHA-256 fingerprint of the certificate.
SSLAcceptServerCertIssuerThe issuer of the certificate.
SSLAcceptServerCertPrivateKeyThe private key of the certificate (if available).
SSLAcceptServerCertPrivateKeyAvailableWhether a PrivateKey is available for the selected certificate.
SSLAcceptServerCertPrivateKeyContainerThe name of the PrivateKey container for the certificate (if available).
SSLAcceptServerCertPublicKeyThe public key of the certificate.
SSLAcceptServerCertPublicKeyAlgorithmThe textual description of the certificate's public key algorithm.
SSLAcceptServerCertPublicKeyLengthThe length of the certificate's public key (in bits).
SSLAcceptServerCertSerialNumberThe serial number of the certificate encoded as a string.
SSLAcceptServerCertSignatureAlgorithmThe text description of the certificate's signature algorithm.
SSLAcceptServerCertStoreThe name of the certificate store for the client certificate.
SSLAcceptServerCertStorePasswordIf the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.
SSLAcceptServerCertStoreTypeThe type of certificate store for this certificate.
SSLAcceptServerCertSubjectAltNamesComma-separated lists of alternative subject names for the certificate.
SSLAcceptServerCertThumbprintMD5The MD5 hash of the certificate.
SSLAcceptServerCertThumbprintSHA1The SHA-1 hash of the certificate.
SSLAcceptServerCertThumbprintSHA256The SHA-256 hash of the certificate.
SSLAcceptServerCertUsageThe text description of UsageFlags .
SSLAcceptServerCertUsageFlagsThe flags that show intended use for the certificate.
SSLAcceptServerCertVersionThe certificate's version number.
SSLAcceptServerCertSubjectThe subject of the certificate used for client authentication.
SSLAcceptServerCertEncodedThe certificate (PEM/Base64 encoded).
SSLCertEffectiveDateThe date on which this certificate becomes valid.
SSLCertExpirationDateThe date on which the certificate expires.
SSLCertExtendedKeyUsageA comma-delimited list of extended key usage identifiers.
SSLCertFingerprintThe hex-encoded, 16-byte MD5 fingerprint of the certificate.
SSLCertFingerprintSHA1The hex-encoded, 20-byte SHA-1 fingerprint of the certificate.
SSLCertFingerprintSHA256The hex-encoded, 32-byte SHA-256 fingerprint of the certificate.
SSLCertIssuerThe issuer of the certificate.
SSLCertPrivateKeyThe private key of the certificate (if available).
SSLCertPrivateKeyAvailableWhether a PrivateKey is available for the selected certificate.
SSLCertPrivateKeyContainerThe name of the PrivateKey container for the certificate (if available).
SSLCertPublicKeyThe public key of the certificate.
SSLCertPublicKeyAlgorithmThe textual description of the certificate's public key algorithm.
SSLCertPublicKeyLengthThe length of the certificate's public key (in bits).
SSLCertSerialNumberThe serial number of the certificate encoded as a string.
SSLCertSignatureAlgorithmThe text description of the certificate's signature algorithm.
SSLCertStoreThe name of the certificate store for the client certificate.
SSLCertStorePasswordIf the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.
SSLCertStoreTypeThe type of certificate store for this certificate.
SSLCertSubjectAltNamesComma-separated lists of alternative subject names for the certificate.
SSLCertThumbprintMD5The MD5 hash of the certificate.
SSLCertThumbprintSHA1The SHA-1 hash of the certificate.
SSLCertThumbprintSHA256The SHA-256 hash of the certificate.
SSLCertUsageThe text description of UsageFlags .
SSLCertUsageFlagsThe flags that show intended use for the certificate.
SSLCertVersionThe certificate's version number.
SSLCertSubjectThe subject of the certificate used for client authentication.
SSLCertEncodedThe certificate (PEM/Base64 encoded).
SSLProviderThe Secure Sockets Layer/Transport Layer Security (SSL/TLS) implementation to use.
SSLServerCertEffectiveDateThe date on which this certificate becomes valid.
SSLServerCertExpirationDateThe date on which the certificate expires.
SSLServerCertExtendedKeyUsageA comma-delimited list of extended key usage identifiers.
SSLServerCertFingerprintThe hex-encoded, 16-byte MD5 fingerprint of the certificate.
SSLServerCertFingerprintSHA1The hex-encoded, 20-byte SHA-1 fingerprint of the certificate.
SSLServerCertFingerprintSHA256The hex-encoded, 32-byte SHA-256 fingerprint of the certificate.
SSLServerCertIssuerThe issuer of the certificate.
SSLServerCertPrivateKeyThe private key of the certificate (if available).
SSLServerCertPrivateKeyAvailableWhether a PrivateKey is available for the selected certificate.
SSLServerCertPrivateKeyContainerThe name of the PrivateKey container for the certificate (if available).
SSLServerCertPublicKeyThe public key of the certificate.
SSLServerCertPublicKeyAlgorithmThe textual description of the certificate's public key algorithm.
SSLServerCertPublicKeyLengthThe length of the certificate's public key (in bits).
SSLServerCertSerialNumberThe serial number of the certificate encoded as a string.
SSLServerCertSignatureAlgorithmThe text description of the certificate's signature algorithm.
SSLServerCertStoreThe name of the certificate store for the client certificate.
SSLServerCertStorePasswordIf the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.
SSLServerCertStoreTypeThe type of certificate store for this certificate.
SSLServerCertSubjectAltNamesComma-separated lists of alternative subject names for the certificate.
SSLServerCertThumbprintMD5The MD5 hash of the certificate.
SSLServerCertThumbprintSHA1The SHA-1 hash of the certificate.
SSLServerCertThumbprintSHA256The SHA-256 hash of the certificate.
SSLServerCertUsageThe text description of UsageFlags .
SSLServerCertUsageFlagsThe flags that show intended use for the certificate.
SSLServerCertVersionThe certificate's version number.
SSLServerCertSubjectThe subject of the certificate used for client authentication.
SSLServerCertEncodedThe certificate (PEM/Base64 encoded).
TimeoutThe timeout for the class.

Method List


The following is the full list of the methods of the class with short descriptions. Click on the links for further details.

ConfigSets or retrieves a configuration setting.
PostRequestSubmits a batch of requests to an OFX server through a single connection.
ReadOFXDataFileReads an OFX response from a file.
ResetReset the internal state of the class and all properties to their default values.
WriteOFXDataFileWrites the OFX response sent by the server to a file.

Event List


The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.

ConnectionStatusFired to indicate changes in the connection state.
ErrorFired when information is available about errors during data delivery.
SSLServerAuthenticationFired after the server presents its certificate to the client.
SSLStatusFired when secure connection progress messages are available.

Config Settings


The following is a list of config settings for the class with short descriptions. Click on the links for further details.

CacheContentIf true, the original XML is saved in a buffer.
CharsetSpecifies the charset used when encoding data.
EOLThe characters to use for separating lines.
ErrorOnEmptyAttrIf true, passing an invalid attribute to the Attr method will throw an exception.
ExtraNameCharsExtra characters for the parser to consider as name characters.
ExtraSpaceCharsExtra characters for the parser to consider as white space.
FlushOnEOLIf set, the parser flushes its text buffer after every line of text.
IgnoreBadAttributePrefixesIf true, bad (unknown) attribute prefixes are ignored.
IgnoreBadElementPrefixesIf true, bad (unknown) element prefixes are ignored.
IncludeElementPrefixWhether to include the prefix in the element name.
IncludeXMLDeclarationWhether to include the XML declaration when writing XML.
IndentThe characters to use for each indentation level.
InterruptWhether to stop parsing the current XML document.
OffsetCurrent offset of the document being parsed.
PreserveWhitespaceIf true, leading and trailing whitespace in element text is preserved.
QuoteCharQuote character to use for attribute values.
StringProcessingOptionsDefines options to use when processing string values.
BuildInfoInformation about the product's build.
CodePageThe system code page used for Unicode to Multibyte translations.
LicenseInfoInformation about the current license.
MaskSensitiveDataWhether sensitive data is masked in log messages.
ProcessIdleEventsWhether the class uses its internal event loop to process events when the main thread is idle.
SelectWaitMillisThe length of time in milliseconds the class will wait when DoEvents is called if there are no events to process.
UseInternalSecurityAPIWhether or not to use the system security libraries or an internal implementation.

FIId Property (InEBank_OFXBatch Class)

Financial institution identifier.

Object Oriented Interface

public function getFIId();
public function setFIId($value);

Procedural Interface

inebank_ofxbatch_get($res, 1 );
inebank_ofxbatch_set($res, 1, $value );

Default Value

''

Remarks

FIId holds the identifier of the OFX Financial Institution and is used during signon. This value is unique for each organization name.

Data Type

String

FIOrganization Property (InEBank_OFXBatch Class)

Financial institution organization name.

Object Oriented Interface

public function getFIOrganization();
public function setFIOrganization($value);

Procedural Interface

inebank_ofxbatch_get($res, 2 );
inebank_ofxbatch_set($res, 2, $value );

Default Value

''

Remarks

This is the name of the OFX Financial Institution and is used during signon. Each organization has a unique FIId that must also be used at signon.

Data Type

String

FirewallAutoDetect Property (InEBank_OFXBatch Class)

Whether to automatically detect and use firewall system settings, if available.

Object Oriented Interface

public function getFirewallAutoDetect();
public function setFirewallAutoDetect($value);

Procedural Interface

inebank_ofxbatch_get($res, 3 );
inebank_ofxbatch_set($res, 3, $value );

Default Value

false

Remarks

Whether to automatically detect and use firewall system settings, if available.

Data Type

Boolean

FirewallType Property (InEBank_OFXBatch Class)

The type of firewall to connect through.

Object Oriented Interface

public function getFirewallType();
public function setFirewallType($value);

Procedural Interface

inebank_ofxbatch_get($res, 4 );
inebank_ofxbatch_set($res, 4, $value );

Default Value

0

Remarks

The type of firewall to connect through. The applicable values are as follows:

fwNone (0)No firewall (default setting).
fwTunnel (1)Connect through a tunneling proxy. FirewallPort is set to 80.
fwSOCKS4 (2)Connect through a SOCKS4 Proxy. FirewallPort is set to 1080.
fwSOCKS5 (3)Connect through a SOCKS5 Proxy. FirewallPort is set to 1080.
fwSOCKS4A (10)Connect through a SOCKS4A Proxy. FirewallPort is set to 1080.

Data Type

Integer

FirewallHost Property (InEBank_OFXBatch Class)

The name or IP address of the firewall (optional).

Object Oriented Interface

public function getFirewallHost();
public function setFirewallHost($value);

Procedural Interface

inebank_ofxbatch_get($res, 5 );
inebank_ofxbatch_set($res, 5, $value );

Default Value

''

Remarks

The name or IP address of the firewall (optional). If a FirewallHost is given, the requested connections will be authenticated through the specified firewall when connecting.

If this property is set to a Domain Name, a DNS request is initiated. Upon successful termination of the request, this property is set to the corresponding address. If the search is not successful, the class fails with an error.

Data Type

String

FirewallPassword Property (InEBank_OFXBatch Class)

A password if authentication is to be used when connecting through the firewall.

Object Oriented Interface

public function getFirewallPassword();
public function setFirewallPassword($value);

Procedural Interface

inebank_ofxbatch_get($res, 6 );
inebank_ofxbatch_set($res, 6, $value );

Default Value

''

Remarks

A password if authentication is to be used when connecting through the firewall. If FirewallHost is specified, the FirewallUser and FirewallPassword properties are used to connect and authenticate to the given firewall. If the authentication fails, the class fails with an error.

Data Type

String

FirewallPort Property (InEBank_OFXBatch Class)

The Transmission Control Protocol (TCP) port for the firewall Host .

Object Oriented Interface

public function getFirewallPort();
public function setFirewallPort($value);

Procedural Interface

inebank_ofxbatch_get($res, 7 );
inebank_ofxbatch_set($res, 7, $value );

Default Value

0

Remarks

The Transmission Control Protocol (TCP) port for the firewall FirewallHost. See the description of the FirewallHost property for details.

Note: This property is set automatically when FirewallType is set to a valid value. See the description of the FirewallType property for details.

Data Type

Integer

FirewallUser Property (InEBank_OFXBatch Class)

A username if authentication is to be used when connecting through a firewall.

Object Oriented Interface

public function getFirewallUser();
public function setFirewallUser($value);

Procedural Interface

inebank_ofxbatch_get($res, 8 );
inebank_ofxbatch_set($res, 8, $value );

Default Value

''

Remarks

A username if authentication is to be used when connecting through a firewall. If FirewallHost is specified, this property and the FirewallPassword property are used to connect and authenticate to the given Firewall. If the authentication fails, the class fails with an error.

Data Type

String

FIUrl Property (InEBank_OFXBatch Class)

Financial institution URL.

Object Oriented Interface

public function getFIUrl();
public function setFIUrl($value);

Procedural Interface

inebank_ofxbatch_get($res, 9 );
inebank_ofxbatch_set($res, 9, $value );

Default Value

''

Remarks

This is the URL of the OFX Financial Institution to which the class will signon and fetch data.

Data Type

String

OFXAppId Property (InEBank_OFXBatch Class)

OFX application identifier.

Object Oriented Interface

public function getOFXAppId();
public function setOFXAppId($value);

Procedural Interface

inebank_ofxbatch_get($res, 10 );
inebank_ofxbatch_set($res, 10, $value );

Default Value

''

Remarks

This is the unique identifier of the user's OFX application.

Data Type

String

OFXAppVersion Property (InEBank_OFXBatch Class)

OFX application version.

Object Oriented Interface

public function getOFXAppVersion();
public function setOFXAppVersion($value);

Procedural Interface

inebank_ofxbatch_get($res, 11 );
inebank_ofxbatch_set($res, 11, $value );

Default Value

''

Remarks

This is the version of the user's OFX application.

Data Type

String

OFXBatchItemCount Property (InEBank_OFXBatch Class)

The number of records in the OFXBatchItem arrays.

Object Oriented Interface

public function getOFXBatchItemCount();
public function setOFXBatchItemCount($value);

Procedural Interface

inebank_ofxbatch_get($res, 12 );
inebank_ofxbatch_set($res, 12, $value );

Default Value

0

Remarks

This property controls the size of the following arrays:

The array indices start at 0 and end at OFXBatchItemCount - 1.

This property is not available at design time.

Data Type

Integer

OFXBatchItemRequest Property (InEBank_OFXBatch Class)

OFX request aggregate.

Object Oriented Interface

public function getOFXBatchItemRequest($ofxbatchitemindex);
public function setOFXBatchItemRequest($ofxbatchitemindex, $value);

Procedural Interface

inebank_ofxbatch_get($res, 13 , $ofxbatchitemindex);
inebank_ofxbatch_set($res, 13, $value , $ofxbatchitemindex);

Default Value

''

Remarks

OFX request aggregate. The OFXBatchItemRequest is obtained by setting it to a OFXRequest aggregate of a class that corresponds to that request type. For example:

OFXBatch.OFXBatchItemCount = 3; OFXBatch.OFXBathcItems[0].Request = BankStatement.OFXRequest; OFXBatch.OFXBathcItems[1].Request = CCStatement.OFXRequest; OFXBatch.OFXBathcItems[2].Request = FIProfile.OFXRequest;

Message sets will/must appear in the following order in the batch request sent to the server: Signon, Signup, Bank statement, Intrabank funds transfers, Credit card statements, Loan statements, Investment statements, Interbank funds transfers, and FI Profile, regardless of their order while populating the OFXBatchItems. In the server response, the message sets will be returned in the server response in the same order.

The $ofxbatchitemindex parameter specifies the index of the item in the array. The size of the array is controlled by the OFXBatchItemCount property.

This property is not available at design time.

Data Type

String

OFXBatchItemRequestType Property (InEBank_OFXBatch Class)

The type of OFX request included in the batch.

Object Oriented Interface

public function getOFXBatchItemRequestType($ofxbatchitemindex);

Procedural Interface

inebank_ofxbatch_get($res, 14 , $ofxbatchitemindex);

Default Value

''

Remarks

The type of OFX request included in the batch. Request types supported by OFXBatch component are: Account Info, Bank, Credit Card, Loan, and Investment statement download, Intrabank and Interbank Transfer, Bill Pay, and FI Profile. The support for these requests depend whether the FI OFX server supports that request type and whether they allow it to be part of a batch request.

Possible values and their meanings are as follows:

ValueMeaning
ACCTINFOAccount Information request
STMTBank Statement request
CCSTMTCredit Card Statement request
LOANSTMTLoan Statement request
INVSTMTInvestment Statement request
INTRAIntrabank Transfer request (Note: This is subject to synchronization and should be followed by calling the SynchronizeTransfers; method in BankTransfer class, depending on what was requested as part of the batch.)
INTERInterbank Transfer request (Note: This is subject to synchronization and should be followed by calling the SynchronizeTransfers; method in BankTransfer class, depending on what was requested as part of the batch.)
BILLPAYBill Payment request (Note: This is subject to synchronization and should be followed by calling the SynchronizePayments; and/or SynchronizePayees methods in BillPayment class, depending on what was requested as part of the batch.)
PROFFI Profile request

The $ofxbatchitemindex parameter specifies the index of the item in the array. The size of the array is controlled by the OFXBatchItemCount property.

This property is read-only and not available at design time.

Data Type

String

OFXBatchItemRequestUID Property (InEBank_OFXBatch Class)

The current batch item's unique transaction ID.

Object Oriented Interface

public function getOFXBatchItemRequestUID($ofxbatchitemindex);

Procedural Interface

inebank_ofxbatch_get($res, 15 , $ofxbatchitemindex);

Default Value

''

Remarks

The current batch item's unique transaction ID.

The value in OFXBatchItemResponse is parsed out of the server's response to the batch and matched to the appropriate original OFXBatchItemRequest using by matching the response UID to the OFXBatchItemRequestUID.

The $ofxbatchitemindex parameter specifies the index of the item in the array. The size of the array is controlled by the OFXBatchItemCount property.

This property is read-only and not available at design time.

Data Type

String

OFXBatchItemResponse Property (InEBank_OFXBatch Class)

The OFX response aggregate.

Object Oriented Interface

public function getOFXBatchItemResponse($ofxbatchitemindex);
public function setOFXBatchItemResponse($ofxbatchitemindex, $value);

Procedural Interface

inebank_ofxbatch_get($res, 16 , $ofxbatchitemindex);
inebank_ofxbatch_set($res, 16, $value , $ofxbatchitemindex);

Default Value

''

Remarks

The OFX response aggregate. This string represents the OFX response aggregate for the current OFXBatchItemRequest. When the OFXBatch is posted, the OFXBatchItemResponse property will be populated automatically with the server's response to the OFXBatchItemRequest.

For example, if the batch request consisted of BankStatement, CCStatement and FIProfile, such as:

OFXBatch.OFXBatchItemCount = 3; OFXBatch.OFXBatchItems[0].Request = BankStatement.OFXRequest; OFXBatch.OFXBatchItems[1].Request = CCStatement.OFXRequest; OFXBatch.OFXBatchItems[2].Request = FIProfile.OFXRequest;

Upon successful server response, the OFXResponse aggregate of the corresponding class should be set (in the same order as they were included in the batch request), for example:

BankStatement.OFXResponse = OFXBatch.OFXBatchItems[0].Response; CCStatement.OFXResponse = OFXBatch.OFXBatchItems[1].Response; FIProfile.OFXResponse = OFXBatch.OFXBatchItems[2].Response;

Properties of each class are now populated and ready for retrieval.

The $ofxbatchitemindex parameter specifies the index of the item in the array. The size of the array is controlled by the OFXBatchItemCount property.

This property is not available at design time.

Data Type

String

OFXPassword Property (InEBank_OFXBatch Class)

User's password.

Object Oriented Interface

public function getOFXPassword();
public function setOFXPassword($value);

Procedural Interface

inebank_ofxbatch_get($res, 17 );
inebank_ofxbatch_set($res, 17, $value );

Default Value

''

Remarks

This is the password used when signing on to the OFX Financial Institution's service.

Data Type

String

OFXUser Property (InEBank_OFXBatch Class)

User's id.

Object Oriented Interface

public function getOFXUser();
public function setOFXUser($value);

Procedural Interface

inebank_ofxbatch_get($res, 18 );
inebank_ofxbatch_set($res, 18, $value );

Default Value

''

Remarks

This is the UserID used when signing on to the OFX Financial Institution's service.

Data Type

String

ProxyAuthScheme Property (InEBank_OFXBatch Class)

The type of authorization to perform when connecting to the proxy.

Object Oriented Interface

public function getProxyAuthScheme();
public function setProxyAuthScheme($value);

Procedural Interface

inebank_ofxbatch_get($res, 19 );
inebank_ofxbatch_set($res, 19, $value );

Default Value

0

Remarks

The type of authorization to perform when connecting to the proxy. This is used only when the ProxyUser and ProxyPassword properties are set.

ProxyAuthScheme should be set to authNone (3) when no authentication is expected.

By default, ProxyAuthScheme is authBasic (0), and if the ProxyUser and ProxyPassword properties are set, the class will attempt basic authentication.

If ProxyAuthScheme is set to authDigest (1), digest authentication will be attempted instead.

If ProxyAuthScheme is set to authProprietary (2), then the authorization token will not be generated by the class. Look at the configuration file for the class being used to find more information about manually setting this token.

If ProxyAuthScheme is set to authNtlm (4), NTLM authentication will be used.

For security reasons, setting this property will clear the values of ProxyUser and ProxyPassword.

Data Type

Integer

ProxyAutoDetect Property (InEBank_OFXBatch Class)

Whether to automatically detect and use proxy system settings, if available.

Object Oriented Interface

public function getProxyAutoDetect();
public function setProxyAutoDetect($value);

Procedural Interface

inebank_ofxbatch_get($res, 20 );
inebank_ofxbatch_set($res, 20, $value );

Default Value

false

Remarks

Whether to automatically detect and use proxy system settings, if available. The default value is false.

Data Type

Boolean

ProxyPassword Property (InEBank_OFXBatch Class)

A password if authentication is to be used for the proxy.

Object Oriented Interface

public function getProxyPassword();
public function setProxyPassword($value);

Procedural Interface

inebank_ofxbatch_get($res, 21 );
inebank_ofxbatch_set($res, 21, $value );

Default Value

''

Remarks

A password if authentication is to be used for the proxy.

If ProxyAuthScheme is set to Basic Authentication, the ProxyUser and ProxyPassword properties are Base64 encoded and the proxy authentication token will be generated in the form Basic [encoded-user-password].

If ProxyAuthScheme is set to Digest Authentication, the ProxyUser and ProxyPassword properties are used to respond to the Digest Authentication challenge from the server.

If ProxyAuthScheme is set to NTLM Authentication, the ProxyUser and ProxyPassword properties are used to authenticate through NTLM negotiation.

Data Type

String

ProxyPort Property (InEBank_OFXBatch Class)

The Transmission Control Protocol (TCP) port for the proxy Server (default 80).

Object Oriented Interface

public function getProxyPort();
public function setProxyPort($value);

Procedural Interface

inebank_ofxbatch_get($res, 22 );
inebank_ofxbatch_set($res, 22, $value );

Default Value

80

Remarks

The Transmission Control Protocol (TCP) port for the proxy ProxyServer (default 80). See the description of the ProxyServer property for details.

Data Type

Integer

ProxyServer Property (InEBank_OFXBatch Class)

If a proxy Server is given, then the HTTP request is sent to the proxy instead of the server otherwise specified.

Object Oriented Interface

public function getProxyServer();
public function setProxyServer($value);

Procedural Interface

inebank_ofxbatch_get($res, 23 );
inebank_ofxbatch_set($res, 23, $value );

Default Value

''

Remarks

If a proxy ProxyServer is given, then the HTTP request is sent to the proxy instead of the server otherwise specified.

If the ProxyServer property is set to a domain name, a DNS request is initiated. Upon successful termination of the request, the ProxyServer property is set to the corresponding address. If the search is not successful, an error is returned.

Data Type

String

ProxySSL Property (InEBank_OFXBatch Class)

When to use a Secure Sockets Layer (SSL) for the connection to the proxy.

Object Oriented Interface

public function getProxySSL();
public function setProxySSL($value);

Procedural Interface

inebank_ofxbatch_get($res, 24 );
inebank_ofxbatch_set($res, 24, $value );

Default Value

0

Remarks

When to use a Secure Sockets Layer (SSL) for the connection to the proxy. The applicable values are as follows:

psAutomatic (0)Default setting. If the URL is an https URL, the class will use the psTunnel option. If the URL is an http URL, the class will use the psNever option.
psAlways (1)The connection is always SSL-enabled.
psNever (2)The connection is not SSL-enabled.
psTunnel (3)The connection is made through a tunneling (HTTP) proxy.

Data Type

Integer

ProxyUser Property (InEBank_OFXBatch Class)

A username if authentication is to be used for the proxy.

Object Oriented Interface

public function getProxyUser();
public function setProxyUser($value);

Procedural Interface

inebank_ofxbatch_get($res, 25 );
inebank_ofxbatch_set($res, 25, $value );

Default Value

''

Remarks

A username if authentication is to be used for the proxy.

If ProxyAuthScheme is set to Basic Authentication, the ProxyUser and ProxyPassword properties are Base64 encoded and the proxy authentication token will be generated in the form Basic [encoded-user-password].

If ProxyAuthScheme is set to Digest Authentication, the ProxyUser and ProxyPassword properties are used to respond to the Digest Authentication challenge from the server.

If ProxyAuthScheme is set to NTLM Authentication, the ProxyUser and ProxyPassword properties are used to authenticate through NTLM negotiation.

Data Type

String

SSLAcceptServerCertEffectiveDate Property (InEBank_OFXBatch Class)

The date on which this certificate becomes valid.

Object Oriented Interface

public function getSSLAcceptServerCertEffectiveDate();

Procedural Interface

inebank_ofxbatch_get($res, 26 );

Default Value

''

Remarks

The date on which this certificate becomes valid. Before this date, it is not valid. The date is localized to the system's time zone. The following example illustrates the format of an encoded date:

23-Jan-2000 15:00:00.

This property is read-only.

Data Type

String

SSLAcceptServerCertExpirationDate Property (InEBank_OFXBatch Class)

The date on which the certificate expires.

Object Oriented Interface

public function getSSLAcceptServerCertExpirationDate();

Procedural Interface

inebank_ofxbatch_get($res, 27 );

Default Value

''

Remarks

The date on which the certificate expires. After this date, the certificate will no longer be valid. The date is localized to the system's time zone. The following example illustrates the format of an encoded date:

23-Jan-2001 15:00:00.

This property is read-only.

Data Type

String

SSLAcceptServerCertExtendedKeyUsage Property (InEBank_OFXBatch Class)

A comma-delimited list of extended key usage identifiers.

Object Oriented Interface

public function getSSLAcceptServerCertExtendedKeyUsage();

Procedural Interface

inebank_ofxbatch_get($res, 28 );

Default Value

''

Remarks

A comma-delimited list of extended key usage identifiers. These are the same as ASN.1 object identifiers (OIDs).

This property is read-only.

Data Type

String

SSLAcceptServerCertFingerprint Property (InEBank_OFXBatch Class)

The hex-encoded, 16-byte MD5 fingerprint of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertFingerprint();

Procedural Interface

inebank_ofxbatch_get($res, 29 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLAcceptServerCertFingerprintSHA1 Property (InEBank_OFXBatch Class)

The hex-encoded, 20-byte SHA-1 fingerprint of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertFingerprintSHA1();

Procedural Interface

inebank_ofxbatch_get($res, 30 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLAcceptServerCertFingerprintSHA256 Property (InEBank_OFXBatch Class)

The hex-encoded, 32-byte SHA-256 fingerprint of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertFingerprintSHA256();

Procedural Interface

inebank_ofxbatch_get($res, 31 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLAcceptServerCertIssuer Property (InEBank_OFXBatch Class)

The issuer of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertIssuer();

Procedural Interface

inebank_ofxbatch_get($res, 32 );

Default Value

''

Remarks

The issuer of the certificate. This property contains a string representation of the name of the issuing authority for the certificate.

This property is read-only.

Data Type

String

SSLAcceptServerCertPrivateKey Property (InEBank_OFXBatch Class)

The private key of the certificate (if available).

Object Oriented Interface

public function getSSLAcceptServerCertPrivateKey();

Procedural Interface

inebank_ofxbatch_get($res, 33 );

Default Value

''

Remarks

The private key of the certificate (if available). The key is provided as PEM/Base64-encoded data.

Note: The SSLAcceptServerCertPrivateKey may be available but not exportable. In this case, SSLAcceptServerCertPrivateKey returns an empty string.

This property is read-only.

Data Type

String

SSLAcceptServerCertPrivateKeyAvailable Property (InEBank_OFXBatch Class)

Whether a PrivateKey is available for the selected certificate.

Object Oriented Interface

public function getSSLAcceptServerCertPrivateKeyAvailable();

Procedural Interface

inebank_ofxbatch_get($res, 34 );

Default Value

false

Remarks

Whether a SSLAcceptServerCertPrivateKey is available for the selected certificate. If SSLAcceptServerCertPrivateKeyAvailable is True, the certificate may be used for authentication purposes (e.g., server authentication).

This property is read-only.

Data Type

Boolean

SSLAcceptServerCertPrivateKeyContainer Property (InEBank_OFXBatch Class)

The name of the PrivateKey container for the certificate (if available).

Object Oriented Interface

public function getSSLAcceptServerCertPrivateKeyContainer();

Procedural Interface

inebank_ofxbatch_get($res, 35 );

Default Value

''

Remarks

The name of the SSLAcceptServerCertPrivateKey container for the certificate (if available). This functionality is available only on Windows platforms.

This property is read-only.

Data Type

String

SSLAcceptServerCertPublicKey Property (InEBank_OFXBatch Class)

The public key of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertPublicKey();

Procedural Interface

inebank_ofxbatch_get($res, 36 );

Default Value

''

Remarks

The public key of the certificate. The key is provided as PEM/Base64-encoded data.

This property is read-only.

Data Type

String

SSLAcceptServerCertPublicKeyAlgorithm Property (InEBank_OFXBatch Class)

The textual description of the certificate's public key algorithm.

Object Oriented Interface

public function getSSLAcceptServerCertPublicKeyAlgorithm();

Procedural Interface

inebank_ofxbatch_get($res, 37 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLAcceptServerCertPublicKeyLength Property (InEBank_OFXBatch Class)

The length of the certificate's public key (in bits).

Object Oriented Interface

public function getSSLAcceptServerCertPublicKeyLength();

Procedural Interface

inebank_ofxbatch_get($res, 38 );

Default Value

0

Remarks

The length of the certificate's public key (in bits). Common values are 512, 1024, and 2048.

This property is read-only.

Data Type

Integer

SSLAcceptServerCertSerialNumber Property (InEBank_OFXBatch Class)

The serial number of the certificate encoded as a string.

Object Oriented Interface

public function getSSLAcceptServerCertSerialNumber();

Procedural Interface

inebank_ofxbatch_get($res, 39 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLAcceptServerCertSignatureAlgorithm Property (InEBank_OFXBatch Class)

The text description of the certificate's signature algorithm.

Object Oriented Interface

public function getSSLAcceptServerCertSignatureAlgorithm();

Procedural Interface

inebank_ofxbatch_get($res, 40 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLAcceptServerCertStore Property (InEBank_OFXBatch Class)

The name of the certificate store for the client certificate.

Object Oriented Interface

public function getSSLAcceptServerCertStore();
public function setSSLAcceptServerCertStore($value);

Procedural Interface

inebank_ofxbatch_get($res, 41 );
inebank_ofxbatch_set($res, 41, $value );

Default Value

'MY'

Remarks

The name of the certificate store for the client certificate.

The SSLAcceptServerCertStoreType property denotes the type of the certificate store specified by SSLAcceptServerCertStore. If the store is password-protected, specify the password in SSLAcceptServerCertStorePassword.

SSLAcceptServerCertStore is used in conjunction with the SSLAcceptServerCertSubject property to specify client certificates. If SSLAcceptServerCertStore has a value, and SSLAcceptServerCertSubject or SSLAcceptServerCertEncoded is set, a search for a certificate is initiated. Please see the SSLAcceptServerCertSubject property for details.

Designations of certificate stores are platform dependent.

The following designations are the most common User and Machine certificate stores in Windows:

MYA certificate store holding personal certificates with their associated private keys.
CACertifying authority certificates.
ROOTRoot certificates.

When the certificate store type is cstPFXFile, this property must be set to the name of the file. When the type is cstPFXBlob, the property must be set to the binary contents of a PFX file (i.e., PKCS#12 certificate store).

Data Type

Binary String

SSLAcceptServerCertStorePassword Property (InEBank_OFXBatch Class)

If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.

Object Oriented Interface

public function getSSLAcceptServerCertStorePassword();
public function setSSLAcceptServerCertStorePassword($value);

Procedural Interface

inebank_ofxbatch_get($res, 42 );
inebank_ofxbatch_set($res, 42, $value );

Default Value

''

Remarks

If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.

Data Type

String

SSLAcceptServerCertStoreType Property (InEBank_OFXBatch Class)

The type of certificate store for this certificate.

Object Oriented Interface

public function getSSLAcceptServerCertStoreType();
public function setSSLAcceptServerCertStoreType($value);

Procedural Interface

inebank_ofxbatch_get($res, 43 );
inebank_ofxbatch_set($res, 43, $value );

Default Value

0

Remarks

The type of certificate store for this certificate.

The class supports both public and private keys in a variety of formats. When the cstAuto value is used, the class will automatically determine the type. This property can take one of the following values:

0 (cstUser - default)For Windows, this specifies that the certificate store is a certificate store owned by the current user.

Note: This store type is not available in Java.

1 (cstMachine)For Windows, this specifies that the certificate store is a machine store.

Note: This store type is not available in Java.

2 (cstPFXFile)The certificate store is the name of a PFX (PKCS#12) file containing certificates.
3 (cstPFXBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in PFX (PKCS#12) format.
4 (cstJKSFile)The certificate store is the name of a Java Key Store (JKS) file containing certificates.

Note: This store type is only available in Java.

5 (cstJKSBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in Java Key Store (JKS) format.

Note: This store type is only available in Java.

6 (cstPEMKeyFile)The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate.
7 (cstPEMKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains a private key and an optional certificate.
8 (cstPublicKeyFile)The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate.
9 (cstPublicKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains a PEM- or DER-encoded public key certificate.
10 (cstSSHPublicKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains an SSH-style public key.
11 (cstP7BFile)The certificate store is the name of a PKCS#7 file containing certificates.
12 (cstP7BBlob)The certificate store is a string (binary) representing a certificate store in PKCS#7 format.
13 (cstSSHPublicKeyFile)The certificate store is the name of a file that contains an SSH-style public key.
14 (cstPPKFile)The certificate store is the name of a file that contains a PPK (PuTTY Private Key).
15 (cstPPKBlob)The certificate store is a string (binary) that contains a PPK (PuTTY Private Key).
16 (cstXMLFile)The certificate store is the name of a file that contains a certificate in XML format.
17 (cstXMLBlob)The certificate store is a string that contains a certificate in XML format.
18 (cstJWKFile)The certificate store is the name of a file that contains a JWK (JSON Web Key).
19 (cstJWKBlob)The certificate store is a string that contains a JWK (JSON Web Key).
21 (cstBCFKSFile)The certificate store is the name of a file that contains a BCFKS (Bouncy Castle FIPS Key Store).

Note: This store type is only available in Java and .NET.

22 (cstBCFKSBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in BCFKS (Bouncy Castle FIPS Key Store) format.

Note: This store type is only available in Java and .NET.

23 (cstPKCS11)The certificate is present on a physical security key accessible via a PKCS#11 interface.

To use a security key, the necessary data must first be collected using the CertMgr class. The ListStoreCertificates method may be called after setting CertStoreType to cstPKCS11, CertStorePassword to the PIN, and CertStore to the full path of the PKCS#11 DLL. The certificate information returned in the CertList event's CertEncoded parameter may be saved for later use.

When using a certificate, pass the previously saved security key information as the SSLAcceptServerCertStore and set SSLAcceptServerCertStorePassword to the PIN.

Code Example. SSH Authentication with Security Key: certmgr.CertStoreType = CertStoreTypes.cstPKCS11; certmgr.OnCertList += (s, e) => { secKeyBlob = e.CertEncoded; }; certmgr.CertStore = @"C:\Program Files\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll"; certmgr.CertStorePassword = "123456"; //PIN certmgr.ListStoreCertificates(); sftp.SSHCert = new Certificate(CertStoreTypes.cstPKCS11, secKeyBlob, "123456", "*"); sftp.SSHUser = "test"; sftp.SSHLogon("myhost", 22);

99 (cstAuto)The store type is automatically detected from the input data. This setting may be used with both public and private keys and can detect any of the supported formats automatically.

Data Type

Integer

SSLAcceptServerCertSubjectAltNames Property (InEBank_OFXBatch Class)

Comma-separated lists of alternative subject names for the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertSubjectAltNames();

Procedural Interface

inebank_ofxbatch_get($res, 44 );

Default Value

''

Remarks

Comma-separated lists of alternative subject names for the certificate.

This property is read-only.

Data Type

String

SSLAcceptServerCertThumbprintMD5 Property (InEBank_OFXBatch Class)

The MD5 hash of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertThumbprintMD5();

Procedural Interface

inebank_ofxbatch_get($res, 45 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLAcceptServerCertThumbprintSHA1 Property (InEBank_OFXBatch Class)

The SHA-1 hash of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertThumbprintSHA1();

Procedural Interface

inebank_ofxbatch_get($res, 46 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLAcceptServerCertThumbprintSHA256 Property (InEBank_OFXBatch Class)

The SHA-256 hash of the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertThumbprintSHA256();

Procedural Interface

inebank_ofxbatch_get($res, 47 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLAcceptServerCertUsage Property (InEBank_OFXBatch Class)

The text description of UsageFlags .

Object Oriented Interface

public function getSSLAcceptServerCertUsage();

Procedural Interface

inebank_ofxbatch_get($res, 48 );

Default Value

''

Remarks

The text description of SSLAcceptServerCertUsageFlags.

This value will be one or more of the following strings and will be separated by commas:

  • Digital Signature
  • Non-Repudiation
  • Key Encipherment
  • Data Encipherment
  • Key Agreement
  • Certificate Signing
  • CRL Signing
  • Encipher Only

If the provider is OpenSSL, the value is a comma-separated list of X.509 certificate extension names.

This property is read-only.

Data Type

String

SSLAcceptServerCertUsageFlags Property (InEBank_OFXBatch Class)

The flags that show intended use for the certificate.

Object Oriented Interface

public function getSSLAcceptServerCertUsageFlags();

Procedural Interface

inebank_ofxbatch_get($res, 49 );

Default Value

0

Remarks

The flags that show intended use for the certificate. The value of SSLAcceptServerCertUsageFlags is a combination of the following flags:

0x80Digital Signature
0x40Non-Repudiation
0x20Key Encipherment
0x10Data Encipherment
0x08Key Agreement
0x04Certificate Signing
0x02CRL Signing
0x01Encipher Only

Please see the SSLAcceptServerCertUsage property for a text representation of SSLAcceptServerCertUsageFlags.

This functionality currently is not available when the provider is OpenSSL.

This property is read-only.

Data Type

Integer

SSLAcceptServerCertVersion Property (InEBank_OFXBatch Class)

The certificate's version number.

Object Oriented Interface

public function getSSLAcceptServerCertVersion();

Procedural Interface

inebank_ofxbatch_get($res, 50 );

Default Value

''

Remarks

The certificate's version number. The possible values are the strings "V1", "V2", and "V3".

This property is read-only.

Data Type

String

SSLAcceptServerCertSubject Property (InEBank_OFXBatch Class)

The subject of the certificate used for client authentication.

Object Oriented Interface

public function getSSLAcceptServerCertSubject();
public function setSSLAcceptServerCertSubject($value);

Procedural Interface

inebank_ofxbatch_get($res, 51 );
inebank_ofxbatch_set($res, 51, $value );

Default Value

''

Remarks

The subject of the certificate used for client authentication.

This property must be set after all other certificate properties are set. When this property is set, a search is performed in the current certificate store to locate a certificate with a matching subject.

If a matching certificate is found, the property is set to the full subject of the matching certificate.

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 as follows:

FieldMeaning
CNCommon Name. This is commonly a hostname like www.server.com.
OOrganization
OUOrganizational Unit
LLocality
SState
CCountry
EEmail Address

If a field value contains a comma, it must be quoted.

Data Type

String

SSLAcceptServerCertEncoded Property (InEBank_OFXBatch Class)

The certificate (PEM/Base64 encoded).

Object Oriented Interface

public function getSSLAcceptServerCertEncoded();
public function setSSLAcceptServerCertEncoded($value);

Procedural Interface

inebank_ofxbatch_get($res, 52 );
inebank_ofxbatch_set($res, 52, $value );

Default Value

''

Remarks

The certificate (PEM/Base64 encoded). This property is used to assign a specific certificate. The SSLAcceptServerCertStore and SSLAcceptServerCertSubject properties also may be used to specify a certificate.

When SSLAcceptServerCertEncoded is set, a search is initiated in the current SSLAcceptServerCertStore for the private key of the certificate. If the key is found, SSLAcceptServerCertSubject is updated to reflect the full subject of the selected certificate; otherwise, SSLAcceptServerCertSubject is set to an empty string.

This property is not available at design time.

Data Type

Binary String

SSLCertEffectiveDate Property (InEBank_OFXBatch Class)

The date on which this certificate becomes valid.

Object Oriented Interface

public function getSSLCertEffectiveDate();

Procedural Interface

inebank_ofxbatch_get($res, 53 );

Default Value

''

Remarks

The date on which this certificate becomes valid. Before this date, it is not valid. The date is localized to the system's time zone. The following example illustrates the format of an encoded date:

23-Jan-2000 15:00:00.

This property is read-only.

Data Type

String

SSLCertExpirationDate Property (InEBank_OFXBatch Class)

The date on which the certificate expires.

Object Oriented Interface

public function getSSLCertExpirationDate();

Procedural Interface

inebank_ofxbatch_get($res, 54 );

Default Value

''

Remarks

The date on which the certificate expires. After this date, the certificate will no longer be valid. The date is localized to the system's time zone. The following example illustrates the format of an encoded date:

23-Jan-2001 15:00:00.

This property is read-only.

Data Type

String

SSLCertExtendedKeyUsage Property (InEBank_OFXBatch Class)

A comma-delimited list of extended key usage identifiers.

Object Oriented Interface

public function getSSLCertExtendedKeyUsage();

Procedural Interface

inebank_ofxbatch_get($res, 55 );

Default Value

''

Remarks

A comma-delimited list of extended key usage identifiers. These are the same as ASN.1 object identifiers (OIDs).

This property is read-only.

Data Type

String

SSLCertFingerprint Property (InEBank_OFXBatch Class)

The hex-encoded, 16-byte MD5 fingerprint of the certificate.

Object Oriented Interface

public function getSSLCertFingerprint();

Procedural Interface

inebank_ofxbatch_get($res, 56 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLCertFingerprintSHA1 Property (InEBank_OFXBatch Class)

The hex-encoded, 20-byte SHA-1 fingerprint of the certificate.

Object Oriented Interface

public function getSSLCertFingerprintSHA1();

Procedural Interface

inebank_ofxbatch_get($res, 57 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLCertFingerprintSHA256 Property (InEBank_OFXBatch Class)

The hex-encoded, 32-byte SHA-256 fingerprint of the certificate.

Object Oriented Interface

public function getSSLCertFingerprintSHA256();

Procedural Interface

inebank_ofxbatch_get($res, 58 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLCertIssuer Property (InEBank_OFXBatch Class)

The issuer of the certificate.

Object Oriented Interface

public function getSSLCertIssuer();

Procedural Interface

inebank_ofxbatch_get($res, 59 );

Default Value

''

Remarks

The issuer of the certificate. This property contains a string representation of the name of the issuing authority for the certificate.

This property is read-only.

Data Type

String

SSLCertPrivateKey Property (InEBank_OFXBatch Class)

The private key of the certificate (if available).

Object Oriented Interface

public function getSSLCertPrivateKey();

Procedural Interface

inebank_ofxbatch_get($res, 60 );

Default Value

''

Remarks

The private key of the certificate (if available). The key is provided as PEM/Base64-encoded data.

Note: The SSLCertPrivateKey may be available but not exportable. In this case, SSLCertPrivateKey returns an empty string.

This property is read-only.

Data Type

String

SSLCertPrivateKeyAvailable Property (InEBank_OFXBatch Class)

Whether a PrivateKey is available for the selected certificate.

Object Oriented Interface

public function getSSLCertPrivateKeyAvailable();

Procedural Interface

inebank_ofxbatch_get($res, 61 );

Default Value

false

Remarks

Whether a SSLCertPrivateKey is available for the selected certificate. If SSLCertPrivateKeyAvailable is True, the certificate may be used for authentication purposes (e.g., server authentication).

This property is read-only.

Data Type

Boolean

SSLCertPrivateKeyContainer Property (InEBank_OFXBatch Class)

The name of the PrivateKey container for the certificate (if available).

Object Oriented Interface

public function getSSLCertPrivateKeyContainer();

Procedural Interface

inebank_ofxbatch_get($res, 62 );

Default Value

''

Remarks

The name of the SSLCertPrivateKey container for the certificate (if available). This functionality is available only on Windows platforms.

This property is read-only.

Data Type

String

SSLCertPublicKey Property (InEBank_OFXBatch Class)

The public key of the certificate.

Object Oriented Interface

public function getSSLCertPublicKey();

Procedural Interface

inebank_ofxbatch_get($res, 63 );

Default Value

''

Remarks

The public key of the certificate. The key is provided as PEM/Base64-encoded data.

This property is read-only.

Data Type

String

SSLCertPublicKeyAlgorithm Property (InEBank_OFXBatch Class)

The textual description of the certificate's public key algorithm.

Object Oriented Interface

public function getSSLCertPublicKeyAlgorithm();

Procedural Interface

inebank_ofxbatch_get($res, 64 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLCertPublicKeyLength Property (InEBank_OFXBatch Class)

The length of the certificate's public key (in bits).

Object Oriented Interface

public function getSSLCertPublicKeyLength();

Procedural Interface

inebank_ofxbatch_get($res, 65 );

Default Value

0

Remarks

The length of the certificate's public key (in bits). Common values are 512, 1024, and 2048.

This property is read-only.

Data Type

Integer

SSLCertSerialNumber Property (InEBank_OFXBatch Class)

The serial number of the certificate encoded as a string.

Object Oriented Interface

public function getSSLCertSerialNumber();

Procedural Interface

inebank_ofxbatch_get($res, 66 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLCertSignatureAlgorithm Property (InEBank_OFXBatch Class)

The text description of the certificate's signature algorithm.

Object Oriented Interface

public function getSSLCertSignatureAlgorithm();

Procedural Interface

inebank_ofxbatch_get($res, 67 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLCertStore Property (InEBank_OFXBatch Class)

The name of the certificate store for the client certificate.

Object Oriented Interface

public function getSSLCertStore();
public function setSSLCertStore($value);

Procedural Interface

inebank_ofxbatch_get($res, 68 );
inebank_ofxbatch_set($res, 68, $value );

Default Value

'MY'

Remarks

The name of the certificate store for the client certificate.

The SSLCertStoreType property denotes the type of the certificate store specified by SSLCertStore. If the store is password-protected, specify the password in SSLCertStorePassword.

SSLCertStore is used in conjunction with the SSLCertSubject property to specify client certificates. If SSLCertStore has a value, and SSLCertSubject or SSLCertEncoded is set, a search for a certificate is initiated. Please see the SSLCertSubject property for details.

Designations of certificate stores are platform dependent.

The following designations are the most common User and Machine certificate stores in Windows:

MYA certificate store holding personal certificates with their associated private keys.
CACertifying authority certificates.
ROOTRoot certificates.

When the certificate store type is cstPFXFile, this property must be set to the name of the file. When the type is cstPFXBlob, the property must be set to the binary contents of a PFX file (i.e., PKCS#12 certificate store).

Data Type

Binary String

SSLCertStorePassword Property (InEBank_OFXBatch Class)

If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.

Object Oriented Interface

public function getSSLCertStorePassword();
public function setSSLCertStorePassword($value);

Procedural Interface

inebank_ofxbatch_get($res, 69 );
inebank_ofxbatch_set($res, 69, $value );

Default Value

''

Remarks

If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.

Data Type

String

SSLCertStoreType Property (InEBank_OFXBatch Class)

The type of certificate store for this certificate.

Object Oriented Interface

public function getSSLCertStoreType();
public function setSSLCertStoreType($value);

Procedural Interface

inebank_ofxbatch_get($res, 70 );
inebank_ofxbatch_set($res, 70, $value );

Default Value

0

Remarks

The type of certificate store for this certificate.

The class supports both public and private keys in a variety of formats. When the cstAuto value is used, the class will automatically determine the type. This property can take one of the following values:

0 (cstUser - default)For Windows, this specifies that the certificate store is a certificate store owned by the current user.

Note: This store type is not available in Java.

1 (cstMachine)For Windows, this specifies that the certificate store is a machine store.

Note: This store type is not available in Java.

2 (cstPFXFile)The certificate store is the name of a PFX (PKCS#12) file containing certificates.
3 (cstPFXBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in PFX (PKCS#12) format.
4 (cstJKSFile)The certificate store is the name of a Java Key Store (JKS) file containing certificates.

Note: This store type is only available in Java.

5 (cstJKSBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in Java Key Store (JKS) format.

Note: This store type is only available in Java.

6 (cstPEMKeyFile)The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate.
7 (cstPEMKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains a private key and an optional certificate.
8 (cstPublicKeyFile)The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate.
9 (cstPublicKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains a PEM- or DER-encoded public key certificate.
10 (cstSSHPublicKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains an SSH-style public key.
11 (cstP7BFile)The certificate store is the name of a PKCS#7 file containing certificates.
12 (cstP7BBlob)The certificate store is a string (binary) representing a certificate store in PKCS#7 format.
13 (cstSSHPublicKeyFile)The certificate store is the name of a file that contains an SSH-style public key.
14 (cstPPKFile)The certificate store is the name of a file that contains a PPK (PuTTY Private Key).
15 (cstPPKBlob)The certificate store is a string (binary) that contains a PPK (PuTTY Private Key).
16 (cstXMLFile)The certificate store is the name of a file that contains a certificate in XML format.
17 (cstXMLBlob)The certificate store is a string that contains a certificate in XML format.
18 (cstJWKFile)The certificate store is the name of a file that contains a JWK (JSON Web Key).
19 (cstJWKBlob)The certificate store is a string that contains a JWK (JSON Web Key).
21 (cstBCFKSFile)The certificate store is the name of a file that contains a BCFKS (Bouncy Castle FIPS Key Store).

Note: This store type is only available in Java and .NET.

22 (cstBCFKSBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in BCFKS (Bouncy Castle FIPS Key Store) format.

Note: This store type is only available in Java and .NET.

23 (cstPKCS11)The certificate is present on a physical security key accessible via a PKCS#11 interface.

To use a security key, the necessary data must first be collected using the CertMgr class. The ListStoreCertificates method may be called after setting CertStoreType to cstPKCS11, CertStorePassword to the PIN, and CertStore to the full path of the PKCS#11 DLL. The certificate information returned in the CertList event's CertEncoded parameter may be saved for later use.

When using a certificate, pass the previously saved security key information as the SSLCertStore and set SSLCertStorePassword to the PIN.

Code Example. SSH Authentication with Security Key: certmgr.CertStoreType = CertStoreTypes.cstPKCS11; certmgr.OnCertList += (s, e) => { secKeyBlob = e.CertEncoded; }; certmgr.CertStore = @"C:\Program Files\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll"; certmgr.CertStorePassword = "123456"; //PIN certmgr.ListStoreCertificates(); sftp.SSHCert = new Certificate(CertStoreTypes.cstPKCS11, secKeyBlob, "123456", "*"); sftp.SSHUser = "test"; sftp.SSHLogon("myhost", 22);

99 (cstAuto)The store type is automatically detected from the input data. This setting may be used with both public and private keys and can detect any of the supported formats automatically.

Data Type

Integer

SSLCertSubjectAltNames Property (InEBank_OFXBatch Class)

Comma-separated lists of alternative subject names for the certificate.

Object Oriented Interface

public function getSSLCertSubjectAltNames();

Procedural Interface

inebank_ofxbatch_get($res, 71 );

Default Value

''

Remarks

Comma-separated lists of alternative subject names for the certificate.

This property is read-only.

Data Type

String

SSLCertThumbprintMD5 Property (InEBank_OFXBatch Class)

The MD5 hash of the certificate.

Object Oriented Interface

public function getSSLCertThumbprintMD5();

Procedural Interface

inebank_ofxbatch_get($res, 72 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLCertThumbprintSHA1 Property (InEBank_OFXBatch Class)

The SHA-1 hash of the certificate.

Object Oriented Interface

public function getSSLCertThumbprintSHA1();

Procedural Interface

inebank_ofxbatch_get($res, 73 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLCertThumbprintSHA256 Property (InEBank_OFXBatch Class)

The SHA-256 hash of the certificate.

Object Oriented Interface

public function getSSLCertThumbprintSHA256();

Procedural Interface

inebank_ofxbatch_get($res, 74 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLCertUsage Property (InEBank_OFXBatch Class)

The text description of UsageFlags .

Object Oriented Interface

public function getSSLCertUsage();

Procedural Interface

inebank_ofxbatch_get($res, 75 );

Default Value

''

Remarks

The text description of SSLCertUsageFlags.

This value will be one or more of the following strings and will be separated by commas:

  • Digital Signature
  • Non-Repudiation
  • Key Encipherment
  • Data Encipherment
  • Key Agreement
  • Certificate Signing
  • CRL Signing
  • Encipher Only

If the provider is OpenSSL, the value is a comma-separated list of X.509 certificate extension names.

This property is read-only.

Data Type

String

SSLCertUsageFlags Property (InEBank_OFXBatch Class)

The flags that show intended use for the certificate.

Object Oriented Interface

public function getSSLCertUsageFlags();

Procedural Interface

inebank_ofxbatch_get($res, 76 );

Default Value

0

Remarks

The flags that show intended use for the certificate. The value of SSLCertUsageFlags is a combination of the following flags:

0x80Digital Signature
0x40Non-Repudiation
0x20Key Encipherment
0x10Data Encipherment
0x08Key Agreement
0x04Certificate Signing
0x02CRL Signing
0x01Encipher Only

Please see the SSLCertUsage property for a text representation of SSLCertUsageFlags.

This functionality currently is not available when the provider is OpenSSL.

This property is read-only.

Data Type

Integer

SSLCertVersion Property (InEBank_OFXBatch Class)

The certificate's version number.

Object Oriented Interface

public function getSSLCertVersion();

Procedural Interface

inebank_ofxbatch_get($res, 77 );

Default Value

''

Remarks

The certificate's version number. The possible values are the strings "V1", "V2", and "V3".

This property is read-only.

Data Type

String

SSLCertSubject Property (InEBank_OFXBatch Class)

The subject of the certificate used for client authentication.

Object Oriented Interface

public function getSSLCertSubject();
public function setSSLCertSubject($value);

Procedural Interface

inebank_ofxbatch_get($res, 78 );
inebank_ofxbatch_set($res, 78, $value );

Default Value

''

Remarks

The subject of the certificate used for client authentication.

This property must be set after all other certificate properties are set. When this property is set, a search is performed in the current certificate store to locate a certificate with a matching subject.

If a matching certificate is found, the property is set to the full subject of the matching certificate.

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 as follows:

FieldMeaning
CNCommon Name. This is commonly a hostname like www.server.com.
OOrganization
OUOrganizational Unit
LLocality
SState
CCountry
EEmail Address

If a field value contains a comma, it must be quoted.

Data Type

String

SSLCertEncoded Property (InEBank_OFXBatch Class)

The certificate (PEM/Base64 encoded).

Object Oriented Interface

public function getSSLCertEncoded();
public function setSSLCertEncoded($value);

Procedural Interface

inebank_ofxbatch_get($res, 79 );
inebank_ofxbatch_set($res, 79, $value );

Default Value

''

Remarks

The certificate (PEM/Base64 encoded). This property is used to assign a specific certificate. The SSLCertStore and SSLCertSubject properties also may be used to specify a certificate.

When SSLCertEncoded is set, a search is initiated in the current SSLCertStore for the private key of the certificate. If the key is found, SSLCertSubject is updated to reflect the full subject of the selected certificate; otherwise, SSLCertSubject is set to an empty string.

This property is not available at design time.

Data Type

Binary String

SSLProvider Property (InEBank_OFXBatch Class)

The Secure Sockets Layer/Transport Layer Security (SSL/TLS) implementation to use.

Object Oriented Interface

public function getSSLProvider();
public function setSSLProvider($value);

Procedural Interface

inebank_ofxbatch_get($res, 80 );
inebank_ofxbatch_set($res, 80, $value );

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 class 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 as follows:

0 (sslpAutomatic - default)Automatically selects the appropriate implementation.
1 (sslpPlatform) Uses the platform/system implementation.
2 (sslpInternal) Uses the internal implementation.
Additional Notes

In most cases using the default value (Automatic) is recommended. The class will select a provider depending on the current platform.

When Automatic is selected, on Windows, the class will use the platform implementation. On Linux/macOS, the class will use the internal implementation. When TLS 1.3 is enabled via SSLEnabledProtocols, the internal implementation is used on all platforms.

Data Type

Integer

SSLServerCertEffectiveDate Property (InEBank_OFXBatch Class)

The date on which this certificate becomes valid.

Object Oriented Interface

public function getSSLServerCertEffectiveDate();

Procedural Interface

inebank_ofxbatch_get($res, 81 );

Default Value

''

Remarks

The date on which this certificate becomes valid. Before this date, it is not valid. The date is localized to the system's time zone. The following example illustrates the format of an encoded date:

23-Jan-2000 15:00:00.

This property is read-only.

Data Type

String

SSLServerCertExpirationDate Property (InEBank_OFXBatch Class)

The date on which the certificate expires.

Object Oriented Interface

public function getSSLServerCertExpirationDate();

Procedural Interface

inebank_ofxbatch_get($res, 82 );

Default Value

''

Remarks

The date on which the certificate expires. After this date, the certificate will no longer be valid. The date is localized to the system's time zone. The following example illustrates the format of an encoded date:

23-Jan-2001 15:00:00.

This property is read-only.

Data Type

String

SSLServerCertExtendedKeyUsage Property (InEBank_OFXBatch Class)

A comma-delimited list of extended key usage identifiers.

Object Oriented Interface

public function getSSLServerCertExtendedKeyUsage();

Procedural Interface

inebank_ofxbatch_get($res, 83 );

Default Value

''

Remarks

A comma-delimited list of extended key usage identifiers. These are the same as ASN.1 object identifiers (OIDs).

This property is read-only.

Data Type

String

SSLServerCertFingerprint Property (InEBank_OFXBatch Class)

The hex-encoded, 16-byte MD5 fingerprint of the certificate.

Object Oriented Interface

public function getSSLServerCertFingerprint();

Procedural Interface

inebank_ofxbatch_get($res, 84 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLServerCertFingerprintSHA1 Property (InEBank_OFXBatch Class)

The hex-encoded, 20-byte SHA-1 fingerprint of the certificate.

Object Oriented Interface

public function getSSLServerCertFingerprintSHA1();

Procedural Interface

inebank_ofxbatch_get($res, 85 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLServerCertFingerprintSHA256 Property (InEBank_OFXBatch Class)

The hex-encoded, 32-byte SHA-256 fingerprint of the certificate.

Object Oriented Interface

public function getSSLServerCertFingerprintSHA256();

Procedural Interface

inebank_ofxbatch_get($res, 86 );

Default Value

''

Remarks

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

This property is read-only.

Data Type

String

SSLServerCertIssuer Property (InEBank_OFXBatch Class)

The issuer of the certificate.

Object Oriented Interface

public function getSSLServerCertIssuer();

Procedural Interface

inebank_ofxbatch_get($res, 87 );

Default Value

''

Remarks

The issuer of the certificate. This property contains a string representation of the name of the issuing authority for the certificate.

This property is read-only.

Data Type

String

SSLServerCertPrivateKey Property (InEBank_OFXBatch Class)

The private key of the certificate (if available).

Object Oriented Interface

public function getSSLServerCertPrivateKey();

Procedural Interface

inebank_ofxbatch_get($res, 88 );

Default Value

''

Remarks

The private key of the certificate (if available). The key is provided as PEM/Base64-encoded data.

Note: The SSLServerCertPrivateKey may be available but not exportable. In this case, SSLServerCertPrivateKey returns an empty string.

This property is read-only.

Data Type

String

SSLServerCertPrivateKeyAvailable Property (InEBank_OFXBatch Class)

Whether a PrivateKey is available for the selected certificate.

Object Oriented Interface

public function getSSLServerCertPrivateKeyAvailable();

Procedural Interface

inebank_ofxbatch_get($res, 89 );

Default Value

false

Remarks

Whether a SSLServerCertPrivateKey is available for the selected certificate. If SSLServerCertPrivateKeyAvailable is True, the certificate may be used for authentication purposes (e.g., server authentication).

This property is read-only.

Data Type

Boolean

SSLServerCertPrivateKeyContainer Property (InEBank_OFXBatch Class)

The name of the PrivateKey container for the certificate (if available).

Object Oriented Interface

public function getSSLServerCertPrivateKeyContainer();

Procedural Interface

inebank_ofxbatch_get($res, 90 );

Default Value

''

Remarks

The name of the SSLServerCertPrivateKey container for the certificate (if available). This functionality is available only on Windows platforms.

This property is read-only.

Data Type

String

SSLServerCertPublicKey Property (InEBank_OFXBatch Class)

The public key of the certificate.

Object Oriented Interface

public function getSSLServerCertPublicKey();

Procedural Interface

inebank_ofxbatch_get($res, 91 );

Default Value

''

Remarks

The public key of the certificate. The key is provided as PEM/Base64-encoded data.

This property is read-only.

Data Type

String

SSLServerCertPublicKeyAlgorithm Property (InEBank_OFXBatch Class)

The textual description of the certificate's public key algorithm.

Object Oriented Interface

public function getSSLServerCertPublicKeyAlgorithm();

Procedural Interface

inebank_ofxbatch_get($res, 92 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLServerCertPublicKeyLength Property (InEBank_OFXBatch Class)

The length of the certificate's public key (in bits).

Object Oriented Interface

public function getSSLServerCertPublicKeyLength();

Procedural Interface

inebank_ofxbatch_get($res, 93 );

Default Value

0

Remarks

The length of the certificate's public key (in bits). Common values are 512, 1024, and 2048.

This property is read-only.

Data Type

Integer

SSLServerCertSerialNumber Property (InEBank_OFXBatch Class)

The serial number of the certificate encoded as a string.

Object Oriented Interface

public function getSSLServerCertSerialNumber();

Procedural Interface

inebank_ofxbatch_get($res, 94 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLServerCertSignatureAlgorithm Property (InEBank_OFXBatch Class)

The text description of the certificate's signature algorithm.

Object Oriented Interface

public function getSSLServerCertSignatureAlgorithm();

Procedural Interface

inebank_ofxbatch_get($res, 95 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLServerCertStore Property (InEBank_OFXBatch Class)

The name of the certificate store for the client certificate.

Object Oriented Interface

public function getSSLServerCertStore();

Procedural Interface

inebank_ofxbatch_get($res, 96 );

Default Value

'MY'

Remarks

The name of the certificate store for the client certificate.

The SSLServerCertStoreType property denotes the type of the certificate store specified by SSLServerCertStore. If the store is password-protected, specify the password in SSLServerCertStorePassword.

SSLServerCertStore is used in conjunction with the SSLServerCertSubject property to specify client certificates. If SSLServerCertStore has a value, and SSLServerCertSubject or SSLServerCertEncoded is set, a search for a certificate is initiated. Please see the SSLServerCertSubject property for details.

Designations of certificate stores are platform dependent.

The following designations are the most common User and Machine certificate stores in Windows:

MYA certificate store holding personal certificates with their associated private keys.
CACertifying authority certificates.
ROOTRoot certificates.

When the certificate store type is cstPFXFile, this property must be set to the name of the file. When the type is cstPFXBlob, the property must be set to the binary contents of a PFX file (i.e., PKCS#12 certificate store).

This property is read-only.

Data Type

Binary String

SSLServerCertStorePassword Property (InEBank_OFXBatch Class)

If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.

Object Oriented Interface

public function getSSLServerCertStorePassword();

Procedural Interface

inebank_ofxbatch_get($res, 97 );

Default Value

''

Remarks

If the type of certificate store requires a password, this property is used to specify the password needed to open the certificate store.

This property is read-only.

Data Type

String

SSLServerCertStoreType Property (InEBank_OFXBatch Class)

The type of certificate store for this certificate.

Object Oriented Interface

public function getSSLServerCertStoreType();

Procedural Interface

inebank_ofxbatch_get($res, 98 );

Default Value

0

Remarks

The type of certificate store for this certificate.

The class supports both public and private keys in a variety of formats. When the cstAuto value is used, the class will automatically determine the type. This property can take one of the following values:

0 (cstUser - default)For Windows, this specifies that the certificate store is a certificate store owned by the current user.

Note: This store type is not available in Java.

1 (cstMachine)For Windows, this specifies that the certificate store is a machine store.

Note: This store type is not available in Java.

2 (cstPFXFile)The certificate store is the name of a PFX (PKCS#12) file containing certificates.
3 (cstPFXBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in PFX (PKCS#12) format.
4 (cstJKSFile)The certificate store is the name of a Java Key Store (JKS) file containing certificates.

Note: This store type is only available in Java.

5 (cstJKSBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in Java Key Store (JKS) format.

Note: This store type is only available in Java.

6 (cstPEMKeyFile)The certificate store is the name of a PEM-encoded file that contains a private key and an optional certificate.
7 (cstPEMKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains a private key and an optional certificate.
8 (cstPublicKeyFile)The certificate store is the name of a file that contains a PEM- or DER-encoded public key certificate.
9 (cstPublicKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains a PEM- or DER-encoded public key certificate.
10 (cstSSHPublicKeyBlob)The certificate store is a string (binary or Base64-encoded) that contains an SSH-style public key.
11 (cstP7BFile)The certificate store is the name of a PKCS#7 file containing certificates.
12 (cstP7BBlob)The certificate store is a string (binary) representing a certificate store in PKCS#7 format.
13 (cstSSHPublicKeyFile)The certificate store is the name of a file that contains an SSH-style public key.
14 (cstPPKFile)The certificate store is the name of a file that contains a PPK (PuTTY Private Key).
15 (cstPPKBlob)The certificate store is a string (binary) that contains a PPK (PuTTY Private Key).
16 (cstXMLFile)The certificate store is the name of a file that contains a certificate in XML format.
17 (cstXMLBlob)The certificate store is a string that contains a certificate in XML format.
18 (cstJWKFile)The certificate store is the name of a file that contains a JWK (JSON Web Key).
19 (cstJWKBlob)The certificate store is a string that contains a JWK (JSON Web Key).
21 (cstBCFKSFile)The certificate store is the name of a file that contains a BCFKS (Bouncy Castle FIPS Key Store).

Note: This store type is only available in Java and .NET.

22 (cstBCFKSBlob)The certificate store is a string (binary or Base64-encoded) representing a certificate store in BCFKS (Bouncy Castle FIPS Key Store) format.

Note: This store type is only available in Java and .NET.

23 (cstPKCS11)The certificate is present on a physical security key accessible via a PKCS#11 interface.

To use a security key, the necessary data must first be collected using the CertMgr class. The ListStoreCertificates method may be called after setting CertStoreType to cstPKCS11, CertStorePassword to the PIN, and CertStore to the full path of the PKCS#11 DLL. The certificate information returned in the CertList event's CertEncoded parameter may be saved for later use.

When using a certificate, pass the previously saved security key information as the SSLServerCertStore and set SSLServerCertStorePassword to the PIN.

Code Example. SSH Authentication with Security Key: certmgr.CertStoreType = CertStoreTypes.cstPKCS11; certmgr.OnCertList += (s, e) => { secKeyBlob = e.CertEncoded; }; certmgr.CertStore = @"C:\Program Files\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll"; certmgr.CertStorePassword = "123456"; //PIN certmgr.ListStoreCertificates(); sftp.SSHCert = new Certificate(CertStoreTypes.cstPKCS11, secKeyBlob, "123456", "*"); sftp.SSHUser = "test"; sftp.SSHLogon("myhost", 22);

99 (cstAuto)The store type is automatically detected from the input data. This setting may be used with both public and private keys and can detect any of the supported formats automatically.

This property is read-only.

Data Type

Integer

SSLServerCertSubjectAltNames Property (InEBank_OFXBatch Class)

Comma-separated lists of alternative subject names for the certificate.

Object Oriented Interface

public function getSSLServerCertSubjectAltNames();

Procedural Interface

inebank_ofxbatch_get($res, 99 );

Default Value

''

Remarks

Comma-separated lists of alternative subject names for the certificate.

This property is read-only.

Data Type

String

SSLServerCertThumbprintMD5 Property (InEBank_OFXBatch Class)

The MD5 hash of the certificate.

Object Oriented Interface

public function getSSLServerCertThumbprintMD5();

Procedural Interface

inebank_ofxbatch_get($res, 100 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLServerCertThumbprintSHA1 Property (InEBank_OFXBatch Class)

The SHA-1 hash of the certificate.

Object Oriented Interface

public function getSSLServerCertThumbprintSHA1();

Procedural Interface

inebank_ofxbatch_get($res, 101 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLServerCertThumbprintSHA256 Property (InEBank_OFXBatch Class)

The SHA-256 hash of the certificate.

Object Oriented Interface

public function getSSLServerCertThumbprintSHA256();

Procedural Interface

inebank_ofxbatch_get($res, 102 );

Default Value

''

Remarks

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.

This property is read-only.

Data Type

String

SSLServerCertUsage Property (InEBank_OFXBatch Class)

The text description of UsageFlags .

Object Oriented Interface

public function getSSLServerCertUsage();

Procedural Interface

inebank_ofxbatch_get($res, 103 );

Default Value

''

Remarks

The text description of SSLServerCertUsageFlags.

This value will be one or more of the following strings and will be separated by commas:

  • Digital Signature
  • Non-Repudiation
  • Key Encipherment
  • Data Encipherment
  • Key Agreement
  • Certificate Signing
  • CRL Signing
  • Encipher Only

If the provider is OpenSSL, the value is a comma-separated list of X.509 certificate extension names.

This property is read-only.

Data Type

String

SSLServerCertUsageFlags Property (InEBank_OFXBatch Class)

The flags that show intended use for the certificate.

Object Oriented Interface

public function getSSLServerCertUsageFlags();

Procedural Interface

inebank_ofxbatch_get($res, 104 );

Default Value

0

Remarks

The flags that show intended use for the certificate. The value of SSLServerCertUsageFlags is a combination of the following flags:

0x80Digital Signature
0x40Non-Repudiation
0x20Key Encipherment
0x10Data Encipherment
0x08Key Agreement
0x04Certificate Signing
0x02CRL Signing
0x01Encipher Only

Please see the SSLServerCertUsage property for a text representation of SSLServerCertUsageFlags.

This functionality currently is not available when the provider is OpenSSL.

This property is read-only.

Data Type

Integer

SSLServerCertVersion Property (InEBank_OFXBatch Class)

The certificate's version number.

Object Oriented Interface

public function getSSLServerCertVersion();

Procedural Interface

inebank_ofxbatch_get($res, 105 );

Default Value

''

Remarks

The certificate's version number. The possible values are the strings "V1", "V2", and "V3".

This property is read-only.

Data Type

String

SSLServerCertSubject Property (InEBank_OFXBatch Class)

The subject of the certificate used for client authentication.

Object Oriented Interface

public function getSSLServerCertSubject();

Procedural Interface

inebank_ofxbatch_get($res, 106 );

Default Value

''

Remarks

The subject of the certificate used for client authentication.

This property must be set after all other certificate properties are set. When this property is set, a search is performed in the current certificate store to locate a certificate with a matching subject.

If a matching certificate is found, the property is set to the full subject of the matching certificate.

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 as follows:

FieldMeaning
CNCommon Name. This is commonly a hostname like www.server.com.
OOrganization
OUOrganizational Unit
LLocality
SState
CCountry
EEmail Address

If a field value contains a comma, it must be quoted.

This property is read-only.

Data Type

String

SSLServerCertEncoded Property (InEBank_OFXBatch Class)

The certificate (PEM/Base64 encoded).

Object Oriented Interface

public function getSSLServerCertEncoded();

Procedural Interface

inebank_ofxbatch_get($res, 107 );

Default Value

''

Remarks

The certificate (PEM/Base64 encoded). This property is used to assign a specific certificate. The SSLServerCertStore and SSLServerCertSubject properties also may be used to specify a certificate.

When SSLServerCertEncoded is set, a search is initiated in the current SSLServerCertStore for the private key of the certificate. If the key is found, SSLServerCertSubject is updated to reflect the full subject of the selected certificate; otherwise, SSLServerCertSubject is set to an empty string.

This property is read-only and not available at design time.

Data Type

Binary String

Timeout Property (InEBank_OFXBatch Class)

The timeout for the class.

Object Oriented Interface

public function getTimeout();
public function setTimeout($value);

Procedural Interface

inebank_ofxbatch_get($res, 108 );
inebank_ofxbatch_set($res, 108, $value );

Default Value

60

Remarks

If the Timeout property is set to 0, all operations will run uninterrupted until successful completion or an error condition is encountered.

If Timeout is set to a positive value, the class will wait for the operation to complete before returning control.

The class will use DoEvents to enter an efficient wait loop during any potential waiting period, making sure that all system events are processed immediately as they arrive. This ensures that the host application does not freeze and remains responsive.

If Timeout expires, and the operation is not yet complete, the class fails with an error.

Note: By default, all timeouts are inactivity timeouts, that is, the timeout period is extended by Timeout seconds when any amount of data is successfully sent or received.

The default value for the Timeout property is 60 seconds.

Data Type

Integer

Config Method (InEBank_OFXBatch Class)

Sets or retrieves a configuration setting.

Object Oriented Interface

public function doConfig($configurationstring);

Procedural Interface

inebank_ofxbatch_do_config($res, $configurationstring);

Remarks

Config is a generic method available in every class. It is used to set and retrieve configuration settings for the class.

These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, 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.

PostRequest Method (InEBank_OFXBatch Class)

Submits a batch of requests to an OFX server through a single connection.

Object Oriented Interface

public function doPostRequest();

Procedural Interface

inebank_ofxbatch_do_postrequest($res);

Remarks

This function generates the Signon and multiple requests page, submits it to the financial institution via secure HTTPS Post, and receives the multiple responses stored in OFXBatchItems property.

To create the batch of requests, first you will to create instances of the corresponding components to request type such as BankStatement, CCStatement, InvStatement, or FIProfile. Then, build the OFX request for each component used.

Finally, set the OFXBatchItemRequest array property to each OFXRequest of the corresponding component.

When PostRequest is called, the server response will be returned in OFXBatchItemResponse array property, ready to be retrieved by each individual component.

ReadOFXDataFile Method (InEBank_OFXBatch Class)

Reads an OFX response from a file.

Object Oriented Interface

public function doReadOFXDataFile($filename);

Procedural Interface

inebank_ofxbatch_do_readofxdatafile($res, $filename);

Remarks

This method reads a previously recorded OFX response from a file, including HTTP and OFX headers.

The following read-only properties are populated as a result of parsing the data file:

Reset Method (InEBank_OFXBatch Class)

Reset the internal state of the class and all properties to their default values.

Object Oriented Interface

public function doReset();

Procedural Interface

inebank_ofxbatch_do_reset($res);

Remarks

The Reset method does not have any parameters and does not return any value.

WriteOFXDataFile Method (InEBank_OFXBatch Class)

Writes the OFX response sent by the server to a file.

Object Oriented Interface

public function doWriteOFXDataFile($filename);

Procedural Interface

inebank_ofxbatch_do_writeofxdatafile($res, $filename);

Remarks

This method records the entire OFX response, including HTTP and OFX headers to a file. This file can later be read and parsed by the ReadOFXDataFile method as though it were a live response.

ConnectionStatus Event (InEBank_OFXBatch Class)

Fired to indicate changes in the connection state.

Object Oriented Interface

public function fireConnectionStatus($param);

Procedural Interface

inebank_ofxbatch_register_callback($res, 1, array($this, 'fireConnectionStatus'));

Parameter List

 'connectionevent'
'statuscode'
'description'

Remarks

This event is fired when the connection state changes: for example, completion of a firewall or proxy connection or completion of a security handshake.

The ConnectionEvent parameter indicates the type of connection event. Values may include the following:

Firewall connection complete.
Secure Sockets Layer (SSL) or S/Shell handshake complete (where applicable).
Remote host connection complete.
Remote host disconnected.
SSL or S/Shell connection broken.
Firewall host disconnected.
StatusCode has the error code returned by the Transmission Control Protocol (TCP)/IP stack. Description contains a description of this code. The value of StatusCode is equal to the value of the error.

Error Event (InEBank_OFXBatch Class)

Fired when information is available about errors during data delivery.

Object Oriented Interface

public function fireError($param);

Procedural Interface

inebank_ofxbatch_register_callback($res, 2, array($this, 'fireError'));

Parameter List

 'errorcode'
'description'

Remarks

The Error event is fired in case of exceptional conditions during message processing. Normally the class fails with an error.

The ErrorCode parameter contains an error code, and the Description parameter 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 (InEBank_OFXBatch Class)

Fired after the server presents its certificate to the client.

Object Oriented Interface

public function fireSSLServerAuthentication($param);

Procedural Interface

inebank_ofxbatch_register_callback($res, 3, array($this, 'fireSSLServerAuthentication'));

Parameter List

 'certencoded'
'certsubject'
'certissuer'
'status'
'accept'

Remarks

During this event, the client can decide whether or not to continue with the connection process. 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 or not to continue.

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 (InEBank_OFXBatch Class)

Fired when secure connection progress messages are available.

Object Oriented Interface

public function fireSSLStatus($param);

Procedural Interface

inebank_ofxbatch_register_callback($res, 4, array($this, 'fireSSLStatus'));

Parameter List

 'message'

Remarks

The event is fired for informational and logging purposes only. This event tracks the progress of the connection.

Config Settings (OFXBatch Class)

The class 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 class, access to these internal properties is provided through the Config method.

XML Config Settings

CacheContent:   If true, the original XML is saved in a buffer.

This configuration setting controls whether or not the component retains the entire original XML in a buffer. This is used to retain the original XML as opposed to returning generated XML after parsing. The default value is True.

Charset:   Specifies the charset used when encoding data.

This configuration setting specifies the character set used when encoding data. This value will also be used when creating the XMLDeclaration. The default value is "utf-8".

EOL:   The characters to use for separating lines.

If specified, the class will format the output XML, using the specified characters to separate multiple lines for nested XML elements. The default value is CRLF ("\r\n") .

This option should be combined with Indent for full effect.

ErrorOnEmptyAttr:   If true, passing an invalid attribute to the Attr method will throw an exception.

If an invalid attribute name is passed into the GetAttr method, the method will return with an empty string if this is set to False; otherwise, an exception is thrown.

ExtraNameChars:   Extra characters for the parser to consider as name characters.

Normally, the parser considers only the following characters as part of an XML identifier: 'A' through 'Z', 'a' through 'z', '0' through '9', and '.', '-', '_', ':'.

If you would like any other characters to be considered as name characters, you may set them as a string into this property.

ExtraSpaceChars:   Extra characters for the parser to consider as white space.

Normally, the parser considers only the following characters as white space: ' ' (space), '\t' (tab), '\ n' (newline), '\r' (carriage return), '\f' (form feed), and '\v' (vertical tab).

If you would like any other characters to be considered as white space, you may set them as a string into this property.

FlushOnEOL:   If set, the parser flushes its text buffer after every line of text.

The FlushOnEOL property controls whether or not Characters events are fired for every line of the input text stream. Normally, lines are buffered internally and delivered in batches, but if the FlushOnEOL flag is set, then a Characters event is fired for each line.

IgnoreBadAttributePrefixes:   If true, bad (unknown) attribute prefixes are ignored.

Normally a trappable error is generated when an unknown attribute prefix is encountered. This configuration setting suppresses the error. The default value is True.

IgnoreBadElementPrefixes:   If true, bad (unknown) element prefixes are ignored.

Normally a trappable error is generated when an unknown element prefix is encountered. This configuration setting suppresses the error. The default value is True.

IncludeElementPrefix:   Whether to include the prefix in the element name.

This configuration setting specifies whether or not to include the element prefix in the Element parameter of the StartElement and EndElement events.

If False (default) and Validate is set to False, the prefix is included in the Element parameter (e.g., ds:DigestMethod).

If True and Validate is set to False, the prefix is not included in the Element parameter (e.g., DigestMethod).

This setting is applicable only when Validate is False.

IncludeXMLDeclaration:   Whether to include the XML declaration when writing XML.

This configuration setting specifies whether the XML declaration is included in the output XML when writing XML. When set to True (default), the XML declaration will be included above any user-specified XML. For instance:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
...
Indent:   The characters to use for each indentation level.

If specified, the class will format the output XML, using the specified characters to denote each indentation level for nested XML elements.

This option should be combined with EOL for full effect.

Interrupt:   Whether to stop parsing the current XML document.

This configuration setting can be called from within any event to stop further parsing of the document. The configuration setting only works from within events. For example: void xml_OnStartElement(object sender, XMLStartElementEventArgs e) { xml.Config("Interrupt"); }

Offset:   Current offset of the document being parsed.

This property is useful for determining the location of possible XML errors in the document.

Offset values start at 1.

PreserveWhitespace:   If true, leading and trailing whitespace in element text is preserved.

Normally, the leading and trailing whitespace from an element's text is trimmed. When this property is set to True, this leading and trailing whitespace is preserved. The default value is False.

QuoteChar:   Quote character to use for attribute values.

By default, the class will use double quotes around attribute values. This property can be used to specify a different character, such as a single quote.

StringProcessingOptions:   Defines options to use when processing string values.

This configuration setting determines what additional processing is performed on string values fired through the Characters event.

Note: This applies only when BuildDOM is False.

By default, no additional processing is performed and the string is returned as is from the document. Strings may also be XML unescaped. Possible values are as follows:

0 (none - default) No additional processing is performed.
1 Strings are XML unescaped.

For instance, when set to 0, the following text may be fired through the Characters event:

&amp;&quot;&lt;&gt;

When set to 1, the following text would be fired through the Characters event:

&"<>

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.

CodePage:   The system code page used for Unicode to Multibyte translations.

The default code page is Unicode UTF-8 (65001).

The following is a list of valid code page identifiers:

IdentifierName
037IBM EBCDIC - U.S./Canada
437OEM - United States
500IBM EBCDIC - International
708Arabic - ASMO 708
709Arabic - ASMO 449+, BCON V4
710Arabic - Transparent Arabic
720Arabic - Transparent ASMO
737OEM - Greek (formerly 437G)
775OEM - Baltic
850OEM - Multilingual Latin I
852OEM - Latin II
855OEM - Cyrillic (primarily Russian)
857OEM - Turkish
858OEM - Multilingual Latin I + Euro symbol
860OEM - Portuguese
861OEM - Icelandic
862OEM - Hebrew
863OEM - Canadian-French
864OEM - Arabic
865OEM - Nordic
866OEM - Russian
869OEM - Modern Greek
870IBM EBCDIC - Multilingual/ROECE (Latin-2)
874ANSI/OEM - Thai (same as 28605, ISO 8859-15)
875IBM EBCDIC - Modern Greek
932ANSI/OEM - Japanese, Shift-JIS
936ANSI/OEM - Simplified Chinese (PRC, Singapore)
949ANSI/OEM - Korean (Unified Hangul Code)
950ANSI/OEM - Traditional Chinese (Taiwan; Hong Kong SAR, PRC)
1026IBM EBCDIC - Turkish (Latin-5)
1047IBM EBCDIC - Latin 1/Open System
1140IBM EBCDIC - U.S./Canada (037 + Euro symbol)
1141IBM EBCDIC - Germany (20273 + Euro symbol)
1142IBM EBCDIC - Denmark/Norway (20277 + Euro symbol)
1143IBM EBCDIC - Finland/Sweden (20278 + Euro symbol)
1144IBM EBCDIC - Italy (20280 + Euro symbol)
1145IBM EBCDIC - Latin America/Spain (20284 + Euro symbol)
1146IBM EBCDIC - United Kingdom (20285 + Euro symbol)
1147IBM EBCDIC - France (20297 + Euro symbol)
1148IBM EBCDIC - International (500 + Euro symbol)
1149IBM EBCDIC - Icelandic (20871 + Euro symbol)
1200Unicode UCS-2 Little-Endian (BMP of ISO 10646)
1201Unicode UCS-2 Big-Endian
1250ANSI - Central European
1251ANSI - Cyrillic
1252ANSI - Latin I
1253ANSI - Greek
1254ANSI - Turkish
1255ANSI - Hebrew
1256ANSI - Arabic
1257ANSI - Baltic
1258ANSI/OEM - Vietnamese
1361Korean (Johab)
10000MAC - Roman
10001MAC - Japanese
10002MAC - Traditional Chinese (Big5)
10003MAC - Korean
10004MAC - Arabic
10005MAC - Hebrew
10006MAC - Greek I
10007MAC - Cyrillic
10008MAC - Simplified Chinese (GB 2312)
10010MAC - Romania
10017MAC - Ukraine
10021MAC - Thai
10029MAC - Latin II
10079MAC - Icelandic
10081MAC - Turkish
10082MAC - Croatia
12000Unicode UCS-4 Little-Endian
12001Unicode UCS-4 Big-Endian
20000CNS - Taiwan
20001TCA - Taiwan
20002Eten - Taiwan
20003IBM5550 - Taiwan
20004TeleText - Taiwan
20005Wang - Taiwan
20105IA5 IRV International Alphabet No. 5 (7-bit)
20106IA5 German (7-bit)
20107IA5 Swedish (7-bit)
20108IA5 Norwegian (7-bit)
20127US-ASCII (7-bit)
20261T.61
20269ISO 6937 Non-Spacing Accent
20273IBM EBCDIC - Germany
20277IBM EBCDIC - Denmark/Norway
20278IBM EBCDIC - Finland/Sweden
20280IBM EBCDIC - Italy
20284IBM EBCDIC - Latin America/Spain
20285IBM EBCDIC - United Kingdom
20290IBM EBCDIC - Japanese Katakana Extended
20297IBM EBCDIC - France
20420IBM EBCDIC - Arabic
20423IBM EBCDIC - Greek
20424IBM EBCDIC - Hebrew
20833IBM EBCDIC - Korean Extended
20838IBM EBCDIC - Thai
20866Russian - KOI8-R
20871IBM EBCDIC - Icelandic
20880IBM EBCDIC - Cyrillic (Russian)
20905IBM EBCDIC - Turkish
20924IBM EBCDIC - Latin-1/Open System (1047 + Euro symbol)
20932JIS X 0208-1990 & 0121-1990
20936Simplified Chinese (GB2312)
21025IBM EBCDIC - Cyrillic (Serbian, Bulgarian)
21027Extended Alpha Lowercase
21866Ukrainian (KOI8-U)
28591ISO 8859-1 Latin I
28592ISO 8859-2 Central Europe
28593ISO 8859-3 Latin 3
28594ISO 8859-4 Baltic
28595ISO 8859-5 Cyrillic
28596ISO 8859-6 Arabic
28597ISO 8859-7 Greek
28598ISO 8859-8 Hebrew
28599ISO 8859-9 Latin 5
28605ISO 8859-15 Latin 9
29001Europa 3
38598ISO 8859-8 Hebrew
50220ISO 2022 Japanese with no halfwidth Katakana
50221ISO 2022 Japanese with halfwidth Katakana
50222ISO 2022 Japanese JIS X 0201-1989
50225ISO 2022 Korean
50227ISO 2022 Simplified Chinese
50229ISO 2022 Traditional Chinese
50930Japanese (Katakana) Extended
50931US/Canada and Japanese
50933Korean Extended and Korean
50935Simplified Chinese Extended and Simplified Chinese
50936Simplified Chinese
50937US/Canada and Traditional Chinese
50939Japanese (Latin) Extended and Japanese
51932EUC - Japanese
51936EUC - Simplified Chinese
51949EUC - Korean
51950EUC - Traditional Chinese
52936HZ-GB2312 Simplified Chinese
54936Windows XP: GB18030 Simplified Chinese (4 Byte)
57002ISCII Devanagari
57003ISCII Bengali
57004ISCII Tamil
57005ISCII Telugu
57006ISCII Assamese
57007ISCII Oriya
57008ISCII Kannada
57009ISCII Malayalam
57010ISCII Gujarati
57011ISCII Punjabi
65000Unicode UTF-7
65001Unicode UTF-8
The following is a list of valid code page identifiers for Mac OS only:
IdentifierName
1ASCII
2NEXTSTEP
3JapaneseEUC
4UTF8
5ISOLatin1
6Symbol
7NonLossyASCII
8ShiftJIS
9ISOLatin2
10Unicode
11WindowsCP1251
12WindowsCP1252
13WindowsCP1253
14WindowsCP1254
15WindowsCP1250
21ISO2022JP
30MacOSRoman
10UTF16String
0x90000100UTF16BigEndian
0x94000100UTF16LittleEndian
0x8c000100UTF32String
0x98000100UTF32BigEndian
0x9c000100UTF32LittleEndian
65536Proprietary

LicenseInfo:   Information about the current license.

When queried, this setting will return a string containing information about the license this instance of a class is using. It will return the following information:

  • Product: The product the license is for.
  • Product Key: The key the license was generated from.
  • License Source: Where the license was found (e.g., RuntimeLicense, License File).
  • License Type: The type of license installed (e.g., Royalty Free, Single Server).
  • Last Valid Build: The last valid build number for which the license will work.
MaskSensitiveData:   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 classes: AS3Receiver, AS3Sender, Atom, Client(3DS), FTP, FTPServer, IMAP, OFTPClient, SSHClient, SCP, Server(3DS), Sexec, SFTP, SFTPServer, SSHServer, TCPClient, TCPServer.

ProcessIdleEvents:   Whether the class uses its internal event loop to process events when the main thread is idle.

If set to False, the class will not fire internal idle events. Set this to False to use the class in a background thread on Mac OS. By default, this setting is True.

SelectWaitMillis:   The length of time in milliseconds the class will wait when DoEvents is called if there are no events to process.

If there are no events to process when DoEvents is called, the class will wait for the amount of time specified here before returning. The default value is 20.

UseInternalSecurityAPI:   Whether or not to use the system security libraries or an internal implementation.

When set to false, the class will use the system security libraries by default to perform cryptographic functions where applicable.

Setting this configuration setting to true tells the class 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.

To use the system security libraries for Linux, OpenSSL support must be enabled. For more information on how to enable OpenSSL, please refer to the OpenSSL Notes section.

Trappable Errors (OFXBatch Class)

XML Errors

101   Invalid attribute index.
102   No attributes available.
103   Invalid namespace index.
104   No namespaces available.
105   Invalid element index.
106   No elements available.
107   Attribute does not exist.
201   Unbalanced element tag.
202   Unknown element prefix (cannot find namespace).
203   Unknown attribute prefix (cannot find namespace).
204   Invalid XML markup.
205   Invalid end state for parser.
206   Document contains unbalanced elements.
207   Invalid XPath.
208   No such child.
209   Top element does not match start of path.
210   DOM tree unavailable (set BuildDOM to True and reparse).
302   Cannot open file.
401   Invalid XML would be generated.
402   An invalid XML name has been specified.