Store & Forward

Home/Developers / Store & ForwardQuick Links

Important Notice

Contact your Business Development Manager or Sales Engineer to ensure you qualify for use of Store and Forward.

Installation

Installation Notice


Please uninstall any previous versions that may be installed on the POS including earlier builds.
Installation Pre-Requisites

The Cayan Store and Forward solution requires the complete Microsoft .NET Framework 4 to be pre-installed before beginning the installation process.  The software is not compatible with machines that only have the Microsoft .NET Framework 4 Client Profile installed.  A full copy of the framework can be obtained from the Microsoft website at http://www.microsoft.com/en-us/download/details.aspx?id=17718 or a smaller OS specific version can be obtained at http://www.microsoft.com/en-us/download/details.aspx?id=17851.

To determine if the full version of the Microsoft .NET framework is installed, the following registry key should exist: HKLM_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full

Installing Store and Forward

Run the following procedures for installing the Cayan Store and Forward Client. 
1. Run the installer StoreAndForwardInstaller.msi.


2. The Installer will copy all of the files needed for the Store and Forward client to the directory “C:\Program Files (x86)\Store and Forward” and installs the services “Store and Forward” and “Store and Forward Monitor”. Immediately after installation, the services should be running. To verify the services are running, launch the services console, go to Control Panel > Administrative Tools > Services, or execute “Services.msc” from the Run command window. The services should be listed with a status of “Started”.

Using Store and Forward

Ceiling Limits for Offline Requests

The Store and Forward client supports ceiling limits that provide fine granularity of control over the offline behavior of requests while offline. These limits can be modified via the same “Store and Forward Configuration”. For safety reasons, ceilings are enabled by default. If you want to disable the ceiling limits, uncheck the “Enable ceiling limits for offline transactions” options.

 
Setting Description
Maximum Offline Time The maximum time (in hours) that the service can be offline before requests should no longer be accepted offline
 
Default Minimum Maximum
24 hours 1 hour 744 hours (31 days)
Maximum Unprocessed Requests The maximum number of offline requests that have not yet been processed and continue to accept requests.  Once this limit is reached, no additional requests will be accepted.
 
Default Minimum Maximum
998 1 65,536

 
Maximum Offline Sale Amount The maximum amount of a single sale request the client will accept while offline.  Any sale over this amount while the client is offline will be rejected.
 
Default Minimum Maximum
$250.00 $1.00 $999,999,999.00


 
Maximum Offline Refund Amount The maximum amount of a single refund request the client will accept while offline.  Any refund over this amount while the client is offline will be rejected.
 
Default Minimum Maximum
$250.00 $1.00 $999,999,999.00

Network Settings

The client requires the use of several ports, each port representing a different website. The default assignment of ports is:

  • TCP 7500 – Used for all traffic represented by transport.merchantware.net
  • TCP 7501 – Used for all traffic represented by ps1.merchantware.net
  • TCP 7502 – Used for all traffic represented by genius.merchantware.net
  • TCP 7503 – Rest API that can be used to communicate with Store and Forward
  • TCP 7504 – Services the Administration Website
If you need to change the default port configuration due to a port conflict, open the application “Store and Forward Configuration” from the Windows Start Menu and click on the “Network Settings” button. Replace the port assignments as needed. Changing the port values will require the Store and Forward service to restart.

Firewall Rules

For Genius devices, the computer will require that any locally installed firewalls allows for communication on the private or local network to access the Genius Local Port (by default, port 7502). By default an inbound Windows Firewall rule called “Store and Forward” is now created which allows external traffic on port 7502 for addresses within the same subnet.

Advanced Configuration

There is a series of advanced configuration settings that can be tuned if it is required for your operating environment. You can access the settings by clicking on the “Advanced…” button located on the main configuration window.


 
Setting Description
Delay Before Resuming Online Activities When Store and Forward is losses the connection to the gateway, it will begin attempting to reestablish the connection.  Before beginning to establish a connection, it will first pause a few minutes. 
 
This was designed to avoid a situation where Store and Forward repeatedly switches between online and offline mode due to a temporarily choppy network.
 
Default Minimum Maximum
10 minutes 1 minute 60 minutes
Replay Transaction Speed Store and Forward, once connectivity to the gateway is reestablished, will begin to replay transactions accepted offline.  To avoid oversaturating a network or introducing a heavy workload for the point of sale, the speed at which transactions are replayed is purposefully limited.  You can adjust the speed using the slider on the advanced form depending on the needs and capabilities of the point of sale and the 
 
Default Minimum Maximum
normal slow fast

 
Allow Remote Management A large number of instances of Store and Forward deployed to multiple locations have the option to be managed remotely.  The “Allow Remote Management” checkbox enables the Store and Forward instance to contact the gateway to retrieve any settings that are remotely managed.
 
Default
Enabled


 
 

Forcing Store and Forward Offline

The Store and Forward client automatically detects when a connection to the gateway becomes unavailable. There may be times however where it may be desirable to force Store and Forward into offline mode. This can be done through the Store and Forward administration website.


The administration website can be accessed by choosing the application “Store and Forward” from the Windows Start Menu. A web page will open automatically in your browser that details the number of requests waiting and previously processed. In the lower portion of the screen, click on the button labeled “Force Store and Forward Offline”. The option is only available when a connection to the gateway is available.

Starting and Stopping

To start, stop, or restart the Store and Forward client, launch the services console by going to Control Panel > Administrative Tools > Services, or execute “Services.msc” from the Run command window. Locate and select the service “Store and Forward” from the list, and click on the “Start” or “Stop” buttons located in the toolbar above.

 

Starting and Stopping Store and Forward Monitor

To start, stop, or restart the Store and Forward Monitor manually, launch the services console by going to Control Panel > Administrative Tools > Services, or execute “Services.msc” from the Run command window. Locate and select the service “Store and Forward Monitor” from the list, and click on the “Start” or “Stop” buttons located in the toolbar above.

Reconciliation Guidance

To determine the final status of an offline transaction, there are currently three approaches that can be done depending on the requirements: programmatically using the Merchantware endpoints, programmatically using the Store and Forward API, and manual verification using the Merchant Portal.

Programmatic Verification through Store and Forward

For point of application that wish to automatically discover the basic status of a transaction that was processed offline. This is the ideal method to reduce the number of requests to the gateway when online basic information about the status of the transaction is needed.
  1. Inside of the point of sale (POS) application, keep a running list of all transactions that receive a stand-in authorization. For more information on this, please see the section “Determining if a Request was Processed Offline” in the Technical Information.
  2. The POS can then periodically poll the REST API to determine the status of the transaction. If the transaction fails to process with a status of “HostCommunicationError”, it may be desirable to further verify the status of the transaction through Merchantware.
  3. Local verification for a transaction is unavailable 31 days after the date the transaction was processed.

Programmatic Verification through Merchantware

For point of sale applications that wish to automatically discover the full status of a transaction that was processed offline, you can use the following steps:

Manual Verification

  1. Inside of the point of sale (POS) application, keep a running list of all transactions that receive a stand-in authorization. For more information on this, please see the section “Determining if a Request was Processed Offline” in the Technical Information.
  2. The POS can then periodically poll the REST API to determine if Store and Forward is online or offline. If the service is online, then you can proceed to determine the final result of the transaction. For more information, please see “Connectivity” under the REST API documentation.
  3. Once it is determined the application is online, wait until all transactions have processed. This can be determined by verifying the number of unprocessed requests is “0”. For more information, please see “Service Information” under the REST API documentation.
  4. With all requests processed, you can now use the list of known unprocessed transactions to determine their final status. To do this, you can use the reporting services endpoint provided by Merchantware. Specifically, make a SOAP request to either the TransactionByReference or the DetailedTransactionByReference SOAP action and provide the offline token returned by the Store and Forward client. The response will contain the online token and the final approval status. For more information, please see the reporting documentation available at https://ps1.merchantware.net/merchantware/documentation40/standard/report_default.aspx.

Manual Verification

If you wish to determine the final status of a transaction manually through the Merchant Portal. Any transactions that were processed offline will contain information a stored reference number, and a stored date. These represent the token used by the Store and Forward client, and the date and time the transaction was processed offline. The “Date” represents the time the transaction was processed by the gateway.

From the Overview Page

From the Overview Page, under the section “Find Reference Number” type in the reference number (token) returned by Store and Forward and press “ENTER” or click on the search icon.

This will bring you to a page showing you the information about the transaction including the result.

From the Find Transactions Page

Using the find transactions page, you can either enter the stored reference number, or you can select any criteria you choose, and mark the option “Only Show Stored Transactions”. By choosing the “Only Show Stored Transactions” option, the search will use the date and time the transaction was processed offline rather than the date and time that the transactions were processed by the gateway.


The resulting list will include a list of only offline transactions, and the result of those transactions.

Technical Information

Determining if a Request was Processed Offline

When the Store and Forward service processes a request offline, there are multiple indicators that can be used to determine if the request was processed offline. Depending on the integration use case, you may want to use one or more indicators to determine how the request was processed.

HTTP Response

In offline mode the default behavior of the Store and Forward client is to return an HTTP response code of 202. Depending on the configuration however this may be turned off to preserve compatibility with existing integrations.

Authorization Code

In offline mode, all transactions will return an authorization code of “OKOFF1” because the final authorization code is not available.

Token

In offline mode all returned are alphanumeric. This is a deviation from the current behavior of the gateway where all returned tokens are numeric. However, the gateway is not guaranteed to be exclusively numeric in the future.

HTTP Response Codes

When the client is in offline mode, the HTTP response codes returned by the client will differ from the normal gateway. The response codes can be used to inform the POS of the availability of the gateway and subsequently make decisions to provide a seamless experience for merchants.

HTTP 202 / Accepted

When a supported request is processed offline, an HTTP 202/Accepted response is returned replacing the standard HTTP 200/OK response returned by the gateway.

HTTP 503 / Unavailable

When the gateway is unavailable and the POS requests a web page or attempts to execute a request that is not supported in offline mode, the gateway will return an HTTP 503/Unavailable response instead. Any HTTP requests that would normally return a HTTP 404/Not Found error message on the gateway will also return with anHTTP 503/Unavailable response.

Data Storage and Log Files

All information persisted by the client can be found in the common Application Data folder for all users in Windows.

Common Windows XP Path
C:\Documents and Settings\All Users\Application Data\ Store and Forward\

Common Windows 7+ Path
C:\ProgramData\Store and Forward\

Log Files

The log files for Store and Forward contain information about the startup process, the health check process, and any requests processed offline. The log files can be found in the “\Log” folder of the Store and Forward storage. One file is generated for each day in the format of Application.YYMMDD.X.log. Multiple application log files are generated including:

StoreForward.YYMMDD.0.log: The Store and Forward host application.
Merchantware. YYMMDD.0.log: Logs specifically for the Merchantware endpoints.
Transport. YYMMDD.0.log: Log files specifically for the Transport endpoints and application.
Genius. YYMMDD.0.log: Log files specifically for the Genius endpoints.
Monitor. YYMMDD.0.log: Log files containing information results from the Store and Forward Monitor.

Additionally, all traffic to any of the Store and Forward endpoints is recorded in the form of W3C Extended Log Format files. These log files can also be found in the “\Log” folder of the Store and Forward storage. One file is generated for each endpoint each day in the format of Endpoint.web.YYMMDD.log. Endpoint log files are generated for the management API, the management UI, Merchant, Transport, and Genius.

Data

The request data persisted by the client can be found in the “\Data” folder of the Store and Forward storage.

\FailedTransactionRequest
Contains information about all requests that failed to process due to a server-side error.

\GidMac
System level configuration to ensure there are no collisions when generating offline reference numbers.

\HostCommErrorPatterns
Known patterns received by the gateway when a processor is offline.

\PendingUpgrade
Information about upgrades that will take place during the next update cycle.

\Transaction
Contains information about all unprocessed requests.

\TransactionRequest
Contains information about all processed requests.

\TransportRequests
Contains information about the most recent approved transport requests performed either online or offline.

REST API

The Store and Forward client provides a REST based API that can be used to communicate with the running service. The API is available by default on TCP port 7503.

Note: for the remainder of section, replace “:7503” to the new port configuration in the example RestAPI URLs.

Connectivity

The connectivity API can be used to manage the connection from Store and Forward to the Cayan Gateway.

Commands

Resource Description
Get api/connectivity Returns the connection status to the Cayan gateway.
PUT api/connectivity Changes the connection from Store and Forward to the Cayan gateway.
 

Fields

Field Type Description
processedRequests Number The number of requests that have been processed over the lifetime of the proxy.
unprocessedRequests Number The number of requests that are in the queue waiting to be processed once connectivity is restored.

Example GET Request

GET http://127.0.0.1:7503/api/connectivity
HTTP STATUS 200/OK
{
 "availability":1
}

Example PUT Request

GET http://127.0.0.1:7503/api/connectivity
HTTP STATUS 204/No Content
{
 "availability":0
}

Service Information

The service information API can be used to find information about the current status of the proxy.

Commands

Resource Description
GET api/serviceinformation Returns information about the current status of the Store and Forward client.
 

Fields

Field Type Description
availability Number The status of the connection from Store and Forward to the Gateway.

0: The connection to the gateway is unavailable.
1: The connection to the gateway is available.
2: The connection has been forced unavailable.

Example GET Request

GET http://127.0.0.1:7503/api/serviceinformation
HTTP STATUS 200/OK
{
 "processedRequests":15
 "unprocessedRequests":3
}

Reconciliation

The reconciliation API can be used to determine the status of an offline transaction.

Commands

Resource Description
GET api/transaction/{offlineToken}/ Returns the status of a transaction that was processed offline.
 

Fields

Field Type Description
status String The status of the offline transaction.  Please see the list of possible errors in the list below.
token Number The unique identifier for the transaction assigned by the gateway.
offlineToken String The unique identifier for the transaction assigned by Store and Forward.
transactionDate Date/Time (UTC) The date and time the transaction was processed by Store and Forward.
onlineTransactionDate Date/Time (UTC) The date and time the transaction was processed by the gateway.
errorMessage String The error message returned by the gateway.

Status Code Values

Value Description
Unprocessed The transaction has not been processed by the gateway.
Approved The transaction was approved.
Declined The transaction was declined.
EndpointError The transaction failed due to an error with the gateway.
InternalError The transaction failed due to an error with the gateway.
ValidationError The transaction failed due to a validation error with the gateway.
ExceptionOccurred The transaction failed due to an error with Store and Forward.
HostCommunicationError The gateway did not return a response to the transaction, and the final status is unknown.

Example GET Request and Response for a Transaction that Does Not Exist

GET http://127.0.0.1:7503/api/transaction/bad0000/
HTTP STATUS 404/Not Found

Example GET Request and Response for a Transaction that is Unprocessed

GET http://127.0.0.1:7503/api/transaction/1j8xtru4rd6003op/
HTTP STATUS 200/OK
{
 "status":"Unprocessed"
 "offlineToken":"1j8xtru4rd6003op"
 "transactionDate":"2015-06-25T12:03:07.5860362Z"
}

Example GET Request and Response for a Transaction that is Processed

GET http://127.0.0.1:7503/api/transaction/1j8xtru4rd6003oq/
HTTP STATUS 200/OK
{
 "onlineTransactionDate":"2015-06-25T12:03:07.5860362Z"
 "token":254016586,
 "errorMessage":null,
 "status":"Approved"
 "offlineToken":"1j8xtru4rd6003oq"
 "transactionDate":"2015-06-25T11:14:52.1631084Z"
}

Configuration

The configuration API can be used to manage the Store and Forward service configuration.

Commands

Resource Description
GET api/configuration Returns the configuration the Store and Forward service will use upon startup
PUT api/configuration Changes the configuration the Store and Forward service will use upon startup
 

Fields

Field Type Description
geniusTcpPort Number The TCP port on the POS that Store and Forward uses to listen for Genius requests.
managementApiTcpPort Number The TCP port on the POS that Store and Forward uses to listen for the REST API requests.
managementPortalTcpPort Number The TCP port on the POS that Store and Forward uses to listen to display the Management Portal website.
merchantwareTcpPort Number The TCP port on the POS that Store and Forward uses to listen for Merchantware requests.
transportTcpPort Number Configuration items for Transport
useHttpAcceptedWhenOffline
Configurable via API
Boolean True if requests processed offline return HTTP Accepted (202) instead of HTTP OK (200) when offline; otherwise, false.

Default: True
ceilingLimitsEnabled
Configurable via API
Boolean True if the service should enforce configured ceiling limits; otherwise, false.
 
Default: True
maximumOfflineTime
Configurable via API
Number The maximum time (in seconds) that the service can be offline before requests should no longer be accepted offline.

Default: 86400 (24 hours)
Minimum:
Maximum: 2678400
maximumUnprocessedRequests
Configurable via API
Number The maximum number of unprocessed requests that can be in storage before requests should no longer be accepted offline.
 
Default: 998
Minimum: 0
Maximum: 65536
maximumOfflineSaleAmount
Configurable via API
Number The maximum dollar amount allowed for a sale when Store and Forward is offline.
 
Default: 250
Minimum: 0
Maximum: 999999999
maximumOfflineRefundAmount
Configurable via API
Number The maximum dollar amount allowed for a refund when Store and Forward is offline.
 
Default: 250
Minimum: 0
Maximum: 999999999
delayResumeOnlineTime
Configurable via API
Number The amount of time (in seconds) that Store and Forward will wait in offline mode before attempting to reconnect to help with choppy networks.
 
Default: 600 (10 minutes)
Minimum: 60 (1 minute)
Maximum: 3600 (1 hour)
replayDelaySpeed
Configurable via API
Number The speed at which Store and Forward will replay any offline transactions once a connection to the Gateway is established.
 
Default: 2 (Normal)
Minimum: 1 (Slow)
Maximum: 3 (Fast)
allowRemoteManagement
Configurable via API
Boolean Allows the Store and Forward instance to be remotely managed through the gateway.

Default: True

Example GET Request

GET http://127.0.0.1:7503/api/configuration
HTTP STATUS 200/OK
{
  "geniusTcpPort":7502,
  "managementApiTcpPort":7503,
  "managementPortalTcpPort":7504,
  "merchantwareTcpPort":7501,
  "transportTcpPort":7500,
  "ceilingLimitsEnabled":true,
  "maximumOfflineTime":86400,
  "maximumUnprocessedRequests":9000,
  "maximumOfflineSaleAmount":250,
  "maximumOfflineRefundAmount":250,
  "useHttpAcceptedWhenOffline":false,
  "delayResumeOnlineTime":600,
  "replayDelaySpeed":2,
  "allowRemoteManagement":true
}

Example PUT Request

GET http://127.0.0.1:7503/api/configuration
HTTP STATUS 204/No Content
{
  "ceilingLimitsEnabled":true,
  "maximumOfflineTime":86400,
  "maximumUnprocessedRequests":9000,
  "maximumOfflineSaleAmount":250,
  "maximumOfflineRefundAmount":250,
  "useHttpAcceptedWhenOffline":false,
  "delayResumeOnlineTime":600,
  "delayResumeOnlineTime":2,
  "allowRemoteManagement":true
}
Important Note – The PUT command for the configuration will not adjust any network port settings. Any network port values will be ignored.

Version Information

The version information API can be used to determine version of Store and Forward currently running, and the versions of the REST API that are supported.

Commands

Resource Description
GET api/version Returns the version information of the Store and Forward client.
 

Fields

Field Type Description
versionNumber String The version number for the Store and Forward client.
apiVersion Number[] An array containing the versions of the APIs supported by the running instance of Store and Forward.

Example GET Request

GET http://127.0.0.1:7503/api/version
HTTP STATUS 200/OK
{
 "versionNumber":"1.0.0.0"
 "apiSupport":[1]
}

Offline Compatibility

Legend

Symbol Description
 
Supported
 
Not Supported in Endpoint
 
Not Supported
 
Not Supported - Support is planned
 
Not Supported - May be included in future release
 
Research Needed
 
Type Description
Unc Supported
Mag 1 Magensa 1.0
Mag 2 Magensa 2.0
MT 1 Magtek 1.0
MT 2 Magtek 2.0
ID IDTECH
ID-ENH IDTECH Enhanced
  Unc Mag 1 Mag 2 MT 1 MT 2 ID ID-ENH
Apply Tip
 
 
 
 
 
 
 
CaptureSignatureTiff
 
 
 
 
 
 
 
CaptureSignatureVector
 
 
 
 
 
 
 
DebitSale
 
 
 
 
 
 
 
ForceSale
 
 
 
 
 
 
 
ForceSaleEncrypted
 
 
 
 
 
 
 
Level2Sale
 
 
 
 
 
 
 
Level2SaleKeyed
 
 
 
 
 
 
 
Level2SaleKeyedEncrypted
 
 
 
 
 
 
 
Level2SaleVault
 
 
 
 
 
 
 
PostAuthorization
 
 
 
 
 
 
 
PreAuthorization
 
 
 
 
 
 
 
PreAuthorizationKeyed
 
 
 
 
 
 
 
PreAuthorizationKeyedEncrypted
 
 
 
 
 
 
 
PreAuthorizationVault
 
 
 
 
 
 
 
Refund
 
 
 
 
 
 
 
RepeatSale
 
 
 
 
 
 
 
Sale
 
 
 
 
 
 
 
SaleKeyed
 
 
 
 
 
 
 
SaleEncrypted
 
 
 
 
 
 
 
SaleVault
 
 
 
 
 
 
 
SettleBatch
 
 
 
 
 
 
 
VaultBoardCredit
 
 
 
 
 
 
 
VaultBoardCreditKeyed
 
 
 
 
 
 
 
VaultDeleteToken
 
 
 
 
 
 
 
VaultFindPaymentInfo
 
 
 
 
 
 
 
Void
 
 
 
 
 
 
 
VoidPreAuthorization
 
 
 
 
 
 
 
RefundSale
 
 
 
 
 
 
 
RefundSaleKeyed
 
 
 
 
 
 
 
RefundSaleKeyedEncrypted
 
 
 
 
 
 
 

Monitor Log / Reference

Store and Forward Monitor Log File Messages

The log files for the Store and Forward Monitor contain multiple diagnostic points.
Type Severity Description
Service Information
Service State: Not Installed ERROR Occurs when the Store and Forward service does not appear to be installed.
Service State: STATE INFO Represents the state of the Store and Forward Windows Service.

Possible State Values:

Starting
Running
Pausing
Paused
Continuing
Stopping
Stopped
Endpoint Verification
Connection [ENDPOINT]: Succesful; INFO The Store and Forward endpoint responded successfully.

Possible Endpoint Values:

Transport
Merchantware
Merchantware(L)
Genius
Management API
Management Portal
Remote
Connection [ENDPOINT]: Failed; REASON ERROR The Store and Forward endpoint failed to response correctly.

The reasons identified can be any of the following:

Connection; DETAILS
No Data Returned
Unexpected HTTP Status Code; CODE
Unexpected Failure; ERROR MESSAGE
Expected value of 'VALUE' was not found in the response
Offline Status
Offline Status: VALUE INFO The offline status of the Store and Forward service.
 
The possible values are:

Available
Forced Unavailable
Unavailable
Offline Status: Unknown; REASON ERROR The offline status of the Store and Forward service could not be determined due to a failure.
 
The reasons identified can be any of the following:

Connection; DETAILS
Unexpected Failure; ERROR MESSAGE
Unexpected response from endpoint
Unexpected HTTP Status Code; CODE
Other
An unexpected restart, possibly due to power failure, occurred. ERROR When the Store and Forward monitor is starting, it did not appear to have been previously shutdown correctly. This can occur when the machine has been restarted manually.
System shutdown in progress. INFO The Store and Forward Monitor has detected a system shutdown in progress.
System shutdown completed. INFO The computer running the Store and Forward Monitor is being restarted or shut down.

Example Store and Forward Monitor Log File

The log files use the SysLog file format. Below is an example of the log files, and the related messages.
<134>1 2015-04-13T14:23:17:73Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Logging configured for Monitor
<134>1 2015-04-13T14:23:17:94Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Service State: Starting | Automatic
<131>1 2015-04-13T14:23:19:09Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="ERROR"] Connection [Transport]: Failed; Unexpected Failure; [System.Net.WebException] Unable to connect to the remote server
<131>1 2015-04-13T14:23:20:12Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="ERROR"] Connection [Merchantware]: Failed; Unexpected Failure; [System.Net.WebException] Unable to connect to the remote server
<131>1 2015-04-13T14:23:21:12Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="ERROR"] Connection [Merchantware(L)]: Failed; Unexpected Failure; [System.Net.WebException] Unable to connect to the remote server
<131>1 2015-04-13T14:23:22:15Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="ERROR"] Connection [Genius]: Failed; Unexpected Failure; [System.Net.WebException] Unable to connect to the remote server
<134>1 2015-04-13T14:23:22:44Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Management API]: Successful
<131>1 2015-04-13T14:23:23:49Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="ERROR"] Connection [Management Portal]: Failed; Unexpected Failure; [System.Net.WebException] Unable to connect to the remote server
<131>1 2015-04-13T14:24:12:16Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="ERROR"] Connection [Remote]: Failed; Unexpected Failure; [System.Net.WebException] The operation has timed out
<134>1 2015-04-13T14:24:12:41Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Offline Status: Unavailable
<134>1 2015-04-13T14:25:12:42Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Service State: Running
<134>1 2015-04-13T14:31:20:12Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Transport]: Successful
<134>1 2015-04-13T14:31:20:23Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Merchantware]: Successful
<134>1 2015-04-13T14:31:20:24Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Merchantware(L)]: Successful
<134>1 2015-04-13T14:31:20:25Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Genius]: Successful
<134>1 2015-04-13T14:31:20:25Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Management API]: Successful
<134>1 2015-04-13T14:31:20:26Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Management Portal]: Successful
<134>1 2015-04-13T14:31:20:33Z COMPNAME StoreForwardMonitor.exe 3352 - [MW@55555 EventSeverity="INFO"] Connection [Remote]: Successful

Timeout Settings for Reference

The time listed is in reference to the total communication time allowed, however these times may be affected by the DNS lookup for domain names which is an independent timeout controlled by the operating system. This may be as much as an additional 8 seconds per transaction.
Setting Type Description
Genius 12 seconds The amount of time allowed for all Genius communication and transactions. This includes multiple commands such as authorizations and BIN lookup calls, each being set independently.
Transport  12 seconds The amount of time allowed to create a Transport key.
Merchantware Proxied Request 30 seconds The amount of time allowed for all calls made directly to the Merchantware API.
Transport.Web to Merchantware 12 seconds The amount of time allowed for transactions to Merchantware using Transport.Web
Health Checks 12 seconds The amount of time allowed for a successful health check response.

Known Issues

There are several known issues with this version of the Store and Forward client.  Please read the issues carefully as they may affect your experience during testing.
  • Transport does not accept IDTECH enhanced card readers.  This is the same as production.
     
  • If the port used for Genius (default 7502) must accept traffic from external sources.  A firewall rule is created upon installation.  However if the port is changed manually, the Windows Firewall rule will not be adjusted automatically.  Please create a separate custom Firewall rule.  Other local firewalls installed on the POS may also cause issues.
     
  • The Windows Firewall rule to allow traffic from Genius only accepts traffic originating from the same subnet.
     
  • The Store and Forward administration website may not be compatible with the browser IE 6.
     
  • When offline, the Transport website will throw an error if you try to process a request that is unsupported when offline.
     
  • LevelUp is not supported by the Store and Forward client within Transport.
     
Under certain system configurations, it was found that a system account with “Automatic Proxy Detection” internet settings enabled may cause unexpected timeouts and prevent Store and Forward from communicating with the gateway. 
 
A Changelog for Store & Forward can be found here.