Hospitality bulk instance configuration

The Hospitality application provides functionality to configure instances in bulk; use an xml file to do this. The functionlity is applicable to P400 and V240m.

The XML file format should follow the example below and you can find a sample file at YESEFT\autoconf\ named AutoConfig_Default.xml.

NOTE: The value of tags used in the 'AutoConfig_Default.xml' file are test data. For the correct configuration, change the values according to your requirements and follow the rules described in the table below.

XML file format :

Copied!
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<YESEFTConfiguration>
    <InstanceConfigurationList>
        <InstanceConfiguration>
            <PropertiesDir></PropertiesDir>
            <PrintReceiptFlag></PrintReceiptFlag>
            <EVTPort></EVTPort>
            <DeleteTransAfterMin>30</DeleteTransAfterMin>
            <InstanceId>0</InstanceId>
            <ClassPath></ClassPath>
            <Printer></Printer>
            <EVTHost></EVTHost>
            <Timeout></Timeout>
            <Language></Language>
            <Country></Country>
            <AskGratuity></AskGratuity>
            <PreConfigureGratuity></PreConfigureGratuity>
            <GratuityOptions></GratuityOptions>
            <Debug></Debug>
            <ExtendedDebug></ExtendedDebug>
            <ReceiptDir>C:/YESEFT</ReceiptDir>
            <ReceiptWidth></ReceiptWidth>
            <SendReceipt></SendReceipt>
            <ReceiptPort></ReceiptPort>
            <InterfaceMethod>0</InterfaceMethod>
            <InputDir></InputDir>
            <OutputDir></OutputDir>
            <IntraMessagePort></IntraMessagePort>
            <Port>10000</Port>
            <UseAvsRules></UseAvsRules>
            <AvsDetailsMandatory></AvsDetailsMandatory>
            <AvsRuleIndex></AvsRuleIndex>
            <NextReceiptNumber></NextReceiptNumber>
            <AutoUpgrade>true</AutoUpgrade>
            <AllowSplit>true</AllowSplit>
            <AllowEqualSplit>true</AllowEqualSplit>
            <RemoteTableClosure>true</RemoteTableClosure>
            <CashAtTable>false</CashAtTable>
            <ShowConfirmTxnScreen>false</ShowConfirmTxnScreen>
            <PinPadPort></PinPadPort>
            <PresetNoFlag></PresetNoFlag>
            <EposReceipt></EposReceipt>
            <IntraMessageFlag></IntraMessageFlag>
            <DisablePenniesForContactlessTxn></DisablePenniesForContactlessTxn>
            <EposReceiptDir></EposReceiptDir>
            <EposReceiptPort></EposReceiptPort>
            <EposReceiptInterface></EposReceiptInterface>
            <PrintDuplicateReceipt></PrintDuplicateReceipt>
            <CustReceiptPrompt></CustReceiptPrompt>
            <PrintMerchantReceipt></PrintMerchantReceipt>
            <NumberOfLogFiles></NumberOfLogFiles>
            <OptWaiterId>false</OptWaiterId>
            <WaiterId></WaiterId>
            <Comport></Comport>
            <PresetValue></PresetValue>
            <IpAddress></IpAddress>
            <MerchantID></MerchantID>
            <TerminalID></TerminalID>
            <PinpadName></PinpadName>
        </InstanceConfiguration>
        <InstanceConfiguration>
            <PrintReceiptFlag></PrintReceiptFlag>
            <InstanceId>1</InstanceId>
            <Printer></Printer>
            <Timeout>30</Timeout>
            <Language></Language>
            <Country></Country>
            <AskGratuity>false</AskGratuity>
            <PreConfigureGratuity>false</PreConfigureGratuity>
            <GratuityOptions>0,0,0</GratuityOptions>
            <Debug>false</Debug>
            <ExtendedDebug>false</ExtendedDebug>
            <ReceiptDir>C:/YESEFT/INSTANCE_01</ReceiptDir>
            <ReceiptWidth></ReceiptWidth>
            <SendReceipt>false</SendReceipt>
            <ReceiptPort></ReceiptPort>
            <InterfaceMethod></InterfaceMethod>
            <InputDir></InputDir>
            <OutputDir></OutputDir>
            <IntraMessagePort></IntraMessagePort>
            <Port></Port>
            <UseAvsRules>false</UseAvsRules>
            <AvsDetailsMandatory>true</AvsDetailsMandatory>
            <AvsRuleIndex></AvsRuleIndex>
            <NextReceiptNumber></NextReceiptNumber>
            <PinPadPort>5001</PinPadPort>
            <PresetNoFlag>false</PresetNoFlag>
            <EposReceipt>false</EposReceipt>
            <IntraMessageFlag>false</IntraMessageFlag>
            <DisablePenniesForContactlessTxn>false</DisablePenniesForContactlessTxn>
            <EposReceiptDir></EposReceiptDir>
            <EposReceiptPort></EposReceiptPort>
            <EposReceiptInterface></EposReceiptInterface>
            <PrintDuplicateReceipt>false</PrintDuplicateReceipt>
            <CustReceiptPrompt>false</CustReceiptPrompt>
            <PrintMerchantReceipt>false</PrintMerchantReceipt>
            <NumberOfLogFiles>20</NumberOfLogFiles>
            <WaiterId>false</WaiterId>
            <Comport></Comport>
            <PresetValue></PresetValue>
            <IpAddress></IpAddress>
            <MerchantID></MerchantID>
            <TerminalID></TerminalID>
            <PinpadName>V240m-IP</PinpadName>
        </InstanceConfiguration>
    </InstanceConfigurationList>
</YESEFTConfiguration>

Description of xml format tags :

Tag nameDescription
YESEFTConfigurationRepresents the start and end of the xml file
InstanceConfigurationParent tag of the InstanceConfigurationList, it represents the start and end of instance configuration
InstanceConfigurationListRepresents the start and end of the instance list

Detailed description of configuration values allowed in tags :

Tag nameValues allowed at default instanceValues allowed for pay@counter (P400) at instanceValues allowed for pay@table (V240m) at instanceModification allowedFunctionality
ClassPathblankNANANo (auto populated by application)
PropertiesDirblankNANANo (auto populated by application)
EVTPortblankNANANo (auto populated by application)
EVTHostblankNANANo (auto populated by application)
LanguageblankNANANo (auto populated by application)
CountryblankNANANo (auto populated by application)
ReceiptWidthblankNANANo (auto populated by application)
NextReceiptNumberblankblankblankNo (auto populated by application)
AutoUpgradetrueNANANo (modification allowed at default instance)
PinpadNameblankValue must be P400-IP or P400-USB/SERIAL or P400-CHMValue must be V240m-IP or V240m-USBYes (modification allowed at instance)Name of PED with connection mode.
MerchantIDblankNumeric value of maximum 15 digits and cannot be blankNumeric value of maximum 15 digits and cannot be blankYes (modification allowed at instance)This is a merchant identification number (length of 1 to 5 digits maximum) provided by Worldpay, also know a WPH MID
TerminalIDblankUnique numeric value of 8 digits and cannot be blankUnique numeric value of 8 digits and cannot be blankYes (modification allowed at instance)This is a unique terminal identification number (length of 8 digits) provided by Worldpay specifically for a terminal.
IpAddressblankIf pinpad name is P400-CHM then value must be ip address to connect PEDblankYes (modification allowed at instance)IpAddress to connect P400 with CHM module
InterfaceMethod1. Value 0 for socket mode
2. Value 1 for file mode
blankblankYes (modification allowed at default instance)Connection mode through which EPOS application sends transaction requests to Hospitality application
InputDir1. If interface method is socket then value must be blank
2. If interface method is file then value must be directory location
blankblankYes (modification allowed at default instance)This field represents the absolute location of Input.txt file for sending transaction requests to Hospitality application
Port1. If interface method is socket then value must be 10000
2. If interface method is file then value must be blank
blankblankYes (modification allowed at default instance)Represents TCP port value to read and write requests/responses from Hospitality application.
PrintReceiptFlagblanktrue or falseblankYesV240 have a printer and it always print receipt. For P400 customer can choose to print receipt via external printer.
Printerblank1.If PrintReceiptFlag=true then value must be path to printer located on same machine
2. If PrintReceiptFlag=false then value must be blank
blankYesAll printers installed on machine
CustRecepitPromptblankblanktrue or falseYes (allow to modify at instance)If true, then the Hospitality application prompts a screen on PED to make a decision on printing a customer receipt.
PrintMerchantReceiptblanktrue or falsetrue or falseYes (allow to modify at instance)If true, then Hospitality issues the merchant receipt. Otherwise receipts are only issued when cardholder signature verification is needed.
ReceiptDirThe absolute path to the receipt directory and it must be different for all instancesThe absolute path to the receipt directory and it must be different for all instancesThe absolute path to the receipt directory and it must be different for all instancesYes (allow to modify at instance)Represents the location to store hospitality application generated receipts.
SendReceiptblanktrue or falsetrue or falseYesIf true, then the hospitality application sends all transaction receipts to EPOS application on TCP/IP socket.
ReceiptPortblank1. If SendReceipt=true then the value must be a unique numeric upto 4-5 digits
2. If SendReceipt=false then value must be blank
1. If SendReceipt=true then the value must be a unique numeric up to 4-5 digits
2. If the SendReceipt=false then the value must be blank
YesRepresents the port value to receive receipts on TCP/IP socket.
DeleteTransAfterMinA numeric value between 10 to 60 minutesNANAYesTime transaction requests can be present in the hospitality queue. After timeout, the transaction requests with a status of 'PENDING', 'COMPLETE' and 'CANCELLED' are deleted from the hospitality queue.
InstanceIdNumeric value '0'1. Incremental numeric digits greater than 1
2. Duplicate value not allowed
3. Numeric value between 1 to 99
4. Digits must be in ascending order
1. Incremental numeric digits greater than 1
2. Duplicate value not allowed
3. Numeric value between 1 to 99
4. Digits must be ascending order
YesRepresents instances
TimeoutblankNumeric value between 10 to 60 secondsNumeric value between 10 to 60 secondsYesRepresents time in seconds when transaction times out if no card is presented.
AskGratuityblanktrue or falsetrue or falseYes (modification allowed at instance)If true, then hospitality application prompts for Gratuity at the time of payment.
PreConfigureGratuityblank1.If AskGratuity=true then the value can be true or false
2. If AskGratuity=false then the value should be false
1.If AskGratuity=true then value can be true or false
2. If AskGratuity=false then the value should be false
YesAdds a facility to prompt for percentage value options on the PED for a gratuity. In some countries a gratuity is known as a tip.
GratuityOptionsblank1. If AskGratuity=true and PreConfigureGratuity=true then values must be an unique numeric digit in ascending order between 1 to 100, example (20,30,40)
2. if AskGratuity=true and PreConfigureGratuity=false then all three values must be numeric zero, example (0,0,0)
3. if AskGratuity=false and PreConfigureGratuity=false then all three values must be numeric zero, example (0,0,0)
1. If AskGratuity= true and PreConfigureGratuity=true then values must be an unique numeric digit in ascending order between 1 to 100 example (20,30,40)
2. if AskGratuity=true and PreConfigureGratuity=false then all three values must be zero, example (0,0,0)
3. if AskGratuity=false and PreConfigureGratuity=false then all three values must be zero, example (0,0,0)
Yes (allow to modify at instance)Represents % value options presented on PED for gratuity selection.
Debugblanktrue or falsetrue or falseYes (allow to modify at instance)If true, then TVR, TSI and CVMR are printed on the receipt
ExtendedDebugblanktrue or falsetrue or falseYes (modification allowed at instance)If true, then additional information is printed on the receipt. Examples are 9F26, 82, 9F27, 9A, 9F1A, 9F10, 9C, 9F37, 9F02, 9F03, 9F36, 5F2A, IAC ONLINE, IAC DENIAL, IAC DEFAULT, TAC ONLINE, TAC DENIAL, TAC DEFAULT.
IntraMessageFlagblanktrue or falsetrue or falseYes (modification allowed at instance)If true, then hospitality application sends all transaction messages to POS. In pay at table mode this functionality works with 'No table' transactions.
IntraMessagePortblank1. If IntraMessageFlag=true then value must be unique numeric upto 4-5 digits
2. If IntraMessageFlag=false then value must be blank
1. If IntraMessageFlag=true then value must be unique numeric upto 4-5 digits
2. If IntraMessageFlag=false then value must be blank
Yes (modification allowed at instance)Represents listening port value for POS to read transaction progress messages from different Hospitality instances.
AllowSplittrue or falseNANAYesIf true, then cardholder asked to split the total bill amount and to confirm the amount in situations where some wish to pay more or less than others.
AllowEqualSplittrue or falseNANAYesIf true, then cardholder asked to equally split the total bill amount.
RemoteTableClosuretrue or falseNANAYesIf true, then application continuously sends polling request to POS and waits for 30 seconds to receive payment request. This functionality helps merchants to close order automatically.Also PED display option 'close table' in 'more option' menu for closing orders explicitly.
CashAtTabletrue or falseNANAYesIf true, then PED display options to pay by cash.
ShowConfirmTxnScreentrue or falseNANAYesIf true, then PED display additional screen to confirm the sale amount before payment.
OptWaiterIdtrue or falseNANAYesIf true, then 'Identify waiter ID from PED' functionality will be available.
WaiterIdblankblankIf OptWaiterId flag is true then set value as true
If OptWaiterId flag is false then set the value as false
YesIf true, then 'Identify waiter ID from PED' functionality will be available.
Comportblank1. If pinpad P400-USB/SERIAL comport value must not be blank
2. If pinpad P400-IP, P400-CHM comport value must be blank
1. If pinpad V240m-USB comport value must not be blank
2. If pinpad V240m-IP comport value must be blank
Yes (modification allowed at instance)Represents the value of comport where PED is connected to system with USB.
preset value flagblankblanktrue or falseYes (modification allowed at instance)If true, then allows merchants to group table numbers.Adds the Preset transaction List option to the bottom of Hospitality Home Screen.
preset valueblankblank1. If preset value flag=true then value must be alphanumeric of maximum 10 characters
2. If preset value flag=false then value must be blank
Yes (modification allowed at instance)Represents preset value by which transaction list needs to be filtered. Table number should always be different from preset value.
EPOS receiptblankblanktrue or falseYes (modification allowed at instance)
File/socket (EposReceiptInterface)blankblank1. If EPOS receipt=true then value must be true for socket mode and false for file mode
2. If EPOS receipt=false then value must be blank
Yes (modification allowed at instance)
EposReceiptDirblankblank1. If EPOSreceipt=true and EposReceiptInterface=true then value must be blank
2. If EPOSreceipt=true and EposReceiptInterface=false then value must be location to EPOS receipt directory
3. If EPOSreceipt=false then value must be blank
Yes (modification allowed at instance)
EposReceiptPortblankblank1. If EPOSreceipt=true and EposReceiptInterface=true then value must be blank
2. If EPOSreceipt=true and EposReceiptInterface=false then value must be location to EPOS receipt directory
3. If EPOSreceipt=false then value must be blank
Yes (modification allowed at instance)
Enable Print Duplicate Receiptblankblanktrue or falseYes (modification allowed at instance)It prints duplicate customer and merchant receipt.
UseAvsRulesblanktrue or falsetrue or falseYes (modification allowed at instance)If true, then functionality to check AVS rules for CNP transactions is enabled.
AvsDetailsMandatoryblanktrue or falsetrue or falseYes (modification allowed at instance)If true, then it is compulsory to provide AVS details (CVV, Address and Postcode) in a CNP transaction.
AvsRuleIndexblank1. If UseAvsRules=true then AvsRuleIndex must be numeric value of 0 to 5 digits
2. If UseAvsRules=false then AvsRuleIndex must be blank
1. If UseAvsRules=true then the AvsRuleIndex must be a numeric value of 0 to 5 digits
2. If UseAvsRules=false then the AvsRuleIndex must be blank
Yes (modification allowed at instance)Represents AVS rules to be configured for CNP transactions and values are :
1. 0 - Accept only on all match
2. 1 - Accept on cvv and zip code match
3. 2 - Accept on cvv and address match
4. 3 - Accept on cvv and any of zip code and address match
5. 4 - Accept on cvv match
6. 5 - Accept any response
NumberOfLogFilesblankNumeric value between 20 to 999 digitsNumeric value between 20 to 999 digitsYes (modification allowed at instance)If the log reaches 1MB it is renamed automatically with an incremental numeric suffix. You can configure the number of log files from 20 to 999 and once the maximum number is reached the oldest log file is overwritten. This is applicable for YESCPS logs only.

For details of all functioanlities refer -here

Steps to execute bulk configuration :-

  1. Update AutoConfig_Default.xml file placed at location YESEFT\autoconf\ following the rules explained in the above table.
  2. Change the name of the file to AutoConfig.xml
  3. Run the YESEFTConfig.bat file.
  4. The application configures all instances according to the xml file and renames the file appending todays date and time.
  5. After successful configuration, the application creates logs 'config.log' at the YESEFT\logs\ location with details of terminal ids and merchant ids.
  6. If the application fails to configure any instance because of validation failure, then it creates the logs 'config.log' at the YESEFT\logs location with details of failure instances and error messages.

NOTE: Hospitality application search file with name 'AutoConfig.xml' at folder location YESEFT\autoconf\ (strictly follow nomenclature)

Export 'master file' from Hospitality application :

Master configuration file can be exported from the Hospitality application. Merchants can refer to this file to get information about the current configuration, to update existing instances and also to add new instances.

Follow the steps below:-

  1. Run YESEFTCofig.xml file to open GUI.
  2. Select default instance.
  3. At the ‘General’ tab click the ‘Export Config File’ button to export and save file.

export-config.png

Updating configuration of Hospitality application :

AutoConfig.xml file can be updated to change the configuration of the Hospitality application (to update existing instances and also to add new instances). Follow above steps to export the master file and modify it.

Steps to modify file :-

  1. Use the 'Export Config File' to export the master file.
  2. Update the file according to the rules described in the above table.
  3. Rename the file to AutoConfig.xml and place the file in the YESEFT\autoconf\ location.
  4. Run YESEFTConfig.bat file.
  5. The application configures all instances according to the xml file and renames the file by appending todays date and time.
  6. After a successful configuration, the application creates the 'config.log' at the YESEFT\logs\ location. This log has details of terminal ids and merchant ids.
  7. If application fails to configure any instance because of validation failure, then it creates the 'config.log' at the YESEFT\logs location with details of failure instances and error messages.

Automatic configuration of Hospitality application :-

  1. Hospitality application is capable of automatic configuring. A scheduler runs automatically once in every 24 hours and checks file at location YESEFT\autoconf\ . If a file exists with name AutoConfig.xml then the application automatically configure instance according to xml file, restart itself and renames the file appending todays date and time. Application trigger this process only when PED is idle and connected to application. When multiple PEDs are connected, then application waits for all PEDs to come on idle state and PEDs that are already in idle state shows 'Waiting for Application Restart....' message.

    Time to trigger scheduler is a part of Merchant Dataset in tag : 'APICallTime'.

  2. The application always checks AutoConfig.xml at location YESEFT\autoconf\ on Hospitality startup, using StartHospitalityServer.bat file. If a file exists with name AutoConfig.xml then application automatically configure instance according to xml file, restart itself and renames the file appending todays date and time.