Keystroke POS v8.00

 

New Features and Enhancements

(Through July 08, 2022)

This document describes the new features and changes added to version 8.00 of both Keystroke POS and Keystroke Advanced POS that were not available in previous versions (see WNew715.PDF for additions made prior to v8.00). The information in this document is similar to what is in the file ReadMe.txt but is in a more readable format instead of as a list of changes. In this document, changes that are similar have been grouped together and fixes are not included. This makes it much easier to read when updating from a previous version. But since it may not always be up-to-date, is not in chronological order, and does not included fixes, the Readme.txt does a better job of showing what has recently changed and should be checked whenever an update is installed.

Closeout5

KEYSTROKE ADVANCED POS

2
Sales 2
Purchasing 3
Macros 4
Variance 5
Closeout 5
Accounts Receivable 5
Card On File / Cayan Vault 6
Returns Function 7
BOGO Pricing 8
Closeout 10
Vendor Catalogs 10

KEYSTROKE POS and KEYSTROKE ADVANCED POS

10
PCI PA-DSS 3.1 Validation 11
Toolbars 11
Databases 11
Hardware (PIN Pads, Signature Capture, etc.) 11
Non-Processing Mode 12
Mercury EMV 13 13
Cayan EMV 14
Cayan EBT SNAP 14
Sales 14
Purchasing 17
Macros 18
New Data Sets 18
Version 8 Conversions 19
Accounts Receivable 19
StoreLink 20
Startup Switches 20
Online Help 21
Dashboard 21
Picture Viewer 21
SendKM.EXE 21
Date Entry 22
Startup.DAT 22
Kiosk Mode 22
Keystroke Direct Payment Processing (EVO) 23

 

KEYSTROKE ADVANCED POS

This section describes changes that are only available in Keystroke Advanced POS. Systems that have the standard Keystroke POS license are not able to see and/or use these features. Upgrading to Keystroke Advanced POS is very simple. Please contact your dealer or SBS for more information.

Keystroke eCommerce Integration

Keystroke Advanced POS eCommerce integration no longer available from 24Seven Commerce

For integrated e-commerce solutions, please call SBS at 800.359.3458.

Sales

Payment Discount/Surcharge

The Discount/Surcharge feature is available for use with sales payments and when configured, it enables automatic discount or surcharge percentages or amounts. Note that the additional amount is applied as the payment is first entered, any additional changes (or removal of the payment) do not change the amount that was added. If a payment needs to be edited, the recommended procedure is to remove both the amount added and the payment and then re-enter the payment. The Sales Payment Type “Discount/Surcharge" button is used to enter the parameters for adding a Discount or Surcharge to a Sales Transaction when a payment type is used. Note that these settings are not used when entering ROA payments. Discount/Surcharge is disabled for most processed payments (those that use a MICR Reader, KeyPay, Genius, or Mercury Direct authorization methods). On the Payment Discount/Surcharge parameters screen, the first button is used to toggle between "Discount" and "Surcharge" ("Surcharge" adds the amount to the transaction total and "Discount" subtracts it.) The Amount is either a Dollar ("$") amount or Percentage ("%") amount depending on what the second button is set to. The "Record As" button allows the amount to be accounted for on the transaction as either a "Line Item" or a "Payment" (Payment is recommended, if Line Item is used it must not be taxable and must have a blank Price

Code). The "Payment" (or "Line Item") button is used to select which payment type (or inventory item) to add to the transaction to record the discount/surcharge amount. Note that various laws and merchant agreements may restrict how discounts/surcharges based on payments may be used. This feature simply calculates the discount/surcharge amount based on the transaction total (or fraction thereof paid for) and does NOT take any outside restrictions into account.

Entry Parameters-to control Maximum Quantity

This parameter controls the Maximum Quantity that can be used on any line item on a sale and helps guard against accidentally scanning a barcode into the Qty field (note that there is already a 9 character limit on this field).

Entry Parameters-to control Maximum Price

These parameters control the Maximum Price that can be entered when manually overriding the price of an item by changing it in the Price Column. The first parameter "Global Max Price" is used on all line items. If the number entered in the field is higher than the "Global Max Price", then the "Invalid Number" message appears to help guard against accidentally scanning a barcode in the Price field. The second parameter "Max Price Field" tells Keystroke which field on the inventory item record is being used for the Max Price of the item (this is similar to the High Amount Lock Out ("HALO") available on some cash register systems). If the price is higher than the amount from the item's database record (and the max amount is not 0.00) then a message is displayed (similar to the minimum price message). If the clerk has the Override Minimum Price security level, then they can also override the item's maximum price.

Line Item Entry Parameters-for barcodes printed on Perscriptions

The Prescription Item parameter allows Keystroke to scan barcodes printed on subscriptions from a pharmacy (which contain the Prescription ID and the Price but no actual item information). When this parameter is enabled (by entering the Prescription Item Stock Number) and the line item code scanned or entered is not found on an inventory item, then if the scanned code is at least 18 characters long and begins with "RX" Keystroke will use the Prescription Item setting as the inventory item being added to the transaction. The product code will be set to the scanned code and all the Cost and Price fields will be set to the value embedded in the barcode.

Max Items Sales Trans-defines the maximum number of items that can be sold on a single sales transaction

The Max Items Sales Trans field displayed on Department, Category, and Location database records defines the maximum quantity of items in that Department (or Category or Location) that can be sold on a single sales transaction. This field appears on new data sets only. Call your Authorized Keystroke

POS Dealer or SBS to have this field added to existing database screens. The value of this field must be changed to a number greater than zero or it is ignored. If an item has a Max Items Sales Trans value greater than zero in more than one database (Department/Category/Location), then the database with the smallest value (the one that causes it to have the lowest quantity allowed to be sold) is used. If a line item exceeds the maximum quantity, a message is displayed showing the maximum quantity allowed and stating that the item will either be removed (if the maximum quantity has already been met by other items) or that the quantity will be adjusted to the maximum quantity allowed. The Max Items Sales Trans field (in conjunction with the Age Verification - Scan/Swipe Only feature) qualifies Keystroke Advanced POS as a JUUL Labs Retail Access Control System (RACS) certified solution.

Max Sale Qty-field defines the maximum number of items of a single Stock Number that can be sold on a single sales transaction

The Max Sale Qty field is displayed on the Inventory Database More Data Screen. It works the same way the Max Items Sales Trans field works but defines the maximum quantity of a single Stock Number that can be sold on a sales transaction. The field's value must be changed to a number greater than 0 or it is ignored. If a line item exceeds the maximum quantity, the Exceeds Max Items message is displayed stating what the maximum quantity is and that the item will either be removed or that the quantity will be adjusted. After the Exceeds Max Items message has been displayed, and if a Manager-level Clerk is currently logged in, the Manager: Override Max Sale Qty? message is displayed and the Manager has the choice to override the Max Sale Qty quantity for the line item. The field is labeled as "Max Sale Qty:". It appears only on new data sets created with v8.00.80 or later. Call your Authorized Keystroke Dealer or SBS to add the field to existing database screens.

Purchasing

Case/Each Ordering/Receiving

This function is used to enter items on purchase transactions that can be ordered/received by either the case or individually for items that are never sold by the case. The items’ Order Multiplier must be set to a number great than 1. To access the function, select the line item on the transaction screen and press [Ctrl+F7] to load the Receiving Case/Each screen. This screen displays the Quantity and Cost to order the item either way. The first line displays the information for ordering by the case (based on using the Order Multiplier). The second line displays the information for ordering the item individually (based on the Sale Unit with an Order Multiplier of 1). When the Ok button is selected, the line items on the purchase transaction are adjusted based on the selections resulting in either a single “Case” line item, a single "Each" line item, or two line items (one for the "Case" and one for the "Each"). Note that this function does not work with items that have a parent (nor is it able to use the Child items as the each items).

Items with a Parent/Child relationship should always order the Parent Item and then add an additional line item for the Child Item if any single items are being ordered/ received.

The Entry Mode can be changed by pressing [Shift+F9] to switch between Order Only, OnOrdr/Recvd, and TotOrd/TotRcvd modes (providing the transaction type settings and clerk security level allow them).

The macro PurchaseEntryCommand can be used to load the Case/Each screen (same as pressing [Ctrl+F7]) and can then be assigned a different hotkey, be attached to a Toolbar Button, and/or be added to a Script.

Purchase Transaction Search

The Transaction Search function has been added to the Transaction menu. It works the same as the Sales Transaction Search function in the Sales Manager. This function can be used to easily search all purchase transaction types based on Date, Vendor, Transaction Number, and even Inventory Item. The search function begins with a settings screen where the parameters on which to base the search can be entered (similar to a parameter screen for a report). After entering the desired parameter settings, press the Search button to build a list of all transactions that match the search conditions. Press [Enter] or [F3] from the search results list to load the transaction in Edit/Print mode.

Purchase Transaction Search - Transaction Preview

The Transaction Search function’s Transaction Preview displays the currently highlighted transaction in the window above the search results list box. The format of the Transaction Preview display is controlled by the file PorSrch.xml located in the Data folder. This is a standard XML file and can be edited to change the information that is displayed and the format in which it is presented. The information that is available is based on the same lists used to create Purchase Transaction Reports and uses the list I.D.s of: PTH/PTHC (Purchases Transaction Header), PTL/PTLC (Purchases Transaction Line Items), PPR/PPRC (Purchases Payments Received), and VND (Vendor). The field numbers are defined in the file DOC\DBNAMES.DOC.

Macros

Price Check Entry Command Macro

This macro pops up the Price Check box from which an item can be entered/scanned/looked up in order to view its price. In Sales the price is based on the current transaction (customer and items already included). In Purchasing it displays the current price. Note - the Price Check function does not alter the transaction in any way.

Sales Entry – Sales Order AutoShip Command Macro

Three Sales Entry Macro Commands are available in this group to automatically complete the Ship Quantity column on Sales Orders (or any Sales Transaction Type that can display the "Ship" column). Not all line items can be changed. Line items with Serial Numbers or those linked through Scripting cannot be changed. In these cases, a message is displayed listing the items that could not be changed and the reasons why they could not be changed.

AutoShip: Changes the Shipped value to the available QOH or the Quantity left to be shipped (whichever is less).

Usage:

SalesEntryCommand: AutoShip

ShipAll: Changes the Shipped value to the Quantity left to be shipped. However, if the Clerk does not meet the "Sell (Ship) Out Of Stock Items" Sales Transaction Security Level requirement, ShipAll works the same as AutoShip.

Usage:

SalesEntryCommand: ShipAll

ClearShipped: Sets the Shipped value to 0 on all lines. Usage:

SalesEntryCommand: ClearShipped

Purchase Entry – Sort Line Items Command Macro

This macro is used to sort the Line Items on the Purchase Transaction. “PurchaseEntryCommand: SortLineItems, Field=name" (where name is the field to sort by)

Variance

Parameters - Check Open Variances on Post

If this parameter is set to anything except "Never", when the Post button is selected, Keystroke checks for other open Variances (VAR#.DAT files). If any are found, Keystroke displays a message stating so and offers to print a list of the matched items from the other variances. Before checking the contents of other open variances, Keystroke first checks if any of them are currently in use (displayed in the Variance Module by another instance of Keystroke). If any of the VAR#.LCK files are locked, Keystroke displays a warning that other open variances are currently in use and defaults to not proceeding with the posting process since it cannot tell if any matched items exist on currently active variances (and cannot merge from those files). Note that if any of the same items do end up on another currently active variance, the QOH for those items may not be updated correctly. If this parameter is set to "Merge in Same Items", a "Merge" button appears on the "Merge Variance Warning" message screen. Selecting this button (which is recommended) removes the matched items from the other open variances and adds their Physical Quantities to those items on the current variance (i.e., merging the items together). Once the merge process is completed, Keystroke returns to the main variance screen so the changes can be checked before running the Post. Note that while there is not a maximum number of open variances that can exist, both the warning message and the report for the Check Open Variances on Post function do not display correctly if there are more than 9.

Closeout

Parameters - Date Range Buttons

When enabled, the entry box for the closeout date range displays the fixed date buttons (e.g. "Yesterday", "Last Month", etc.).

Accounts Receivable

Parameters - Aging Report message before Billing Period

When enabled, a reminder message to print and review the Receivables Aging Report will displayed before the Change Billing Period screen appears when running statements.

Finance Menu – Apply Credit Memos

The Apply Credit Memos function (available only with Keystroke Advanced POS licenses) can be run in two different modes: Individual or All.

In Individual Mode, Credit Memos are selected one at a time. When a Credit Memo is selected, it is automatically applied to any outstanding Finance Charges, then to Invoices (up to the amount of the Credit Memo). Saving and updating the Invoices and underlying ROA payment is completed automatically. If the full amount of the credit memo is used it is removed from the Credit Memo list. If there are no outstanding balances to which to apply it, a message is displayed stating so.

In the All Mode, the Credit Memos to apply may be restricted using the Filter option and the "Credit Memos Prior To" date setting.

In both modes a reminder message is displayed stating that a backup of the data files should be made before running the function.

Note: Once the Apply Credit Memos function has completed, the only way to reverse (un-apply) a Credit Memo is to edit the ROA Payment(s) that the Credit Memo created (or restore the backup).

Card On File / Cayan Vault

The Keystroke Advanced POS Card On File (COF) feature utilizes the Cayan Vault to store sensitive payment card information which is accessed (using a unique token) for use on both individual sales transactions and automated recurring transactions. The optional Card Update Service is available to automatically update payment card information such as expiration dates for all cards stored in the Vault. A Cayan Acquiring Merchant Account and a system licensed to process through Cayan are both required to use COF.

COF allows a credit card to be saved with each customer record so that it can be used in the future as a payment instead of having to enter the card information again. Keystroke does not ever see or store any of the sensitive card information when using COF. The information is entered and stored directly on the Cayan servers using their Web Entry screen and their Cayan Vault service. The customer record stores only a token that allows access to that information when processing a payment through Cayan. COF now supports signature capture through the use of the External Authorization Method.

COF management for each customer is accessed by clicking the screen flag displayed at the bottom center of the sales transaction screen. The flag is labeled either "Card On File" if the customer already has a card entered, or "Add Card" if they don't. The flag is available only when viewing a customer's database record and from the Customer Entry and Complete Sale screens in Sales Manager. When the flag is displayed, the COF management function can also be accessed by pressing [Ctrl]+[F7].

COF management is very simple. If the customer does not have a card stored in the Cayan Vault, a prompt is displayed to add one. If the customer does have a card available, the card information is displayed with options to "Replace Card" or "Delete Card". Note that the card information cannot simply be edited. The entire card must be re-entered using the Replace Card function. Cayan offers an optional service to automatically update card information if a customer receives a new card from their issuer.

Adding/Deleting a Card On File is audited as a Payment Processing entry.

Before a card stored in the Vault can be used, a new Sales Payment Type must be added (from Configuration Manager-Tables-Sales Payments Types). The new Sales Payment’s Payment Type must be set to "Card On File". Enabling the "Skip Tendered Field" parameter causes the payment to be processed immediately. Disabling it (the default setting) allows the Clerk to view the card information (including the amount to be charged) before proceeding to charge the card. Most of the other parameters on the Sales Payment set up screen are ignored and the Auth Method setting should be left blank.

When the new sales payment type is selected on an invoice, Keystroke sends a request to Cayan to process the payment using the card information stored in the Vault. Cayan returns a response which includes the type of payment and amount (same as the response from the Genius device). Keystroke replaces the "Card On File" payment with the actual payment information that was used to process the payment. For this reason, the PIN Pad settings must be set to Cayan Genius and setup correctly.

However, if not using the Genius Device, once the correct setting are completed, the PIN Pad can be set back to a different device (or set to None).

Once set up, and if a customer has a Card On File, the new sales payment type can be used on a sales transaction. Note that if processing recurring sales transactions, selecting this new sales payment type saves the payment as Card On File and does not charge the card until the recurring transaction is copied to a sales invoice.

The Card On File sales payment type is displayed only if a customer is assigned to the sales transaction. When this payment type is used, Keystroke asks Cayan to process the Card that is On File in the Cayan Vault. If approved, Keystroke automatically switches the payment type to match the one for the card that was used (similar to using the Selected By Customer payment with the Genius device). If the customer does not have a Card On File when this sales payment type is used, Keystroke asks to add one.

The "Disable Card On File" Global Parameter (Configuration Manager-Settings Parameters) prevents Keystroke from displaying the "Card On File" and "Add Card" screen flags in Sales Manager and from displaying the Card On File management screen when [Ctrl]+[F7] is pressed.

Sales Payment Types with the Payment Type setting Card On File are not displayed in Closeout because when they are used on a Sales Invoice they are always converted to another payment type that matches the card that was actually used.

The "Card On File (Add/Edit/Remove)" security level (Configuration Manager-Tables-Security Levels- Databases) controls the display of the "Add Card" screen flag (the default setting is the same as Edit Customer). The Access Denied message is displayed to Clerks with insufficient security who attempt to open the management function. The "Card On File" screen flag is still displayed so the Clerk can see it is available to be used as a payment. The ability to use the Card On File Sales Payment Type is controlled by that payment’s Security Level settings.

The Report field (Calculated Field) "HasCardOnFile" is set to 1 if the customer has a Card On File and 0 if not. It is available to be printed on reports and/or used as a report filter.

Returns Function

The Keystroke Advanced POS Returns function is used to quickly accept returns of items from previous Sales Invoices. When the Returns function is run, the Transaction Returns – Invoice screen is displayed. Enter or scan the Sales Invoice Number in the Trans# entry field or use the Search button to open the Transaction Search function to locate the Sales Invoice. When the Sales Invoice has been located, the Transaction Returns screen is populated with the transaction information. The transaction number, date, and time are displayed in the screen’s title bar. The line items from the transaction are displayed with a checkbox to the left of each one.

If the transaction is not located, Trans# entry field is displayed again. Note that no matter what transaction type is currently being used, the Returns function searches for and works with Sales Invoices only. If more than one matching transaction is found, the Transaction Search function is used to display the matching transactions so one can be selected. If a Trans# is not entered, then the Transaction Search function is used and the cursor is placed in the Search Settings screen’s Item ID field as the starting point.

Navigate to the item(s) being returned and click the check box or press the [Space Bar] key to select it. The Item Search field may be used to locate the item by its description. [Alt]+[E] or [Ins] can be used to quickly access the Item Search field or if in the Check Mark column, simply start entering the item (any character except [Space] activates the Item Search field). After entering the characters to identify the item, press [Enter] to search through the transaction’s line items for a match. A barcode scanner can be used to quickly scan in the items that are being returned. The Item Search function first searches by Stock Number if all the search characters are numeric. It then searches by Product Code, and then by Description. If using Matrixing and searching for a Matrixed item, the search must be for Stock Number, Matrix Separator, Matrix Code. The Search function searches for and handles duplicate matches in the same field, but it searches only within the first field it in which it finds the first match (e.g., if one item is Stock Number 121 and another item is Product Code 121, it finds only the items that have the same Stock Number). While searching, items that have already met their Avail qty are ignored. If the match is on Product Code or on Description and more than one item is found, the Which One screen is displayed so the correct item can be selected.

Once the Search function finds an item, it increases its Re-Stock qty by 1 and highlights it. If there is an additional qty available to be returned, the Search field retains the search characters so [Enter] can be used to increase the Re-Stock qty by 1 again. Pressing [Tab] moves the cursor to the Re-Stock column on that item so it can be manually edited. If there are no more search items available to be returned for the current search, the Item Search field characters are erased.

Turning On the check mark sets the Re-Stock quantity field to match the Avail quantity field from the original invoice. Turning Off the check mark sets the Re-Stock quantity to 0. The Re-Stock quantity field can also be changed manually.

The "Write-Off" field is used to accept a return for an item that is not going to be placed back in stock (QOH will not be updated). Items marked as Write-Off will also have the text "DO NOT RESTOCK" added to the beginning of their line item comment.

After the Return quantities (Re-Stock or Write-Off) are entered, select the Save button to load them into a new Invoice (with a lower case “r” added to its SubNumber allowing it to stand out as a return

on lists and reports) and start on the standard transaction entry screen. Additional changes can then be made if needed. The return transaction automatically prompts to use the same payment type (e.g., credit card) that was used on the original transaction, but a new payment type can be entered. The return transaction can then be completed/printed/saved.

When Return transactions are saved, Inventory quantities are updated, just as they are with any transaction that affects QOH.

The Return quantities cannot exceed the original (Avail) qty (including any previously saved Returns for that invoice). Also, Gift Card line items cannot be returned using the Returns function, so they are not displayed. However, once the main return transaction screen is displayed, all standard functions are available (including changing the Qty and working with Gift Cards).

The date used to calculate the sales tax rate is based on the Invoice Transaction Type Save parameter "Rev. Trans - Tax on Orig Date". This determines if the tax rate is based on the Original Date or the Current Date.

Return transactions have a flag set to mark them as Returns Invoices. This flag can be printed and filtered on reports. Write-Off line items have a Write-Off flag which can be printed and used on reports.

The Returns function can be run from the Transactions menu or can be started from a Macro. The command is "SalesEntryCommand:TransactionReturns". Transaction Search Parameters can also be included but normally are not.

If any toolbar has a Return button that contains the older command "@ToggleFlag(ReturnMode,1)", it is automatically replaced with the new command. This only happens the first time the data files are accessed with v8.00 build 61 or later. The button can be edited and set back to older command if desired.

BOGO Pricing

The Keystroke Advanced POS BOGO Pricing (Buy One Get One) feature allows items to be discounted based on the purchase of other items.

Once set up, the invoice's line items are scanned for those that match the "Buy" criteria. If the "Buy" criteria is met, it then scans for items that match the "Get" criteria and applies the defined discount to the "Get" items. Note that Bogo Pricing does not automatically add items to the invoice (use Keystroke's Scripting function to do that).

For example, to set up a promo for buy one Pepsi Cola product and get the second one for half price, enter a Buy Qty of 1, set ID By to Manufacturer, and set the ID: field to "Pepsi Cola" (Inventory items that have "Pepsi Cola" in the Manufacturer field are a match). Then under Get Item enter Qty of 1, set ID By to "Same Item" (must purchase another of the same inventory item), set For to "% Off", enter "50" as the amount, and set From to "Base Price".

BOGO Pricing is attached to a Price Table. To make changes to BOGO Pricing, first display the list of Price Tables on the screen by either pressing [Ins] while in a Price Table field from anywhere in Keystroke or navigate to the Configuration Manager and select "Price Tables (Customers)" from the Tables menu.

Then select the Price Table to which the BOGO Pricing will be attached and press [F3] to display the selected Price Table's list of Price Formulas and BOGO Pricing. Note that BOGO Pricing is only available in Keystroke Advanced POS. Other licenses do not display the BOGO Pricing list.

From the BOGO Pricing list, select a formula to edit or press [Ins] to display the BOGO Pricing set up screen to add a new one.

The BOGO Pricing set up screen includes the following fields:

Name: - Enter a descriptive term for the BOGO Pricing formula. The Name is for internal use only and may contain up to 24 characters.

Buy Item box fields:

Qty: - The number of items that must be purchased at full price before any additional items will receive the defined discount.

ID By button – Defines the Inventory item field used to identify items which may be used to meet the Buy Qty condition.

ID: - The value that the inventory item must have as defined in the ID By field. An asterisk ("*") may be used to define "Contains" (put the asterisk first) or "Begins With" (put the asterisk last) matching. For example: "Pepsi" means the field can only contain those 5 characters. "*Pepsi" means the field must contain Pepsi somewhere within it. "Pepsi*" means the field must start with Pepsi. Note that the matching is case insensitive (it ignores the case of the characters. "PEPSI", "Pepsi", and "pepsi" are all treated the same).

“Allow Price Formula to Set Price” Parameter - When enabled/On, the price of the Buy Item that must be purchased can be discounted through Price Tables while still being used as the basis to receive the Get Item. When disabled/Off (the default setting), the line items defined as Buy Items ignore Price Formulas.

Get Item box fields:

Qty: - The maximum number of items that may be discounted for each time the Buy condition is matched. ID By button – Defines how to identify items that may receive the discount. The setting "Same Item" means the same inventory item (Stock Number) as the item that was purchased. "Use Buy Setting" means to use the same ID By and ID setting as defined in the Buy Item box (this is simply a shortcut so the same information doesn't have to be entered again).

ID: - This field is displayed when the ID By is set to something other than “Same Item” or ”Use Buy Setting” and defines the value that the inventory item must have as defined in the "ID By" field in order to be eligible to receive the discount. (Works the same as the ID: field in the Buy Item box)

For button - The type of discount to be given ("Free", "% Off", "$ Off", "Fixed Amount"). If set to something other than "Free" a field is displayed to define the value to be used.

From button - If "For" is set to "% Off" or "$ Off" then the From button is displayed to define the price field from which to calculate the discount.

Date Range – Defines the Dates for which the BOGO Pricing is valid.

Daily Time Window - (Happy Hour) – Defines the Time period on each day that the Pricing is valid.

Day of Week button – Defines the individual days of the week (e.g., Tuesday) that the Pricing is valid.

Day of Month button – Defines the individual days of the Month (e.g., 1st and 15th) that the Pricing is valid.

Group Together - When BOGO Pricing is applied, Buy and Get line items are moved so that the Get items that were discounted are displayed right after the Buy items that were used to provide the discount.

Message: - Text to be added to the line item comment for every Get item that was discounted. This is done when the transaction is printed or saved. Tokens can be used to show the normal selling price or the amount of the discount (e.g., "You Saved "%DisPrice%"). Press [Ins] while in the Message field to display the list of available tokens.

Max Uses – Defines the number of times the BOGO Pricing may be used on a single transaction. Leave blank for no limit. Note that the count is checked when BOGO Pricing is applied. If editing an invoice, the previously saved uses are not counted.

Additional Details:

Applying BOGO Pricing - BOGO Pricing is applied at the end of the sales entry process (when entering the Complete Sale screen). When determining which items to use as Buy items and which to use as Get items, the BOGO Pricing formulas are evaluated in the order in which they are displayed in the Bogo Pricing box on the Price Table screen. Once an item is used as a Buy or Get item, it is not used for additional BOGO Pricing. The items that match the Buy and Get settings are viewed in order of price (most expensive first) and selected as a Buy and then a Get item in that order. If a line item has a qty other than 1 and it is used as either a Buy or Get item, it may be split into separate line items so that the portion being used for either a Buy or Get is a separate line item. When saving an Invoice Sales Transaction Type, the Buy and Get line items are locked in and won't be eligible for BOGO pricing again if the Invoice is edited in the future. (Other transaction types allow BOGO Pricing to be recalculated each time).

One for One / Fractional Items - If the BOGO Pricing Buy and Get Qty fields are both set to 1, then any Buy Qty will match up with any Get qty (up to the amount purchased on the buy item). However, Items must be entered as separate line items. For example, if the formula is meat, buying 1.4 lbs of steak and

3.6 pounds of chicken will apply the discount to 1.4 lbs of the chicken.

Return Items - Items with a negative Qty are ignored when applying BOGO Pricing. Data File - The data for BOGO Pricing is saved in the file "PRCBOGO.DAT".

Note: Setup for BOGO Pricing is available only with Keystroke Advanced POS, but any license allows BOGO Pricing usage (Point Of Sale and Express POS licenses recognize the PRCBOGO.DAT file). However, Express POS licenses require a current maintenance plan. If the maintenance plan has Expired, the file is ignored and BOGO Pricing is disabled.

Store Link

Include in Sales Trans Search

The Include in Sales Trans Search Store Setup parameter may be enabled to include transactions from this store as well as the current store's data in results from the Transaction Search function, the Returns function, and the Customer History function in the Sales Manager. In the list of transactions, the field in the Store column is blank for transactions that are from the current data set (i.e., Store). Transactions from other stores can only be viewed and not edited or printed. However, transactions from the Returns function can be used since copies of the Return transactions are made and stored in the current store's data set. If an individual store does not have an Advanced POS license, then the parameter is ignored.

Vendor Catalogs

Photo file support

Vendor Catalogs now support Photos. The photo files are stored in the "V#\Photos\" folder below the "Catalogs\" data folder (where # is the Vendor Number). As with Inventory Photo files, the filenames are formatted as "I" + StockNumber. Press [Ctrl+F2] when a catalog item is selected to view the photo. If an item is copied from a Vendor Catalog to a standard Inventory item, its photo file is also copied (if one exists). The photo file is assigned a new file name if the Stock Number changes.

KEYSTROKE POS and KEYSTROKE ADVANCED POS

The rest of this document describes changes that are mostly available in both Keystroke POS and in Keystroke Advanced POS. However, there may be some changes included that apply to features available only in Keystroke Advanced POS. The changes that are for Advanced Only are marked with the text (AO).

 

PCI PA-DSS 3.1 Validation

Keystroke POS Software has been PCI PA-DSS v3.1 validated

The validation of PCI PA-DSS v3.1 compliance conducted during 2014, 2015 and half of 2016 is complete and Keystroke POS v8.0x.xx is listed on www.PCISecurityStandards.org as validated by PA- QSA Trustwave Holdings, Inc. Keystroke’s validation includes support for NETePay (DataCap Systems, Inc.) and a variety of popular EMV-capable payment terminals.

Toolbars

Macros – RunDoc

The Macro command RunDoc= runs a program in a new window and displays the specified file. The program that is run is determined by Windows based on the extension of the file name (e.g., RunDoc=ReadMe.txt runs NotePad.exe and displays ReadMe.txt. RunDoc=WhatsNew.pdf run Acrobat Reader and display WhatsNew.pdf). Website pages can also be specified.

Message Boxes

If the width of the Toolbars being used is more than 30% of the width (or height) of the Keystroke window then Keystroke assumes it is being used as a touch screen application and makes the size of the buttons that appear in standard message boxes larger.

Message Boxes

Shift Buttons - Auto Macro - If a button's Shift Behavior is set to something other than "(None)", then the Auto Macro is no longer used. (Auto Macro is used when a button does not have a macro. In which case the "Button Text" is sent using SendKeys= as the macro.)

Databases

Data Collisions

When a database record is saved after being edited, Keystroke checks for data collisions with other updates that may have been made to the record by other processes. This is done by first only updating the fields that were changed (e.g., If the QOH was not edited, then it is not saved). This guards against overwriting an update made by another user ringing up a transaction. In addition, any fields that were changed by both the edit function and by another process are also not saved. However, when this happens, Keystroke displays a message stating which changes had the conflict and that the changes will be lost. This message has a "View Report" button that prints this information to an On Screen report so that it can be viewed (or sent to a printer) while making any necessary updates to the record.

Show Summary - Inventory

The title bar text for the Show Summary ([Ctrl+F5]) function can be controlled by the "InvTitle=" setting stored in the "ShowSum.ini" file located in the Keystroke installation folder. Tokens can be placed in the title and are replaced by the value in the field from the inventory item being displayed. The supported tokens are: %Description%, %Code%, %Class%, %Manufacturer%, %LongDescription%, and

%BasePrice%. For example, to add Manufacturer to the default title, create the text file C:\KEYSTROK\ShowSum.ini that contains: InvTitle= Transaction Summary - %Description% -

%Manufacturer%.

Hardware

PIN Pads

The Verifone P400 with EMV ("WorldPay(Mercury) Verifone P400 w/ EMV") is now supported.

The Ingenico Lane7000 with EMV ("WorldPay(Mercury) Ingenico Lane7000 w/ EMV") is now supported. The Verifone VX805 with EMV ("WorldPay(Mercury) VX805 w/ EMV") is now supported.

The Ingenico iSC250 with EMV ("WorldPay(Mercury) iSC250 w/ EMV") is now supported. Ingenico iSC250 PIN Pad- new tests correct device responses that are out of sync.

The following PIN Pads have been removed from the Configuration Hardware Pin Pads menu: Ingenico en-Crypt 2100 and en-Touch 1000, IDTech SecurePIN, MagTek IntelliPIN, Verifone PINpad 2000, and Verifone Everest.

Cash Drawers Open Codes List & Test Button

The "Select from List..." button in the Open Codes area displays a list of known Open Codes for a variety of printers and cash drawers. Selecting an entry changes the Open Codes fields to match the selection. The "Test Printer on Port" button is designed for use with cash drawers that are connected printers. It sends a line of text ("123") to the current Port settings (which should point to a printer) to make sure that the port is set up correctly. The "Test Drawer" button runs the open drawer function with the settings currently being displayed (without having to save the settings first).

Printers - Forms Run Command – Control Switches

/WAIT - Wait for the command to finish before Keystroke continues.

/MIN - Run the command in a Minimized window.

Note: If both controls are used /WAIT must be first. Command controls must be placed in front of the command.

Both switches are stripped out of the command before it is run. For example, in the Printer Setup Box - Forms Run Command: /WAIT /MIN MyProgram.exe Parameter1 Parameter2 will run MyProgram.exe with Parameter1 and Parameter2 in a Minimized Window when a form is printed and Keystroke will stop and wait for MyProgram.exe to close before continuing.

Cayan Genius

When the Line Item Display setting is set to "ON", Keystroke updates the Genius device with the line items from the sale as they are entered. If set to "On w/ Upload", the Genius device uploads the line item data to the Cayan servers. Note that the upload interface only supports quantities from -99 to 999 and no fractions. If a line item does not meet this requirement, it will be uploaded with a quantity of 1 and the price set to the total amount for that item (Quantity*Price). Also, due to restrictions on the length of the fields, the Description will often be truncated down to as few as 9 characters.

Non-Processing Mode

Evaluation License & Sample Data

When running Keystroke using the Evaluation License with Sample Data (data folder is set to TUTOR\), the Evaluation License message includes notification that payment processing is disabled. PIN Pad Hardware settings changes are not saved. Authorization Methods configuration function is disabled.

Auth Method button on Sales Payment Types is disabled. The PIN Pad is disabled (same as running with the PINPad=OFF switch). Authorization Methods with the potential for processing credit/debit cards are ignored. Card data from a swipe is ignored (erased from memory). The Ignore PCI Requirements parameter is removed (and is ignored if it was previously turned on) since payment information is then not used and PCI requirements are not applicable. A different license is available that does allow the use of the Ignore PCI Requirements parameter. This license is available for stores that are not entering sensitive payment card data into Keystroke.

Mercury EMV

Handling of EMV Payments

The ability to handle EMV payments when processing through Mercury is handled by a separate set of programs provided by Mercury and Datacap that Keystroke communicates with directly. When Keystroke is installed, the controls dsiEMVX.ocx and dsiPDCX.ocx are placed in the WINDOWS\DatacapControls\ folder. In order to process payments with EMV through Mercury, the driver for the PIN Pad to be used and the NETePay for Mercury program must also be installed (see the Keystroke Update Installer). When processing a payment, the program/data path is as follows:

  1. Keystroke makes a payment request to the dsiEMVX.ocx control (or dsiPDCX.ocx in some cases).

  2. The control then uses the PIN Pad Driver to communicate with it and gather the payment information.

  3. The control communicates with the NETePay for Mercury program to process the payment (similar to how Keystroke/KeyPay work).

  4. The control returns the response to Keystroke.

  5. Keystroke displays the response info, prints receipts, and then saves the information it needs for future use and reports.

At no time does Keystroke have access to the actual card/account information.

After installing the necessary driver and NETePay for Mercury program, use the Configuration Manager - Hardware - PIN Pad function to select the Mercury PIN pad to be used (VX 805 or iSC250). The Port defaults to COM9 (which is the default for the USB version). The Test PIN Pad button can then be used to test the communications (NETePay must be running on the same machine for this test).

Download EMV Parameters - When installing a new device and from time to time on an existing device, the EMV Parameters need to be updated. This is done automatically when EMV payments are processed but may need to be done manually (especially when installing a new device). To manually force the download of the EMV parameters, use the Test PIN Pad button and answer "Yes" when asked to "Download EMV Parameters to Device".

Once the device is working correctly, use the Configuration Manager - Tables - Sales Payment Types function to set the Authorization Method to Mercury Direct, with card type = "EMV Credit/Debit".

The Authorization Method for Mercury Direct includes a "Payment Mapping" button. Any payments included in this mapping are shown on the Select Payment list in the Sales Manager. The payment is assigned to the correct mapped payment based on the card type response from Mercury (rather being manually assigned by the clerk beforehand). If the payment mapping does not match the card, a selected payment is used.

Mercury Direct Authorization Method

Supports EBT-Food and EBT-Cash transactions.

If Enter Gratuity on Device is on and Show Gratuity Field on the payment is ON, then the Gratuity can either be entered by the Clerk before processing the card or by the customer during the process.

However, since the customer is asked for the tip amount, the gratuity cannot be added on after the payment is first processed. Leaving Enter Gratuity on Device off on the Auth Method allows the clerk to enter the Gratuity either before or after the card has been processed.

The "Capture Signature on Other Device" parameter can be enabled to allow another device (other than the PIN Pad) to be used to capture signatures.

EMV Payment receipts are no longer automatically printed as soon as EMV payments have been processed (or declined or voided). Payment print buttons can be used to print the EMV payment receipts as needed.

Cayan EMV

Cayan Genius

Gift Cards can now be Issued and Reloaded (and Balance Checked) using the Genius Device instead of having a separate input method (manual, barcode, or mag stripe reader). No changes need to be made with the settings. Keystroke will automatically use the Genius device for card input if the "Card #:" field is left blank.

Received certification from Cayan that Keystroke is properly handling the use of EMV payment cards with the Genius (v8.00.08 or later). Keystroke can now print the EMV Information Block for payments that were processed using EMV. If used, this field should be marked as a comment since it can be several lines long. The information in this field is what is required to be printed for EMV payments. When a payment card is processed using EMV, the EMV information is automatically added to the end of the printed forms (receipts, invoices etc.) unless the form already has the information printed somewhere else. A "Declined Receipt" button and "Print Immediately" flag have been added to the Genius setup and can be used to define how to print a payment receipt for an EMV payment that was declined. When an EMV payment is declined, it is required that a printout of the decline be given to the customer. If this button is not set up, Keystroke automatically uses the DECLINED.PAY form and sends it to printer #3 (Receipt) and Print Immediately is treated as "On”. Once the receipt has been printed, the message is displayed again so the receipt can be re-printed if necessary. Note that once the Cancel button (or Esc) is used to leave this message box, all the payment information is discarded and the receipt can no longer be printed.

Before and after each payment request, Keystroke checks to make sure the Remove Card screen is not being displayed on the Genius. If it is being displayed, a Keystroke message box is generated stating that it is waiting for the card to be removed.

A security level for Manual Entry (of card number) has been added. Clerks without sufficient security are unable to use the Manual Card entry feature (either on the device or through the web site). The default security level is blank (Null) meaning the security level is not checked (all clerks can use Manual Entry). Note that this setting only changes the payment list in Keystroke, it does not change selections available on the Genius device itself. Changes to the device must be done through Cayan.

Cayan EBT SNAP

Cayan Genius

EBT SNAP payments (used to be called Food Stamps). In order to use this payment type the Genius device must be updated to App Version 5.1.3.2 or later, and the merchant account set up correctly by Cayan. The EBTSNAP Cayan payment must be mapped to a valid Keystroke Payment Type by using the Setup Pin Pad function in Configuration Manager. The payment to which EBTSNAP is mapped should always include Pay Formulas so that only eligible items may be purchased with this payment type. Once set up, if a transaction has eligible items on it (as defined by the pay formulas on the payment mapped to EBTSNAP) and the customer swipes an EBT Card, the Genius device will ask if they want to use EBT SNAP or EBT Cash.

EBT SNAP through the Genius device may be disabled by leaving the payment mapping blank. If it is mapped to a payment, pressing [Del] on the EBTSNAP payment type will remove the mapping.

Sales

Display Signature

Keystroke now locks the signature display window until it is closed. This is to keep it from being hidden behind the main program. Note that you can press any key or click anywhere inside of that window to close it.

GS1 DataBar coupons

Limited support for the new GS1 DataBar coupons (in addition to the older UCC Code 5 coupons) is available. Keystroke will match any item where the Company Prefix matches the Coupon's Company Prefix but the check is only done on the first 5 digits (the Company Prefix is already part of the UPC code which must be recorded on the Product Code field on the inventory items). Only coupons for a dollar off amount and based on minimum quantity are supported. Coupons with additional requirements or that add different items are not supported.

Age Verification Audit Entry

When the Confirm Age box is completed, an audit entry is recorded using the Payment Processing category (to ensure the Audit Parameter is always on). The message will include the birthdate, the Age comment, the transaction number (which may not be the final number that the transaction was saved as), and the Inventory Item that triggered the Age Verification. If the "Over Verification Age" function was used then the birthdate will have a "*" in front of it and the words At Least will be included with the age comment. When running the audit report, the Payment Processing entry must be turned on to view these entries. The entries are labeled as "Age Entry" instead of "Pymnt Proc".

Override Credit Limit

If the current clerk does not have the security to override a customer's credit limit (and it is needed) then Keystroke displays a Change Clerk button in the Exceeds Credit Limit message. If the clerk is changed, then Keystroke automatically brings up the Clerk Login box again so the previous clerk can log back in before the transaction proceeds (as always [F4] can be used to change clerks until it is pressed again). Note that after the amount has been entered on the payment, Keystroke still defaults the payment amount to not exceed the credit limit when first selecting the payment type no matter what the clerk's security level is.

Original Transaction Changed

Every time a Sales or Purchase transaction is saved (new or updated) a counter on its data record is altered to show that it was updated. While editing/viewing a previously saved transaction, Keystroke checks the data record it was loaded from for changes to this counter. If the counter is changed, then the "Original Transaction Changed" message (which has replaced the “Transaction No Longer Valid”) is displayed. From this message, the clerk can then choose to "Reload" the transaction (which brings up the version currently stored in the data file), "Clear" (start on a new transaction), "Ignore" (keep viewing/editing the transaction even though the original may have been changed by another process). "Cancel" (go back to the proceeding function, transaction stays on the screen).

If "Ignore" is selected, Keystroke displays another message ("Are You Sure..."). If "Yes" is selected, an audit entry under the Process Payment audit type is created and Keystroke suppresses the display of the "Original Transaction Changed" message (at least until another transaction is loaded or if the data record is changed again by another process).

Credit Memos

Payments processed through Mercury Direct are now supported.

Recurring Charges

Recurring charges created using the Mercury Direct authorization method are now supported. Note that if switching authorization methods from KeyPay, any recurring charges that were previously set up using KeyPay need to be reentered on the recurring transaction (delete the original payment and enter a new one). Also, since the payment information (Token) saved with the recurring transaction is changed each time it is used, restoring a backup after recurring charges have been processed causes the payments to fail until they are deleted and reentered.

Line Item Parameters

When the "Round XFor Prices (when possible)" parameter is ON, prices for line items with fractional prices (decimal values past one cent) created for XFor (or Mix and Match) pricing, are rounded to the nearest penny by adjusting some up and others down. For example, if an item has a "3 for $1" price and the item is listed on 3 separate lines, all with a quantity of 1, then instead of each price being $0.3333, Keystroke sets the first two items to $0.33 and the last one to $0.34. This rounding adjustment allows all the numbers on the receipts and reports to match. When this parameter is OFF, the items will have a price of $0.3333 (which is displayed as $0.33) and the receipt will show three items at $0.33 and the Sub- Total of $1.00 (even though 3 @ $0.33 is $0.99). Another example: For "3 for $5", the screen/receipt will show:

ON = $1.67, $1.67, $1.66 = $5.00 OFF = $1.67, $1.67, $1.67 = $5.00

The "(when possible)" applies to line items with a quantity that is not 1, in which case Keystroke may need to use the fractional prices in order to make the totals work correctly (e.g. if there is only a single line item with a quantity of 3, then the program must use the fractional price to have the total be an even amount). Also, if one of these line items has a Qty of 1, then it will be used to make up any amount lost with the rounding. In most cases, this will only be plus or minus a penny. But if there are items with large quantities on them, then this adjustment can be a lot more.

Line Item Parameters

When the "Confirm Shipped Qty" parameter is ON (and the Shipped column is being displayed) Keystroke will automatically go to the shipped column while entering a line item (the Confirm Qty parameter use to control this).

Line Item Parameters

The “Prompt to Add Item Not Found” Line Item Entry Parameter allows for the entry of a new Inventory Item by displaying the "Item Not Found! Add item to database?" message before the "Item Not Found! Proceed with Non-Inventory Item?" message is displayed after an item that is not in the Inventory database has attempted to be added to the transaction. When Prompt to Add Item Not Found is enabled and the Clerk has "Add Inventory Item" security the "Item Not Found! Add item to database?" message is displayed before the "Item Not Found! Proceed with Non-Inventory Item?" message is displayed. If "Yes" is selected the Add new Inventory Item screen is displayed so the item can be added to the Inventory Database (just as though [Ctrl+F3] was pressed on a line item entry line). The default message button is "No". If [No], [Cancel] or [Esc] is used Keystroke proceeds and displays the usual "Item Not Found!

Proceed with Non-Inventory Item?" message.

Display Parameters

The “Show Tax Rate (% based on $100 "T" item)” Display Parameter, when enabled (it is enabled/On by default), displays the Tax % on the Item Entry Screen and on the Complete Sale Screen. When disabled, only the Tax Amount is displayed.

Line Item Display

The Genius device can be used as an additional line item display by enabling the Line Item Display option in the hardware set up. Note that this option can slow Keystroke down especially if there are a lot of line items and previous line items are deleted or new line items are inserted. If set to "On w/ Upload", then the information on the line item display will be uploaded when a Genius payment type is selected. If the Genius device is not used for a payment, then the information will be uploaded when the transaction is saved (but only if it is being saved as an Invoice).

Age Verification - Scan/Swipe Only

If the Clerk does not meet the Age Verification - Over Verification Age security level and the Support D.L. Scan/Swipe parameter is enabled, then the birthdate field does not accept a manually entered birthdate (only scanned or swiped entries are accepted). This feature (in conjunction with the Max Items Sales Trans feature available in Keystroke Advanced POS only) qualifies Keystroke Advanced POS as a JUUL Labs Retail Access Control System (RACS) certified solution.

Age Verification – Manually Enter Birthdate

If the Clerk does not meet the Manually Enter Birthdate security level, they are not allowed to manually type in the Birthdate on the Age Verification screen. Note: If the Support D.L. Scan/Swipe parameter is disabled and the Clerk also does not meet the "Age Verification - Over Verification Age" security level, then there is no way to enter the customer's age causing the Age Check function to act as though the [Esc] key was press and not allow the item to be sold by the current clerk unless the customer's age is already known (by either another Clerk entering it or from the Customer's Database Record).

Sales Transaction - Default Print Button

The Default Print Button setting defines the default Print Button selected automatically at the end of a Sales Transaction. When a Sales Transaction is completed, the Print Button options can be displayed with the default Print Button pre-selected.

The Default Print Button is set to "0 - Save" by default for all Sales Transaction Types but can be set to a different print button on any Transaction Type as needed (in Configuration Manager, Settings, Sales Transactions, Complete Sale Parameters).

Note: If a Sales Payment Type is used on the transaction, the payment's Print Button setting overrides this one.

Security Level - Ignore Credit Limits on Returns

The “Ignore Credit Limits on Returns” Sales Manager Security Level prevents the use of Sales Payments with their Type set to Credit on sales transactions with a negative amount left to be tendered (such as on Returns). Normally a customer that has a Credit Limit of 0.00 and does not have a negative Balance (in store credit available) cannot use a Sales Payment of Type-Credit (e.g., "On Account") on a Sales Transaction. However, if the transaction has a negative payment amount left to be tendered then using a Credit Type sales payment is allowed. This can now be blocked by entering a lower value on the "Ignore Credit Limits on Returns" security level. The default value is 9 on new data sets. On existing data sets it is set to the current value set on the "Sales Transactions" - "Enter Returns" security level.

Purchasing

Print New Invoice

When this parameter is enabled, Keystroke automatically prints the Purchase Invoice using the same Print Button number that was used to print the Purchase Order. (To disable the automatic printing but still load the new invoice so it can be printed manually, use different Print Button numbers on the Purchase Order and Purchase Invoice transaction types).

Display Parameters

The "1st Column" button Display Parameter is used to select the information to be displayed in the first column of the line items (same as in Sales). The data in this column can only be changed if "1st Column" is set to Vendor Part#.

The "Start Transaction List in Quick View" Display Parameter enables the transaction list (e.g., Copy function) to display using the Quick View mode by default. In this view, the top of the screen shows the highlighted transaction detail.

Purchase Entry – Transaction Search Command Macro

This macro is used to launch the Transaction Search function. PurchaseEntryCommand: "TransactionSearch". It works the same as the SalesEntryCommand of the same name.

Macros

MessageBox Macro

The MessageBox= macro displays a message box with the specified text. The message box is displayed with an OK button and a Cancel button and does not allow the Clerk to continue until the OK or Cancel button is clicked, the [Enter] key is pressed, or the [Esc] key is pressed.

Parameters:

MessageBox={the text to be displayed in the MessageBox goes here}.

NumButtons={# of buttons}. The default number of buttons is 2 but can be set to 0 (no buttons), 1 (Ok only), 2 (Ok/Cancel), or 3 (Yes/No/Cancel). "No" and "Cancel" both stop the macro. If there no buttons are displayed any key except [Esc] (or clicking the X) will continue the macro. The NumButtons parameter is ignored if Pause parameter is used.

Pause={# of seconds}. If the Pause parameter is used the buttons are not displayed and the message is displayed for the defined number of seconds (or until a key is pressed) before the macro proceeds. The Macro will always proceed even if [Esc] is pressed.

Tip: add the Pause={# of seconds} parameter to automatically clear the Message Box after the specified number of seconds.

Example:

MessageBox=Please ask the customer for their Email Address Pause=5

This example displays the Message Box asking for an email address and then closes the Message Box after 5 seconds.

SalesEntryCommand – EnterCustomer Macro

The "SalesEntryCommand: EnterCustomer" macro is used to specify an individual customer for the transaction. The parameters include the field used to identify the customer, followed by the customer's text for that field. Customer identification fields include: Number, Code, Phone, LookUpName, BusinessName, LastName, WebID, Email.

Usage:

SalesEntryCommand: EnterCustomer, Number=101 SalesEntryCommand: EnterCustomer, [email protected]

New Data Sets

Passwords

Keystroke no longer allows the option to skip entering a new strong password for the default clerk when a new data set is being created.

Sales Payments

The "Food Stamps" payment type has been replaced with "EBT Cash Benefits" and the "EBT Food Stamps" payment type has been added.

Sales Parameters

The Line Item Entry "Round XFor Prices" parameter is marked as ON when creating new data sets (it will be left OFF on existing data sets).

Version 8 Conversions

Payment Processing

All Old Authorization Methods Removed - All code that could be used to support older (and unsecured) payment processing methods has been completely removed. This includes the old MercuryPay and PCCharge (direct, not through KeyPay).

Colors

When data is converted to v8, Keystroke backs up the current color settings to the Themes.xml file under the name "V7 DATA Backup" (where DATA is the last part of the path to the data folder being used) before installing the default Version 8 colors.

Toolbars

When data is converted to Version 8, Keystroke copies a new Version 8 toolbar file to TOOLBARS\TB.DAT below the data folder and begins using the new toolbars. If TB.DAT already existed, it is backed up to TB.V7.

After the New Colors and Toolbars are loaded

Keystroke displays a message stating so and then displays the option to immediately revert back to the old settings. Pease feel free to explore the new settings because each time Keystroke restarts, the Revert Back message is displayed again allowing you to revert back at a later time.

The Revert Back Message Options

Keystroke checks a hidden parameter in the configuration data file and if this parameter shows that the system is using colors and toolbars that were switched by the Version 8 conversion, then a message is displayed stating so and offering the following choices:

-Continue Testing the new settings (the revert back message appears again next time Keystroke is started).

-Keep the new settings (and stop displaying the message).

-Revert back to the old settings (the previous colors are restored from the backup in the Themes.xml file and the previous toolbar file is then used).Note that the Appearances function in the Configuration Manager can be used to set Toolbars and Colors at any time.

Account Receivable

Credit Memo

Keystroke will no longer allow a credit memo for $0.00 to be saved (or printed).

[Ctrl+F8]

While on the list of Open Invoices, [Ctrl+F8] auto applies the payment's balance to the currently selected invoice and all those below it (it does not change the applied amounts on the invoices above the current one).

[Ctrl+Plus]

Hotkey to apply payment to currently selected invoice. Use [Ctrl+Minus] to set Applied to 0.00. Create a toolbar button for each to help control how an ROA payment is applied.

Search By Invoice

If a customer is found by entering the Invoice Number, then Keystroke defaults the ROA payment amount to match the amount due on that invoice and applies that amount to it.

Default ROA Payment to Search by Invoice Amount Parameter

ON by default. When disabled, the ROA Payment amount is NOT set to match the amount due on the invoice when the customer is found by entering the invoice number in the customer entry box.

Mercury Direct

Payments processed through Mercury Direct are now supported.

Statements (Invoice Details-Gift Cards)

If gift cards are saved as Payments (as they normally are) then Invoice Details and Invoice Total fields were not including them when printing statements. Keystroke now adds the gift cards to the line items and totals printed on statements if the "Invoice Details" statement parameter is turned on and the gift card was set to save as payment but display as line item.

StoreLink

Inventory Update

The parameter used to control the updating of Base Price is now also used to control the updating of the Qty Pricing (Xfor) fields on each inventory item when the Update Inventory function is used.

The Calc Using Price Table Entry Parameter updates cost fields from Store Transfer Line Item Cost when saving a Store Transfer. If set to use a Price Table, the formulas from the Price Table that are based on a cost field are used to calculate the new cost as the inventory item is updated. Note that this does not calculate new costs in Store 0.

Consolidate Inventory

The Consolidate Inventory function is used to combine Inventory Quantities and Dates from all stores into a single inventory database. This is done by designating a store to Consolidate the inventory using the Transfers Menu, Consolidate Inventory Parameter. Once set up, run the Consolidate Inventory function using the Store Menu, Consolidate Inventory option. This function first erases all the quantity and date fields in the Consolidate store's inventory file. It then reads in the inventory data from the other stores and combines it into the inventory data in the specified Consolidate store. Once completed, the Consolidate store's data can be used on reports and/or export functions to view the combined inventory of all stores.

The "Exclude form Consolidate Inventory" Store Setup Parameter may be enabled to exclude a store from the Consolidate Inventory function. Note that this parameter is not checked on the store set to Consolidate to.

Startup Switches

GeniusIP=

The WS#.INI file now supports this switch.

MWGenius=

Used to specify which data file is used to load the settings for the Cayan Genius PIN Pad device (default is MWGenius.dat).

INIFILENAME=

No longer requires that the full path be entered or that the file already exists.

StatusBarIgnoreClick

Used to disable Status Bar mouse and touch screen input. For use with touch-screens where the Status Bar may be touched accidentally.

Online Help

The Keystroke Help Screens ([F1]) have been changed to use new technology and also include all new updated help screens. The help files are now in html format and are stored online on the KeystrokePOS.com web site. Instead of using the Windows Help Viewer, help is now displayed via the computer’s browser (or whatever program the computer is set to use with .html files). An optional setup is available to store the help files on the local hard disk (in the HelpHtml\ folder). If help files are found there, they will be used instead of the online files.

Note that the online files are continually updated while files stored locally need to be reinstalled to get any updates. If the html help file cannot be found, then Keystroke reverts back to the previous help screens.

Dashboard

The Dashboard is used to quickly review business activity in a graphical form, without running reports. Access the Dashboard by selecting Dashboard from the Utilities menu or by using a shortcut to run Dashboard.exe (with the same Startup Switches used to start Keystroke). The Dashboard may be left running on the desktop and may be refreshed by clicking a View button (Snapshot, Week, Month) to update the data.

  • Dashboard requires Keystroke Version 8.00.73 or newer.

  • An active Software Maintenance plan is required to run the Dashboard.

  • Use the /R (register number) switch if running Dashboard on multiple registers.

  • Each View offers unique Tiles and a different default date range.

  • Click on the Snapshot, Week, or Month buttons to change or refresh the current View.

  • Left-click to enlarge and stretch an individual Tile.

  • Right-click on a Tile to change temporary settings without affecting the saved settings.

  • Click the gear icon in the upper right corner to change saved settings for the current View.

Picture Viewer

Video File Formats

The Picture Viewer now supports the manual display of WMV, MPG, MPE, and MP4 video files. Select a database record and press [Ctrl+F2] to view the video. These file types cannot automatically be displayed the way still image file types can be displayed.

SendKM.EXE

Send Email though KeyMail

SendKM (Send Email through KeyMail) is a stand-alone program that can be used to send emails from the command prompt (or from a macro/script). SendKM.exe uses the same information as the MAIL: port in Keystroke and sends the email through KeyMail. Command line switches and/or an .INI file can be used to specify what is in the email and specify the email address to which the email is to be sent. Please see Keystrok\Doc\SendKM.txt (or run SendKM /?) for more information and details.

A simple example:

SendKM DataDir=Tutor [email protected] Subject="Test Email" Message="Have a great day!" Attachment=Invoice.pdf;ThankYouLetter.pdf;StoreFrontPhoto.jpg

Date Entry

Combining Relative Dates

Multiple relative dates (e.g. -1M) can be combined in a single date definition formula by separating them with the Pipe Character ("|"). To define the first day of the previous month, enter "-1M|1". To define the last week of the prior month, enter "-1M|-1W". Relative dates are always based on the date currently displayed in the field into which they are entered. Entering -1M sets the date back one month, going back to that field and entering -1W sets the date back 1 additional week from that date (not from the current date). The "|" character allows multiple relative date definitions to be entered together in a single date definition formula (without having to leave the date field). To force the relative date formula to be based on the current date, add "|" to the beginning for the date definition formula (e.g., "|-1M"or "|-1M|-1W").

Startup.DAT

Documenting Startup Switches

Each time Keystroke is loaded the command line used is written to the file StartUp.DAT located in the Data folder. This file can then be referenced to help when setting up Keystroke on a new system if necessary. Older entries in this file will be dropped off once the file reaches about 32K in size.

Kiosk Mode

Enter Sales In Self-Checkout / Kiosk

To enable the entry of sales in a self-checkout or a kiosk mode, the following settings should be made:

  1. Create a Kiosk Mode sales entry clerk with a security level of 11 and no password. Note: when using this clerk, access to most features is disabled. Use the [F4] key to login with a clerk that has an elevated security level to make changes or exit the Sales Manager. The toolbars in Kiosk Mode should have a button that runs a macro using SendKeys={F4} to display the clerk login screen.

  1. Use a startup command with a unique Register Number and KSCNF.DAT file.

  1. In Sales Manager-Transaction-Parameters-Entry-Customer Entry: Turn Off Enter Customer First.

  1. In Configuration Manager, set the Settings-Database-Default Clerk to the Kiosk Mode clerk.

  2. In Configuration Manager-Tables-Security Levels, change the following Security settings to 11: Modules:

-Access Sales Manager

Sales Transaction-Sales Invoice:

-Create New Transaction

-Payment-Add New to New Transactions

-Sell (Back Order) Out of Stock Items

-Valid Customer NOT Required

Note: To enable any other functions for the Kiosk Mode clerk, set the security level to 11 on them as well.

  1. In Configuration Manager-Tables-Sales Payment Types: Change the Security Levels - Add New Payment setting for any payment to be used to 11 (e.g. Visa/MC/Disc).

  1. In Configuration Manager-Tables-Print Buttons-SM: Sales: Change the Security Level of the Print Buttons to be used to 11.

  1. In the WS#.INI file, add: Goto=TRN and StatusBar=Off lines.

     

    Keystroke Direct Payment Processing (EVO)

    Process credit card sales through EVO

    The Keystroke Direct payment option supports payment processing through EVO. This method supports processing through both PIN Pads and directly through the Internet. The PIN Pads are not connected directly to the computer. Instead, they are IP based and are connected via the local area network. (The IP address of the PIN Pad(s) needs to be entered during set up).

    The use of PIN Pads is optional if all card data is to be entered manually. In most cases at least one PIN Pad should be available for use. Before setting up PIN Pads in Keystroke they need to first be connected to the network and powered up. The IP Address to be used for each PIN Pad should be noted because it needs to be entered in the Keystroke set up later.

    The Keystroke set up is done in the Configuration Manager and can be completed from inside the Tables- Sales Payment Types menu. Select the first payment type that should be processed through EVO and then click on the "Auth Method" button. Press [Ins] to add a new Authorization Method and enter a short filename (e.g. EVO). Use the "Type" button to set it to "EVO - Keystroke Direct" and select "Ok" to proceed to the Authorization Method setup screen. Enter the Merchant ID for web-based payments ("Card Not Present MID:") and the Token Key ("Card Not Present Token Key:") provided by EVO. Note that a standard Card Present Merchant ID and Token are issued but are not entered during setup because they are programmed into the PIN Pads by EVO. Select the "Payment Mappings" button and use the list to map each standard payment type (in the left column) to the payment from the Keystroke payments list to which it should be assigned (every standard payment type should be mapped).

    If using one or more PIN Pads, select the "PIN Pads..." button and use the PIN Pad List to enter the IP Address and Register and/or Machine Number for each PIN Pad to be used. If there is only one computer and one PIN Pad, use the Default entry to enter the PIN Pad IP Address. For larger setups, it is generally best to leave the Default entry set to None (leave the IP Address Blank) and create an entry for each computer that will have access to a PIN Pad and enter the IP Address for its PIN Pad.

    If using EBT (SNAP), create and set the Authorization Methods for those payment types where the Card Type option in the Authorization Method matches the payment type ("EBT-Food" or "EBT-Cash").

    Card On File payments are also supported by EVO. In order to use it you will need a "Card On File" payment type and unique Auth Method for it (see the Technical Info section below for more details).

    Press [F10] to save everything that has been set up. The Test button on each Authorization Method set up screen can be used during set up to ensure everything is working correctly.

    If using Gift Cards, use the Tables-Gift Cards menu to create and setup the Authorization Method for a new EVO Auth Method (e.g. "EVOGIFT") that uses the Card Type option “Gift Card".

    Keystroke Direct Payment Processing supports surcharges. The surcharging configuration is set up using the Discount/Surcharge parameters for the Sales Payment Type. The Surcharge Amount should be entered as a percentage (the recommended maximum is 3.99% based on current published opinions).

    The Record As option should be set to Payment and a new Sales Payment Type should be created for it with its Print Button option set to 0–Save and its Print in Tax Loop on Forms option enabled (ON). Note that charging a Surcharge is not permitted in all states and may have a different maximum in other states. If a surcharge is used, Keystroke displays the amount that is being requested. This amount is added to the charge total if permitted based on the Card Type. If the card type does not allow surcharging then no additional amount is added (and the surcharge amount is set to $0.00 for that transaction). All merchants should first consult with the appropriate professional and/or their payment processor to verify how the rules apply to their particular situation.

  2. Keystroke POS software and Keystroke Digital Sign Controller are developed and owned by Specialized Business Solutions ("SBS") of Long Beach, CA and are protected by United States and international copyright laws (Copyright (c) 1988-2020. All rights reserved).

    For more information about Keystroke POS or other products published by Specialized Business Solutions, call 800.359.3458 or 970.262.1720 or visit www.KeystrokePOS.com.

    Rev. 07/11/2022