Registry Keys
All configuration data is read from the registry at "HKEY_LOCAL_MACHINE\SOFTWARE\RemoteConnector". Each user will have a separate subkey with user-specific settings. For instance "HKEY_LOCAL_MACHINE\SOFTWARE\RemoteConnector\User1".
Application-Level Settings
Name | Type | Description |
LocalAuth | String | A randomly generated administrator password that is used for authorization between the user interface and the Windows service. This is only used when authorizing a user configured for Windows authentication to QuickBooks POS from the user interface. This may be removed or changed if desired. |
AllowedClients | String | A comma-separated list of host names or IP addresses that can access the server. The wildcard character '*' is supported (default). If unspecified any client can connect. |
AuthFlags | DWORD | Specifies the versions of QuickBooks POS to which the application can connect. The value is a binary OR of the values below, represented in hex. The default value is "0xF" (all editions are supported).
|
CloseAndRetryConnect | DWORD | Specifies whether connection retry logic is enabled. When set to 1 (True), if an error is encountered while opening a connection to QuickBooks POS the application will attempt to stop the QuickBooks POS process and reconnect. The CloseAndRetryTimeout, CloseAndRetryCount, and CloseAndRetryErrorList settings are applicable when this setting is 1 (True). |
CloseAndRetryTimeout | DWORD | Sets the time in seconds that the application will wait for the connection to QuickBooks POS to be established. The default value is 30 (seconds). If the timeout is reached, the QuickBooks POS process will be closed and the connection will be retried. Note that this setting should be adjusted with caution. If the timeout is set too low the QuickBooks POS process may not have time to open normally before reaching the timeout. This setting is only applicable when CloseAndRetryConnect is True. |
CloseAndRetryCount | DWORD | Sets the number of times to retry the connection. If an error is encountered while opening a connection to QuickBooks POS, the application will stop the QuickBooks POS process and retry until this limit is reached. The default value is 3. This setting is only applicable when CloseAndRetryConnect is True. |
CloseAndRetryErrorList | String | Specifies a comma-separated list of QuickBooks POS error codes on which to retry a connection. If QuickBooks POS returns an error code listed in this property, the QuickBooks POS process will be stopped and the connection will be retried. If the error is not in this list the application will return the error as normal. The default value is "0x80040402,0x80040408". Specify the value "*" to indicate all errors. This setting is only applicable when CloseAndRetryConnect is True. |
QBInstanceFile | String |
Specifies the full path to the QBINSTANCEFINDER file in the QuickBooks POS installation. For instance: "C:\ProgramData\Intuit\QuickBooks POS\QBINSTANCEFINDER17.INI". This setting is only applicable when CloseAndRetryConnect is set to True. If the connection retry logic stops the QuickBooks POS process the specified QBINSTANCEFINDER file will be cleared of any previous entries. QuickBooks POS uses the QBINSTANCEFINDER file to keep track of open instances, however, in some situations it may not be properly reset after stopping the process. When specified this setting allows the application to properly reset the file after stopping the process. |
LocalHost | String | Sets the host name or user-assigned IP interface through which connections are initiated or accepted. In most cases this does not need to be set, as the application will use the default interface on the machine. If you have multiple interfaces, you can specify the interface to use here. For instance, "192.168.1.102". |
LogEnabled | DWORD | Enables or disables logging to a file. Logs are always written to the console. The default is 0 (False). |
LogDir | String | Sets the path to a folder on disk where log files will be written. This is only applicable if LogEnabled is set to True. |
LogFormat | DWORD | Sets how often new log files are created. Possible values are the following:
|
LogLevel | DWORD | Sets the logging level. Possible values are the following:
|
LogPort | DWORD | Sets a separate port for logging. Log messages are sent over UDP from RemoteConnectorService.exe to the UI. By default this is the same value as the port defined in the Port option. Set this option to avoid using the same port as another UDP service running on the same machine. |
Port | DWORD | Sets the port where the server listens for incoming connections. The default value is 8166. |
PersistentEnabled | DWORD | Enables or disables persistent connections to QuickBooks POS. The default is 0 (False), meaning that your code controls when the connection to QuickBooks POS is opened and closed by calling the Open and Close methods. However, when this setting is enabled, a persistent connection to QuickBooks POS is established by the QuickBooks Gateway even when Open and Close are not used. This is helpful in situations when multiple applications may be simultaneously accessing the QuickBooks Gateway, because it allows them to share the connection. |
PersistentIdleTimeout | DWORD | Sets the idle timeout for the persistent connection in seconds. If there is no activity within this time window, the connection to QuickBooks POS will be closed. This is only applicable when PersistentEnabled is True. |
PromptForRegPermissions | DWORD | Specifies whether to prompt to modify registry permissions when access is not allowed. This is only applicable when saving settings from the UI. |
RunAsService | DWORD | Run the application as a service or with the standard run-time permissions. The default value is 1 (True). |
SSLCertPassword | String | Sets the password of the SSL certificate. |
SSLCertStore | String | Sets the location of the SSL certificate. This may be a path to a file or the name of a Windows certificate store: "MY", "ROOT", "CA", or "SPC". |
SSLCertSubject | String | Sets the subject of the SSL certificate. |
SSLCertType | String | Sets the type of SSL certificate to use. A certificate must be specified when SSL is enabled. The PFX option signifies a .pfx file on disk. The User option signifies the user's Windows certificate store. The Machine option signifies the Windows certificate store of the machine. |
SSLEnabled | DWORD | Sets whether TLS/SSL connections are allowed. The default value is 0 (False). Enabling TLS/SSL disables plaintext connections. |
Timeout | DWORD | Sets the operational timeout for connected clients. The default value is 60. |
UseInteractiveLogon | DWORD | Sets whether interactive or network logon will authorize users when AuthMode is set to 1 (Windows). In most cases this does not need to be set. This should be set to 1 (True) if your domain controller is Samba. The default value is 0 (False). |
User-Level Settings
AppName | String | Sets the name of the application that will be used to provide authentication to QuickBooks POS when a connection is made. If this value is not set, the QuickBooks Gateway uses the value provided by the client. |
CompanyFile | String | Sets the path to a QuickBooks POS company file (.qbw). If this is not set, the currently open company file is used. When QuickBooks POS is not running, this option must be set. |
Password | String | Sets the password of the user. This is required when AuthMode is set to 0 (Basic Authentication). The QuickBooks Gateway application will always store the SHA-256 hash of the password for security. However, this may also be manually set to a plaintext password to allow backward compatibility. |
AuthMode | DWORD | Sets the type of authentication to perform when the user connects. From the client side the process of connecting is exactly the same no matter which option you choose. Possible values are the following:
|
Authorized | DWORD | Specifies whether the AppName has been authorized for the CompanyFile. If 1 (True) the AppName has been authorized with the CompanyFile. This is an indicator used by the application when changing settings in the UI. |
ConnectionMode | String | Sets the connection mode for the user. The default is DontCare. In most cases you do not need to set this value. If this is not set, the application will connect in whatever mode QuickBooks POS is already open in. Possible values are the following:
|
ReadOnly | DWORD | Specifies whether the user has read-only (1) or full access (0). |