Upload
others
View
29
Download
0
Embed Size (px)
Citation preview
SAP Enterprise POS™version 3.0
Technical Reference Guide
SAP Enterprise POS Technical Reference Guide 3.0Copyright© Copyright 2006 SAP AG. All rights reserved.
SAP Library document classification: PUBLIC
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express
permission of SAP AG. The information contained herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain proprietary software components of
other software vendors.
Microsoft, Windows, Outlook and PowerPoint are registered trademarks of Microsoft Corporation.
IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400,
iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli and Informix are
trademarks or registered trademarks of IBM Corporation in the United States and/or other countries.
Oracle is a registered trademark of Oracle Corporation.
UNIX, X/Open, OSF/1 and Motif are registered trademarks of the Open Group.
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame and MultiWin are trademarks or
registered trademarks of Citrix Systems, Inc.
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web
Consortium, Massachusetts Institute of Technology.
Java is a registered trademark of Sun Microsystems, Inc.
JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and
implemented by Netscape.
MaxDB is a trademark of MySQL AB, Sweden.
SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver and other SAP products and services mentioned
herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in
several other countries all over the world. SAP Enterprise POS, POS Manager and POS Configurator are all
registered trademarks of SAP. All other product and service names mentioned are the trademarks of their
respective companies. Data contained in this document serves information purposes only. National product
specifications may vary.
These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated
companies (“SAP Group”) for informational purposes only, without representation or warranty of any kind and
SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP
Group products and services are those that are set forth in the express warranty statements accompanying such
products and services, if any. Nothing herein should be construed as constituting an additional warranty.
SAP - Important DisclaimersSAP Library document classification: PUBLIC
This document is for informational purposes only. Its content is subject to change without notice and SAP does
not warrant that it is error-free. SAP MAKES NO WARRANTIES, EXPRESS OR IMPLIED, OR OF
MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
Coding samplesAny software coding and/or code lines / strings (“Code”) included in this documentation are only examples and
are not intended to be used in a productive system environment. The Code is only intended better explain and
visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness
of the Code given herein and SAP shall not be liable for errors or damages caused by the usage of the Code, except
if such damages were caused by SAP intentionally or grossly negligent.
2
Internet hyperlinksThe SAP documentation may contain hyperlinks to the Internet. These hyperlinks are intended to serve as a hint
where to find supplementary documentation. SAP does not warrant the availability and correctness of such
supplementary documentation or the ability to serve for a particular purpose. SAP shall not be liable for any
damages caused by the use of such documentation unless such damages have been caused by SAP's gross
negligence or willful misconduct.
AccessibilityThe information contained in the SAP Library documentation represents SAP's current view of accessibility
criteria as of the date of publication; it is in no way intended to be a binding guideline on how to ensure
accessibility of software products. SAP specifically disclaims any liability with respect to this document and no
contractual obligations or commitments are formed either directly or indirectly by this document. This document
is for internal use only and may not be circulated or distributed outside your organization without SAP's prior
written authorization.
3
4
Table of Contents
Chapter 1 Introduction to the Technical Reference Guide
Chapter 2 Architectural OverviewSuite overview ........................................................................................................11
End user applications ....................................................................................11
Logical elements ............................................................................................12
Solution components ....................................................................................13
Architecture overview ...........................................................................................15
Technical components ..................................................................................15
Architecture components .............................................................................17
Logical communication between applications and services ....................18
Messaging and dataflow ................................................................................18
Deployment options ..............................................................................................20
A: Centralized application-level fail-over with central POS Manager ...20
B: In-store application-level fail-over with local POS Manager .............23
C: Collapsed demo system ...........................................................................24
Chapter 3 Loading Data Into SAP Enterprise POSImporting data into SAP Enterprise POS .........................................................27
Master Data Import (MDI) ..................................................................................28
The Data Maintenance (DM) Controller ...................................................28
Managing the DM Controller ......................................................................28
Directories used by the DM Controller .....................................................29
Preparing an import ......................................................................................29
Running an import ........................................................................................30
Brief overview of DM Controller processing steps .................................32
Managing The Replication Processes .........................................................33
Chapter 4 Simulation CapabilitiesThe POS client simulator .....................................................................................37
Configuration and setup ...............................................................................38
Recording client scripts ........................................................................38
Configuring a simulation plan .............................................................38
The POS client simulator engine ................................................................40
Using client script recording ........................................................................40
Using the simulator engine ...........................................................................40
Changing input parameters ..........................................................................41
EFT transactions in training mode .....................................................................41
Chapter 5 Configuration and Hierarchy Import/Export
5
Exporting and importing application profiles ...................................................43
Chapter 6 TroubleshootingLiteral.properties file conversion to Unicode (Japanese language support) .45
Converting a literal.properties file to Unicode ..........................................45
Time zone behavior ...............................................................................................46
Chapter 7 About The XML TLog FilesUnderstanding the XML transaction log files ...................................................50
Sample transaction log XML output — an example and analysis .........51
The XML tags and related TLog elements ........................................54
XML interpretation of the POS activities ..........................................55
About the End of Day Notification XML files ................................................56
End of Day Notification schema ................................................................56
Transaction log XML tags ............................................................................57
XML for specific transaction types .............................................................96
Validating the XML TLog ....................................................................................97
Transaction log schemas .......................................................................................97
POSLogRetailTransactionStockView_Extensible.xsd .............................98
Chapter 8 About The XML Data Input FilesAbout the Item Maintenance XML files ..........................................................101
Item Maintenance xml tags ........................................................................102
Item Maintenance schemas ........................................................................122
About the Department Maintenance XML files .............................................122
Department Maintenance schemas ...........................................................122
About the Employee Maintenance XML files ................................................122
Employee Maintenance schemas ..............................................................123
About the Item Hierarchy Maintenance XML files .......................................123
Item Hierarchy Maintenance schemas .....................................................123
About the Promotion Maintenance XML files ...............................................123
Promotion Maintenance schemas .............................................................123
About the MixMatch Pricing Maintenance XML files ...................................124
MixMatch Pricing Maintenance schemas .................................................124
About the Site Parameter Maintenance XML files .........................................124
Site Parameter Maintenance schemas .......................................................124
Export Trigger schemas ..............................................................................125
About the Validation Maintenance XML files ................................................125
Validation Maintenance schemas ..............................................................125
Operational data update ......................................................................................125
Resetting a store server ...............................................................................126
Deleting store data .......................................................................................126
Cloning store data ........................................................................................126
Appendix A Known Data TypesAbout the known data types ..............................................................................129
Known data types ........................................................................................130
Appendix B About The Services Interface FilesThe Customer.xsd files .......................................................................................151
6
The transaction audit files ..................................................................................152
TrxSequenceAuditSummaryRequest.xsd .................................................152
Postal CodeLookup .....................................................................................152
PostalCodeLookup.xsd .......................................................................152
Appendix C Error MessagesGeneral error messages .......................................................................................153
POS Manager error messages ....................................................................154
POS Client error messages .........................................................................158
Configurator error messages ......................................................................166
Hardware error messages ...........................................................................167
Appendix D Item Key Expansion RuleItem Key Expansion.xml ....................................................................................171
Example key expansions .............................................................................172
Index .................................................................................... 173
7
8
Introduction to the Technical Reference Guide
This Technical Reference guide is intended to provide technical maintenance and reference
information to support SAP Enterprise POS. This information is intended primarily for advanced head
office technical and administrative personnel. For your reference, the schemas can be found on the
compact disc provided by SAP.
The Technical Reference Guide covers the following topics:
� About the known data types: This section contains a listing and description of all the
system-described data types available to be used with cashier prompts (see Chapter , “Known
Data Types” on page 129).
� Loading and updating data into your SAP Enterprise POS system: This section contains
directions for loading, cloning and resetting data for your SAP Enterprise POS system (see
Chapter 3, “Loading Data Into SAP Enterprise POS” on page 27).
� About the XML data input files: This section contains information about the tags and element
formats used in the various SAP Enterprise POS data input files. It also contains descriptions of
the .XSD schemas on which the files are based (see Chapter 8, “About The XML Data Input
Files” on page 101). Note that the .XSD and .XML files can be found on the compact disk
provided by SAP.
� About the XML TLog files: This section describes the XML TLog (transaction log) output for the
SAP Enterprise POS system and explains some of the basic tags and element formats used. It also
contains descriptions of the .XSD schemas on which the files are based.
� About the XML validation maintenance files: This section contains information about the tags
and element formats used in the validation maintenance input files. It also contains descriptions of
the .XSD schemas on which the files are based (see “About the Validation Maintenance XML
files” on page 125).
� IXRetail POS standard log schemas: This section contains reference information on standard
IXRetail log schemas (see “IXR Schema Information” on page 169).
� About the services interface schema files: This section contains information on the customer
interface services files that define the messages that are used to communicate between applications
and public services (see “About The Services Interface Files” on page 151).
� Simulation capabilities: This section contains information on the POS client simulator testing
tool which allows you to collect a multitude of simulation statistics and performance metrics (see
“Simulation Capabilities” on page 37).
� Importing and exporting configurations: This section describes the data import/export utility
and the steps to perform to export, archive and import configuration data. See “Configuration and
Hierarchy Import/Export” on page 43.
9
Introduction to the Technical Reference Guide
10
Architectural Overview
Suite overview
End user applications
The major components that are part of the SAP Enterprise POS suite, along with several of the key
external systems they interact with, are shown in the following solution architecture overview diagram.
The left side of the diagram shows the components that are deployed within the stores while the right
shows those deployed at the retailer's the Head Office or externally at a third party location. The
diagram shows the POS Manager application deployed within the stores, but it can optionally be
deployed centrally at the Head Office.
Customer-facing transactions begin within the POS components running within the stores. The SAP
Enterprise POS client is currently logically thin, meaning it requires a connection to its designated POS
server to conduct trading and execute sales. This POS server is usually located within the stores but can
be located anywhere on the retailer's network. It is also possible to configure an optional secondary
POS server that, likewise, can also be located anywhere on the network to provide high-availability for
the POS application.
During the course of trading, the POS may need to invoke one or more centralized services. These
centralized services can be hosted either by the retailer, by third parties, or both. A typical example of
the former would be a customer profile lookup, while an example of the latter would be an authorized
payment request made to a financial institution such as a bank. These are all real-time, message-based
calls that typically employ a suitable local stand-in service definition, to cover the situation when the
centralized service is unreachable for any reason such as a WAN outage or central server failure.
The SAP Enterprise POS suite interacts with the various systems of record on the “in-bound” side to
obtain operational data such as articles, prices and employees. It interacts on the “out-bound” side to
send the recorded transaction data out to the various back-end systems that operate on this data, such
as ERP and Sales Audit.
11
Architectural Overview
Logical elements
The following diagram illustrates the basic logical elements that make up SAP Enterprise POS. At the
center of the diagram the large block represents the core of the SAP Enterprise POS suite. Note that
this is a logical view - the elements that would be contained within this block are typically deployed
both within the stores and at the retailer's Head Office. Logically, however, this block interacts with the
various types of SAP Enterprise POS clients, shown on the left. These clients can be POS terminals,
hand-held devices used for “lane busting”, or “low-end” clients built to run on legacy POS hardware.
In all their forms, the POS clients permit the user to ring sales, accept tender as payment and perform
other activities necessary for the retailer to trade.
Sometimes the POS needs to enlist the aid of Centralized Transaction Services to complete certain
actions. In this case, the Centralized Transaction Services can implement the necessary functionality
themselves, or they may be simple service facades over existing back-end solutions that provide the
service content. The diagram shows types, those that delegate to another SAP system (shown far right)
and those that natively implement the service (such as “Stored Value”).
Along the top of the diagram, the basic requests that come into the SAP Enterprise POS envelope
from external systems are shown. Operational data, such as item data or pricing, are provided by the
back-end systems of record for this information. It is also possible for external systems to request that
operational data held within the SAP Enterprise POS be exported to conduct audits of this
information.
Finally, configuration data can also be sent in from external systems or generated exclusively by using
the Configurator application that is part of the SAP Enterprise POS suite.
12
Suite overview
The data types that are output by SAP Enterprise POS are shown along the bottom of the diagram.
The most critical is the transaction log data (TLog), which is essentially a detailed digital representation
of the cash register receipt for each transaction. This data is processed in near real-time as the POS
completes transactions. As indicated in the diagram, the transaction data is generally consumed by
back-end systems such as SAP BI and other analytical systems that operate over very large sets of
transaction data.
In addition to the transaction detail, the POS system can also generate event notification, such as a
trigger message when the store is closed for the business day.
Solution components
The following list summarizes the major components used within the SAP Enterprise POS suite. The
elements in blue are software components that comprise the suite, while the other elements provide
environmental support:
� POS Register: Runs the POS Client application. POS client applications can use many different
retail peripherals to execute sales such as scanners, magnetic stripe readers, scales, cash drawers,
change machines, electronic safes or pin pads.
� Manager Workstation: The POS Manager application is browser-based, so the manager's
workstation only requires a browser.
13
Architectural Overview
� Store Server: The store server hosts the POS server application, along with its helper application
EFT Manager that handles interactions with external authorized payment providers such as banks.
The POS server implements the majority of the business logic required to conduct sales at the
POS. The Async Services component runs on each server within the SAP Enterprise POS suite
and provides support for various background processing tasks such as updating cached
operational data and configuration.
� Central Server: This server is often implemented as a cluster of multiple machines using a Storage
Area Network (SAN) at the retailer's Head Office. The Configurator application is mandatory on
this node to permit the full spectrum of business behavior implemented within the SAP
Enterprise POS application to be configured and maintained. Typically, the Centralized
Transaction Services is deployed here also for such things as returns authorization or customer
profile lookup. Shown here too is the POS Manager application, which the store manager uses to
run the store, perform actions such as balancing the POS operators' cash drawers, balancing and
managing the store safes, doing pickups and loans, generating POS-related reports such as Flash
Sales and Exception reports and when necessary (and permitted) locally overriding operational
data such as prices and employee data.
14
Architecture overview
Architecture overview
Technical components
The major components of the SAP Enterprise POS suite, along with the technologies they employ are
illustrated below. The elements on the left half of the diagram show the typical in-store components
and those on the right show the typical centralized components that would be deployed at a retailer's
Head Office. The services deployed at the Head Office in particular are optional - (other than the
Configurator application, which is required) a retailer can use all, some or none of these services. The
POS Manager application can be deployed either within the stores or centrally at the Head Office and
the same is true of the designated POS secondary (backup) server if SAP Enterprise POS
application-level high-availability is used.
All server-side applications are Java Enterprise Edition (Java EE) applications running within a suitable
Java EE application environment. A messaging backbone is required between the stores and the Head
Office that is fault tolerant. This component depicted by the“U” at the center of the diagram.
The client and user-interface elements are depicted on the very far left. Note there are several options
for the POS user interface, depending on the capabilities of the devices the retailer uses. The Java
Swing rich GUI is the standard SAP Enterprise POS user interface though other options are provided
to accommodate devices that are not capable of running a standalone Java application.
RMI and HTTP are the synchronous communications protocols used by the client devices. In contrast,
server-to-server communications are asynchronous and message-based using the Java Message Service
(JMS) API.
15
Architectural Overview
Along the bottom of the diagram, Transnet is used whenever interactions need to be “bridged” from
JMS to some other native (usually legacy) format or protocol.
16
Architecture overview
Architecture components
SAP Enterprise POS is composed of several key applications:
� Point of Sale
� EJB Server-side Component with Java Swing GUI front-end
� POS Manager
� EJB Server-side Component and Web Server-side Component
� Configurator
� EJB Server-side Component and Web Server-side Component
Supporting these applications are several “helper” server-side components that are called
programmatically but do not have their own business-user interfaces:
� EFT Manager
� EJB Component
� Centralized Services
� EJB Component
� Asynchronous Site Services
� EJB Component
All of these applications and services communicate exclusively via asynchronous messaging as
implemented by a message-oriented middleware product (MOM) that supports the Java Message
Service (JMS) API.
As illustrated in the logical diagram below, the applications send messages to each other and to the
supporting services by placing messages in the proper format on various JMS destinations, either
topics or queues. The applications and services each listen on designated topics and queues using the
EJB construct for this - message-driven beans (MDBs) - and process only the messages that are
destined for them. Similarly, the applications and services respond using the same approach.
For messages that are exchanged with external systems, XML is used and its format is described by
SAP published schemas. For private internal messages, a more performant message structure is used.
JMS messaging is used for inter-application/service communications regardless of the relative location
of the sender and the receiver, meaning it is used both locally on the same server as well as for remote
communications between servers or sites over a LAN or WAN.
Because it constitutes the underlying connective link between the applications and services within SAP
Enterprise POS, the selection of an appropriate MOM product with the right quality-of-service traits is
a critical infrastructure choice when deploying SAP Enterprise POS.
17
Architectural Overview
Logical communication between applications and services
Messaging and dataflow
The diagram below illustrates the way messages move through the system under normal operating
conditions.
On the right side of the diagram two stores are shown, Store A and Store B. On the left the central
Head Office is shown. Information moving between the stores and the Head Office travel over
designated JMS topics - the “To Stores” topic when moving from the Head Office down to the stores
and the “From Stores” topic for messages traveling up to the Head Office.
Once messages reach either a store server or the Head Office server, they are placed on that server's
local “Internal Topic”. Each application and service deployed on that server node is listening on this
Internal Topic, waiting to process messages that are addressed to them. In addition, within each
server's local environment, the applications and services on that node communicate with each other
over the same “Internal Topic” on that server node.
The most common integration point between SAP Enterprise POS and external systems occurs at the
retailer's Head Office. Three example integration points are shown in the diagram: Data Maintenance,
External Services and POSLog.
18
Architecture overview
The Data Maintenance queue is the integration point with the system of record for in-bound
operational data such as items, prices, promotions and employee information. The external system
hands the message to SAP Enterprise POS over the Data Maintenance queue and from there SAP
Enterprise POS ensures the data is propagated everywhere it needs to be within the SAP Enterprise
POS application “envelope”, such as to all stores that need to cache a copy of the data.
Moving in the opposite direction, external systems that need to consume and process sales data
generated by the POS listen on the outbound POSLog topic. One may think of SAP Enterprise POS
as simply a system that generates an auditable record of all transactions performed by its users. These
transaction records, called TLogs or POS Logs, are the primary output streams generated by the
application. As transactions are completed on each POS server, they are first saved locally on that POS
server (usually in the store) and then forwarded over the messaging backbone via the “From Stores”
topic to the Head Office server where they are stored in an enterprise transaction repository for
reporting. The transactions are then sent on to any external consuming systems that need this data via
the public JMS destination “POSLog Topic”.
If the SAP Enterprise POS needs to access an external system to support transaction processing, such
as a customer information repository, a request is sent over the External Services topic.
At each location, it may be necessary to send messages to a legacy service provider such as a bank that
approves authorized payments by credit and debit cards. In situations where the receiver is not capable
of natively consuming JMS messages, an adapter can be used to adjust message format, communication
protocol, or both. These adapters are configured as part of the “Site Client” Transnet framework
included with SAP Enterprise POS as shown at the far right of the diagram.
19
Architectural Overview
Deployment options SAP Enterprise POS supports several deployment options to flexibly meet the needs of a wide range
of retail environments. Typically the major decisions that must be made include where the POS
Manager application will be deployed and how high-availability will be implemented for the
applications.
Below are a few of the areas that must be taken into consideration when selecting a particular SAP
Enterprise POS deployment topology:
� Characteristics of the store LAN - is it or can it be made resilient at the hardware level?
� Store format - how many servers in each store - none, one, two, or more?
� Characteristics of the WAN from the Head Office to each store
� Where will the failover servers be located?
� Infrastructure vs. application-level high-availability (HA)
� Data backups - where must they be done and by whom?
� Retailer's desire for centralization and real-time behavior
� Fear factors and “C-level vision vs. IT capability” mismatch
The evaluation and proper weighing of these factors must be done with each retailer to decide which
deployment topology best meets their needs and objectives. Such a discussion is beyond. For
illustration purposes only, three deployment scenarios are discussed below.
A: Centralized application-level fail-over with central POS Manager
20
Deployment options
The topology above shows a “lightweight” deployment option where the retailer has elected to have
only a single primary POS server within the stores, with both the POS Manager application and the
POS secondary (backup) server located centrally at the Head Office.
Under normal operating conditions, requests from the POS terminals within each store are routed to
the local (primary) POS server within that store. This connection is a synchronous Remote Method
Invocation (RMI) call over the store LAN. It is possible to continue operations if the store is
disconnected from the Head Office. All critical operational data is cached on the local store server and
the messaging product can store all transactions until the Head Office connection or server is restored.
This topology is using SAP Enterprise POS application-level failover to provide high availability. If the
local store server becomes unavailable, the POS terminals connect to a secondary server located (in
this case) centrally at the Head Office. Once failover occurs, from the POS operator's perspective the
only difference observed might be slightly longer processing time for some operations and the
appearance of a “backup” indicator on the POS display.
POS Manager is deployed centrally in this topology, which affords the retailer economies of scale when
performing system backups and other administrative chores. It is up to the retailer or a 3rd party
engaged by the retailer to set up and configure any high-availability solution running in their Head
Office Data Center. The use of SAN devices and clustering technologies would be typical here.
Retail environments running this topology usually have a reliable Wide Area Network (WAN)
connection between the stores and the Head Office. If the WAN were completely down, the retailer
would not be able to run their usual “end of day” cash management and reporting activities until the
WAN were restored. As noted above however, they would still be able to ring sales and accept
payment, since essential POS operations are handled locally within the store without reliance on the
WAN.
21
Architectural Overview
UML Deployment: Centralized application- level fail-over with central POS Manager
In the above UML Deployment diagram, a more detailed technical version of this deployment
topology is shown.
Some key additional internal components are depicted too, along with some of the internal interactions
between these components. The RMI calls between the POS terminal and the POS server and the
internal synchronous calls between internal components are shown as solid lines and the more
prevalent asynchronous communications using the messaging system (JMS) are shown as broken lines.
Normal pathways are in black and failover pathways are in red.
22
Deployment options
B: In-store application-level fail-over with local POS Manager
This topology shows a situation where the retailer likely has less confidence in the WAN link between
the stores and the Head Office. Both the POS Manager application and the secondary POS server are
located within the store. Only the Configurator application and the Centralized Services are deployed
centrally.
This topology also illustrates SAP Enterprise POS application-level high-availability (HA).
Application-level HA is currently available for the POS application only, so in this example the retailer
has elected to not run the POS Manager application in a highly available way. This scenario is
characterized by an asymmetrical store server pair with the POS Manager installed on the primary store
server only.
If a retailer wanted POS Manager to be both highly available and deployed locally within the stores,
infrastructure HA would need to be employed. In this kind of solution resiliency is built underneath
the SAP Enterprise POS applications, usually at the middleware or operating system level. SAP does
not currently offer pre-packaged infrastructure HA with SAP Enterprise POS, so setting this up is the
responsibility of the retailer or another 3rd party. In the past, retailers have used solutions based on
Linux HA, DRBD and Heartbeat.
As in the previous example, the POS application fails over from the primary POS server to the
designated secondary POS server, although this time the secondary server is also within the store
instead of at the Head Office.
23
Architectural Overview
C: Collapsed demo system
This deployment option would represent the typical demo or bench-testing environment. Here all
components are deployed together on one machine. Also, this option shows a middleware
environment based on Open Source and a lightweight edition of the Microsoft SQL Server database.
24
Deployment options
UML Deployment: Collapsed demo system
In the above UML Deployment diagram, a more detailed technical version of this deployment
topology is shown.
Some key additional internal components are depicted too, along with some of the internal interactions
between these components. The RMI calls between the POS terminal and the POS server and the
internal synchronous calls between internal components are shown as solid lines and the more
prevalent asynchronous communications using the messaging system (JMS) are shown as broken lines.
25
Architectural Overview
26
Loading Data Into SAP Enterprise POS
There are eleven XML files that can be used to load data into a SAP Enterprise POS database: Eight of
these are for operational (or “master’) data while the remaining three are related to SAP Enterprise
POS configuration. This section describes how to load these data files into your SAP Enterprise POS
system.
Importing data into SAP Enterprise POSThe following steps describe the process of importing data using the message-based (JMS) import tool.
To load data into SAP Enterprise POS:
1. Create the data file in XML format for data import. Currently, the Data Import feature supports
data maintenance on the following entities:
Master Data
� Employee
� Department
� Item & Product Attributes
� Item Hierarchy
� Mix Match
� Site Parameter
� Promotion
� Validation
Configuration
� Hosted Sites
� Site/device Definition
� Configuration Profiles
2. Validate the XML file against the corresponding XML schema file (optional). We recommend that
you use an XML tool (such as XML Spy) to validate the input data file against its corresponding
XML schema (.xsd) before running the data import utility. This will ensure that the information
items conform to the schema declaration as specified in the .xsd file.
3. Start your SAP Enterprise POS application server.
4. Import data by using the data import utility. A sample command for Linux/WebSphere
deployment is as follows:
27
Loading Data Into SAP Enterprise POS
From the ~/Transactionware/Enterprise/3.0.X.X/bin/dataimport directory, enter:
sh dataimport.sh was EmployeeMaintenance.xml
EmployeeMaintenance.xml is a sample employee data file. To import other data files, substitute
EmployeeMaintenance.xml with the desired data filename.
Note: The ItemHierarchyMaintenance.xml data import file contains unique
keys required by ItemMaintenance.xml import. Therefore, it must be imported
prior to ItemMaintenance.xml import.
Master Data Import (MDI)
The Data Maintenance (DM) Controller
The DM Controller is a program, run on the Head Office (HO) server, which manages the process of
importing large amounts of operational data (also referred to as “Master Data”) into SAP Enterprise
POS. This import mechanism augments, rather than replaces, the pre-existing message-based import
supported in earlier versions of SAP Enterprise POS. The message-based import is limited to small
amounts of data (on the order of a few hundred records applied to a small number of stores) but allows
almost any subset of properties to be provided when performing an update. The DM Controller is
intended to efficiently support the importing of large quantities of data (on the order of hundreds of
thousands or millions of records across a large number of stores).
Both import mechanisms accept data provided in XML format that conforms to the SAP Enterprise
POS data import schemas. The DM Controller is limited to processing information for the following
data types:
� Departments
� Employees
� Hosted Sites
� Item Hierarchy
� Items
� MixMatch Pricing Rules
� Promotions
� Site Parameters
� Validation Data
When use of the DM Controller for data import is enabled (the default for a SAP Enterprise POS 3.0
deployment), Master Data is delivered to the store servers from the HO via DB replication. The
replication process is performed by a “data capture” process that is run at the HO paired with an
“apply” process that is run at each of the store servers. The basic topology is shown below:
The apply process is configured such that each store replicates only the subset of the Master Data at
HO that is applicable to that particular store.
Managing the DM Controller
The DM Controller can be started by opening a console and running a shell script located in SAP
Enterprise POS install directory/bin/MDI:
28
Master Data Import (MDI)
sh mdi.sh
For Windows systems, an equivalent batch file (mdi.bat) is provided to start the Controller.
If you started the controller as per the above, you can stop it by simply pressing Ctrl-C in the console
window.
Directories used by the DM Controller
The DM Controller uses a number of subdirectories to control its operation and to store its working
files. The location of these subdirectories is determined by the data.path property setting in
deployment.properties, either linux.data.path (for unix-like systems) or windows.data.path (for
Windows systems). The Controller-related subdirectories will be found under <TE data path>/mdi,
where <TE data path> is taken from the deployment setting.
Preparing an import
An “import set” is a collection of all of the files containing data that is to be imported into the HO
server in a single batch. There are 3 steps in preparing an import set for the submission:
Table 1:
Subdirectory Description
applog Contains log files which trace the operation of the DM Controller. These log
files are useful in monitoring the progress of an import operation and in diag-
nosing problems with the Controller. The logging parameters (file name pat-
tern, log detail level, etc.) are controlled by the logging.properties file found in
<TE install directory>/bin/MDI. By default, the log files are named accord-
ing to the pattern “log.txt.<N>”, where <N> is a file number (“0”, “1”, etc.)
commands This subdirectory is polled by the Controller to detect instruction files that
trigger the import process. See below for more details on the use of this direc-
tory
log Contains log files generated by a DB “fast loader” utility. The fast loader is
used to copy the import data into the database from the files originally deliv-
ered to the HO server.
results Contains result files containing summary information for a given import set.
Result files are generated in this directory once processing of an import set is
complete. The files are named according to the pattern
“BulkImportAck_<ID><_N>.xml”, where <ID> is the import set identifier
provided in the original instruction file and <_N> is an instance number
(“_1”, “_2”, etc.). The instance number is only added to file name if a collision
occurs with the name of a file already in the results directory. See below for
further details.
temp Contains temporary work files generated by the Controller. When the import
data is delivered in XML format, for example, the data is converted to CSV
(comma separated values) format files (as required by the DB fast loader util-
ity) in this directory
29
Loading Data Into SAP Enterprise POS
1. Create the XML files containing the operational data. Each file must conform to the schema
[I7]appropriate to the type of data it contains. There is no limit on the size of each such file, other
than available disk space. In cases where you want to have different data for different stores, you
may create multiple files for a given data type. For example, you could create Employee1.xml,
containing employee information for store 1 and Employee2.xml, with the information for store
2. Any number of files containing the same data type may be submitted as part of a single import
set.
2. Create an instruction (or “trigger”) file describing the entire import set. The file name is not
restricted in any way, only the contents. The contents of the instruction file must conform to the
BulkImportRequest schema (BulkImportRequest.xsd). An example instruction is shown below,
with descriptions of the various elements:
3) Deliver the XML data files to the HO system. The simplest way to do this is to copy them to a drive
local to the HO server. For instance, with the sample instruction file, above, the DM Controller would
expect to find the data files under the /var/importdata directory.
Running an import
Once the data and instruction files have been created and the data files have been made accessible from
the HO server, the import process can be started. To do this, simply copy the instruction file to the
commands subdirectory (described under “Directories Used by the DM Controller”). For example,
assuming an instruction file name of loadAll.xml and a data path of /var/sap-te, the command would
be:
30
Master Data Import (MDI)
cp loadAll.xml /var/sap-te/mdi/commands
When the DM Controller next polls the command subdirectory, it will attempt to read any files it finds
there and interpret them as import instructions. Once the command has been read, the instruction file
will be deleted. This is one indication that processing of the import has begun.
If you started the Controller in a console window, it will output messages to that console as it processes
the import set. If the Controller was run as a background process, you can tail the application log file
(the default file being /var/sap-te/mdi/lapplog/log.txt.0) to view the output. In either case, the level of
detail displayed will depend on the logging level set in the logging.properties file described earlier.
When processing of the import set is complete, a result summary file will be placed in the results
directory. A sample of the results file contents for a successful import is shown below:
31
Loading Data Into SAP Enterprise POS
For a partially successful import, where some non-critical errors were encountered while processing
the import, the result file contents will be like the example below (only the differences are highlighted):
For an import that was not even partially successful (that is a critical error occurred, such as the DB
fast loader failing), the result file contents will be like the example below:
Brief overview of DM Controller processing steps
Processing of an import set by the DM Controller proceeds through 6 basic steps:
1. Conversion of XML files to CSV format
32
Master Data Import (MDI)
Since the DB fast loader operates on CSV (comma separated value) files, the XML files provided as
input must first be converted to the equivalent CSV format. These generated CSV files are stored in
the temp subdirectory. It is possible to submit CSV files directly to the Controller and, thus, avoid this
step. However, whereas the CSV format is closely tied to the internal structure of the SAP Enterprise
POS database (and may change in the future), the XML format is designed to be backwards compatible
across future revisions of SAP Enterprise POS.
2. Fast load to staging tables
The DB fast loader is invoked to load the contents of the CSV files into “staging tables”. These tables
closely mimic the structure of the “live” operational tables used by SAP Enterprise POS but the data
they contain is not used by any of the other SAP Enterprise POS applications (POS, POS Manager,
etc.). These tables act as a work area inside the DB where the data can be validated and prepared for
use.
3. Prepare staged data
In this step, the data in the staging tables is prepared for use by verifying that all required fields have
been provided and by resolving any of the fields that contain data that is internal to the SAP Enterprise
POS schema (such as key fields used only internally by the DB). Once a record has successfully been
prepared, there should be no reason that it cannot be copied to the operational tables. Records that are
not successfully prepared are marked as “bad” and will not be copied.
4. Move to operational tables
Having completed the preparation step, all records from a staging table that are marked “OK” are
copied to the equivalent operational table. If a record cannot be copied, it will be marked as “bad”.
5. Archive error records
Any records marked as “bad” are copied to error archive tables. These tables can later be queried to
identify the operational data entities (i.e. the exact item, employee, etc.) that failed to be properly
inserted or updated.
6. Clean staging tables
The staging tables are emptied in preparation for processing the next import set.
Managing The Replication Processes
TE provides some scripts to facilitate the management of the DB replication processes used to copy
data from the HO to store servers. The script replication.sh can be found in the <TE install dir>/bin
subdirectory. The script should be run as the db2inst1 user.
To check the status of the replication services use:
sh replication.sh status
If the replic.services are running, you will see a list of threads in the replication processes and their
states.
33
Loading Data Into SAP Enterprise POS
If the replication services are not running you will see a message such as; “presumed down”.
34
Master Data Import (MDI)
To stop the replication services use:
sh replication.sh stop.
To start the replication service on the HO server, start a new shell and use:
sh replication.sh StartCaptureMDI.
Log files for the replication process can be found under <TE data path>/db2/apply and /or <TE
data path>/db2 capture. The interpretation of these log files is DB specific and you should refer to the
appropriate documentation from the DB provider for further information.
35
Loading Data Into SAP Enterprise POS
36
Simulation Capabilities
The POS client simulatorThis section describes the POS client simulator application.
Topics in this section include:
� “Configuration and setup” on page 38
� “The POS client simulator engine” on page 40
� “Using client script recording” on page 40
� “Using the simulator engine” on page 40
� “Using the simulator engine” on page 40
� “EFT transactions in training mode” on page 41
The POS client simulator (PCS) is a testing tool used to test the POS application. The simulator
application is essential for the stress load testing of the POS, as well as the entire SAP Enterprise POS
product which simulates a high load of simultaneous business transactions at the POS clients.
The POS client performance and workflow is not affected in any way while running simulations or
during regular POS operation.
The PCS has the ability to simulate any number of POS client connections performing typical POS
business requests. This also includes the ability to map these simulated clients to multiple sites. It
provides ease and flexibility in setting up the sequence of business requests that needed to be run
during simulation. This also includes the flexibility to set up different request sequence scenarios by
each simulated client.
With this tool you can easily and inexpensively adapt to the code base changes of the POS application
and SAP Enterprise POS framework. In addition, you also have the ability to dynamically collect
different types of simulation statistics and performance metrics during testing and output as a
simulation Results report.
37
Simulation Capabilities
Configuration and setup
PCS configuration and setup consists of two main steps:
� Prerecording of the various client scripts that will be used by simulated clients to imitate business
activity while running the simulator.
� Creating a simulation plan (scenario) that outlines the simulated clients and their corresponding
simulation parameters.
Once both of the configuration steps are complete, the POS Client Simulator engine is used to
perform the actual simulation based on a specified simulation plan, to gather the performance metrics
and to output them as result statistics.
Recording client scripts
A client script is a file that contains a sequence of POS client service requests, such as specific data and
parameters. The number of client scripts needed for simulation can vary anywhere from the total
number of simulated clients which is unlikely, to just one script shared by all clients during simulations.
Client scripts are recorded during normal operation of a regular POS client application by switching
into record mode. When the regular POS client is put in record mode, every business request (in the
binary format) going out to the server gets recorded to the script file.
To record the script files:
1. Run the standard register application and put it in record mode.
2. Ring the transactions that you want in your script.
3. Turn the record mode off when you are done.
The simulation plan can be configured in such a way that the script file be executed more than once for
each simulated client. For example, they can be put in an infinite loop. The script file should represent
a complete business sequence of service requests, such as Logon, Sale, Pickup and Logoff. When the
PCS is used for other tasks, (developer convenience tool, special type of testing, demonstration and so
on) the script files can contain any sequence of business requests, regardless of whether it is business
complete, that makes sense for a given testing scenario.
When a script is recorded, the timing is also saved. This enables the use of natural delays which means
that on script playback, the time intervals that actually occurred in between each recorded request are
used to simulate how long before the next request is executed. This can be used to precisely emulate a
specific business scenario of the actual cashier activity timings.
Configuring a simulation plan
The simulation plan is an XML configuration document that defines an actual simulation scenario for a
given simulation. A simulation plan configures the following parameters:
� Simulated POS sites. These sites are described by specifying valid ID’s of existing POS sites for
a given store chain set up in the Configurator.
� Simulated POS clients and their mapping to the simulated sites. These clients are defined by
specifying valid ID’s of existing clients for a given site (set up in the Configurator). These clients
should also have the appropriate application profile setup for them in the Configurator. To
facilitate the ease of setting up the simulations with a large number of clients, the client ID does
not have to represent a specific client but it can also be used to specify a group of clients that will
share the same simulation parameters. In that case, a client ID can be specified in the plan based
on this general pattern used for defining a group of clients:
38
The POS client simulator
<client id | sequence>, <client id | sequence>, …
where <client id | sequence> is either a specific client ID or client ID sequence defined as:
<client id 1> -<client id 2>
where <client id X> is a specific client ID in a numerical integer form. That tells the simulator
engine to create a group of simulated clients with ID’s that have a numerical integer value range
between <client id 1> and <client id 2> inclusively.
The following are some examples of specifying client ID’s to define a single client or a group of clients:
<client-id>1,2,3</client-id> - simulate three clients with ID’s '1', '2' and '3'.
<client-id>1-5,11,13,20-25</client-id> - simulate 13 clients with ID’s '1', '2', '3', '4', '5', '11', '13',
'20', '21', '22', '23', '24', '25'.
<client-id>LANE1</client-id> - simulate just one client with ID'LANE1'.
� File name of the script to use for each of the simulated clients. Scripts can be shared between
different client simulations so each client does not have a unique client script. The script file name
should be a fully qualified name that makes scripts accessible for lookup from the PCS execution
location.
� Total number of runs for each simulated client. This is the number of times that the script file
should be played back for each client.
� Execute a warm-up run (specified for each simulated client). A warm-up run is a single run
of a script file playback that is performed at the beginning of a simulation for the clients that
requested it. The performance metrics are not gathered during a warm-up run and therefore it
does not affect the end result statistics. A warm-up run is used to let the simulator preload all of
the resources potentially required during simulation, for example class loading process and logger
category instantiations, that usually happen only once (per VM lifetime) and therefore it is not
desirable for them to affect the aggregated result performance metrics.
� In between requests delay. This delay is a time interval (expressed in milliseconds) during which
a client simulation thread should sleep before executing the next service requests from the script
file during simulation. This delay can be used to emulate a real life scenario (natural delay) or an
average time interval of having some idle time in between various business activity happening at
the POS terminal. The value of "-1" indicates to use natural delays, any other positive value
indicates the average delay in milliseconds.
� In between runs delay. This delay is a time delay (expressed in milliseconds) during which a
client simulation thread should sleep before it starts replaying the next run (if more than one run is
specified in simulation). This delay is also used as a base maximum value of random offset delay
on initial start of each client simulation thread. Therefore, all client threads start playback of
scripts at some random time as opposed to start simultaneously. For example, if a run delay of
500ms is used, then each client simulator will wait 500ms after finishing each run and before
starting the next one. Also, each of them will initially start at a different random time, but within
500ms of each other.
39
Simulation Capabilities
The POS client simulator engine
The PCS engine performs an actual simulation given a specific simulation plan and a set of scripts used
by that plan. The PCS engine is run as a standalone Java program that takes the file name of a
simulation plan XML document as a parameter. It parses the simulation plan XML to determine how
many sites and clients have to be emulated and what their simulation parameters are. The engine starts
a separate simulation thread for each client specified in the plan. Each client simulation thread parses
the script file to be used for the current client simulation and then consecutively executes each service
request in the script and keeps replaying the script for the total number of runs specified for this client.
Since the script files are recorded when a regular POS client is run for some arbitrary site and client,
the simulator takes each recorded request and "overstamps" the original (surrogate) site and client ID’s
in it, with the site and client ID’s associated with this client simulation thread.
Each client thread collects performance metrics for all executed requests and aggregates them over the
full series of simulation runs.
The PCS engine waits for all client threads to finish their respective simulation runs, requests their
result metrics, aggregates them and outputs the final results.
Using client script recording
Two classes (com.triversity.transactionware.framework.client.swingapp.InputManager and
com.triversity.transactionware.framework.presentation.mediator.messageadapter.AWCMessageMediato
r) provide the client script record functionality in the current POS client application - "POS client
swing app".
To record a script:
1. Start the register and initiate a business state to represent a desired starting point for script
recording.
2. Type RECORDON<script_file_name>. For example, RECORDONSCRIPT1.DAT
The register enters Record mode and therefore every service request that goes out to the server is
recorded into the script file (accumulatively). To indicate Record mode, the background color of
the main data entry area changes color.
To turn off record mode:
� Type RECORDOFF. The script file is now recorded and ready to be used in a simulation.
Using the simulator engine
The simulator engine is a standalone console application.
To run the POS client simulator:
� Execute the STARTPOS.BAT or STARTPOSWAS.BAT or STARTPOS.SH or
STARTPOSWAS.SH with a -simulator flag and the path to the simulation plan XML file as
parameters.
The batch files are located in the install directory\posclient directory. This file takes a single
parameter that is a fully qualified name of the simulator plan XML document. Ensure that the
script files referenced by the simulator plan XML are accessible from the PCS run location. The
final results and run information are output to the console.
40
EFT transactions in training mode
Changing input parameters
You can change the user ID and password. The alternate user ID and password is specified by adding
the (optional) substitution parameters tag and contained parameter tags to the simulator.xml file
specified on the command line used to run the simulator. Note that this allows any String parameter to
be substituted, but exercise caution because it will be substituted in all requests that include the prompt
identified by the ID attribute. The value of the ID attribute must be the data type (value, not the
constant name) and the data type must always be associated with a String parameter (not a Money,
Integer, or other type).
EFT transactions in training modeElectronic Fund Transfer (EFT) requests made while in training mode are handled by the EFT
Manager based on the last digit of the transaction total. Note that training mode transactions are not
added into the sales records.
For EFT requests that end with a 1 (timeout response), the behavior of the EFT Manager depends on
the transaction amount. If the amount is below the offline floor limit (Manual Authorization Limit set
in the Configurator), the POS automatically approves the transaction. If the amount is greater than the
floor limit, the POS prompts for an authorization number. For example:
� if the last digit = 1, (1.01, timeout response), authorization is required
� if the last digit = 2, the transaction is approved with signature verification
� if the last digit = 3, the transaction is declined
� for all others (0, 4, 5, 6, 7, 8, 9) the transaction is approved
Training mode transactions appear in the electronic journal with a .T on the end. For example, terminal
ID 7 in training mode appears as 7.T.
41
Simulation Capabilities
42
This section describes the files related to the import/export functionality within the Data Import
Utility. Topics in this section include:
� “Exporting and importing application profiles” on page 43
You can now export all SAP Enterprise POS configuration data, archive it and import it into the same
database or another Configurator database, thus allowing you to back up configuration profiles and
organization hierarchies and move configurations from one machine to another, independent of the
Application Server or Database Management System being used. This is accomplished through the
Data Import Utility by supplying an xml file that describes the data to be imported or exported.
The following list is an example of some XML files:
� Configexportsample.xml
� ConfigurationProfileMaintenanceAck.xml
� ConfigurationProfileMaintenance.xml
� OrganizationHierarchyMaintenanceAck.xml
� OrganizationHierarchyMaintenance.xml
Exporting and importing application profilesIf you are using a Unix or Linux operating system, the following export/import commands must be
prefaced with sh. For example, sh dataimport.sh was5 configexportsample.xml
-save:myprofileexport.xml.
To export an application profile:
1. Save the configexportsample.xml to the bin\dataimport directory and edit it to specify the
application profile name (for example POS1), the version of the application profile that you want
to export and the application name (for example, POS or POSMANAGER).
2. Run the following, in the bin/dataimport directory, to create a myprofileexport.xml. file.
dataimport.sh was5 configexportsample.xml -save:myprofileexportack.xml
Where myprofileexportack.xml is the name of the file that will contain the exported data once the
program has completed.
43
Configuration and Hierarchy Import/Export
To import an application profile:
1. Run the following, at the command line prompt, to create a myprofileimport.xml.
ConvertAckToRequest.sh was5 myprofileexportack.xml myprofileimport.xml [-version:N]
Where myprofileimportack.xml is the name of the file that will contain the imported data once the
program has completed. The version is optional.
2. Import the application profile which will create a new version of the application profile. For
example, if POS1 version 5 already exists, version 6 will be created. Note that it is optional to save
the import file into an ack file.
dataimport.sh was5 myprofileimport.xml [-save:importmyprofileack.xml]
44
Troubleshooting
This section has information on Japanese language support and SAP Enterprise POS time zone
behavior.
Topics in this section include:
� “Literal.properties file conversion to Unicode (Japanese language support)” on page 45
� “Time zone behavior” on page 46
Literal.properties file conversion to Unicode (Japanese language support)
If you need to show POS error messages with Japanese characters instead of English, you must convert
the POS client literal.properties file to Unicode and then select Japanese language support for your
platform. You must have your own Unicode file. As described in the SAP Enterprise POS Installation
Guide, during your installation you will have set your environment for the JAVA_HOME directory
variable to download JDK. This installation step is necessary in order for this procedure to be
successful. The Japanese character setup for menus and prompts is performed in the SAP Enterprise
POS Configurator application.
Note: This procedure has been tested and tailored towards the Japanese language on a Windows-based
system and can be used as a guideline for other languages and platforms.
Converting a literal.properties file to Unicode
After you install SAP Enterprise POS, including setting your environment for the JAVA_HOME
directory variable to download JDK, you can perform this procedure.
To convert the literal.properties file:
1. Verify the version of the Java Developer’s Kit that SAP supports and then download and install
JDK. It will be JDK 1.3.1_06 or later.
Note: The Java Virtual Machine (JVM) alone is not sufficient.
2. In the POS client config directory, find the literal.properties file.
3. Open the literal.properties file in Microsoft Word or another text editor that supports the Japanese
character set.
4. Copy your Japanese text from your Unicode file into the literal.properties file.
5. Save the document as literal.properties.jap in a Unicode UTF8 format.
45
Troubleshooting
6. Find where the program native2ascii.exe is installed. Typically, it is located in
%JAVA_HOME%\bin
7. Start command prompt and go to the directory where native2ascii.exe is.
8. To run the program, type this syntax construction: native2ascii -encoding UTF8 “input file”
“output file”. For example:
native2ascii -encoding UTF8 literal.properties literal.properties.jap
9. Set your system to support the Japanese language:
� Click Start >Settings>Control Panel
� Double-click Regional Options
� In the Language settings for the system box, click Japanese.
Time zone behaviorThere may be inconsistent handling of time zone offsets associated with particular deployment
configurations of SAP Enterprise POS, however there is minimal impact for the majority of SAP
Enterprise POS usage patterns.
The following scenarios can result in inconsistent treatment of time zone differences:
The primary deployment scenario in which time zone handling issues arise, is with tiered deployment
and centralized POS Manager processing when the store and Head Office (HO) are in different time
zones.
In this configuration it is possible with input/display that an inconsistent time, that is in an apparently
different time zone to the user than the store’s location, when using POS Manager. This is due to the
POS Manager using the HO locale instead of the store locale for formatting and parsing times. As an
example, financial operations may be recorded in the correct times (for example, HO locale rather than
store locale) for operations such as till/safe balancing, open/close store or terminal and so forth. Also
times associated with reports may be inconsistent if not being converted to the browser's, (store
locale), time zone. Note that this assumes absolute time is recorded with data, which is not currently
supported, so this is restricted only to the failed-over POS client scenario.
During store POS fail-over to HO, times will be recorded in transactions with the local time of the HO,
not the originating store. The SAC and totals can also be affected.
It is important to fully specify the interpretation of the meaning of times such as the Configurator
deployment time and promotion start/end times. Some times can be treated as absolute, but others
should be interpreted in the store's time zone. An example of where using the store's time-zone is
logical is a nation-wide promotion that specifies that the promotion ends at noon in every time zone.
This avoids having to send multiple versions of the same promotion to adjust the time for stores in
different time zones, but this usage should be specified explicitly.
Elements that would benefit from absolute versus local times are as follows:
� Promotions and mix-match start/end times
� Configuration activation time
� Database purge
� Store auto close
� Date eligibility (UDFs, items, discounts)
Currently the Tlogs record local time at the store. This may create problems when data is collected
from stores distributed over many time zones when a properly time normalized data trend is required.
46
Time zone behavior
Data storage/synchronization/transmission that does not include time zone information with stored
times, or an explicit indication that the time should be treated as the store local time, could be
misinterpreted.
Examples of these types of operations are as follow:
� database replication
� data import forwarding
� external system interactions.
47
Troubleshooting
48
About The XML TLog Files
This section describes the transaction log XML files.
Topics in this section include:
� “Understanding the XML transaction log files” on page 50
� “The XML tags and related TLog elements” on page 54
� “About the End of Day Notification XML files” on page 56
� “Transaction log XML tags” on page 57
� “XML for specific transaction types” on page 96
� “Validating the XML TLog” on page 97
� “Transaction log schemas” on page 97
Note: Be aware that the TLog files are inextricably linked to the settings input in the Configurator user
interface. Because the Configurator settings determine the type and format of all transactions and data
flow at the POS terminal, they also affect the output from the terminals (or registers) into the resultant
transaction logs. As such, any change you make to a Configurator setting can affect the layout and
content output into the XML TLogs.
The following is a list of the different schema files, what they represent and how they relate to each
other:
� POSLogIxRetailNamespace.xsd: This schema collects all of the IX Retail Based schemas
under one. This allows a single schema to be associated with the IX Retail namespace for use by
XML validators, for example Xerces.
� POSLogTENamespace.xsd: This schema collects all of the SAP TLog schemas under one. This
allows a single schema to be associated with the namespace for use by XML validators, for
example Xerces.
� POSLog.xsd: This schema defines the root tag and message structure of the TLog message.
� POSLogTransaction_Extensible.xsd: This schema defines the basic transaction tag type and
common tag types. The transaction tag is referenced by the POSLog.xsd schema.
� POSLogRetailTransaction_Extensible.xsd: This schema defines the basic retail transaction
structure for transactions like sales, returns and so on. The retail transaction is an extension of the
basic transaction defined in POSLogTransaction_Extensible.xsd.
� POSLogRetailTransactionStockView_Extensible.xsd: This schema defines a specific view of
the retail transaction defined in the POSLogRetailTransaction_Extensible.xsd schema. SAP
Enterprise POS uses this schema to represent retail transactions.
� POSLogControlTransaction_Extensible.xsd: This schema defines the structure for control
transactions, such as no sale, receipt reprints, lock/unlock terminal session, cashier sign-on/off,
49
About The XML TLog Files
open/close terminal and open/close store. The control transaction is an extension of the basic
transaction defined in POSLogTransaction_Extensible.xsd.
� POSLogTenderControlTransaction_Extensible.xsd: This schema defines the structure for
tender control transactions, such as pickups/loans, deposits/withdrawals, paid-in/out and till and
safe balances and adjustments. The tender control transaction is an extension of the basic
transaction defined in POSLogTransaction_Extensible.xsd.
� POSLogAdministrataiveTransaction_Extensible.xsd: This schema defines the structure for
administrative transactions, such as employee and other data maintenance changes. The tender
control transaction is an extension of the basic transaction defined in
POSLogTransaction_Extensible.xsd.
� TriversityPOSLogRetailTransactionStockView_Extensions.xsd: This schema defines some
of the SAP specific extensions to the IX Retail TLog schemas. The tags and tag types defined in
this schema are primarily oriented to SAP Enterprise POS internals (native transaction and line
details); they are not recommended for use by external systems since they are subject to change.
Understanding the XML transaction log filesThis section describes the transaction log (TLog) XML file generated by the Point of Sale application
and outlines the data formats used. The XML TLog complies to the industry standard IXRetail XML
guidelines.
We have provided a sample TLog output from a series of POS actions to explain some of the IXRetail
standard POS log elements and the POS functions represented by those elements. Some suggestions
on how to validate the TLog against an IXRetail standard schema are also given.
This sample TLog was produced by performing the following transaction steps at a SAP Enterprise
POS terminal:
� A regular item sale, with a quantity of three
� A price override on an item sale, with the price adjusted from $11.11 to $5.00
� An item sale with an automatic discount (as configured in the SAP Enterprise POS Configurator
price rule settings)
� A manual item discount
� The selection and collection of a tender
� The return of change from the tender collected
Following the sample TLog, we have provided a table explaining the XML tags used.
50
Understanding the XML transaction log files
Sample transaction log XML output — an example and analysis
<?XML version="1.0" encoding="UTF-8"?>
The XML schema for this XML instance follows element structure of the IXRetail POSLogRetailTransaction.xsd. However, due to questions on the standard way to extend IXRetail schemas, the XML instances are not validated against the POSLogRetailTransaction.xsd schema by removing XML namespace related attributes from the root element "POSLog" and "xsi:type" attribute from the first child element "Transaction". The element "ActualSalesUnitPrice" is mandatory in schema PosLogRetailTransactionStockView.xsd, but not in the POSLogRetailTransaction schema. This element is not included in this version of XML instance. It will be added in the future.
<POSLog xmlns:fo="http://www.w3.org/1999/XSL/Format">
<Transaction>
<RetailStoreID>1</RetailStoreID>
<WorkstationID>1</WorkstationID>
<SequenceNumber>3</SequenceNumber>
<EndDateTime>2002-09-28T03:15:18</EndDateTime>
<OperatorID>1111</OperatorID>
<LineItem>
<SequenceNumber>1</SequenceNumber>
<EndDateTime>2002-09-28T03:13:30</EndDateTime>
<Sale ItemType="Stock">
<POSIdentity>
<POSItemID>1111</POSItemID>
</POSIdentity>
<MerchandiseHierarchy Level="Department">111</MerchandiseHierarchy>
<Description>Chair</Description>
<RegularSalesUnitPrice>11.11</RegularSalesUnitPrice>
<ExtendedAmount>33.33</ExtendedAmount>
<Quantity>3</Quantity>
<Tax>
<AuthorityID/>
<RuleID/>
<TaxGroupID>STCO</TaxGroupID>
<TaxableAmount/>
<Amount/>
</Tax>
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>3</SequenceNumber>
<EndDateTime>2002-09-28T03:13:54</EndDateTime>
<Sale ItemType="Stock">
<POSIdentity>
<POSItemID>1111</POSItemID>
</POSIdentity>
<MerchandiseHierarchy Level="Department">111</MerchandiseHierarchy>
<Description>Chair</Description>
<RegularSalesUnitPrice>11.11</RegularSalesUnitPrice>
51
About The XML TLog Files
<ExtendedAmount>11.11</ExtendedAmount>
<Quantity>1</Quantity>
<RetailPriceModifier MethodCode="PriceOverride">
<SequenceNumber>1</SequenceNumber>
<Amount Action="Subtract">6.11</Amount>
<PreviousPrice/>
</RetailPriceModifier>
<Tax>
<AuthorityID/>
<RuleID/>
<TaxGroupID>STCO</TaxGroupID>
<TaxableAmount/>
<Amount/>
</Tax>
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>5</SequenceNumber>
<EndDateTime>2002-09-28T03:14:26</EndDateTime>
<Sale ItemType="Stock">
<POSIdentity>
<POSItemID>3333</POSItemID>
</POSIdentity>
<MerchandiseHierarchy Level="Department">333</MerchandiseHierarchy>
<Description>Book</Description>
<RegularSalesUnitPrice>33.33</RegularSalesUnitPrice>
<ExtendedAmount>33.33</ExtendedAmount>
<Quantity>1</Quantity>
<RetailPriceModifier MethodCode="PriceRule">
<SequenceNumber>1</SequenceNumber>
<Amount Action="Subtract">1.67</Amount>
<PreviousPrice/>
</RetailPriceModifier>
<Tax>
<AuthorityID/>
<RuleID/>
<TaxGroupID>STCO</TaxGroupID>
<TaxableAmount/>
<Amount/>
</Tax>
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>7</SequenceNumber>
<EndDateTime>2002-09-28T03:14:49</EndDateTime>
<Sale ItemType="Stock">
<POSIdentity>
<POSItemID>2222</POSItemID>
</POSIdentity>
52
Understanding the XML transaction log files
<MerchandiseHierarchy Level="Department">222</MerchandiseHierarchy>
<Description>Tie</Description>
<RegularSalesUnitPrice>22.22</RegularSalesUnitPrice>
<ExtendedAmount>22.22</ExtendedAmount>
<Quantity>1</Quantity>
<RetailPriceModifier MethodCode="PriceRule">
<SequenceNumber>1</SequenceNumber>
<Amount Action="Subtract">1.33</Amount>
<PreviousPrice/>
</RetailPriceModifier>
<Tax>
<AuthorityID/>
<RuleID/>
<TaxGroupID>STCO</TaxGroupID>
<TaxableAmount/>
<Amount/>
</Tax>
</Sale>
</LineItem>
<LineItem>
<SequenceNumber>8</SequenceNumber>
<EndDateTime>2002-09-28T03:14:56</EndDateTime>
</LineItem>
<LineItem>
<SequenceNumber>10</SequenceNumber>
<EndDateTime>2002-09-28T03:15:15</EndDateTime>
<Tender>
<TenderID>Cash</TenderID>
<Amount>80.00</Amount>
</Tender>
</LineItem>
<LineItem>
<SequenceNumber>11</SequenceNumber>
<EndDateTime>2002-09-28T03:15:15</EndDateTime>
<TenderChange>
<Amount>18.52</Amount>
</TenderChange>
</LineItem>
<LineItem>
<SequenceNumber>12</SequenceNumber>
<EndDateTime>2002-09-28T03:15:15</EndDateTime>
<Tax>
<AuthorityID>ST</AuthorityID>
<RuleID/>
<TaxGroupID/>
<TaxableAmount/>
<Amount>1.76</Amount>
</Tax>
</LineItem>
53
About The XML TLog Files
<LineItem>
<SequenceNumber>13</SequenceNumber>
<EndDateTime>2002-09-28T03:15:15</EndDateTime>
<Tax>
<AuthorityID>CO</AuthorityID>
<RuleID/>
<TaxGroupID/>
<TaxableAmount/>
<Amount>1.17</Amount>
</Tax>
</LineItem>
<Total TotalType="TransactionNettAmount">
<Amount>58.55</Amount>
</Total>
<Total TotalType="TransactionGrossAmount">
<Amount>61.48</Amount>
</Total>
</Transaction>
</POSLog>
The XML tags and related TLog elements
This table describes the XML tags that reflect the actions performed for the preceding sample data.
The information is organized by order of line item sequence numbers.
XML tag Transaction log element
RetailStoreID Store identification code or number
WorkstationID Terminal identification code or number
SequenceNumber (of Transaction element) A number that uniquely identifies a transaction during the
business day
OperatorID Cashier identification code or number
LineItem An element that captures an action
SequenceNumber (of LineItem element) A number that uniquely identifies an action which occurred
during a transaction
Sale ItemType as “Stock” The item sold is a stock item off the shelf
POSItemID Item PLU key
Description Item description
RegularSalesUnitPrice Regular sales price for the item
ActuralSalesUnitPrice Actual sales price for the item. It can be adjusted from the
RegularSalesUnitPrice by actions such as PriceOverride,
Discount and so forth.
ExtendedAmount The total value that is the ActualSalesUnitPrice multiplied
by quantity of item. Currently, it is calculated as the
RegularSalesUnitPrice multiplied by quantity of item. This
will be adjusted
54
Understanding the XML transaction log files
XML interpretation of the POS activities
By examining the above XML TLog, we can see the sequence of steps in the transactions that occurred
in Store 1, Terminal 1, as entered by Cashier 1111. Each LineItem element in the XML TLog is
examined here:
� LineItem with SequnceNumber 1 — A regular stock item sale of item 1111, with a quantity of 3.
The sales price is $11.11.
� LineItem with SequnceNumber 3 — A stock item sale of item 1111, with a quantity of 1. The
regular sale price is $11.11. but this price has been override by an actual price of $5.00. So the price
is deducted by the amount of $6.11.
� LineItem with SequnceNumber 5 — A stock item sale of item 3333, with a discount of $1.67.
� LineItem with SequnceNumber 7 — A price discount of $1.33.
� LineItem with SequnceNumber 8 — See section below on "LineItem element with only a
SequenceNumber element and an EndDateTime element".
Quantity Quantity of items sold
RetailPriceModifier This element encapsulates the consequences of actions
causing a price change
RetailPriceModifier MethodCode= “PriceRule” This code indicates that a pre-configured item price
deduction has occurred. It could be triggered automatically,
or manually by performing an Item Discount action
RetailPrcieModifier MethodCode =
“PriceOverride”
This code indicates that the cashier has performed a price
override. This action is performed for reasons such as
matching competitor pricing, pricing damaged goods,
discounting out of season items and so forth
Amount Action Subtract — This indicates that the item price should be
calculated as the RegularSalesUnitPrice subtracted by the
amount recorded in the Amount element of the
RetailPriceModifier
Add — The calculation is an addition
Tender This element captures tendering actions. In one transaction,
there can be more than one tender element if there are more
than one tendering action
TenderID The type of tender; for example, cash, MasterCard, Visa and
so forth
Amount (of Tender element) The amount tendered by the tender type
TenderChange The element that captures the “giving change” action if the
tendered amount is larger than the total due
Amount (of TenderChange element) The amount of change given back to the customer
Total The element that captures various totals
Total TotalType= “TransactionnetAmount” The total net sale. Taxes are not included
Total TotalType= “TransactionGrossSmount” The total of the sale, including taxes
XML tag Transaction log element
55
About The XML TLog Files
� LineItem with SequnceNumber 10 — A tender action. The tender type is Cash. The amount of
Cash tendered is $80.00.
� LineItem with SequnceNumber 12, 13 — Two different taxes were charged for this transaction.
� Total with a TotalType of TransactionNettAmount — The total net sale of this transaction is
$58.55.
� Total with a TotalType of TransactionGrossAmount — the total sale including taxes is $61.48.
Missing sequence numbers
The XML TLog produces LineItem elements with sequential, but not necessarily continuous,
SequenceNumbers elements. For example, in the sample provided there are no line items having the
sequence numbers 2, 4, 6, or 9. This can occur for a variety of reasons:
� The line data may have been incorporated with some additional line data. For example, when there
is a price change, the price modification information is incorporated into the item sale line
information.
� Some native SAP Enterprise POS TLog data has not yet been mapped into the IXRetail standard
element format.
� Some native SAP Enterprise POS TLog data is not meant to be mapped into the IXRetail
standard element format.
� Some functions in the Transaction Enterprise POS are not yet covered by the IXRetail standard
schemas.
LineItem elements having only SequenceNumber and EndDateTime elements
Occasionally a line element will appear with only the SequenceNumber and EndDateTime
sub-elements. This generally occurs for SAP Enterprise POS functions that have not yet been
translated into IXRetail standard elements. These elements will be eliminated when the live TLog XML
data is validated against the IXRetail standard POS Log schema.
About the End of Day Notification XML filesThe end of day notification files are unsolicited output files used to notify external systems that the end
of day processing has been done for a store.
Note: The RetailStoreID is a combination of the organization ID and the store ID separated by a
period. For example, “Triversity.1”.
End of Day Notification schema
The end of day notification files are defined by an .XSD schema. The schema defines the tag formats
to be used in the import .XML files, as well as the options and delimitations for each tag element.
Because this is an .XML based system, the tags are intuitively named, so that most of the information
required is easily understood based on the name of the tag, the names of the available options and your
understanding of the retail industry.
A single schema is used to represent the end of day notification file function:
� The EndOfDayNotification.xsd schema contains the tags and options for all of the end of day
notification input data.
56
About the End of Day Notification XML files
Transaction log XML tags
The following table lists the common tags used in the TLog output files, together with notes about
their relative structure and usage. The tags are presented in alphabetical order to make them easier to
reference and major section or functional tags are bolded. To get a better idea of tag hierarchy, please
see the sections “XML for specific transaction types” on page 96 and “Transaction log schemas” on
page 97.
Tag and structure Use Attributes Options
<AbandonedFlag> This tag indicates that the
transaction has been lost
due to failover and it does
not affect finances,
movement or anything
else.
true or false
<AccountFirstName>
Contained within a
specific <AccountInfo>
section
<AccountID>
Contained within
<Tender> tag section
<AccountInfo>
Contained within
<Tender> tag section
<AccountLastName>
Contained within a
specific <AccountInfo>
section
<AccountMiddleName>
Contained within a
specific <AccountInfo>
section
<AccountName>
Contained within a
specific <AccountInfo>
section
<AccountNumber>
Contained within various
sections such as
<Layaway>,
<BackOrderForDelivery
> or a <LineItem>
section
57
About The XML TLog Files
<Action>
Contained within a
<Associate> section
<ActualSalesUnitPrice>
Contained within various
sections, such as
<SalesForDelivery>,
<SalesForPickUp> etc.
The actual price at which
the item sold.
Quantity (optional) —
Identifies the quantity of
the item; for example, if
this is a “3 for $5.99” type
of sale.
Numeric, with decimals
allowed.
Example:
<ActualSalesUnitPrice>2
2.22</
ActualSalesUnitPrice>
<Address>
Contained within a
specific <AccountInfo>
section
<Address1>
Contained within a
specific transaction or
record update section
(such as within an
<EmployeeMaintenance
> tag section).
Provides the primary
address for the person
identified in this
transaction.
The street address.
Example:
<Address1>123 Anyplace
Street</Address1>
<Address2>
Contained within a
specific transaction or
record update section
(such as within an
<EmployeeMaintenance
> tag section).
Provides the secondary
address for the person
identified in this
transaction.
<AddressLine>
Contained within
<Address> section of
<Customer>
<Adjustment>
Contained within
<LineItem> section
Tender control
transaction adjustment
information.
<Amount>
Contained within a
specific transaction
section, such as
<Tender>,
<TenderChange>,
<RetailPriceModifier>,
<Tax>, <Deposit>,
<Loan>, <Pickup>,
<Total> and so forth.
Identifies the amount of
the given tender involved
in this part of the
transaction. (For example,
the amount of tender
used for payment, or as
change).
This sub-tag is used with
a wide variety of tags
throughout the TLog
files.
Action (optional) — The
action performed on this
amount. Options include:
“Add” and “Subtract”.
Numeric, with decimals
allowed. May be positive
or negative.
Example:
<Amount>11.66</
Amount>
Tag and structure Use Attributes Options
58
About the End of Day Notification XML files
<AmountToCollect>
Contained within a
<Delivery> tag section of
a transaction.
Decimal amount to be
collected.
<ApprovalCode>
Contained within a
<Authorization> tag
section
<ApprovedAmount>
Contained within a
<Authorization> tag
section
<ApproverID>
Contained within a
<OperatorBypassApprov
al> tag section
<Associate>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
Identifies the associate or
salesperson who
performed the customer
sale for this transaction or
part of the transaction.
For example, if a
particular associate is to
get credit for part of the
sale, such as a special
department sale or
commission sale.
Used with the
<AssociateID> sub-tag
to identify the particular
associate involved.
Example:
<Associate>
<AssociateID>1111<
/AssociateID>
</Associate>
<AssociateID>
Contained within an
<Associate> tag section.
The associate’s
identification code
(alphanumeric).
Example:
<AssociateID>1111</
AssociateID>
Tag and structure Use Attributes Options
59
About The XML TLog Files
<AuthorityID>
Contained within a
specific <Tax> section.
Identifies the authority
level of the body
governing this tax (for
example, state or country
level). These levels are
defined in the
Configurator.
Generally used when a
tax is being applied to an
entire transaction or
transaction section.
Tax authority
identification code
(alphanumeric).
Example:
<AuthorityID>ST</
AuthorityID>
<Authorization>
Contained within either
<Transaction> tag or
<Tender> tag section.
<AuthorizationCode>
Contained within a
<Authorization> tag
section
<AuthorizationDateTime
>
Contained within a
<Authorization> tag
section
<AuthorizedChangeAmo
unt>
Contained within a
<Authorization> tag
section
<AuthorizingTermID>
Contained within a
<Authorization> tag
section
<BackOrderForDelivery
>
Contained within
<LineItem> tag section
<BackOrderForPickup>
Contained within
<LineItem> tag section
<Balance>
Contained within
<LineItem> tag section
Tag and structure Use Attributes Options
60
About the End of Day Notification XML files
<BankID>
Contained
within<Check> tag
section
<BeginDateTime>
Contained within a
specific <tri:transaction>
section.
Identifies the date and
time at which this
transaction began.
Date and time, in the
following format:
YYYY-MM-DDTHH:M
M:SS.
Example:
<BeginDateTime>2001-0
9-16T09:02:00</
BeginDateTime>
<Body>
Contained within the
<POSLog> section.
Identifies the body
information section of
the file, which contains
the detailed transaction
log records.
<BusinessDayDate>
Contained within a
specific <tri:transaction>
section.
Identifies the business
date on which this
transaction took place.
The business date in the
following format:
YYYY-MM-DD
Example:
<BusinessDayDate>2001
-09-16</
BusinessDayDate>
<BusinessPhone>
Contained
within<EmployeeMainte
nance> tag section
<CancelFlag>
Contained within a
specific <tri:transaction>
section.
This flag indicates
whether the transaction
was cancelled at any
point.
true or false
<CardIssuerID>
Contained within
<CreditDebit> tag
section
<CashierSignOff>
Contained within a
specific <LineItem>
section.
This section details a
Cashier Sign Off
function.
Often used with the
<DrawerID> tag, to
identify the register
drawer the cashier will be
using.
Example:
<CashierSignOff>
<DrawerID>1</
DrawerID>
</CashierSignOff>
Tag and structure Use Attributes Options
61
About The XML TLog Files
<CashierSignOn>
Contained within a
specific <LineItem>
section.
This section details a
Cashier Sign On
function.
Example:
<CashierSignOn>
<DrawerID>1</
DrawerID>
</CashierSignOn>
<Check>
Contained within
<Tender> tag section
<CheckNumber>
Contained
within<Check> tag
section
<City>
Contained
within<EmployeeMainte
nance> or <Address>
tag section
<CloseStore>
Contained within a
specific <LineItem>
section.
This section details a
Store Close function.
<CloseTerminal>
Contained within a
specific <LineItem>
section.
This section details a
Terminal Close function.
<Commission>
Contained within
<Associate> tag section
<Count>
Contained within a tender
management section,
such as <Deposit> or
<Loan>.
This tag specifies how
many of the item or
tender in question are
involved in this
transaction (for example,
the number of checks
being deposited).
Numeric count.
<Country>
Contained within
<EmployeeMaintenance
> tag section
<CountryCode>
Contained within
<Address> tag section
Tag and structure Use Attributes Options
62
About the End of Day Notification XML files
<CreditDebit>
Contained within
<Tender> tag section
<CurrencyCode>
Contained within a
specific <tri:transaction>
section, or a tendering
section anywhere in the
transaction.
If at the <tri:transaction>
level, this tag identifies
the base (default)
currency defined for this
workstation.
If at the tendering level, it
identifies the currency
being used (generally this
will be added at the
tender level only when a
tender other than the
default is used).
Any of the currency codes
defined in the
Configurator. These
currently include:
� CDN — Canadian
dollars
� USD — American
dollars
� GBP — British pounds
Example:
<CurrencyCode>USD</
CurrencyCode>
<Customer>
Contained within
<RainCheck> tag section
<CustomerExemptionID
>
Located in a specific
<TaxExemption> tag
section.
Indicates the customer’s
exemption identification
code, where a customer is
eligible for a tax
exemption.
The customer’s tax
exemption identification
code (alphanumeric).
Example:
<CustomerExemptionID
>32132331111</
CustomerExemptionID>
<CustomerIdentification
>
Contained within
<Tender> tag section
<DateOfBirth>
Contained within
<EmployeeMaintenance
> tag section
<DateTime>
Contained within
<Associate> tag section
<Delivery>
Contained within
<SaleForDelivery> and
<BackOrderForDelivery
> tag sections
Delivery transaction
detail information such as
date, time, method for
delivery.
Tag and structure Use Attributes Options
63
About The XML TLog Files
<Deposit>
Contained within a
specific <LineItem>
section.
This tag denotes a
Deposit function.
Often used with one or
more of the following
subtags, to capture the
details of the deposit:
<SafeID>, <TenderID>,
<CurrencyCode> (if
different than base
system currency),
<Amount> and
<Count> (if a countable
tender type, such as
checks or coupons).
Example:
<Deposit>
<SafeID>SAFE_1</
SafeID>
<TenderID>Cash</
TenderID>
<Amount>20.00</
Amount>
<Count>1</Count>
</Deposit>
<Description>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
Describes the item being
sold or returned.
Descriptive text.
Example:
<Description>Tie</
Description>
<Discount>
Contained within
<ItemType> and
<LoyaltyReward> tag
sections
<DiscountGroupID>
Contained within
<EmployeeMaintenance
> tag section
<Disposal>
Contained within a
<Return> type
transaction section.
Describes how the
returned item is to be
treated following its
return. For example, it
might be returned to the
shelves, destroyed,
shipped back to the
manufacturer and so
forth.
Not currently supported.
Method — The method
of disposal. Options
include: “Undecided”.
Example:
<Disposal
Method="Undecided" />
<DrawerID>
Contained within a tender
management transaction
section, such as
<CashierSignOn>,
<CashierSignOff>,
<Lock>, or <Unlock>.
This tag indicates the
register drawer used in
the transaction (for
example, the drawer
being locked or
unlocked).
The drawer identification
code (alphanumeric).
Example:
<DrawerID>1</
DrawerID>
Tag and structure Use Attributes Options
64
About the End of Day Notification XML files
<DriverID>
Contained within
<Fleet> section of a
specific <AccountInfo>
section
<EMail>
Contained within
<EmployeeMaintenance
> tag section
<ElectronicSignature>
Contained within
<Authorization> tag
section
<EmployeeMaintenanc
e>
Contained within a
specific <LineItem>
section.
This section details the
addition or update of
employee record
information.
Used with a variety of
subtags to provide
detailed information
about the employee.
Example:
<EmployeeMaintenance>
<RetailStoreID>1</
RetailStoreID>
<EmployeeNumber>111
1</EmployeeNumber>
<Action>UPDATE</
Action>
<Address1>123 Anyplace
Street</Address1>
</
EmployeeMaintenance>
<EmployeeNumber>
Contained within a
specific
<EmployeeMaintenance
> section.
Provides the
identification number for
this employee.
The drawer identification
code (alphanumeric).
Example:
<EmployeeNumber>111
1</EmployeeNumber>
<EndDateTime>
Contained within a
specific <tri:transaction>
section, or in a specific
<LineItem> section.
Identifies the date and
time at which this
transaction or function
finished.
Date and time, in the
following format:
YYYY-MM-DDTHH:M
M:SS.
Example:
<EndDateTime>2001-09
-16T09:02:03</
EndDateTime>
<EventID>
Contained within
<LoyaltyReward> tag
section
Tag and structure Use Attributes Options
65
About The XML TLog Files
<ExemptTaxAmount>
Located in a specific
<TaxExemption> tag
section.
Indicates the amount of
tax exempted.
The amount (numeric,
with decimals allowed).
Example:
<ExemptTaxAmount>44.
44</
ExemptTaxAmount>
<ExemptTaxableAmount
>
Located in a specific
<TaxExemption> tag
section.
Indicates the amount of
this transaction which is
tax exempted (that is, the
amount eligible for the
exemption).
The amount (numeric,
with decimals allowed).
Example:
<ExemptTaxableAmount
>6.12</
ExemptTaxableAmount>
<ExpirationDate>
Contained within
<CreditDebit> and
<ManufacturerCoupon>
tag section
<ExtendedAmount>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
The unit price of the
item, multiplied by the
quantity sold.
Numeric, with decimals
allowed.
Example:
<ExtendedAmount>11.1
1</ExtendedAmount>
<ExtendedData>
Contained within
<TenderExtensions> tag
section
<FaceValue>
Contained within
<GiftCertificate> tag
section
<FamilyCode>
Contained within
<ManufacturerCoupon>
tag section
<FirstName>
Contained within
<EmployeeMaintenance
> tag section
<Fleet>
Contained within
<Tender> tag section
Tag and structure Use Attributes Options
66
About the End of Day Notification XML files
<ForceOnLine>
Contained within
<Authorization> tag
section
<ForeignCurrency>
Contained within a
specific function such as
<Tender>.
This tag indicates that a
foreign currency is being
used.
It is generally used with
the <CurrencyCode>
and <Amount> tags to
specify which foreign
current is being used and
in what amount.
Example:
<ForeignCurrency>
<CurrencyCode>CAD
</CurrencyCode>
<Amount>100.00</
Amount>
</ForeignCurrency>
<From>
Contained within
<SaleForDelivery>,
<SaleForPickup>,
<BackOrderForDelivery
>,
<BackOrderForPickup>
tag sections
<GiftCertificate>
Contained within
<LineItem> and
<LoyaltyReward> tag
sections
<GiftCertificateID>
Contained within
<GiftCertificate> tag
section
<Header>
Contained within the
<POSLog> section.
Identifies header
information section,
containing information
used to identify the file.
Example:
<Header>
<MessageId>123456<
/MessageId>
<Timestamp>2003-01
-31T17:00:00</
Timestamp>
<Originator>TE</
Originator>
<SequenceNumber>1
</SequenceNumber>
</Header>
<HomePhone>
Contained within
<EmployeeMaintenance
> tag section
Tag and structure Use Attributes Options
67
About The XML TLog Files
<HostAuthorized>
Contained within
<Authorization> tag
section
<ImageData>
Contained within
<ReceiptImage> tag
section
<InventoryReservationI
D>
Contained within
<SaleForDelivery>,
<SaleForPickup>,
<Layaway>,
<RainCheck>,
<BackOrderForDelivery
>,
<BackOrderForPickup>,
<PreviousBackOrder>
tag sections
<InventoryValuePrice>
Contained with
<ItemType> tag section
<IssueSequence>
Contained within
<CreditDebit> tag
section
<ItemID>
Contained within
<ItemType>,
<Disposal>,
<SaleAttempt> tag
sections
<ItemLink>
Contained within
<ItemType> and
<TransactionLink> tag
sections
<JobID>
Contained within
<Fleet> section of a
specific <AccountInfo>
section
Tag and structure Use Attributes Options
68
About the End of Day Notification XML files
<LastName>
Contained within
<EmployeeMaintenance
> tag section
<LatePost>
Contained within
<Transaction> tag
section
This tag indicates that the
transaction was posted
after the store was closed
for the business day on
which it was performed.
true or false
<Layaway>
Contained within
<LineItem> tag section
Layaway retail transaction
details
<LineApprovalCode>
Contained within
<OperatorBypassApprov
al> tag section
Tag and structure Use Attributes Options
69
About The XML TLog Files
<LineItem>
Contained within a
specific <tri:transaction>
section.
Each <LineItem>
section contains
information about a
particular item or
function performed
within the overall
transaction.
Example:
<LineItem>
<SequenceNumber>1
</SequenceNumber>
<EndDateTime>2003-
02-03T00:44:49</
EndDateTime>
<tri:NativeLineDetail>
<tri:LineNumber>1</
tri:LineNumber>
<tri:LineType>Item</
tri:LineType>
<tri:ActionCode>SEL
L</tri:ActionCode>
<tri:UDFID>SELL_I
TEM</tri:UDFID>
tion>Sell Item</
tri:UDFDescription>
</tri:NativeLineDetail>
<Sale
ItemType="Stock">
<POSIdentity>
<POSItemID>1111<
/POSItemID>
</POSIdentity>
<MerchandiseHierarch
y
Level="Department">
111</
MerchandiseHierarchy
>
<Description>Chair<
/Description>
<RegularSalesUnitPric
e>11.11</
RegularSalesUnitPrice
>
<ActualSalesUnitPrice
>11.11</
ActualSalesUnitPrice>
<ExtendedAmount>1
1.11</
ExtendedAmount>
<Quantity>1</
Quantity>
<Tax>
<TaxGroupID>STCO
</TaxGroupID>
<TaxableAmount>11.
11</TaxableAmount>
</Sale>
</LineItem>
Tag and structure Use Attributes Options
70
About the End of Day Notification XML files
<Loan>
Contained within a
specific <LineItem>
section.
This tag denotes a Loan
function.
Generally used with a
variety of sub-tags as
required (such as
<TenderID>,
<Amount>, <Count>
and <CurrencyID>, to
define the tender being
loaned.
Example:
<Loan>
<TenderID>Check</
TenderID>
<Amount>20.00</
Amount>
<Count>1</Count>
</Loan>
<Lock>
Contained within a
specific <LineItem>
section.
Denotes a lock function
(that is, the locking of a
register drawer).
Generally used with the
<DrawerId> tag, to
identify which drawer is
being locked.
Example:
<Lock>
<DrawerID>1</
DrawerID>
</Lock>
<LoyaltyRedemption>
Contained within
<LineItem> tag section
Loyalty redemption
transaction details
<LoyaltyReward>
Contained within
<LineItem> tag section
Loyalty reward
transaction details
<ManualAction>
Contained within
<LoyaltyRedemption>
tag section
<ManualActionID>
Contained within
<ManualAction> tag
section
<ManufacturerCoupon>
Contained within
<Tender> tag section
<ManufacturerID>
Contained within
<ManufacturerCoupon>
tag section
Tag and structure Use Attributes Options
71
About The XML TLog Files
<MerchandiseHierarchy
>
Contained within various
transaction tag sections
such as <Sale>,
<Return>, etc. within
<LineItem> tag sections
<MerchandiseHierarchyL
evel>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
This section indicates the
hierarchy level to which
the item being sold or
returned belongs (for
example, “Department”
level).
All merchandise hierarchy
levels are defined by the
user in the Configurator.
Level — Indicates the
level of the merchandise
hierarchy to which the
item belongs.
Example:
<MerchandiseHierarchy
Level="Department">11
1</
MerchandiseHierarchy>
<MessageId>
Contained within the
<PromotionMessage>
tag.
A unique identifier for
this file. Used in file
tracking and
troubleshooting.
Alphanumeric.
Example:
123456
<Method>
Contained within
<Disposal> tag section
Disposal method of a
returning transaction
<MiddleName>
Contained within
<EmployeeMaintenance
> tag section
<ModifierID>
Contained within
<RetailPriceModifier>
tag section
Identifies the type of
modifier (for example,
the type of promotion or
discount) used to modify
the original price.
<MoreToFollow>
Contained within the
<Header> section.
This flag indicates
whether this file is one in
a sequence (for example,
if a file was too large and
had to be split for
submission). This tag is
related to the
<SequenceNumber> tag
above.
true or false
<Name>
Contained within
<Address>,
<Customer> and
<LumpSum> tag
sections
Tag and structure Use Attributes Options
72
About the End of Day Notification XML files
<NewItemID>
Contained within
<Disposal> tag section
<NoSale>
Contained within a
specific <LineItem>
section.
This section details a No
Sale function (that is, a
transaction during which
a till drawer is opened,
but no accompanying sale
takes place). This is often
used with an
accompanying
<ReasonCode> tag to
detail the reason for the
No Sale action.
Example:
<NoSale>
<ReasonCode>1</
ReasonCode>
</NoSale>
<Notes>
Contained within
<Delivery> and
<Pickup> tag sections
<OdometerReading>
Contained within
<Fleet> section of a
specific <AccountInfo>
section
<OfflineFlag>
Contained within a
specific <tri:transaction>
section.
Indicates whether the
POS was offline during
this transaction.
true or false
<OpenStore>
Contained within a
specific <LineItem>
section.
This section details a
Store Open function.
Example:
<tri:NativeLineDetail>
<tri:LineNumber>1</
tri:LineNumber>
<tri:LineType>Store<
/tri:LineType>
<tri:ActionCode>OPE
N</tri:ActionCode>
<tri:UDFID>OPEN_
STORE</
tri:UDFID>
<tri:UDFDescription>
Open Store</
tri:UDFDescription>
</tri:NativeLineDetail>
<OpenStore />
Tag and structure Use Attributes Options
73
About The XML TLog Files
<OpenTerminal>
Contained within a
specific <LineItem>
section.
This section details a
Terminal Open function.
Example:
<tri:NativeLineDetail>
<tri:LineNumber>1</
tri:LineNumber>
<tri:LineType>Termin
al</tri:LineType>
<tri:ActionCode>OPE
N</tri:ActionCode>
<tri:UDFID>OPEN_
TERMINAL</
tri:UDFID>
<tri:UDFDescription>
Open Terminal</
tri:UDFDescription>
</tri:NativeLineDetail>
<OpenTerminal />
<OperatorByPassFlag>
Contained within
<RestrictionValidation>
tag section
<OperatorBypassApprov
al>
Contained within
<RestrictionValidation>
tag section
<OperatorID>
Contained within a
specific <tri:transaction>
section.
Identifies the POS
operator (that is, cashier
or salesperson) who
performed this
transaction.
The POS operator’s
identification number
(numeric string).
Example:
<OperatorID>1111</
OperatorID>
<OrigAmount>
Contained within
<Reversal> tag section
<OrigApprovalCode>
Contained within
<Reversal> tag section
<OrigReferenceNumber
>
Contained within
<Reversal> tag section
<OtherMaintenance>
Contained within
<LineItem> tag section
Tag and structure Use Attributes Options
74
About the End of Day Notification XML files
<POSIdentity>
Contained within
<ItemType> tag section
<POSItemID>
Contained within
<POSIdentity> tag
section
<Originator>
Contained within the
<Header> section.
Identifies the originating
application or component
for this file.
Used primarily for
troubleshooting.
The name of the
originating component.
Example:
<Originator>TE
TransactionPostWorkflow
</Originator>
<PaidIn>
Contained within a
specific <LineItem>
section.
Denotes a function in
which money was put
into a till or safe.
Generally used with
sub-tags such as
<TenderID> and
<Amount> to define the
money being paid in.
This tag set will be
preceded at some point in
the transaction record by
a <TillID> or <SafeID>
tag to indicate where the
money was paid into.
Example:
<PaidIn>
<TenderID>Cash</
TenderID>
<Amount>20.00</
Amount>
</PaidIn>
<PaidOut>
Contained within a
specific <LineItem>
section.
Denotes a function in
which money was taken
out of a till or safe.
Generally used with
sub-tags such as
<TenderID> and
<Amount> to define the
money being paid out.
This tag set will be
preceded at some point in
the transaction record by
a <TillID> or <SafeID>
tag to indicate from
where the money was
paid out.
Example:
<PaidOut>
<TenderID>Cash</
TenderID>
<Amount>20.00</
Amount>
</PaidOut>
<PartySize>
Contained within
<Hospitality> tag section
Tag and structure Use Attributes Options
75
About The XML TLog Files
<Password>
Contained within
<EmployeeMaintenance
> tag section
<PaymentMethod>
Contained within
<Delivery> tag section
<PaymentOnAccount>
Contained within
<LineItem> tag section
<Percent>
Contained within
<RetailPriceModifier>
tag section
<Percentage>
Contained within
<Commission> tag
section
<Pickup>
Contained within a
specific <LineItem>
section.
Denotes a pick-up
function in which money
was picked up from a till
(for example, to reduce
the number of large bills
at the POS).
This tag set will be
preceded at some point in
the transaction record by
a <TillID> tag to
indicate the till from
which the money was
picked up.
Example:
<Pickup>
<TenderID>Cash</
TenderID>
<Amount>20.00</
Amount>
<Count>1</Count>
</Pickup>
<PointsAwarded>
Contained within
<LoyaltyReward> tag
section
<PointsRedeemed>
Contained within
<LoyaltyRedemption>
tag section
<PostalCode>
Contained within
<Address> tag section
Tag and structure Use Attributes Options
76
About the End of Day Notification XML files
<PreAuthorizationFlag>
Contained within
<Authorization> tag
section
<PreferredDate>
Contained within
<Delivery> and
<Pickup> tag sections
<PreferredTime>
Contained within
<Delivery> and
<Pickup> tag sections
<PreviousBackOrder>
Contained within
<LineItem> tag section
<PreviousLayaway>
Contained within
<LineItem> tag section
<PreviousPrice>
Contained within
<RetailPriceModifier>
tag section
<PrimaryLabel>
Contained within
<ManufacturerCoupon>
tag section
<PrintableName>
Contained within
<EmployeeMaintenance
> tag section
<PromotionCode>
Contained within
<ManufacturerCoupon>
tag section
<PromotionID>
Contained within
<LoyaltyReward> tag
section
<PromotionMessage>
Contained within
<LoyaltyReward> tag
section
Tag and structure Use Attributes Options
77
About The XML TLog Files
<ProviderID>
Contained within
<Authorization> tag
section
<Qualifier>
Contained within
<POSIdentity> tag
section
<POSIdentity>
Contained within a
specific transaction tag
section, such as <Sale>,
<SaleAttempt>, or
<Return>.
Identifies the item at the
POS.
This tag is generally used
with the <POSItemID>
sub-tag, to better define
the item being sold or
returned (for example, by
its SKU or PLU
identification number).
Example:
<POSIdentity>
<POSItemID>1111<
/POSItemID>
</POSIdentity>
<POSItemID>
Contained within a
specific <POSIdentity>
section.
Identifies the item being
sold or returned by its
default product
identification number
(for example, its SKU,
PLU, or ISBN number).
The item identification
code.
Example:
<POSIdentity>
<POSItemID>1111<
/POSItemID>
</POSIdentity>
<POSLog>
Top level tag.
Defines the boundaries
of the TLog xml output
file and the location of
relevant schema
definition information.
xmlns — Specifies the
namespace of the xml
schema.
xmlns:xsi — Specifies the
xsi standard namespace
of the schema.
xsi:schemaLocation —
location of the relevant
xsd schema file
(POSLog.xsd)
Version — version
number for this schema.
Example:
<POSLog xmlns="http:/
/www.triversity.com/TE/
integration/"
xmlns:xsi="http://
www.w3.org/2001/
XMLSchema-instance"
xsi:schemaLocation="http
://www.triversity.com/
TE/integration/
POSLog.xsd"
Version="1.0">
<Quantity>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
Indicates the quantity of
the item being sold or
returned.
Numeric.
For example:
<Quantity>1</
Quantity>
<QuestionAnswer>
Contained within
<RestrictionValidation>
tag section
Tag and structure Use Attributes Options
78
About the End of Day Notification XML files
<QuestionText>
Contained within
<RestrictionValidation>
tag section
<RainCheck>
Contained within
<LineItem> tag section
<ReasonCode>
Contained within a
specific transaction tag
section, such as a
<NoSale>, <Return>, or
<Void> transaction.
The reason code tag
contains the identification
number for an action
rationale input at the POS
(for example, a cashier
may need to input a
reason for a No Sale, or
for a Return.
Reason codes are defined
in the Configurator.
Reason code number
(numeric).
Example:
<ReasonCode>1</
ReasonCode>
<ReceiptImage>
Contained within
<LineItem> tag section
<ReconciliationCode>
Contained within
<CreditDebit> tag
section
<ReferenceNumber>
Contained within
<Authorization> tag
section
<RegularSalesUnitPrice>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
The regular sales price of
the item being sold or
returned (as defined in
the Item Maintenance
file).
The price — numeric,
with decimals allowed.
Example:
<RegularSalesUnitPrice>
11.11</
RegularSalesUnitPrice>
<Reprint>
Contained within a
specific <LineItem>
section.
Denotes a reprint
function, in which the
receipt (or document set)
for a transaction is
printed a second time.
<RequestedAmount>
Contained within
<Authorization> tag
section
Tag and structure Use Attributes Options
79
About The XML TLog Files
<RestrictionValidation>
Contained within
<Transaction> (of
extended
POSLogRetailTransactio
n type) tag section
<RetailPriceModifier>
Contained within a
specific transaction tag
section, such as <Sale>
or <Return>.
This section contains
information about how
an item’s price was
modified (for example, by
using a promotion or
price rule, by price
override and so forth).
Generally used with the
<SequenceNumber>
sub-tag to denote the
sequence (with the
accompanying original
pricing) of the functions
in this line item or
transaction and with the
<Amount> sub-tag to
denote the amount by
which the original price
was modified.
MethodCode — The
method by which the
price is was modified.
Options include:
“ItemDiscount”,
“TransactionDiscount”,
“PriceRule”,
“PriceOverride” and
“Promotion”.
Example:
<RetailPriceModifier
MethodCode="PriceRule"
>
<SequenceNumber>1
</SequenceNumber>
<Amount
Action="Subtract">1.
11</Amount>
</RetailPriceModifier>
<RetailStoreID>
Contained within a
specific <tri:transaction>
section, or within another
informational section
(such as
<EmployeeMaintenance
>).
Identifies the store where
this transaction took
place.
Store identification code
(alphanumeric).
Example:
<RetailStoreID>HighStre
et</RetailStoreID>
<Return>
Contained within a
specific <LineItem>
section.
This section provides
detailed information
about an item return
transaction.
ItemType — Options
include: “Stock”,
“OpenDepartment” and
“NotOnFile”.
<ReturnForDelivery>
Contained within
<LineItem> tag section
<ReturnForPickup>
Contained within
<LineItem> tag section
<Reversal>
Contained within
<Authorization> tag
section
Tag and structure Use Attributes Options
80
About the End of Day Notification XML files
<Rounding>
Contained within
<OperatorBypassApprov
al> tag section
<RuleID>
Contained within
<RetailTransactionTax>
tag section
<SafeID>
Contained within a tender
management section,
such as <Deposit> or
<Loan>.
This tag identifies the
safe involved in the
transaction.
The safe identification
code (alphanumeric).
Example:
<SafeID>11</SafeID>
<Sale>
Contained within a
specific <LineItem>
section.
This section provides
detailed information
about a sales transaction.
ItemType — Options
include: “Stock”,
“OpenDepartment” and
“NotOnFile”.
Example:
<Sale
ItemType="Stock">
<POSIdentity>
<POSItemID>4444<
/POSItemID>
</POSIdentity>
>222</
MerchandiseHierarchy
>
<Description>Ski
Hat</Description>
<RegularSalesUnitPric
e>44.44</
RegularSalesUnitPrice
>
<ActualSalesUnitPrice
>44.44</
ActualSalesUnitPrice>
<ExtendedAmount>4
4.44</
ExtendedAmount>
<Quantity>1</
Quantity>
<Tax>
<TaxGroupID>STCO
</TaxGroupID>
<TaxableAmount>44.
44</TaxableAmount>
</Tax>
</Sale>
Tag and structure Use Attributes Options
81
About The XML TLog Files
<SaleAttempt>
Contained within a
specific <LineItem>
section.
This indicates that a
cashier attempted to sell
or process an item that
had been flagged as
“unsellable” (for
example, an item that had
been recalled, or was
scheduled to be pulled
from the shelves).
Example:
<SaleAttempt>
<POSIdentity>
<POSItemID>2222<
/POSItemID>
</POSIdentity>
<Description>Tie</
Description>
<Quantity>-1</
Quantity>
</SaleAttempt>
<SaleForDelivery>
Contained within
<LineItem> tag section
<SaleForPickup>
Contained within
<LineItem> tag section
<ScanPassword>
Contained within
<EmployeeMaintenance
> tag section
<SecondaryLabel>
Contained within
<ManufacturerCoupon>
tag section
<SecurityGroupID>
Contained within
<EmployeeMaintenance
> tag section
<SellingLocation>
Contained within various
transaction tag sections
such as <Sale>,
<Return>, etc.
<SendCheck>
Contained within
<Tender> tag section
Tag and structure Use Attributes Options
82
About the End of Day Notification XML files
<SequenceNumber>
Contained within a
specific <tri:transaction>
section or <LineItem>
section.
If at the <tri:transaction>
level, this tag identifies
the transaction by
sequence number within
the overall POS session.
If at the <LineItem>
level, it identifies the line
item or function by
sequence number within
the transaction.
Numeric progression.
Example:
<SequenceNumber>3</
SequenceNumber>
<SequenceNumber>
Contained within the
<Header> section.
Identifies the file by
number, if one in a
sequence. Used for file
tracking.
Numeric.
<SerialNumber>
Contained within various
transaction tag sections
such as <Sale>,
<Return>, etc.
<ServiceCode>
Contained within
<CreditDebit> tag
section
<SignOnId>
Contained within
<EmployeeMaintenance
> tag section
<SocialSecurityNumber>
Contained within a
specific <AccountInfo>
section
<SpecialOrderNumber>
Contained within various
transaction tag sections
such as <Sale>,
<Return>, etc.
<StartDate>
Contained within
<CreditDebit> tag
section
<State>
Contained within
<Address> tag section
Tag and structure Use Attributes Options
83
About The XML TLog Files
<StateProvince>
Contained within
<EmployeeMaintenance
> tag section
<SupplementalData>
Contained within a
specific <LineItem>
section.
This tag section defines
any additional data
captured at the POS
relating to an item or
transaction (for example,
item description
information for
not-on-file items, or
customer zip/postal code
information).
The sub-tags used with
this tag either represent a
“Known Data Type” or
are user-defined. They are
set in the Prompts
section of the
Configurator. They can
include any type of
additional data which you
wish to capture at the
POS: for example,
<Description>, <Color>
and <Size> tags.
For a complete list of
known data types, see
Chapter , “About the
known data types” on
page 129.
Any supplemental data
captured via POS
prompts.
Example:
<SupplementalData>
<Description>Women'
s Socks</
Description>
<Color>Red</
Color>
<Size>Medium</
Size>
</SupplementalData>
<SuspendFlag>
Located within a specific
<tri:transaction> tag
section.
Identifies whether this
transaction has been
suspended (for example,
held by the cashier while
the customer goes to her
car to find her wallet).
true or false
<SystemAmount>
Contained within
<Balance> tag section
<TableID>
Contained within
<Hospitality> tag section
Tag and structure Use Attributes Options
84
About the End of Day Notification XML files
<Tax>
May be contained either:
� Within a specific
transaction tag
section, such as
<Sale> or <Return>,
if applicable to a
specific item or items
� Within a <LineItem>
section, if applicable
to an entire
transaction or
transaction section.
Indicates the taxes
applied for this
transaction or part of the
transaction.
Generally used with a
variety of sub-tags, such
as <TaxGroupID>,
<AuthorityID> and
<TaxableAmount> to
define the type of tax
being applied, together
with the amount.
Example:
<Tax>
<TaxGroupID>STCO
</TaxGroupID>
<TaxableAmount>11.
11</TaxableAmount>
</Tax>
<TaxableAmount>
Contained within a
specific <Tax> section.
The amount of the
transaction to which this
tax applies.
The amount (numeric,
with decimals allowed).
Example:
<TaxableAmount>44.44
</TaxableAmount>
<TaxExemption>
Located in a specific
<Tax> tag section.
Indicates whether this
transaction or part of a
transaction is eligible for
a tax exemption.
Generally used with the
following sub-tags to
define the type and
amount of exemption and
to identify the customer
getting the exemption:
<CustomerExemptionID
>,
<ExemptTaxableAmount
> and
<ExemptTaxAmount>.
Example:
<TaxExemption>
<CustomerExemption
ID>32132331111</
CustomerExemptionI
D>
<ExemptTaxAmount>
44.44</
ExemptTaxAmount>
<ExemptTaxableAmo
unt>6.12</
ExemptTaxableAmoun
t>
</TaxExemption>
<TaxGroupID>
Contained within a
specific <Tax> section.
Identifies the tax group
to which this tax belongs.
These groups are defined
in the Configurator.
Generally used when a
tax is being applied to a
specific item or items
within a transaction.
Tax group identification
code (alphanumeric).
Tax groups include the
following:
� NOTAX — No tax
� STCO — State and
Local
Example:
<TaxGroupID>STCO</
TaxGroupID>
<TelephoneNumber>
Contained within a
specific <AccountInfo>
section
Tag and structure Use Attributes Options
85
About The XML TLog Files
<TemporaryCar>
Contained within
<Fleet> section of a
specific <AccountInfo>
section
<Tender>
Contained within a
specific <LineItem>
section.
This section provides
information about tender
taken from a customer
during this transaction.
Generally used with a
variety of sub-tags such as
<CurrencyID>,
<TenderID> and
<Amount> to define the
type of tender used and
the amount.
Example:
<Tender>
<TenderID>Cash</
TenderID>
<Amount>20.00</
Amount>
</Tender>
<TenderChange>
Contained within a
specific <LineItem> or
<TenderChange>
section.
This section provides
information about
change given back to the
customer during this
transaction.
Generally used with a
variety of sub-tags such as
<CurrencyID>,
<TenderID> and
<Amount> to define the
type of tender used and
the amount.
Example:
<TenderChange>
<TenderID>Cash</
TenderID>
<Amount>5.21</
Amount>
</TenderChange>
<TenderExtensions>
Contained within
<Tender> tag section
Tag and structure Use Attributes Options
86
About the End of Day Notification XML files
<TenderID>
Contained within a
specific transaction
section, such as
<Tender>,
<TenderChange>,
<Deposit>, <Loan> and
so forth.
Identifies the type of
tender used in this part of
the transaction. (For
example, the type of
tender used for payment,
or as change).
Tenders are defined in the
Configurator.
The tender identification
code (alphanumeric).
Options include:
� Cash
� Check
� VISA
� MasterCard
� Amex (American
Express)
� CdnCash (Canadian
cash)
� TrvaCheck (Traveller’s
Check)
� UKPounds (British
pounds cash)
Example:
<TenderID>Cash</
TenderID>
<TenderSubCode>
Contained within
<Tender> and
<TenderChange> tag
sections
<TillCreation>
Contained within
<LineItem> tag section
<TillID>
Contained within a
specific <tri:transaction>
section.
Identifies the till (money
tray, often associated with
a particular cashier) used
in this transaction.
The identification code
for the till (alphanumeric).
Example:
<TillID>11</TillID>
<To>
Contained within
<ReturnForPickup> tag
section
<Timestamp>
Contained within the
<Header> section.
Marks the time at which
this file was sent.
The date and time in the
prescribed format:
YYYY-MM-DDTHH:M
M:SS
Example:
<Timestamp>2001-09-16
T09:02:00</Timestamp>
Tag and structure Use Attributes Options
87
About The XML TLog Files
<Total>
Contained within a
specific <tri:transaction>
section.
Provides various types of
total and total amount
information for the
transaction. A transaction
typically contains multiple
<Total> sections, each
containing information
about a different type of
total with the transaction
(that is, a different
calculation), as indicated
by the “TotalType”
specified.
TotalType — The type of
total being calculated.
Options include:
“TransactionGrossAmou
nt” (subtotal, not
including discounts or
taxes),
“TransactionNetAmount
”(subtotal, including
discounts, but not taxes),
“TransactionTaxAmount
” (amount of tax
charged),
“TransactionTaxExempt
Amount” (amount of tax
exempted) and
“TransactionGrandAmou
nt” (total, including
discounts and taxes).
Example:
<Total
TotalType="TransactionG
rossAmount">
<Amount>44.44</
Amount>
</Total>
<Total
TotalType="TransactionN
etAmount">
<Amount>44.44</
Amount>
</Total>
<Total
TotalType="TransactionT
axAmount">
<Amount>9.56</
Amount>
</Total>
<Total
TotalType="TransactionG
randAmount">
<Amount>54.00</
Amount>
</Total>
<Track1Data>
Contained within
<CreditDebit> tag
section
<Track2Data>
Contained within
<CreditDebit> tag
section
<Track3Data>
Contained within
<CreditDebit> tag
section
<TrainingModeFlag>
Contained within a
specific <tri:transaction>
section.
Indicates whether the
POS was operating in
“Training Mode” during
this transaction.
true or false
Tag and structure Use Attributes Options
88
About the End of Day Notification XML files
<TransactionLink>
Contained within various
transaction tag sections
such as <Sale>,
<Return> etc.
Provides information
about an earlier
transaction to which the
current transaction is
linked. For example, if the
current transaction is
resuming a previously
suspended transaction, or
if the current transaction
is a post void of a
previous transaction.
Reason Code — Options
include: “PostVoid”,
“Resume”.
Example:
<TransactionLink
ReasonCode="Resume">
<RetailStoreID>HighS
treet</RetailStoreID>
<WorkstationID>POS
5</WorkstationID>
<SequenceNumber>4
294967295</
SequenceNumber>
<BusinessDayDate>20
01-09-16</
BusinessDayDate>
<BeginDateTime>200
1-09-16T09:02:00</
BeginDateTime>
</TransactionLink>
<UnitCostPrice>
Contained within various
transaction tag sections
such as <Sale>,
<Return>, etc.
<UnitListPrice>
Contained within various
transaction tag sections
such as <Sale>,
<Return>, etc.
Tag and structure Use Attributes Options
89
About The XML TLog Files
<tri:ActionCode>
Contained within a
specific
<tri:NativeLineDetail>
section.
Identifies the internal
action performed by this
function (system
defined).
System Action Codes
include:
� SignOn
� SignOff
� Open
� Close
� Training_Mode_Begin
� Training_Mode_End
� Sell
� Return
� No_Sale
� Sell_Attempt
� Line_Discount
� Price_Override
� Charge
� Void
� Tender_Payment
� Sage_Paid_In
� Safe_Paid_Out
� Pickup
� Deposit
� Loan
� Lock
� Unlock
� Reprint
Example:
<tri:ActionCode>SELL<
/tri:ActionCode>
<tri:ApplicationID>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:CurrencyID>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:DeviceID>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:ItemInfo>
Contained within
<tri:ItemInformation>
tag section
Tag and structure Use Attributes Options
90
About the End of Day Notification XML files
<tri:ItemInformation>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:LevelID>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:LineNumber>
Contained within a
specific
<tri:NativeLineDetail>
section.
Identifies the function as
a sequential item within
the transaction.
Numeric progression.
Example:
<tri:LineNumber>1</
tri:LineNumber>
<tri:LineType>
Contained within a
specific
<tri:NativeLineDetail>
section.
Identifies the internal
type of function (system
defined).
System Line Types
include:
� Store
� Terminal
� Cashier
� Line
� Item
� NonMerch
� NoSale
� Department
� StartTransaction
� Payment
� Tax
� TaxabilityOverride
� PriceModifier
� PriorTransaction
� TenderFinancial
� TenderAdmin
Example:
<tri:LineType>Item</
tri:LineType>
Tag and structure Use Attributes Options
91
About The XML TLog Files
<tri:NativeLineDetail>
Contained within a
specific <LineItem>
section.
Each
<tri:NativeLineDetail>
section provides
system-related
information for a
particular item or
function performed
within the overall
transaction. It is designed
to help track and
troubleshoot this
transaction in the system.
Because the tags used in
this section are
proprietary to SAP and
are tied closely to the
SAP Enterprise POS
codebase, these tags are
subject to change. As
such it is advised that you
not tie any subsequent
coding or analysis
reporting to these specific
tags.
<tri:NativeTrxDetail>
Contained within
<tri:Transaction> tag
section
Header info of the
transaction
<tri:OrganizationID>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:ParentLineNumber>
Contained within a
specific
<tri:NativeLineDetail>
section.
Identifies the initiating
line number, if this is not
the first line in this
sequence.
<tri:ReportGroup>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:SiteID>
Contained within
<tri:NativeTrxDetail>
tag section
Tag and structure Use Attributes Options
92
About the End of Day Notification XML files
<tri:SubdeviceID>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:TransactionItemCou
nt>
Contained within
<tri:NativeTrxDetail>
tag section
<tri:Transaction>
Contained within the
<Body> section.
This section provides
basic information for a
single transaction.
xsi:type — The category
of transaction performed
(from a system
perspective).
Options include:
“RetailTransactionStockV
iew” (sales transactions),
“TenderControlTransacti
on” (tender management
functions, such as safe
management) and
“ControlTransaction”
(administrative functions,
such as cashier sign-on).
Version — Version
number of the schema
referenced for this
transaction.
xmlns:tri — Specifies the
tri (Triversity) standard
namespace of the schema
referenced for this
transaction.
xmlns — Specifies the
namespace of the xml
schema referenced for
this transaction.
Example:
<tri:Transaction
xsi:type="RetailTransactio
nStockView"
Version="1.0"
xmlns:tri="http://
www.triversity.com/TE/
integration/"
xmlns="http://
www.nrf-arts.org/
IXRetail/namespace/">
<tri:UDFDescription>
Contained within a
specific
<tri:NativeLineDetail>
section.
The UDF (user-defined
function) text description
for the function
performed in this part of
the transaction.
Functions are defined in
the Configurator. See the
Configurator User Guide for
a complete description of
each standard function.
The UDF description, as
defined in the
Configurator (text).
Example:
<tri:UDFDescription>Sel
l Item</
tri:UDFDescription>
Tag and structure Use Attributes Options
93
About The XML TLog Files
<tri:UDFID>
Contained within a
specific
<tri:NativeLineDetail>
section.
The UDF (user-defined
function) identification
code for the function
performed in this part of
the transaction.
Functions are defined in
the Configurator. See the
Configurator User Guide for
a complete description of
each standard function.
The UDF identification
code, as defined in the
Configurator
(alphanumeric).
Example:
<tri:UDFID>SELL_ITE
M</tri:UDFID>
<tri:UDTDescription>
Contained within
<tri:NativeTrxDetail>
tag section
Description of the UDT
(User-defined
transaction) used in the
transaction
<tri:UDTID>
Contained within
<tri:NativeTrxDetail>
tag section
Identifier of the UDT
used in the transaction
<Unlock>
Contained within a
specific <LineItem>
section.
Denotes an unlock
function (that is, the
unlocking of a register
drawer).
Generally used with the
<DrawerId> tag, to
identify which drawer is
being unlocked.
Example:
<Unlock>
<DrawerID>1</
DrawerID>
</Unlock>
<VehicleID>
Contained within
<Fleet> section of a
specific <AccountInfo>
section
<VoidFlag>
Contained within a
specific <LineItem>
section.
Indicates that this
transaction or part of the
transaction involves a
void function (that is, part
or all of the transaction
has been cancelled or
voided).
true or false
<Voids>
Contained within
<LineItem> tag section
<Voucher>
Contained within
<LoyaltyReward> tag
section
Tag and structure Use Attributes Options
94
About the End of Day Notification XML files
<VoucherID>
Contained within
<Voucher> tag section
<Withdrawal>
Contained within a
specific <LineItem>
section.
Denotes a withdrawal
function, such as when
money is removed from a
drop-box or safe to take
to the bank.
<WorkstationID>
Contained within a
specific <tri:transaction>
section.
Identifies the workstation
(or terminal, or register)
where this transaction
took place.
May be linked to the
client or site identification
code defined for this
device at the
Configurator.
May also indicate the
application used (that is,
POS, Kiosk and so forth).
Workstation or register
identification code
(alphanumeric).
Example:
<WorkstationID>POS5<
/WorkstationID>
<ZipPostalCode>
Contained within
<EmployeeMaintenance
> tag section
Tag and structure Use Attributes Options
95
About The XML TLog Files
XML for specific transaction types
This following is a list of TLog xml output files, each show a specific type of transaction, or
combination of actions:
� Amount paid in to safe
� Amount paid out from safe
� Balance safe
� Balance till
� Balance till - check only
� Balance till - end of week
� Balance till - save only
� Cashier sign off
� Cashier sign on
� Create new till
� Credit with customer not present
� Credit with keyed data
� Credit with MSR
� Credit with Smart card
� Deposit
� Deposit to safe post void
� Employee address change
� Loan
� Lock
� No sale
� Open department sale
� Paid in
� Paid out
� Pick up
� Receipt reprint
� Resume suspended sale
� Sale using a split foreign tender
� Sale using the unit of measure function
� Sale with line discount
� Sale with line void and zero balance
� Sale with not-on-file item
� Sale with one return
� Sale with one sale attempt
� Sale with post void
� Sale with price override
� Sale with salesperson change
� Sale with trading period ID
96
Validating the XML TLog
� Sale with voided line discount
� Start transaction return
� Sale transaction tax exempt
� Store close
� Store open
� Suspend sale after one item
� Tax override
� Terminal close
� Terminal open
� Training mode - enter live session
� Training mode - exit live session
� Training mode - enter TM session
� Training mode - exit TM session
� Training mode sale
� Unlock register
� Void sale
� Withdrawal
Note: The WorkstationID for the POS consists of the application ID, a period, the terminal ID
(device ID and client ID), a period and the subdevice ID (subclient ID). For the POS Manager, this is
the application ID (POSMANAGER). For example, “POS.1.1”.
Validating the XML TLogThe SAP Enterprise POS XML TLog data is structured in alignment with the IXRetail standard POS
log schemas. The XML TLog data produced during transactions is not validated against the
POSLogRetailTransactionStockView.xsd schema at runtime. To validate these XML instances
alone, you may wish to use an XML schema validation utility program to observe the validation results.
Transaction log schemasThis section describes the transaction log (TLog) data output XML files. The TLog files are defined by
a series of .XSD schemas. The schemas define the tag formats used in the .XML output files, as well as
the options and delimitations for each tag element. Because this is an .XML based system, the tags are
intuitively named, so that most of the information required is easily understood based on the name of
the tag, the names of the available options and your understanding of the retail industry.
Seven schemas are used to represent different parts of the TLog function:
� The POSLogTransaction_Extensible.xsd schema defines a subset of standard IXRetail POS
log tags.
97
About The XML TLog Files
� The POSLog.xsd schema contains the tags for the ‘envelope’ of system data which SAP wraps
around the TLog files, in order for the SAP Enterprise POS system (and other compatible retail
applications) to understand and process the file. This includes header and footer information and
system parsing tags.
� The POSLogRetailTransaction_Extensible.xsd schema defines a set of extensions to the
standard IXRetail POS log tags.
� The POSLogRetailTransactionStockView_Extensible.xsd schema defines a set of extensions
to the standard IXRetail POS log tags.
� The TriversityPOSLogRetailTransactionStockView_Extensions.xsd schema defines a set of
SAP proprietary transaction log tags.
� The POSLogTENamespace.xsd schema collects all of the SAP Enterprise POS TLog schemas
so they can be imported and included as one.
� The POSLogControlTransaction_Extensible.xsd schema defines a set of SAP proprietary
transaction log tags.
� The POSLogTenderControlTransaction_Extensible.xsd schema defines a set of SAP
proprietary transaction log tags used for tender management functions.
� The POSLogAdministrativeTransaction_Extensible.xsd schema defines a set of SAP
proprietary transaction log tags used for administrative functions.
� The IntegrationMessageHeader.xsd schema defines a set of SAP proprietary transaction log
tags used for the RequestHeader, ResponseHeader and OutputHeader data.
POSLogRetailTransactionStockView_Extensible.xsd
The <ExtendedData> tags represent name/value pairs for information that does not fit into the
standard fields in the rest of the schema (used for EFT settlement field information). Available values
are as follows:
Name Attribute Value Field Name
transactionCode Transaction Code
panSequenceNumber Application PAN SequenceNumber
cryptogramTransactionType Cryptogram Transaction Type
terminalCountryCode Terminal Country Code
transactionCryptogram Transaction Cryptogram
applicationInterchangeProfile Application Interchange Profile
applicationTransactionCounter Application Transaction Counter
unpredictableNumber Unpredictable Number
terminalVerificationResult Terminal Verification Result
issuerApplicationData Issuer Application Data
applicationUsageControl Application Usage Control
cryptogramInfoData Cryptogram Information Data
cvmResult CVM Results
applicationVersion Application Version
98
Transaction log schemas
transactionStatusInfo Transaction Status Information
terminalType Terminal Type
terminalCapabilities Terminal Capabilities
externalAuthMethod Method Of Authorization
Name Attribute Value Field Name
99
About The XML TLog Files
100
About The XML Data Input Files
This section describes the SAP Enterprise POS data input XML files. These files are used to import a
variety of data types into your system, such as item and pricing information, promotion information,
employee records and so forth.
Topics in this section include:
� “About the Item Maintenance XML files” on page 101
� “About the Department Maintenance XML files” on page 122
� “About the Employee Maintenance XML files” on page 122
� “About the Item Hierarchy Maintenance XML files” on page 123
� “About the Promotion Maintenance XML files” on page 123
� “About the MixMatch Pricing Maintenance XML files” on page 124
� “About the Site Parameter Maintenance XML files” on page 124
� “About the Validation Maintenance XML files” on page 125
� “Operational data update” on page 125
About the Item Maintenance XML filesThe item maintenance files are used to import new or changed general item information (such as PLU
information, pricing data and so forth) into the SAP Enterprise POS system.
Topics in this section include:
� “About the Item Maintenance XML files” on page 101
� “Item Maintenance xml tags” on page 102
101
About The XML Data Input Files
Item Maintenance xml tags
The following table lists the tags used in the Item Maintenance input files, together with notes about
their relative structure and usage. The tags are presented in alphabetical order to make them easier to
reference and major section or functional tags are bolded. To get a better idea of tag hierarchy, please
see the sample Item Maintenance input xml file included on the compact disk provided by SAP.
Tag and structure Use Attributes Options
<AckDestinationName>
Contained within the
<Header> section.
Specifies the naming
convention for the item
maintenance
acknowledgement file.
Example:
<AckDestinationName>q
ueue/
ItemMaintenanceAck</
AckDestinationName>
<AckDestinationType>
Contained within the
<Header> section.
Specifies the type of
acknowledgement
destination.
Example:
<AckDestinationType>Q
ueue</
AckDestinationType>
<AckType>
Contained within the
<Header> section.
Specifies the type of
acknowledgement file to
be returned, or the
conditions under which
acknowledgement is
required.
Example:
<AckType>OnlyOnExce
ptions</AckType>
<ActivationDateTime>
Contained within an
<ItemGroup> section.
Note that this setting is not
currently supported.
Provides a specific date
and time at which the
information in this item
group entry is to be made
active in the system.
Date and time in the
prescribed format:
YYYY-MM-DDTHH:M
M:SS-hh:mm where
“hh:mm” is the difference
between GMT and your
local time.
Example:
2003-03-10T16:24:00-05:0
0
<AllowPendingFlag>
Contained within a
specific <Item> section
true or false
<AllowZeroPriceFlag>
Contained within a
specific <Item> section
true or false
102
About the Item Maintenance XML files
<AlternateId>
Contained within a
specific
<AlternateIdList>
section.
This tag allows you to
provide a single alternate
identifier for the given
item (such as a PLU
number).
IdType — The alternate
form of identifier being
used for this item.
Options include: “SKU”,
“UPC”, “PLU”, “MFG”,
“ISBN” and “GTIN”.
� SKU — Stock Keeping
Unit
� UPC — Universal
Product Code
� PLU — Price Look Up
� MFG — Manufacturing
Number
� ISBN — International
Standard Book Number
� GTIN — Global Trade
Item Number
<AlternateIdList>
Contained within a
specific <Item> section.
This section allows you to
provide a list of alternate
identifiers for the given
item (such as PLU
numbers).
<Amount>
Contained within a
specific pricing section
(such as a
<PermanentPrice> or
<PromoPrice> tag set.)
This tag allows you to
indicate the price of the
item, for the given pricing
method and in the base
currency defined on your
system.
Numeric value, with
decimals allowed.
Example:
<Amount>5.99</
Amount>
<ApplyToStores>
Contained within the
<Header> section.
Applies the message to
the specified store.
Example:
<ApplyToStores>
<RetailStoreID>ID</
RetailStoreID>
</ApplyToStores>
Where ID can be a store
ID or “*” to indicate that
it applies to all stores.
<AttributeList>
Contained within a
specific <Level> section.
<Attribute
Action=”Add>
<AttributeID>colour</
AttributeID> <Attribute
Value>blue</
AttributeValue>
<Body>
Contained within the
<ItemMaintenance>
section.
Identifies the body
information section of
the file, which contains
the detailed item
maintenance information.
Tag and structure Use Attributes Options
103
About The XML Data Input Files
<Choice>
Contained within a
<PromotionQualification
Definition> tag set.
Provides a choice
between <ItemID> or
<EligibilityRuleID>.
<ConfirmRequiredFlag>
Contained within a
specific <Item> section
true or false
<Cost>
Contained within a
specific <Item> section.
This tag allows you to
indicate the base cost (to
the retailer) of the item, in
the base currency defined
on your system.
Numeric value, with
decimals allowed.
Example:
<Cost>2.23</Cost>
<DealAmount>
Contained within a
specific pricing section
(such as a
<PermanentPrice> or
<PromoPrice> tag set.)
This tag is used with the
“GroupThreshold”,
“LimitedQuantity” and
“ReducedPricing” pricing
methods.
Numeric value, with
decimals allowed.
Example:
<DealAmount>1.05</
DealAmount>
<Deposit>
Contained within a
specific <Item> section
<Description>
Contained within a
specific <Item> section.
This tag allows you to add
a description of the item.
Text description of the
item (alphanumeric
string).
Example:
<Description>Wing
Chair</Description>
<Description>
Contained within a
specific <Level> section.
<DiscountableFlag>
Contained within a
specific <Item> section.
This flag indicates
whether or not this item
is eligible for discounts.
true or false
<DiscountGroupId>
Contained within a
specific <Item> section.
This tag allows you to
specify the discount
group to which this item
belongs, if applicable.
The discount group
identification code.
<EffectiveBusinessDayD
ate>
Contained within a
specific <FuturePrice>
section
Tag and structure Use Attributes Options
104
About the Item Maintenance XML files
<EffectiveDateTime>
Contained within a
<PromoPrice> tag set.
Provides a specific date
and time at which the
promotional price for this
item is to be made active
in the system.
Date and time in the
prescribed format.
Example:
2003-03-10T16:24:00-05:0
0
<EligibilityRuleID>
Contained within a
<PromotionQualification
Definition> tag set.
Identifies if an item is
eligible for a promotion.
Note that eligibility rules
are configured in the
Configurator.
Example:
<EligibilityRuleID>ALL_
ITEM</
EligibilityRuleID>
<FixedTax>
Contained within the
<Price>, <FuturePrice>,
or <MSRP> sections.
<FoodStampEligibility>
Contained within a
specific <Item> section.
This flag indicates
whether this item is
eligible for food stamp
subsidies.
Not currently supported.
true or false
<ForwardToHostedSites
>
Contained within the
<Header> section.
Determines if the
message should be
forwarded to the hosted
sites
true or false
<Header>
Contained within the
<ItemMaintenance>
section.
Identifies header
information section,
containing information
used to identify the file.
Example:
<Header>
<MessageId>123456<
/MessageId>
<Timestamp>2003-01
-31T17:00:00-05:00</
Timestamp>
<Originator>ItemMai
ntenanceAdapter</
Originator>
<AckType>OnlyOnE
xceptions</AckType>
<AckDestinationType
>Queue</
AckDestinationType>
<AckDestinationNam
e>queue/
ItemMaintenanceAck<
/
AckDestinationName
>
</Header>
Tag and structure Use Attributes Options
105
About The XML Data Input Files
<Item>
Contained within an
<ItemGroup> section.
This section contains
information for a given
item.
action — The action to
be performed for this
item. Options include:
“Add” (to add a new
item), “AddUpdate” (to
add information or
update information for
an existing item),
“Update” (to update
information for an
existing item) and
“Delete” (to delete an
existing item).
Example:
<Item action="Add">
<ItemGroup>
Contained within the
<Body> section.
Contains information for
a new item group.
<ItemID>
Contained within a
specific <Item> section.
This item ID can also be
used to define the
promotion rule that
applies to the item key.
Provides a unique
identifier for the item.
IdType — The main
form of identifier being
used for this item.
Options include: “SKU”,
“UPC”, “PLU”, “MFG”,
“ISBN” and “GTIN”.
� SKU — Stock Keeping
Unit
� UPC — Universal
Product Code
� PLU — Price Look Up
� MFG — Manufacturing
Number
� ISBN — International
Standard Book Number
� GTIN — Global Trade
Item Number
<PromotionQualificat
ionDefinition>
The numeric item
identification number.
Example:
330145
Example:
<ItemID>1508753</
itemID>
Tag and structure Use Attributes Options
106
About the Item Maintenance XML files
<ItemMaintenance>
Top level tag.
Defines the boundaries
of the item maintenance
xml input file and the
location of relevant
schema definition
information.
xmlns — Specifies the
namespace of the xml
schema.
xmlns:xsi — Specifies the
xsi standard namespace
of the schema.
xsi:schemaLocation —
Provides the location of
the relevant xsd schema
file
(ItemMaintenance.xsd)
Version — Version
number for this schema.
Example:
<ItemMaintenance
xmlns="http://
www.triversity.com/TE/
integration/"
xmlns:xsi="http://
www.w3.org/2001/
XMLSchema-instance"
xsi:schemaLocation="http
://www.triversity.com/
TE/integration/
ItemMaintenance.xsd"
Version="1.0">
<ItemType>
Contained within a
specific <Item> section.
Allows you to identify the
overall type of item (that
is, is this item stock, or a
service or fee of some
kind and so forth).
One of the following
defined options:
� Stock
� Service
� Alteration
� Fee
� Deposit
� DepositRefund
� Tare
� DepartmentItem
� ManufacturerCoupon
� StoreCoupon
� PayOut
<Level>
Contained within a
specific
<MerchandiseHierarchy
> section.
The merchandise
hierarchy section allows
you to specify the levels
of your retail hierarchy to
which this item belongs.
You can define your
hierarchy levels in the
Configurator application.
Id — The hierarchy level
identification code.
The levels can be set to
any desired alphanumeric
values.
Example:
<MerchandiseHierarchy>
<Level Id="0">10</
Level>
<Level Id="1">20</
Level>
<Level Id="2">30</
Level>
<Level Id="3">40</
Level>
</
MerchandiseHierarchy>
Tag and structure Use Attributes Options
107
About The XML Data Input Files
<Level>
Contained within a
specific <Item> section.
Allows the definition of
price information at
different locations.
Additional information
that can be defined in the
Level element: product
attributes, alternate
description, prompt for
price flag.
LevelID
action.
Example:
<Level
levelID=”Preferred”
action=”Add”>
<LinkedItemId>
Contained within a
specific <Item> section.
The identifier of the
second item to which this
item is linked.
IdType — The form of
identifier being used for
the linked item. Options
include: “SKU”, “UPC”,
“PLU”, “MFG”, “ISBN”
and “GTIN”.
� SKU — Stock Keeping
Unit
� UPC — Universal
Product Code
� PLU — Price Look Up
� MFG — Manufacturing
Number
� ISBN — International
Standard Book Number
� GTIN — Global Trade
Item Number
Identification number
Example:
<LinkedItemList>
<LinkedItemId
IdType="PLU">2222
</LinkedItemId>
<LinkedItemId
IdType="PLU">5555
</LinkedItemId>
</LinkedItemList>
<LinkedItemList>
Contained within a
specific <Item> section.
This section allows you to
link additional items to
this item.
You might link two items
if they can not generally
be sold separately from
one another; for example,
bottles deposits and soda
pop.
Note that the list of
linked items is currently
limited to one item and it
must be a
non-merchandise item.
<MaxPrice>
Contained within a
specific <Item> section.
<MaximumQuantity>
Contained within a
specific <Item> section.
Tag and structure Use Attributes Options
108
About the Item Maintenance XML files
<MerchandiseHierarchy
>
Contained within a
specific <Item> section.
The merchandise
hierarchy section allows
you to specify the level of
your retail hierarchy to
which this item belongs.
You can define your
hierarchy levels in the
Configurator application.
<MessageID>
Contained within the
<Header> section.
A unique identifier for
this file. Used in file
tracking and
troubleshooting.
Alphanumeric.
Example:
123456
<MinPrice>
Contained within a
specific <Item> section.
<MinimumQuantity>
Contained within a
specific <Item> section.
<MixMatchGroup>
Contained within a
specific pricing section
(such as a
<PermanentPrice> or
<PromoPrice> tag set.)
When using multiple
pricing, the
MixMatchGroup is the
group of items that can
be treated as the same
item when calculating the
price.
Note that this is not the
same usage of the term
“MixMatch”, used
throughout SAP Enterprise POS (where
it is generally a method of
applying discounts), but is
rather an industry
standard term.
Group number.
Example:
<MixMatchGroup>50</
MixMatchGroup>
<MSRP>
Contained within a
specific <Item> section.
<Originator>
Contained within the
<Header> section.
Identifies the originating
application or component
for this file.
The name of the
originating component.
Example:
<Originator>ItemMainte
nanceAdapter</
Originator>
Tag and structure Use Attributes Options
109
About The XML Data Input Files
<OrganizationID>
Contained within a
specific <Header>
section.
<Pack>
Contained within a
specific <Item> section.
<PackQuantity>
Contained within a
specific <ItemPack>
section.
<PackQuantityFlag>
Contained within a
specific <Item> section.
true or false
<PermanentPrice>
Contained within a
specific <Price> section.
This section allows you to
define permanent pricing
information for the given
item.
Tag and structure Use Attributes Options
110
About the Item Maintenance XML files
<Price>
Contained within a
specific <Item> section.
This section allows you to
define detailed pricing
information for the given
item.
RequireUseOfThisPrice
(optional) — indicates
whether a local price
change should be
overwritten with any new
pricing information (true
or false).
Example:
<Price>
<PermanentPrice>
<PriceMethod>BasePl
usOne</
PriceMethod>
<Amount>1.23</
Amount>
<Sign>Positive</
Sign>
<Quantity>2</
Quantity>
</PermanentPrice>
<PromoPrice>
<PriceMethod>BasePl
usOne</
PriceMethod>
<Amount>1.23</
Amount>
<Sign>Positive</
Sign>
<Quantity>2</
Quantity>
<EffectiveDateTime>
2003-03-16T16:24:00-0
5:00</
EffectiveDateTime>
<ExpirationDateTime
>2003-03-23T16:24:00
-05:00</
ExpirationDateTime>
</PromoPrice>
</Price>
Tag and structure Use Attributes Options
111
About The XML Data Input Files
<Price>
Contained within a
specific <Level> section.
Method: Indicates the
unit price.
Amount: Specifies the
value.
Quantity: The item
quantity.
MixMatchGroup: A
string describing a mix
match group.
FixedTax: Allows you to
add a fixed tax, authority
ID and amount.
FuturePrice: Indicates
pricing, an amount and
when the pricing takes
effect.
<Price>
<PriceMethod>UnitPrice
not \</PriceMethod>
<Amount>1.00</
Amount>
<Quantity>2</
Quantity>
<MixMatchGroup>64</
MixMatchGroup>
<FixedTaxActon=”Add”
><TaxAuthorityID>Tax1
01</
TaxAuthorityID><Amou
nt>0.25</Amount>
Within FuturePrice:
PriceMethod
Amount
Quantity
MixMatchGroup
FixedTax
EffectiveBusinessDayDat
e
<Price>
<PriceEntryRequiredFlag
>
Contained within a
specific <Item> section.
This flag indicates
whether a price must be
manually entered for this
item.
true or false
<PriceMethod>
Contained within a
specific pricing section
(such as a
<PermanentPrice> or
<PromoPrice> tag set.)
This tag determines the
pricing method to be
used for this item.
Note that, if this tag is
not present in the file, the
pricing method is
assumed to be
“UnitPrice”.
One of the following
defined options:
� UnitPrice
� BasePlusOne
� HighestPrice
� GroupThreshold
� LimitedQuantity —
not currently
supported
� ReducedPrice — not
currently supported
<PriceEntryRequiredFlag
>
Contained within a
specific <Level> section.
true or false
Tag and structure Use Attributes Options
112
About the Item Maintenance XML files
<PriceOverridableFlag>
Contained within a
specific <Item> section.
This flag indicates
whether the set price for
this item may be manually
overridden or not.
true or false
<PriceVerifyFlag>
Contained within a
specific <Item> section.
This flag specifies
whether or not the input
price for this item must
be manually verified.
true or false
<PrintMsrp>
Contained within a
specific <Item> section.
true or false
<PromoPrice>
Contained within a
specific <Price> section.
This section allows you to
define promotional
pricing information for
the given item, if
applicable.
Not currently supported
<Quantity>
Contained within a
specific pricing section
(such as a
<PermanentPrice> or
<PromoPrice> tag set.)
For the “BasePlusOne”
and “HighestPrice”
pricing methods, the
quantity is often called a
multiple. For other
pricing types, it is a
quantity threshold.
Numeric value.
Example:
<Quantity>2</
Quantity>
<QuantityAllowedFlag>
Contained within a
specific <Item> section.
This flag indicates
whether a quantity may
be entered for this item
(if not, multiples must
each be entered
separately).
true or false
<QuantityRequiredFlag>
Contained within a
specific <Item> section.
This flag indicates
whether a quantity must
be entered for this item.
true or false.
If false, then the
UnitOfMeasure is
countable. If true, then
UnitOfMeasure is
assumed to be “unit”.
Unit is a well known
configuration of unit of
measure defined in the
Configurator.
<RequiredDataType>
Contained within a
specific
<SellRequiredInfo>
section.
Tag and structure Use Attributes Options
113
About The XML Data Input Files
<RestrictionGroupId>
Contained within a
specific <Item> section.
This tag allows you to
specify the restriction
group to which this item
belongs.
Not currently supported.
The restriction group
identification code
(alphanumeric).
<ReturnCustomerProfile
ID>
Contained within a
specific <Item> section.
<ReturnDateEligibilityI
D>
Contained within a
specific <Item> section.
Tag and structure Use Attributes Options
114
About the Item Maintenance XML files
<ReturnDocument>
Contained within a
specific <Item> section.
This tag allows you to
specify a document that
must be printed when
this item is returned (for
example, a customer
reason card).
These documents are
defined in the
Configurator.
The syntax is as follows:
[DocumentName,
Destination,Timing]
Where:
� DocumentName is
the Document ID
defined in the
Configurator.
� Destination is one of:
Receipt - The Default
Receipt Printer.
Slip - The Default Slip
Printer.
Journal - The default
Journal Printer.
Popup - The POS
User Interface Pop-up
Window.
EJV - The Document
is archived to the POS
Transaction Log and is
available for viewing
via the Electronic
Journal Viewer.
LPT - The Default
LPT Printer.
Info - The POS User
Interface Information
Window.
Detail - The POS
User Interface Detail
Window.
ScrnRcpt - The POS
User On Screen
Receipt.
Prompt - The POS
User Interface Prompt
Window.
Instruction - The
POS User Interface
Instruction Window.
System - The PoS
User Interface System
Window.
� Timing is one of:
EOT - The
Document is triggered
at the end of a
transaction and is
composed using the
entire transaction
detail.
The name or identification
code of the document to
be printed.
Note that Document
Names, Destinations and
Timings are case sensitive.
Multiple occurrences are
allowed. For example,
[DocumentName1,Destin
ation,Timing][Document
Name2,Destination,Timin
g][DocumentName3,Desti
nation,Timing].
Tag and structure Use Attributes Options
115
About The XML Data Input Files
<ReturnDocument>
Cont’d.
Now - The Document
is triggered
immediately and
contains only
information relating to
the current function.
For example, the
details of the Item
Sale, but not the entire
Transaction.
Later - The
Document is triggered
at the end of a
transaction and
contains only
information relating to
the current function.
For example, the
details of the Item
Sale, but not the entire
Transaction.
<ReturnableFlag>
Contained within a
specific <Item> section.
This flag indicates
whether this item can be
returned after purchase.
true or false
<ReturnRequiredInfo>
See also,
<SellRequiredInfo>
Contained within the
<Item> section.
Contains a set of
<RequiredDataType>
tags.
Specifies a list of data
types required for
returning this item.
To specify an item that has
an age restriction,
configure a prompt for
age validation. The
datatype for this prompt
must be listed in this tag.
For example, configure a
prompt with the custom
datatype “over18prompt”
for age verification. The
ItemMaintenance import
XML document must
include the tags
<ReturnRequiredInfo>
<RequiredDataType>over
18prompt<RequiredData
Type>
</ReturnRequiredInfo>.
<SellCustomerProfileID
>
Contained within a
specific <Item> section.
<SellDateEligibilityID>
Contained within a
specific <Item> section.
Tag and structure Use Attributes Options
116
About the Item Maintenance XML files
<SellableFlag>
Contained within a
specific <Item> section.
This flag indicates
whether this item can be
sold.
An example of a
non-sellable item might
be an item that has been
recently recalled or
scheduled to be pulled
from shelves.
true or false
Tag and structure Use Attributes Options
117
About The XML Data Input Files
<SellDocument>
Contained within a
specific <Item> section.
This tag allows you to
specify a document that
must be printed when
this item is sold (for
example, a warranty
card).
These documents are
defined in the
Configurator.
The syntax is as follows:
[DocumentName,
Destination,Timing]
Where:
� DocumentName is
the Document ID
defined in the
Configurator.
� Destination is one of:
Receipt - The Default
Receipt Printer.
Slip - The Default Slip
Printer.
Journal - The default
Journal Printer.
Popup - The POS
User Interface Pop-up
Window.
EJV - The Document
is archived to the POS
Transaction Log and is
available for viewing
via the Electronic
Journal Viewer.
LPT - The Default
LPT Printer.
Info - The POS User
Interface Information
Window.
Detail - The POS
User Interface Detail
Window.
ScrnRcpt - The POS
User On Screen
Receipt.
Prompt - The POS
User Interface Prompt
Window.
Instruction - The
POS User Interface
Instruction Window.
System - The PoS
User Interface System
Window.
� Timing is one of:
EOT - The
Document is triggered
at the end of a
transaction and is
composed using the
entire transaction
detail.
The name or identification
code of the document to
be printed.
Note that Document
Names, Destinations and
Timings are case sensitive.
Multiple occurrences are
allowed. For example,
[DocumentName1,Destin
ation,Timing][Document
Name2,Destination,Timin
g][DocumentName3,Desti
nation,Timing].
Tag and structure Use Attributes Options
118
About the Item Maintenance XML files
<SellDocument> Cont’d. Now - The Document
is triggered
immediately and
contains only
information relating to
the current function.
For example, the
details of the Item
Sale, but not the entire
Transaction.
Later - The
Document is triggered
at the end of a
transaction and
contains only
information relating to
the current function.
For example, the
details of the Item
Sale, but not the entire
Transaction.Now -
The Document is
triggered immediately
and contains only
information relating to
the current function.
For example, the
details of the Item
Sale, but not the entire
Transaction.
Later - The
Document is triggered
at the end of a
transaction and
contains only
information relating to
the current function.
For example, the
details of the Item
Sale, but not the entire
Transaction.
<SellMaximumQuantity
>
Contained within a
specific <Item> section.
Tag and structure Use Attributes Options
119
About The XML Data Input Files
<SellRequiredInfo>
See also,
<ReturnRequiredInfo>
Contained within the
<Item> section.
Contains a set of
<RequiredDataType>
tags.
Specifies a list of data
types required for selling
this item.
To specify an item that has
an age restriction,
configure a prompt for
age validation. The
datatype for this prompt
must be listed in this tag.
For example, configure a
prompt with the custom
datatype “over18prompt”
for age verification. The
ItemMaintenance import
XML document must
include the tag
<SellRequiredInfo>
<RequiredData>
over18prompt
</RequiredData>
</SellRequiredInfo>.
<SerializedFlag>
Contained within a
specific <Item> section.
This flag indicates
whether this item is part
of a series.
true or false
<ServiceID>
Contained within a
specific <Header>
section.
<Sign>
Contained within a
specific pricing section
(such as a
<PermanentPrice> or
<PromoPrice> tag set.)
This tag allows you to
indicate whether the
amount to be applied is
positive (such as when a
customer buys a stock
item) or negative (such as
when a customer returns
bottles for a deposit
refund).
One of the following:
� Positive
� Negative
<SuspendableFlag>
Contained within a
specific <Item> section.
<TaxAuthorityID>
Contained within a
specific <FixedTax>
section.
<TaxGroupID>
Contained within a
specific <Item> section.
This tag specifies the tax
group which applies to
this item.
Tax groups are defined in
the Configurator.
Example:
<TaxGroupID>AC</
TaxGroupID>8
Tag and structure Use Attributes Options
120
About the Item Maintenance XML files
<Timestamp>
Contained within the
<Header> section.
Marks the time at which
this file was sent.
Date and time in the
prescribed format:
YYYY-MM-DDTHH:M
M:SS-hh:mm where
“hh:mm” is the difference
between GMT and your
local time.
Example:
<Timestamp>2003-01-31
T17:00:00-05:00</
Timestamp>
<UnitOfMeasure>
Contained within a
specific <Item> section.
The unit of measure by
which this item is sold.
If the
QuantityRequiredFlag is
true, then the unit of
measure is assumed to be
“unit”.
The unit of measure is
assumed to be countable
if the
QuantityRequiredFlag is
false.
Units of measurement are
defined in the
Configurator.
<UseDepartmentSettings
Flag>
Contained within a
specific <Item> section.
true or false
<WeighableFlag>
Contained within a
specific <Item> section.
This flag indicates
whether this item may be
weighed at the POS.
Not currently supported.
true or false
<WICEligibility>
Contained within a
specific <Item> section.
This flag indicates
whether this item is
eligible for Women/
Children/Infant
subsidies.
Not currently supported.
true or false
<WorkstationID>
Contained within a
specific <Header>
section.
Tag and structure Use Attributes Options
121
About The XML Data Input Files
Item Maintenance schemas
The item maintenance files are defined by a series of .XSD schemas. The schemas define the tag
formats to be used in the import .XML files, as well as the options and delimitations for each tag
element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Three schemas are used to represent different parts of the item maintenance file function:
� The ItemMaintenance.xsd schema contains the tags and options for all of the item and pricing
input data. This schema will help you to understand how to format the data you import into the
SAP Enterprise POS system.
� The ItemMaintenanceAck.xsd schema contains the tags for the acknowledgement file which
you receive after importing item maintenance files to confirm that the data import was successful.
This schema will help you to understand these acknowledgement files.
� The IntegrationMessageHeader.xsd schema contains the tags for the ‘envelope’ of system data
which SAP wraps around your item maintenance files, in order for the SAP Enterprise POS
system (and other compatible retail applications) to understand and process the file. This includes
header and footer information and system parsing tags.
About the Department Maintenance XML filesThe department maintenance files are used to import information needed for open department sales
and returns into the SAP Enterprise POS system.
Department Maintenance schemas
The department maintenance files are defined by a series of .XSD schemas. The schemas define the tag
formats to be used in the import .XML files, as well as the options and delimitations for each tag
element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Two schemas are used to represent different parts of the department maintenance file function:
� The DepartmentMaintenance.xsd schema contains the tags and options for all of the open
department sales and return input data.
� The DepartmentMaintenanceAck.xsd schema contains the tags for the acknowledgement file
which you receive after importing department maintenance files to confirm that the data import
was successful. This schema will help you to understand these acknowledgement files.
About the Employee Maintenance XML filesThe employee maintenance files are used to import employee information into the SAP Enterprise
POS system.
122
About the Item Hierarchy Maintenance XML files
Employee Maintenance schemas
The employee maintenance files are defined by a series of .XSD schemas. The schemas define the tag
formats to be used in the import .XML files, as well as the options and delimitations for each tag
element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Two schemas are used to represent different parts of the employee maintenance file function:
� The EmployeeMaintenance.xsd schema contains the tags and options for all of the employee
information input data.
� The EmployeeMaintenanceAck.xsd schema contains the tags for the acknowledgement file
which you receive after importing employee maintenance files to confirm that the data import was
successful. This schema will help you to understand these acknowledgement files.
About the Item Hierarchy Maintenance XML filesThe item hierarchy maintenance files are used to import information about item hierarchies (such as
departments, sub-departments and so forth) into the SAP Enterprise POS system.
Item Hierarchy Maintenance schemas
The item hierarchy maintenance files are defined by a series of .XSD schemas. The schemas define the
tag formats to be used in the import .XML files, as well as the options and delimitations for each tag
element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Two schemas are used to represent different parts of the item hierarchy maintenance file function:
� The ItemHierarchyMaintenance.xsd schema contains the tags and options for all of the item
hierarchy input data.
� The ItemHierarchyMaintenanceAck.xsd schema contains the tags for the acknowledgement
file which you receive after importing item hierarchy maintenance files to confirm that the data
import was successful. This schema will help you to understand these acknowledgement files.
About the Promotion Maintenance XML filesThe promotion maintenance files are used to import promotional information into the SAP Enterprise
POS system.
Promotion Maintenance schemas
The promotion maintenance files are defined by a series of .XSD schemas. These schemas define the
tag formats to be used in the import .XML files, as well as the options and delimitations for each tag
element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Two schemas are used to represent the promotion maintenance file function:
123
About The XML Data Input Files
� The PromotionMaintenance.xsd schema contains the tags and options for all of the promotion
input data.
� The PromotionMaintenanceAck.xsd schema contains the tags for the acknowledgement file
which you receive after importing promotion maintenance files to confirm that the data import
was successful. This schema will help you to understand these acknowledgement files.
About the MixMatch Pricing Maintenance XML filesThe MixMatch Pricing maintenance files are used to import mixmatch pricing and promotion
information into the SAP Enterprise POS system.
MixMatch Pricing Maintenance schemas
The mixmatch pricing maintenance files are defined by a series of .XSD schemas. The schemas define
the tag formats to be used in the import .XML files, as well as the options and delimitations for each
tag element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Two schemas are used to represent different parts of the mixmatch pricing maintenance file function:
� The MixMatchPricingMaintenance.xsd schema contains the tags and options for all of the
mixmatch pricing input data.
� The MixMatchPricingMaintenanceAck.xsd schema contains the tags for the
acknowledgement file which you receive after importing mixmatch pricing maintenance files to
confirm that the data import was successful. This schema will help you to understand these
acknowledgement files.
About the Site Parameter Maintenance XML filesThe site parameter maintenance files are used to import information about your physical site
parameters into the SAP Enterprise POS system.
Site Parameter Maintenance schemas
The site parameter maintenance files are defined by a series of .XSD schemas. The schemas define the
tag formats to be used in the import .XML files, as well as the options and delimitations for each tag
element. Because this is an .XML based system, the tags are intuitively named, so that most of the
information required is easily understood based on the name of the tag, the names of the available
options and your understanding of the retail industry.
Two schemas are used to represent different parts of the site parameter maintenance file function:
� The SiteParameterMaintenance.xsd schema contains the tags and options for all of the physical
site parameter input data.
� The SiteParameterMaintenanceAck.xsd schema contains the tags for the acknowledgement file
which you receive after importing site parameter maintenance files to confirm that the data import
was successful. This schema will help you to understand these acknowledgement files.
124
About the Validation Maintenance XML files
Export Trigger schemas
The export trigger files are defined by a series of .XSD schemas. The schemas define the tag formats to
be used in the import .XML files, as well as the options and delimitations for each tag element. Because
this is an .XML based system, the tags are intuitively named, so that most of the information required
is easily understood based on the name of the tag, the names of the available options and your
understanding of the retail industry.
Two schemas are used to represent different parts of the export trigger file function:
� The ExportTriggerAck.xsd schema contains the tags for the acknowledgement file which you
receive after exporting files to confirm that the data export was successful. This schema will help
you to understand these acknowledgement files.
About the Validation Maintenance XML filesThe item maintenance files are used to validate the quality of data in your system and to help maintain
a variety of validation tables, such as the positive and negative check files, BIN ranges and so forth.
Validation Maintenance schemas
The validation maintenance files are defined by a series of .XSD schemas. The schemas define the tag
formats to be used in the .XML files, as well as the options and delimitations for each tag element.
Because this is an .XML based system, the tags are intuitively named, so that most of the information
required is easily understood based on the name of the tag, the names of the available options and your
understanding of the retail industry.
Two schemas are used to represent different parts of the validation maintenance file function:
� The ValidationMaintenance.xsd schema contains the tags and options for your validation
maintenance input files.
� The ValidationMaintenanceAck.xsd schema contains the tags for the acknowledgement file
which you receive after importing validation maintenance files into the system. This schema will
help you to understand these acknowledgement files.
Operational data updateOperational data is defined as data that is integral to core business concepts. For example, operational
data is store specific and is part of the daily operation of a store and its customers; it can be divided
into the following data types:
� Department
� Employee
� Item Hierarchy
� Item
� Mix Match
� Promotion
� Site Parameters
� Validation
125
About The XML Data Input Files
An operational data update request specifies sites for which the request should be applied, data types
and the operation to apply to those data types, either clone, reset or delete. The update request is
performed using the data import utility and adding the name of an XML file as a parameter. It is the
XML file that contains the operational data update request. For example:
DataImport.bat jb232 CloneStore1Data.xml
where CloneStore1Data.xml is the name of the file that contains the request and jb323 indicates the
application server that is running SAP Enterprise POS.
The following sample requests are published with the schemas and can be found on the compact disk
supplied by SAP. The schema that is used is OperationalDataUpdateRequest.xsd.
OperationalDataUpdate_ResetPOSRequest.xml.
OperationalDataUpdate_DeleteStoreDataRequest.xml.
OperationalDataUpdate_CloneStoreRequest.xml
Resetting a store server
If a store server experiences problems that render the database unusable and requires the operational
data be retrieved, this data can be copied from the head office to a store using the Reset POS server
request.
Before resetting the operational data for a store, you must first delete any data that still exists on the
server, using the Delete Store Data request, before re-importing the operational data.
The tags found in the request XML files are:
� DataType - The type of operational data. For example, item, employee and so forth. Multiple data
types can be specified, but do not duplicate data types and do not use in combination with the
AllDataTypes tag.
� AllDataTypes - Specifies that all data types be restored. Do not use in combination with the
DataType tag.
The stores to which the request apply are specified in the request header under the RetailStoreID tags.
Deleting store data
Deleting store data is necessary for the reset function because the data on the server must be deleted
prior to the database’s re-population with valid operational data.
The tags found in the request XML files are identical to the reset request except the action that is
performed is a delete:
� DataType - The type of operational data. For example, item, employee and so forth. Multiple data
types can be specified, but do not duplicate data types and do not use in combination with the
AllDataTypes tag.
� AllDataTypes - Specifies that all data types be restored. Do not use in combination with the
DataType tag.
Cloning store data
Cloning store data simplifies the setup of a new store. A clone store request is issued specifying an
existing store known to be running the same type of operational data that is required for the new store.
All of the operational data can be imported automatically.
126
Operational data update
The tags found in the request xml files are:
� DataType - The type of operational data. For example, item, employee and so forth. Multiple data
types can be specified, but do not duplicate data types and do not use in combination with the
AllDataTypes tag.
� AllDataTypes - Specifies that all data types be restored. Do not use in combination with the
DataType tag.
� SourceRetailStoreID - Indicates which stores’ operational data to copy to the new store. The
format is the organization ID, followed by a period, followed by the site ID. For example,
XandY.123
where XandY is the organization ID and 123 is the site ID.
127
About The XML Data Input Files
128
Known Data Types
This section describes the known data types residing in the SAP Enterprise POS system.
Topics in this section include:
� “About the known data types” on page 129
� “Known data types” on page 130
About the known data typesYou can specify that certain types of information be captured and saved to the TLog during a
transaction by creating a prompt requiring the cashier to enter the desired type of data. The cashier is
literally “prompted” by the POS system to enter the desired data at a defined point in the transaction;
depending on the validation rule configured for the prompt, the transaction may not be completed
until the data is entered. All such prompts are custom-defined in the Configurator component of SAP
Enterprise POS. (For more information, see the section on “Configuring Prompt Lines” in the
Configurator User Guide.)
For each prompt you define, you can specify the type of data you want to capture (such as customer
name and address information, transaction line data and so forth), by selecting either a Known Data
Type (for commonly captured types of information), or by describing a unique Custom Data Type (if
no corresponding known data type has been defined). All data captured at a POS prompt is then
identified by data type and stored to the TLog together with the rest of the information for that
transaction.
In the TLog, the data is presented in a <SupplementalData> tag section at the <LineItem> level, with
a sub-section tag denoting the type of data and containing the information captured. For example:
<LineItem>
...
<SupplementalData>
<PRICE>255.00</PRICE>
<ITEM_KEY>7777</ITEM_KEY>
<_datasource_>Keyboard</_datasource_>
</SupplementalData>
...
</LineItem>
129
Known Data Types
Known data types
The following table lists all of the known data types currently coded into the SAP Enterprise POS
system. It includes the name of the data type, a brief description of the data involved, the format of the
data (for example: alphanumeric string, integer, calendar entry and so forth) and the code behind the
data type.
Note: All data types are case sensitive: they must always appear exactly as shown here.
Data type Description Format Code
_cancelledprompt_ Used to indicate to the server that a
prompt was cancelled. This requires the
active prompt to have the Enable
Cancel flag set. The TLog will capture
the prompt that was active when the
cancel was hit.
string DT_CANCELLED_PR
OMPT =
"_cancelledprompt_";
_datasource_ The input source for the data — for
example: keyboard, MSR, scanner and
so forth.
Note that this data type is not meant to
be seen by the user and is filled in
automatically by the data entry
processor.
string DT_DATASOURCE =
"_datasource_";
_original_datasource_ The original input source for the data —
for example: keyboard, MSR, scanner
and so forth.
Note that this data type is not seen by
the user and is filled in automatically by
the data entry processor when
processing a triggered or spawned UDF.
This will be the value of the
DT_DATASOURCE parameter
included in the initial parameters for the
triggered UDF in the response.
string DT_ORIGINAL_DATA
SOURCE =
"_original_datasource_";
ACCOUNT_ID Used to capture the Account ID,
Account Number, G/L Code, Cost
Centre Number.
string DT_ACCOUNT_ID=
“ACCOUNT_ID”
ACCOUNT_TYPE An account type, i.e. checking versus
savings, as selected by a PIN Pad user.
string DT_ACCOUNT_TYPE
=”ACCOUNT_TYPE”
ACCOUNTING_BUSIN
ESS_DAY
The accounting business day. calendar DT_ACCOUNTING_B
USINESS_DAY=”ACC
OUNTING_BUSINESS
_DAY”
ACTION_CODE An action code. string DT_ACTION_CODE=”
ACTION_CODE”
ADDITIONAL_SECURI
TY_INFO
Additional security information as
provided by a PIN Pad
string DT_ADDITIONAL_SE
CURITY_INGO=”ADD
ITIONAL_SECURITY_
INFO”
130
About the known data types
ADDRESS_1 The first line of the customer’s address. string DT_ADDRESS_1 =
"ADDRESS_1";
ADDRESS_2 The second line of the customer’s
address.
string DT_ADDRESS_2 =
"ADDRESS_2";
ADDRESS_3 The third line of the customer’s address. string DT_ADDRESS_3 =
"ADDRESS_3";
ADDRESS_4 The fourth line of the customer’s
address.
string DT_ADDRESS_4 =
"ADDRESS_4";
ADDRESS_CITY The city portion of an address. string DT_ADDRESS_CITY=
”ADDRESS_CITY”
ADDRESS_COUNTRY The country in which the customer
lives.
string DT_ADDRESS_COUN
TRY =
"ADDRESS_COUNTRY
";
ADDRESS_COUNTY The county in which the customer lives. string DT_ADDRESS_COUN
TY =
"ADDRESS_COUNTY";
ADDRESS_UNIT_NUM
BER
The unit number of an address. string DT_ADDRESS_UNIT_
NUMBER=”ADDRESS
_UNIT_NUMBER”
ADDRESS_STREET The street address, including street
number and street name.
string DT_ADDRESS_STREE
T=”ADDRESS_STREE
T”
ADDRESS_ID The address ID data type. string DT_ADDRESS_ID=”A
DDRESS_ID”
ADDRESS_POSTAL_CO
DE
The postal code of the customer’s
address.
string DT_ADDRESS_POSTA
L_CODE =
"ADDRESS_POSTAL_C
ODE";
ADDRESS_STATE_PRO
VINCE
The state or province in which the
customer lives.
string DT_ADDRESS_STATE
_PROVINCE =
"ADDRESS_STATE_PR
OVINCE";
ALLOW_PAST_CUTOFF
_TIME
Allow past cutoff time result. string DT_ALLOW_PAST_CU
TOFF_TIME=”ALLOW
_PAST_CUTOFF_TIME
”
ALLOW_PENDING Specifies if item is allowed as a pending
item.
string DT_ALLOW_PENDIN
G=”ALLOW_PENDIN
G”
ALLOW_SELL Indicates if something can be sold. string DT_ALLOW_SELL=”A
LLOW_SELL”
ALLOW_ZERO_PRICE Allows the item price to be zero. boolean DT_ALLOW_ZERO_P
RICE=”ALLOW_ZERO
_PRICE”
Data type Description Format Code
131
Known Data Types
ALT_SEQUENCE_NUM
BER
The sequence number string DT_ALT_SEQUENCE_
NUMBER=”SEQUENC
ENUMBER”
AMOUNT The numeric amount. calendar DT_AMOUNT =
"AMOUNT";
AMOUNT_ACCEPTED Indicates if the amount of the
transaction was accepted by a PIN Pad
user.
boolean DT_AMOUNT_ACCEP
TED=”AMOUNT_ACC
EPTED”
ARRIVAL_FLIGHT_DA
TE
The arrival date of a flight. string DT_ARRIVAL_FLIGHT
_DATE=”PAX_ARR_F
LT_DATE”
ARRIVAL_FLIGHT_NA
ME
The arrival flight name. string DT_ARRIVAL_FLIGHT
_NAME=”PAX_ARR_F
LT_NAME”
ARRIVAL_FLIGHT_NU
MBER
The arrival flight number. string DT_ARRIVAL_FLIGHT
_NUMBER=”PAX_ARR
_FLT_NUM”
ARRIVAL_FLIGHT_TIM
E
The flight arrival time. string DT_ARRIVAL_FLIGHT
_TIME=”PAX_ARR_FL
T_TIME”
AUTH_SOURCE In case there is a second pass to the
client, this field is identify what source
authorized the first pass.
string DT_AUTH_SOURCE =
"AUTH_SOURCE";
AUTO_PICKUP_TRIGG
ERED
Indicates if a pickup pending goods
UDF has been triggered for the current
UDF.
string DT_AUTO_PICKUP_T
RIGGERED=”AUTO_P
ICKUP_TRIGGERED”
AUTHORIZATION_NU
MBER
The authorization number data type.
This is the number that authorizes use
of a tender.
user-defi
ned
DT_AUTH_NUM =
"AUTHORIZATION_N
UMBER"
AUTO_REFERENCE_N
UMBER
The auto reference number data type.
Note that this number is stored as
getSupplementalData in the TLog for
future reference.
string DT_AUTO_REF_NUM
=
"AUTO_REFERENCE_
NUMBER";
BANK_ACCOUNT_NU
MBER
Used to capture the bank account
number. For example, it may be
populated during the check
authorization process to capture the
account number to which the check will
apply.
string DT_BANK_ACCOUNT
_NUMBER =
"BANK_ACCOUNT_N
UMBER";
BANK_NUMBER Used to capture the bank number. string DT_BANK_NUMBER=
”BANK_NUMBER”
BIN_1 Pending transaction bin location - bin 1. string DT_BIN_1=”BIN_1”
BIN_2 Pending transaction bin location - bin 2. string DT_BIN_1=”BIN_2”
BIN_3 Pending transaction bin location - bin 3. string DT_BIN_1=”BIN_3”
Data type Description Format Code
132
About the known data types
BIN_4 Pending transaction bin location - bin 4. string DT_BIN_1=”BIN_4”
BROWSER_MENU Browser menu for POS browser. string DT_BROWSER_MENU
= "BROWSER_MENU";
BUSINESS_DATE The business date. calendar DT_BUSINESS_DATE
= "BUSINESS_DATE"
BUSINESS_LOCATION_
CODE
The business location code found on a
card’s magnetic stripe.
string DT_BUSINESS_LOCAT
ION_CODE=”CARD_
BUSINESS_LOCATIO
N_CODE”
BUSINESS_PHONE_NU
MBER
The home telephone number data type. masked
string
DT_BUSINESS_PHON
E_NUMBER=”BUSINE
SS_PHONE_NUMBER”
CANCELLED_FUNCTI
ON
Indicates if the function confirmation is
negative and the related action is to send
the cancelled function.
string DT_CANCELLED_FU
NCTION=”CANCELL
ED_FUNCTION”
CARD_CLASSIFICATIO
N
The card classification found on a card’s
magnetic stripe.
string DT_CARD_CLASSIFIC
ATION=”CARD_CLAS
SIFICATION”
CARD_HOLDER_PRES
ENT
The card holder present flag. string DT_CARD_HOLDER_
PRESENT=”CARD_H
OLDER_PRESENT”
CARD_LIMIT Specifies the tender amount limit that
can be applied against a tender type
before requiring the system to go out for
authorization (any tender amount below
this amount does not require
authorization.)
money DT_CARD_LIMIT =
"CARD_LIMIT";
CARD_NUMBER The account number for the tendered
card (credit card, debit card and so
forth.)
string DT_ACCOUNT_NUMB
ER =
"CARD_NUMBER";
CASHBACK_AMOUNT The cash back amount. string DT_CASHBACK_AMO
UNT=”CASHBACK_A
MOUNT”
CHECK_AMOUNT Indicates if the request is a customer
selection request (i.e. customer was
selected from a list of customers
returned in the previous response).
boolean DT_ITEM_LEVEL_ID
=”ITEM_LEVEL_ID”
CHECK_TYPE The check type parsed from the MICR. integer DT_CHECK_TYPE=”C
HECK_TYPE”
CHEQUE_NUMBER The check number. string DT_CHEQUE_NUM =
"CHEQUE_NUMBER";
CONFIRM_NEW_PASS
WORD
The “confirm new password” data type. string DT_CONFIRM_NEW_
PASSWORD =
"CONFIRM_NEW_PAS
SWORD";
Data type Description Format Code
133
Known Data Types
CONFIRM_OVER_TEN
DER_AMOUNT
The confirm over tender amount data
type.
string DT_CONFIRM_OVER_
TENDER_AMOUNT=”
CONFIRM_OVER_TE
NDER_AMOUNT”
CONVERTED
_AMOUNT
Foreign currency converted price. string DT_CONVERTED_AM
OUNT=”CONVERTED
_AMOUNT”
COUNTRY_CODE The country code parse from i.e. MSR,
MICR
integer DT_COUNTRY_CODE
=”COUNTRY_CODE”
COUPON_CODE Raw coupon code/barcode. string DT_COUPON_CODE=
”COUPON_CODE”
COUPON_DEPARTME
NT
Indicates if the item price in a
department should be negative.
string DT_COUPON_DEPAR
TMENT=”COUPON_D
EPARTMENT”
COUPON_DESCRIPTIO
N
The description of a coupon. string DT_COUPON_DESCRI
PTION=”COUPON_D
ESCRIPTION”
COUPON_ID The identifier of a coupon. string DT_COUPON_ID=”C
OUPON_ID”
COUPON_ITEM Indicates if the item price is negative. string DT_COUPON_ITEM=
”COUPON_ITEM”
COUPON_TABLE_ID The identifier of a coupon table. string DT_COUPON_TABLE
_ID=”COUPON_TABL
E_ID”
CREDIT_PLAN The plan number to support private
label processing.
string DT_CREDIT_PLAN=”
PLAN_NUMBER”
CUSTOMER_LOOKUP_
TIMED_OUT_FLAG
Indicates if the customer lookup timed
out.
string DT_CUSTOMER_LOO
KUP_TIMED_OUT_FL
AG=”CUSTOMER_LO
OKUP_TIMED_OUT_
FLAG”
CUSTOMER_NAME The customer name. string DT_CUSTOMER_NAM
E=”CUSTN”
CUSTOMER_PROFILE_
ID
The customer profile ID. string DT_CUSTOMER_PRO
FILE_ID=”CUSTOME
R_PROFILE_ID”
CUSTOMER_REFEREN
CE_NUMBER
The customer reference number. string DT_CUSTOMER_REF
ERENCE_NUMBER =
"CUSTOMER_REFERE
NCE_NUMBER";
CUSTOMER_SELECTIO
N_REQUEST_FLAG
string DT_CUSTOMER_SELE
CTION_REQUEST_FL
AG=”CUSTOMER_SEL
ECTION_REQUEST_F
LAG”
Data type Description Format Code
134
About the known data types
CUSTOMER_TARGETE
D_MSG
The customer targeted message. string DT_CUSTOMER_TAR
GETED_MSG=”CUST
OMER_TARGETED_M
SG”
CUSTOMER_UPDATE_
REQUIRED_FLAG
Indicates if an update is required. string DT_CUSTOMER_UPD
ATE_REQUIRED_FLA
G=”CUSTOMER_UPD
ATE_REQUIRED_FLA
G”
CUSTOMER_UPDATE_
TIME
This value is for the customer
information display.
string DT_CUSTOMER_UPD
ATE_TIME=”CUSTOM
ER_UPDATE_TIME”
CUSTOMER_VERIFICA
TION_REQUEST_FLAG
Indicates if the request is a verification
request.
string DT_CUSTOMER_VERI
FICATION_REQUEST
_FLAG=”CUSTOMER_
VERIFICATION_REQ
UEST_FLAG”
CUSTOMER_VERIFICA
TION_RESULT
Customer verification result. string DT_CUSTOMER_VERI
FICATION_RESULT=”
CUSTOMER_VERIFIC
ATION_RESULT”
DATA_CAPTURE The “data capture only” data type. This
identifies information that does not
relate to a known type in the system.
The value associated with this type must
include an identity (such as the prompt
ID) as well as the value.
DT_DATA_CAP_ONLY
= "DATA_CAPTURE";
DATEOFFSET_DAYS Used to set a date offset for a prompt
with a data validation attached. One
each for years, months and days.
integer DT_DATEOFFSET_DA
YS =
"DATEOFFSET_DAYS"
;
DATEOFFSET_MONTH
S
Used to set a date offset for a prompt
with a data validation attached. One
each for years, months and days.
integer DT_DATEOFFSET_M
ONTHS =
"DATEOFFSET_MON
THS";
DATEOFFSET_YEARS Used to set a date offset for a prompt
with a data validation attached. One
each for years, months and days.
integer DT_DATEOFFSET_YE
ARS =
"DATEOFFSET_YEAR
S";
DATETIME The date and time of the transaction. calendar DT_DATETIME =
"DATETIME";
DEPARTMENT The department identification code. string DT_DEPARTMENT =
"DEPARTMENT";
DEPARTURE_FLIGHT_
CUTOFF_TIME
The departure flight cutoff time. string DT_DEPARTURE_FLI
GHT_CUTOFF_TIME=
”PAX_DEP_FLT_CUT”
Data type Description Format Code
135
Known Data Types
DEPARTURE_FLIGHT_
DATE
The departure flight date. string DT_DEPARTURE_FLI
GHT_DATE=”PAX_D
EP_FLT_DATE”
DEPARTURE_FLIGHT_
NAME
The departure flight name. string DT_DEPARTURE_FLI
GHT_NAME=”PAX_D
EP_FLT_NAME”
DEPARTURE_FLIGHT_
NUMBER
The departure flight number. string DT_DEPARTURE_FLI
GHT_NUMBER=”PAX
_DEP_FLT_NUM”
DEPARTURE_FLIGHT_
TIME
The departure flight time. string DT_DEPARTURE_FLI
GHT_TIME=”PAX_DE
P_FLT_TIME”
DESCRIPTION The item description. string DT_DESCRIPTION =
"DESCRIPTION";
DEVICE_ID The device (terminal) identifier. string DT_DEVICE_ID =
"DEVICE_ID";
DISABLE_FUNCTION_
AUTH
Indicates if function authorization
should be performed or not.
string DT_DISABLE_FUNCTI
ON_AUTH=”DISABLE
_FUNCTION_AUTH”
DISCOUNTABLE Indicates if an item is discountable. boolean DT_DISCOUNTABLE=
”DISCOUNTABLE”
DISCOUNT_PRESET_A
MOUNT
The discount preset amount. big
decimal
DT_DISCOUNT_PRES
ET_AMOUNT =
"DISCOUNT_PRESET_
AMOUNT";
DISPLAY_PICKLIST Used to indicate whether to display a
pick list.
string DT_DISPLAY_PICKLIS
T=”DISPLAY_PICKLIS
T”
DISPLAY_PROMPT string DT_DISPLAY_PROMP
T=”DISPLAY_PROMP
T”
DOCUMENT_PROMPT Identifies document confirmation
prompts.
string DT-DOCUMENT_PRO
MPT=”DOCUMENT_P
ROMPT”
DRIVERS_LICENSE_N
UM
The customer’s driver's license number. string DT_DRIVERS_LICENS
E_NUM =
"DRIVERS_LICENSE_
NUM";
DRIVERS_LICENSE_ST
ATE
The state listed on the driver's license. string DT_DRIVERS_LICENS
E_STATE =
"DRIVERS_LICENSE_
STATE";
EFFECTIVE_BUSINESS
_DATE
Defines a business date to be applied to
re-entered transactions.
string DT_EFFECTIVE_BUSI
NESS_DATE=”EFFEC
TIVE_BUSINESS_DAT
E”
Data type Description Format Code
136
About the known data types
EFT_TRANSACTION_I
D
Identifier for an Electronic Funds Transfer
request. This identifier is only required
in cases where the POS client must
generate an identifier and send it to the
business logic (for example, when using
a JavaLink-based MSR device.)
string DT_EFT_TRANSACTI
ON_ID =
"EFT_TRANSACTION
_ID";
EMAIL_ADDRESS The E-Mail address. masked
string
DT_EMAIL_ADDRESS
=”EMAIL_ADDRESS”
EMERGENCY_MODE_
TRAINING_NOT_ALL
OWED
This code represents the instruction tot
he client that training mode is not
allowed because the client is in
emergency mode.
string DT_EMERGENCY_M
ODE_TRAINING_NO
TE_ALLOWED=”EME
RGENCY_MODE_TRA
INING_NOT_ALLOW
ED”
ENTERPRISE_CODE The enterprise code found on a card’s
magnetic stripe.
string DT_ENTERPRISE_CO
DE=”CARD_ENTERP
RISE_CODE”
EOD_BYPASS_MINIMU
M_STORE_OPEN_TIM
E
Identifies an end of day minimum store
open time flag.
string DT_EOD_BYPASS_MI
NIMUM_STORE_OPE
N_TIMING=”EOD_BY
PASS_MINIMUM_STO
RE_OPEN_TIMING”
EOD_BYPASS_NEXT_B
USINESS_DATE_DIFFE
RENCE
Identifies an end of day bypass next
business date difference flag.
string DT_EOD_BYPASS_NE
XT_BUSINESS_DATE_
DIFFERENCE=”EOD_
BYPASS_NEXT_BUSIN
ESS_DATE_DIFFERE
NCE”
EOD_BYPASS_TILL_ST
ATE
Identifies an end of day till state check
flag.
string DT-EOD_BYPASS_TIL
L_STATE=”EOD_BP_
TILL_STATE”
EOD_BP_INCOMPLET
E_TRX
End of day bypass incomplete
transaction condition flag.
string DT_EOD_BYPASS_IN
COMPLETE_TRX =
"EOD_BP_INCOMPLE
TE_TRX";
EOD_BP_TERMINAL End of day bypass open terminal
condition flag.
string DT_EOD_BYPASS_OP
ENED_TERMINALS =
"EOD_BP_TERMINAL
";
EOTRX_TRIGGER_ID End of transaction trigger ID. string DT_EOTRX_TRIGGE
R_ID=”EODTRX_TRI
GGER_ID”
EPIN Encrypted Personal Identification Number
(such as those used with debit cards).
string DT_EPIN = "EPIN";
ETHNICITY A person’s ethnicity. string DT_ETHNICITY=”PA
X_ETHN”
Data type Description Format Code
137
Known Data Types
EXCHANGE_RATE The foreign currency exchange rate. string DT_EXHANGE_RATE
=”EXCHANGE_RATE
”
EXPECTED_PICKUP_D
ATE
Expected date when the pending item(s)
will be picked up.
string DT_EXPECTED_PICK
UP_DATE=”EXPECTE
D_PICKUP_DATE”
EXPIRY_DATE The expiry date (for example, for a
credit card).
string DT_EXP_DATE =
"EXPIRY_DATE";
EXTERNAL_SYS_UPDA
TE_RESULT
External system update result. string DT_EXTERNAL_SYS_
UPDATE_RESULT=”E
XTERNAL_SYS_UPDA
TE_RESULT”
EXTERNAL_SYSTEM_A
UTHORITY_LEVEL
The external system authority level data
type.
integer DT_EXTERNAL_SYST
EM_AUTHORITY_LEV
EL=”EXTERNALSYST
EMAUTHLEVEL”
EXTERNAL_SYSTEM_
OPERATOR_ID
The operator ID data type for external
system sign on.
string DT_EXTERNAL_SYST
EM_OPERATOR_ID=”
EXTSYSOPID”
FACILITY_NO The facility number. string DT_FACILITY_NO=”F
N”
FEE_ID Identifies a fee to be applied or
overridden.
string DT_FEE_ID=”FEE_ID
”
FIRST_NAME The customer’s first name. string DT_FIRST_NAME =
"FIRST_NAME";
FOREIGN_CURRENCY
_AMOUNT
The foreign currency amount data type. string DT_FOREIGN_CURRE
NCY_AMOUNT=”FOR
EIGN_CURRENCY_A
MOUNT”
FUNC_AUTH_DATA A list of all data prompts that are flagged
to be included in the function
authorization request.
string DT_FUNC_AUTH_DA
TA=”FUNCTION_AUT
HORIZATION_DATA”
FUNC_AUTH_RESULT The response received from the
authorizer.
string DT_FUNC_AUTH_RES
ULT=”FUNCTIONAL_
AUTHORIZATION_RE
SULT”
FUTURE_PRICE The future price data type. string DT_FUTURE_PRICE=
”FUTURE_PRICE”
FUTURE_PRICE_EFFE
CTIVE_DATE
The future price effective date. calendar DT-FUTURE_PRICE_E
FFECTIVE_DATE=”F
UTURE_PRICE_EFFE
CTIVE_DATE”
GLOBAL_STATE_UPDA
TE_REQUIRED
Indicates if the global state should be
updated.
string DT_GLOBAL_STATE_
UPDATE_REQUIRED
=”GLOBAL_STATE_U
PDATE_REQUIRED”
Data type Description Format Code
138
About the known data types
HARDWARE_RESPONS
E
Used to carry a response from a
hardware prompt (for example, when
being prompted to insert a slip form.)
string DT_HARDWARE_RES
PONSE =
"HARDWARE_RESPO
NSE";
HOME_PHONE_NUMB
ER
The home telephone number data type. masked
string
DT_HOME_PHONE_
NUMBER=”HOME_P
HOME_NUMBER”
ICC_APPLICATION_ID Identifies a single service available on a
Smart Card (or ICC — Integrated Chip
Card). For example, a credit service
(such as Visa or Master Card) or a loyalty
points program.
string DT_ICC_APPLICATIO
N_ID =
"ICC_APPLICATION_I
D";
ICC_APPLICATION_LIS
T
List of all services available on an
Integrated Chip Card. Each element of
the property map array is a property of
type DT_ICC_APPLICATION_ID.
property
map [ ]
DT_ICC_APPLICATIO
N_LIST =
"ICC_APPLICATION_L
IST";
IP_ADDRESS The IP address of the machine that the
register is running on. This data type is
not meant to be seen by the user and is
filled in automatically by the data entry
processor.
string DT_IP_ADDRESS =
"IP_ADDRESS";
ISSUE_NUMBER The number embossed on the front of a
credit card and encoded on Track 2 of
the magnetic strip, which allows the card
issuer to uniquely identify individual
cards issued on the same account.
string DT_ISSUE_NUMBER
= "ISSUE_NUMBER";
ITEM_KEY The item key. string DT_ITEM_KEY =
"ITEM_KEY";
ITEM_KEY_TYPE The item key type. string DT_ITEM_KEY_TYPE
=”ITEM_KEY_TYPE”
ITEM_LEVEL_ID The item level ID to identify the price
level.
string DT_ITEM_LEVEL_ID
=”ITEM_LEVEL_ID”
JOURNAL Receipt image string. string DT_JOURNAL=”JOUR
NAL”
KEYBOARD_KEY The POS keyboard keystroke. string DT_POSKEYBOARD_
DATA =
"KEYBOARD_KEY";
LANGUAGE_ID The language specified on a debt/credit
card in ISO format.
string DT_LANGUAGE_ID=”
LANGUAGE_ID”
LAST_PAYMENT_AMO
UNT
The last payment amount for a pending
transaction.
string DT_LAST_PAYMENT_
AMOUNT=”LAST_PAY
MENT_AMOUNT”
LAST_PAYMENT_DATE The last payment date for a pending
transaction.
string DT_LAST_PAYMENT_
DATE=”LAST_PAYME
NT_DATE”
Data type Description Format Code
139
Known Data Types
LINE_NUMBER The transaction line number. integer DT_LINE_NUM =
"LINE_NUMBER";
LINE_NUMS Each element of the property map array
is property of type DT_LINE_NUM.
string DT_LINE_NUMS=”LI
NE_NUMBERS”
LINKED_AMOUNT The linked amount data type. string DT_LINKED_AMOUN
T=”LINKED_AMOUN
T”
LINKED_ITEM_KEY The item key type of a linked item. string DT_LINKED_ITEM_K
EY=”LINKED_ITEM_
KEY”
LINKED_ITEM_KEY_T
YPE
The item key type of a linked item. string DT_LINKED_ITEM_K
EY_TYPE=”LINKED_I
TEM_KEY_TYPE”
LINKED_ITEM_TYPE The item type of a linked item. string DT_LINKED_ITEM_T
YPE=”LINKED_ITEM
_TYPE”
LINKED_ITEMS Array of linked items. string DT_LINKED_ITEMS=
”LINKED_ITEMS”
LOCAL_PRICE_CHANG
E_FLAG
The internal local price change flag. This
is set to true for change item regular
price in POS Manager.
string DT_LOCAL_PRICE_C
HANGE_FLAG=”LOC
AL_PRICE_CHANGE_
FLAG”
LOGICAL_TERMINAL_
ID
The logical terminal ID constructed
from the application ID, device ID and
subclient ID.
string DT_LOGICAL_TERMI
NAL_ID=”LOGICAL_
TERMINAL_ID”
MAC A MAC code is required. string DT_MAC=”MAC”
MAC_NUMBER A MAC number is required. string DT_MAC_NUMBER=”
MAC_NUMBER”
MANUAL_AUTH Used to identify a request requiring
manual authorization. This data type
should not be made available as a date
type for prompts in the configurator.
boolean DT_MANUAL_AUTH
= "MANUAL_AUTH";
MAX_AMOUNT The maximum price amount. money DT_MAX_AMOUNT=”
MAX_AMOUNT”
MICR_NUM The MICR number raw data DT_MICR_NUM=”MIC
R_NUM”
MIDDLE_INITIAL The customer’s middle initial. string DT_MIDDLE_INITIAL
= "MIDDLE_INITIAL";
MIN_AMOUNT The minimum price amount. money DT-MIN_AMOUNT=”
MIN_AMOUNT”
MSRP_MULTIPLE The MSRP quantity. big
decimal
DT_MSRP_MULTIPLE
=”MSRP_MULTIPLE”
Data type Description Format Code
140
About the known data types
MSRP_MULTIPLE_GRO
UP
The MSRP mix match group. string DT_MSRP_MULTIPLE
_GROUP=”MSRP_MUL
TIPLE_GROUP”
MSRP_PRICE The MSRP amount. money DT_MSRP_PRICE=”MS
RP_PRICE”
MSRP_PRICING_ALGO
RITHM
The MSRP price method. string DT_MSRP_PRICING_A
LGORITHM=”MSRP_P
RICING_ALGORITHM
”
NAME_SUFFIX The customer’s name or title suffix (for
example: JR, III and so forth.)
string DT_NAME_SUFFIX =
"NAME_SUFFIX";
NAME_TITLE The customer’s title prefix (for example:
MR, MRS, DR and so forth.)
string DT_NAME_TITLE =
"NAME_TITLE";
NET_AMOUNT The net amount data type. string DT_NET_AMOUNT=”
NET_AMOUNT”
NEW_PASSWORD The new password data type. string DT_NEW_PASSWORD
= "NEW_PASSWORD";
NOT_ON_FILE The item not on file tag for the
department line in TLog.
string DT_NOT_ON_FILE=”
NOT_ON_FILE”
NUMBER_OF_CASHDR
AWERS
The number of cash drawers. string DT_NUMBER_OF_CA
SHDRAWERS=”NUMB
ER_OF_CASHDRAWE
RS”
ORGANIZATION_ID The organization identification code. string DT_ORGANIZATION_
ID =
"ORGANIZATION_ID
";
ORIGINAL_ARRIVAL_F
LIGHT_DATE
The original arrival flight date. string DT_ORIGINAL_ARRI
VAL_FLIGHT_DATE=
”PAX_ARR_FLT_DATE
_ORG”
ORIGINAL_ARRIVAL_F
LIGHT_NAME
The original arrival flight name. string DT_ORIGINAL_ARRI
VAL_FLIGHT_NAME=
”PAX_ARR_FLT_NAM
E_ORG”
ORIGINAL_ARRIVAL_F
LIGHT_NUMBER
The original arrival flight number. string DT_ORIGINAL_ARRI
VAL_FLIGHT_NUMBE
R=”PAX_ARR_FLT_N
UM_ORG”
ORIGINAL_ARRIVAL_F
LIGHT_TIME
The original arrival flight time. string DT_ORIGINAL_ARRI
VAL_FLIGHT_TIME=”
PAX_ARR_FLT_TIME_
ORG”
ORIGINAL_BUSINESS_
DATE
The current business date. string DT_ORIGINAL_BUSI
NESS_DATE=”ORGIN
AL_BUSINESS_DATE”
Data type Description Format Code
141
Known Data Types
ORIGINAL_DEPARTUR
E_FLIGHT_DATE
The original departure flight time. string DT_ORGINAL_DEPAR
TURE_FLIGHT_DATE
=”PAX_DEP_FLT_DAT
E_ORG”
ORIGINAL_DEPARTUR
E_FLIGHT_NAME
The original departure flight name data
type.
string DT_ORIGINAL_DEPA
RTURE_FLIGHT_NAM
E=”PAX_DEP_FLT_N
AME_ORG”
ORIGINAL_DEPARTUR
E_FLIGHT_NUMBER
The original departure flight number
data type.
string DT_ORIGINAL_DEPA
RTURE_FLIGHT_NUM
BER=”PAX_DEP_FLT_
NUM_ORG”
ORIGINAL_DEPARTUR
E_FLIGHT_TIME
The original departure flight time. string DT_ORIGINAL_DEPA
RTURE_FLIGHT_TIM
E=”PAX_DEP_FLT_TI
ME_ORG”
ORIGINAL_ITEM_KEY The original item key. string DT_ORIGINAL_ITEM
_KEY=”ORIGINAL_IT
EM_KEY”
ORIGINAL_REFERENC
E_NUMBER
The reference number provided by an
external authorization system for a
transaction related to the current
transaction.
string DT_ORIGINAL_REFE
RENCE_NUMBER=”O
RIGINAL_REFERENC
E_NUMBER”
PACK_ID The pack ID data type. string DT_PACK_ID=”PACK_
ID”
PACK_QUANTITY The pack quantity data type. string DT_PACK_QUANTITY
=”PACK_QUANTITY”
PARAMETER The parameter data type. This is used to
specify the single parameter in the
request for the UDF. This will have
different meanings for different types of
UDFs.
Note that this data type is not available
as a date type for prompts in the
Configurator.
string DT_PARAMETER =
"PARAMETER";
PASSPORT_ISSUER The passport issuer. string DT_PASSPORT_ISSUE
R=”PAX_PASS_ISS”
PASSPORT_NAME The passport name. string DT_PASSPORT_NAME
=”PAX_PASS_NAME”
PASSPORT_NUMBER The passport number. string DT_PASSPORT_NUMB
ER=”PAX_PASS_NUM”
PAYMENT_OPTION_FI
RST_BONUS_MONTH
The first bonus month. string DT_PAYMENT_OPTIO
N_FIRST_BONUS_MO
NGH=”PAYMENT_OP
TION_FIRST_BONUS_
MONGH”
Data type Description Format Code
142
About the known data types
PAYMENT_OPTION_N
O_OF_INSTALLMENTS
The number of installments. string DT_PAYMENT_OPTIO
N_NO_OF_INSTALLM
ENTS=”PAYMENT_OP
TION_NO_OF_INSTA
LLMENTS”
PAYMENT_OPTION_T
YPE
The payment option type. string DT_PAYMENT_OPTIO
N_TYPE=”PAYMENT_
OPTION_TYPE”
PENDING_GROUP_ID The pending transaction group ID. string DT_PENDING_GROU
P_ID=”PENDING_GR
OUP_ID”
PENDING_NUMBER The pending transaction number. string DT_PENDING_NUMB
ER=”PENDING_NUM
BER”
PENDING_ORIGINAL_
DATE
The original effective transaction date of
the pending transaction.
string DT_PENDING_ORIGI
NAL_DATE=”PENDIN
G_ORIGINAL_DATE”
PENDING_STATUS The status of a pending transaction. string DT_PENDING_STATU
S=”PENDING_STATU
S”
PENDINGTRX_CANCE
LLED_ITEMS_VALUE
The total amount of items cancelled
within the pending transaction.
STRIN
G
DT_PENDINGTRX_C
ANCELLED_ITEMS_V
ALUE=”PENDINGTR
X_CANCELLED_VAL
UE”
PENDINGTRX_PENDI
NG_ITEMS_VALUE
The total value of remaining pending
items within the pending transaction.
string DT_PENDINGTRX_P
ENDING_ITEMS_VAL
UE=”PENDINGTRX_P
ENDING_VALUE”
PENDINGTRX_PICKE
D_UP_ITEMS_VALUE
The total value of picked up items
within the pending transaction.
string DT_PENDINGTRX_PI
CKED_UP_ITEMS_VA
LUE=”PENDINGTRX_
PICKEDUP_VALUE”
PENDINGTRX_TYPE_
DESC
The pending transaction type
description.
string DT_PENDINGTRX_T
YPE_DESC=”PENDIN
GTRX_TYPE_DESC”
PENDINGTRX_TYPE_I
D
The pending transaction type ID. string DT_PENDINGTRX_T
YPE_ID=”PENDINGT
RX_TYPE_ID”
PICKUP_SITE_ID The site ID from where the pending
item(s) will be picked up.
string DT_PICKUP_SITE_ID
=”PICKUP_SITE_ID”
PIN_BYPASS PIN bypass. string DT_PIN_BYPASS=”PI
N_BYPASS”
PIN_ENTRY_REQUIRE
D
PIN entry required. string DT_PIN_ENTRY_REQ
UIRED=”PIN_ENTRY
_REQUIRED”
Data type Description Format Code
143
Known Data Types
PO_NUMBER The purchase order number data type. string DT_PO_NUMBER
PRICE The price data type. money DT_PRICE = "PRICE";
PRIMARY_SAFE_ID The primary safe ID. string DT_PRIMARY_SAFE_I
D=”PRIMARY_SAFE_I
D”
PRINT_MSRP Indicates if MSRP should be printed on
the receipt.
boolean DT_PRINT_MSRP=”PR
INT_MSRP”
PRODUCT_ATTRIBUTE
S
Array of product attributes property
map.
property
map
DT_PRODUCT_ATTRI
BUTES=”PRODUCT_A
TTRIBUTES”
PROMPT_FOR_PRICE_
ENTRY
The prompt for price entry. string DT_PROMPT_FOR_PR
ICE_ENTRY=”PROMP
T_FOR_PRICE_ENTR
Y”
QUANTITY The quantity data type. integer DT_QUANTITY =
"QUANTITY";
QUANTITY_ALLOWED Indicates if quantity is allowed. boolean DT_QUANTITY_ALLO
WED=”QUANTITY_A
LLOWED”
QUANTITY_REQUIRE
D
Indicates if quantity is required. boolean DT_QUANTITY_REQ
UIRED=”QUANTITY_
REQUIRED”
RAW_PIN_PAD_DATA Raw PIN pad data. string DT_RAW_PIN_PAD_D
ATA =
"RAW_PIN_PAD_DAT
A";
REASON_CODE The reason code for an action (such as
for a price override.)
string DT_REASON_CODE
= "REASON_CODE";
REDEMPTION_POINT The points redeemed (such as with a
loyalty program.)
integer DT_REDEMPTION_P
OINT =
"REDEMPTION_POIN
T";
REFERENCE_NUMBER The reference number data type. The
reference number is what the credit
network uses to identify the
authorization request.
Note that, while this data type was
previously used as the authorization
number, it should no longer be used for
this reason as the DT_AUTH_NUM
serves this purpose.
string DT_REF_NUM =
"REFERENCE_NUMB
ER";
REFERRAL_PERMISSIO
N_CHECK
Internal flag used to indicate a
permission check is required as a result
of a referral authorization response.
string DT_REFERRAL_PERM
ISSION_CHECK=”REF
ERRAL_PERMISSION_
CHECK”
Data type Description Format Code
144
About the known data types
REISSUE_TENDER_KE
Y
The reissue tender key. string DT_REISSUE_TENDE
R_KEY=”REISSUE_TE
NDER_KEY”
REPORT_PERIOD Specifies a report. string DT_REPORT_PERIOD
=”REPORT_PERIOD”
REPOSITORY_ID The repository identification code —
either the Till ID or Safe ID.
string DT_REPOSITORY_ID
= "REPOSITORY_ID"
REPOSITORY_TYPE The type of repository — either Till or
Safe.
string DT_REPOSITORY_TY
PE =
"REPOSITORY_TYPE"
REPRINT_IMAGE_ID The ID of an archived receipt image to
reprint.
string DT_REPRINT_IMAGE
_ID=”REPRINT_IMAG
E_ID”
REQUEST_MODIFIER The request modifier (value set to void
to indicate a void of transaction_code).
string DT_REQUEST_MODI
FIER=”REQUEST_MO
DIFIER”
REQUIRED_EXTERNA
L_SYSTEM_AUTHORIT
Y_LEVEL
The required external system authority
level data type.
string DT_REQUIRED_EXTE
RNAL_SYSTEM_AUTH
ORITY_LEVEL=”REQ
UIREDEXTERNALSYS
TEMAUTHLEVEL”
REQUIRED_UDF_AUT
HORITY_LEVEL
The required UDF authority level data
type.
string DT_REQUIRED_UDF_
AUTHORITY_LEVEL=
”REQUIREDUDFAUT
HLEVEL”
RESET_BUSINESS_DAT
E
The date to which the business date
should be reset.
string DT_RESET_BUSINESS
_DATE=”RESET_BUSI
NESS_DATE”
RETURN_CUSTOMER_
PROFILE_ID
The return customer profile ID
identifier.
string DT_RETURN_CUSTO
MER_PROFILE_ID=”R
ETURN_CUSTOMER_
PROFILE_ID”
RETURN_DOCUMENT Return required information. string DT_RETURN_DOCUM
ENT=”RETURN_DOC
UMENT”
RETURN_REQUIRED_I
NFO
Return required information. string DT_RETURN_REQUIR
ED_INFO=”RETURN_
REQUIRED_INFO”
RETURNABLE Indicates if an item is returnable. boolean DT_RETURNABLE=”R
ETURNABLE”
RUNNING_DUTY_TOT
AL
The running duty total data type. string DT_RUNNING_DUTY
_TOTAL=”PAX_RUNN
ING_DUTY_TOTAL”
SALESPERSON_ID The salesperson ID data type. string DT_SALESPERSON_I
D=”SALESPERSON_I
D”
Data type Description Format Code
145
Known Data Types
SECONDARY_REPOSIT
ORY_ID
The secondary repository ID - Target
safe for safe transfer transaction.
string DT_SECONDARY_RES
POSITORY_ID=”SECO
NDARY_REPOSITORY
_ID”
SECONDARY_SAFE_ID The secondary safe ID. string DT_SECONDARY_SAF
E_ID=”SECONDARY_
SAFE_ID”
SECURITY_CODE The card security code for the customer
not present feature.
string DT_SECURITY_CODE
=”SECURITY_CODE”
SELL_CUSTOMER_PRO
FILE_ID
The sell customer profile ID identifier. string DT_SELL_CUSTOMER
_PROFILE_ID=”SELL_
CUSTOMER_PROFILE
_ID”
SELL_DOCUMENT Sell required information. string DT_SELL_DOCUMEN
T=”SELL_DOCUMEN
T”
SELL_MAXIMUM_QUA
NTITY
The item sell maximum quantity
identifier.
string DT_SELL_MAXIMUM_
QUANTITY=”SELL_M
AXIMUM_QUANTITY”
SELL_REQUIRED_INF
O
Sell required information. string DT_SELL_REQUIRED
_INFO=”SELL_REQUI
RED_INFO”
SEQUENCE_NUMBER The sequence number to use in an
authorization request.
string DT_SEQUENCE_NUM
BER=”SEQUENCE_N
UMBER”
SERIAL_CIC Serial number or CIC number. string DT_SERIAL_CIC=”SE
RIAL_CIC”
SERVICE_ID The service ID. string DT_SERVICE_ID=”SE
RVICE_ID”
SESSION_ID The session ID. string DT_SESSION_ID=”SE
SSION_ID”
SIGNATURE_VERIFICA
TION_RESULT
Some credit and debit tenders require
the cardholders identity to be verified.
To accomplish this, the signature on the
card may be compared to the customer’s
signature on another piece of
identification. In this case the cashier is
prompted to enter a boolean value for
this. Another way of identifying the user
is by PIN (Personal Identification Number).
In this case, this field may carry the PIN
value entered at the POS. This field is
populated when a triggered UDF
demands it.
string DT_SIGNATURE_VER
IFICATION_RESULT =
"SIGNATURE_VERIFI
CATION_RESULT"
SITE_ID The site (location) identification code. string DT_SITE_ID =
"SITE_ID"
Data type Description Format Code
146
About the known data types
SKIP_CUSTOMER_PRO
FILE_CHECK_FOR_UD
F
Specifies the name of the UDF that
skips checking of a customer profile.
string DT_SKIP_CUSTOMER
_PROFILE_CHECK_F
OR_UDF=”SKIP_CUST
OMER_PROFILE_CHE
CK_FOR_UDF”
SSN Social security numbers. masked
string
DT_SSN=”SSN”
SSN_COMPRESSED Compressed social security number. masked
string
DT_SSN_COMPRESSE
D=”SSN_COMPRESSE
D”
START_DATE The date on which a tender (typically a
credit card) is first available for use.
string DT_START_DATE =
"START_DATE"
SUMMARY_DOCUMEN
T
Summary document used to represent
the detailed state of a transaction
workflow, such as a pending transaction.
string DT_SUMMARY_DOCU
MENT=”SUMMARY_D
OCUMENT”
SUPPLEMENTAL The “supplemental data” data type.
Note that this data type is never visible
in the business logic as it is converted to
a more descriptive data type before
being included in a request. This data
type is not available as a date type for
prompts in the Configurator.
string DT_SUPPLEMENTAL
= "SUPPLEMENTAL"
SURNAME The customer’s surname. string DT_SURNAME =
"SURNAME"
SUSPENDABLE_FLAG The item allow suspendable flag
identifier.
string DT_SUSPENDABLE_F
LAG=”SUSPENDABLE
_FLAG”
TAX_AMOUNT The tax amount. money DT_TAX_AMOUNT =
"TAX_AMOUNT"
TAX_CODE The tax code. string DT_TAX_CODE=”TA
X_CODE”
TAX_GROUP_ID The tax group identification code. string DT_TAX_GROUP_ID
= "TAX_GROUP_ID"
TENDER_AMOUNT The tender amount (may be appended
by a tender key, following "_").
money DT_TENDER_AMOU
NT =
"TENDER_AMOUNT"
TENDER_AUTOBALAN
CE
The auto balance indicator (can be
appended by a tender key following
“_”).
string DT_TENDER_AUTOB
ALANCE=”TENDER_
AUTOBALANCE”
TENDER_DEPOSITAM
OUNT
The tender deposit amount data type
(can be appended by a tender key
following “_”).
string DT_TENDER_DEPOSI
TAMOUNT=”TENDE
R_DEPOSITAMOUNT”
TENDER_FLOATAMOU
NT
The tender float amount data type (can
be appended by a tender key following
“_”).
string DT_TENDER_FLOAT
AMOUNT=”TENDER_
FLOATAMOUNT”
Data type Description Format Code
147
Known Data Types
TENDER_ID The tender identification code. string DT_TENDER_ID =
"TENDER_ID";
TENDER_QUANTITY The tender quantity data type (can be
appended by a tender key following “_”.
string DT_TENDER_QUANT
ITY=”TENDER_QUA
NTITY”
TENDER_SYSTEMAMO
UNT
The tender system amount (may be
appended by a tender key, following
"_").
money DT_TENDER_SYSTE
MAMOUNT =
"TENDER_SYSTEMA
MOUNT"
TILL_ID The till ID. string DT_TILL_ID=”TILL_I
D”
TOTAL_DEPOSIT_AM
OUNT
The total amount of deposit payment
for a pending transaction.
string DT_TOTAL_DEPOSIT
_AMOUNT=”TOTAL_
DEPOSIT_AMOUNT”
TOTAL_DUE_AMOUN
T
The total amount due for a pending
transaction.
string DT_TOTAL_DUE_AM
OUNT=”TOTAL_DUE
_AMOUNT”
TOAL_PAYMENT_AMO
UNT
The total amount of payments within a
pending transaction.
string DT_TOAL_PAYMENT_
AMOUNT=”TOAL_PA
YMENT_AMOUNT”
TOAL_PENDING_AMO
UNT
The total amount of items pending
within a pending transaction.
string DT_TOAL_PENDING_
AMOUNT=”TOAL_PE
NDING_AMOUNT”
TRACK_1 The Track 1 data type. byte [ ] DT_TRACK_1 =
"TRACK_1"
TRACK_2 The Track 2 data type. byte [ ] DT_TRACK_2 =
"TRACK_2"
TRACK_3 The Track 3 data type. byte [ ] DT_TRACK_3 =
"TRACK_3"
TRACK_4 The Track 34data type. byte [ ] DT_TRACK_4 =
"TRACK_4"
TRADING_WEEK_CLO
SE
The trading week closing flag. boolean DT_TRADING_WEEK
_CLOSE=:TRADING_
WEEK_CLOSE”
TRADING_WEEK_ID The trading week ID. integer DT_TRADING_WEEK
_ID=”TRADING_WEE
K_ID”
TRANS_ACTIONCODE The Tender Management transaction
action code.
calendar DT_TRANS_ACTIONC
ODE =
"TRANS_ACTIONCOD
E"
TRANSACTION_CODE The transaction code (authorization
service provider specific).
string DT_TRANSACTION_C
ODE=”TRANSACTIO
N_CODE”
Data type Description Format Code
148
About the known data types
TRANSACTION_NUMB
ER
The transaction number. integer DT_TRANSACTION_N
UMBER =
"TRANSACTION_NU
MBER"
TRANSACTION_NUMB
ER_NULLABLE
The transaction number data type
accepting nulls.
string DT_TRANSACTION_N
UMBER_NULLABLE=
”TRANSACTION_NU
MBER_NULLABLE”
TRANSIT_NUMBER The transit number. string DT_TRANSIT_NUM =
"TRANSIT_NUMBER"
TRANSMISSION_NUMB
ER
The transmission number to use in an
authorization request.
string DT_TRANSMISSION_
NUMBER=”TRANSMIS
SION_NUMBER”
TRAVEL_AGENT_ID The travel agent ID. string DT_TRAVEL_AGENT_
ID=”PAX_TRID”
TRAVEL_AGENT_NAM
E
The travel agent name. string DT_TRAVEL_AGENT_
NAME=”PAX_TA_NA
ME”
TRIGGER_DATA_CAPT
URE
A triggered data form value. string DT_TRIGGER_DATA_
CAPTURE=”TRIGGER
_DATA_CAPTURE
TRIGGER_TXN_START
_UDF
Indicates if the transaction start UDF
has to be triggered.
string DT_TRIGGER_TXN_S
TART_UDF=”TRIGGE
R_TXN_START_UDF”
TRIGGER_UDF A UDF ID that needs to be triggered. string DT_TRIGGER_UDF=”
UDR_TO_TRIGGER”
TXN_RESULT The result of a pinpad authorization. string DT_TXN_RESULT=”T
XN_RESULT”
UDF_FOR_UDT string DT_UDF_FOR_UDT=”
UDF_FOR_UDT”
UDT_DESCRIPTION Human readable name for the UDT ID.
Intended for internal SAP use only.
string DT_UDT_DESCRIPTI
ON=”udtDescription”
UNIT_OF_MEASURE_I
D
The unit of measure identification code,
used to pass the unit of measure related
to the quantity to the POS client.
string DT_UNIT_OF_MEASU
RE_ID =
"UNIT_OF_MEASURE
_ID"
URL The URL for the POS browser. string DT_URL = "URL"
USE_DEPARTMENT_SE
TTINGS
Indicates if item should use department
settings.
string DT_USE_DEPARTME
NT_SETTINGS=”USE_
DEPARTMENT_SETTI
NGS”
USERDEF_TRANSACTI
ON_NUMBER
The user defined transaction number
data type.
integer DT_USERDEF_TRANS
ACTION_NUMBER=”
USERDEF_TRANSACT
ION_NUMBER”
Data type Description Format Code
149
Known Data Types
UDT_ID Identifies a user defined transaction. string DT_UDT_ID=”UDT_I
D”
VERIFY_PRICE_ENTRY The price entry verification. string DT_VERIFY_PRICE_E
NTRY=”VERIFY_PRIC
E_ENTRY”
Data type Description Format Code
150
This section describes the customer services interface files and the TLog audit schemas. A sample
customer lookup response schema and the transaction audit schemas are included.
Topics in this section include:
� “The Customer.xsd files” on page 151
� “The transaction audit files” on page 152
� “Postal CodeLookup” on page 152
The Customer.xsd filesThe customer services interface schemas define the messages that are used to communicate between
applications and public services. For example, between a SAP service and the application that provides
this service. These files are request/response in nature and are used to set up the system and provide
real-time interaction between systems.
The customer services interface files are defined by a series of .XSD schemas. The three schemas are as
follows:
� The Customer.xsd schema defines the message formats for interacting with the Customer
service.
� The Customers.xsd schema is adapted from the IX Retail standard and is used to define the
content of the Customer service messages.
� The TriversityCustomers_Extensions.xsd schema defines the SAP standard extensions to the
IX Retail Customers.xsd schema.
151
About The Services Interface Files
The transaction audit filesIf a failure has occurred outside of the SAP Enterprise POS framework, SAP Enterprise POS provides
the ability to retrieve transaction information on demand to prevent loss of information.
After receiving a message from a third-party application, such as an Enterprise Information System
(EIS), you can retrieve and resend the TLog files by providing an xml file that conforms to the
TLogResendRequest.xsd and/or the TrxSequenceAuditSummaryRequest.xsd schema. You can request
transaction audit files and transaction records files. The transaction audit files contain high level
information outlining what each store is accountable for based on specified stores and terminals. The
transaction records files contain detailed information for specified transactions.
Multiple requests and responses can be sent and received simultaneously. To determine which
responses belong to which request, match the request message ID with the original request ID in the
response file. Each response is numbered with the last response also being identified as such. For
example, if there are 8 responses being received randomly to 1 request, you can determine how many
responses to expect by identifying the number of the request labelled to be last. Also, you can specify
the maximum number of transactions to be received per response.
Note that you can also perform the same data recovery functions via the Data Import Utility. Simply
type DataImport.bat {xml-file-name} (for Windows) at the command line prompt in the /
bin/dataimport directory. For Unix/Linux, as a trivers user, type sh dataimport.sh {xml-file-name}.
The transaction audit files are defined by a series of XSD schemas. The schemas are as follows:
� TrxSequenceAuditSummaryRequest.xsd
� TrsSequenceAuditSummaryResponse.xsd
� TLogResendRequest.xsd
� TLogResendRequest_Internal.xsd
� TLogResendResponse.xsd
� POSLog.xsd
� POSLogTransaction_Extensible.xsd
� IntegrationMessageHeader.xsd
� EndOfDayNotification.xsd
TrxSequenceAuditSummaryRequest.xsd
The request can be a store-wide summary of transaction information or a terminal by terminal
summary. Terminal is optional in the request and therefore if not specified then all terminals will be
assumed.
Postal CodeLookup
PostalCodeLookup.xsd
The postal code lookup is a service interface that contains the tags that define the message format for
requesting address information based on a postal code.
152
Error Messages
This section describes the Core Error Codes that reside in the SAP Enterprise POS system.
General error messages
Error Function Description
You do not have
sufficient
authorization.
All General message indicates that the user has no
permission to the function. The permission is setup in
Configurator.
Invalid Sign-On All General message indicates that the sign-on credential
is not provided.
User not found All General message indicates that the user cannot be
found in the employee database.
User is signed on at
another Till
All General message indicates that the user already signed
on at another device.
Line number missing
or in wrong format.
All Line number not supplied or provided in wrong
format (not an Integer).
Line number is invalid. All Supplied line number is invalid.
Unable to identify
current transaction.
Call support.
All Unable to fetch context keys to identify the current
transaction.
Specified line not
found.
All Unable to find record for specified line. Usually, it
should not happen, it indicates that the transaction
data is corrupted.
Service provider
exception. Call
support.
All Usually, it means that the line record is incomplete.
The administrator should check the server's logs for
more details.
Item key missing or in
wrong format.
All This message indicates that the data with the type
DT_ITEM_KEY (ITEM_KEY in Configurator) is
supposed to present in the request by it is not.
Invalid quantity for
refund.
All This message indicates that the data with the type
DT_QUANTITY (QUANTITY in Configurator) is
supposed to present in the request by it is not.
153
Error Messages
POS Manager error messages
Line is already void. All The user tried to apply the void action on the voided
line.
Transaction cannot be
voided because it
contains non-voidable
line.
All Transaction cannot be voided if there is no voidable
line available within the transaction.
Cannot suspend
transaction. There are
no resumable lines.
All Transaction cannot be suspended if there is no
resumable line available within the transaction.
Line storage service
provider problem. Call
support.
All The message is defined but it is not being used.
Invalid Authority for
this function.
All General message indicates that the user has no
permission to the function. The permission is setup in
Configurator.
User Sign-On required All General message indicates that the user sign-on is
required.
No transaction
properties
Transaction Workflow General message indicates that the transaction
properties cannot be retrieved from the transaction.
Invalid lines property Transaction Workflow Transaction "lines" property was not valid. (wrong
type of property)
No detail lines Transaction Workflow Transaction does not contain any detail lines.
Invalid transaction
identifier
Transaction Workflow One or more components of the transaction identifier
are missing.
No matching
transactions found,
check information and
try again
Transaction Workflow Transaction cannot be found in the database.
CHEQUE
DECLINED. PRESS
CLEAR TO
CONTINUE.
ETF Cheque authorization declined.
Card Expired ETF The card is expired.
Error Function Description
Data could not be
retrieved from the
database
POS Manager This error message indicates that there is no data
retrieved from the database by using the search criteria
provided in the request.
No User Interface
rendering data
POS Manager In general, user should not see this message. This
usually means the corresponding XSL for the user
interface cannot be found by the system.
154
General error messages
Unsupported safe
management function
POS Manager In general, user should not see this message. This
means the safe management is not configured
properly.
Required action
unknown
POS Manager This is a general message when the system received
and invalid action value from the input or HTTP
request.
Transaction could not
be completed
POS Manager This message indicates that the requested action
cannot be completed at the server side due to an
unknown reason. If the problem persists, please check
the server's log files for details.
Till cannot be created -
Operator not found
POS Manager This error message indicates that there is no employee
data for the till to be created by the system.
Till cannot be created -
An open till already
exists
POS Manager This error message indicates that the till already exists.
Till cannot be created -
Store is closed
POS Manager This error message indicates that the store is not in
OPEN state, therefore the system cannot create a till.
Unable to complete till
balance as till is
currently in use
POS Manager This error message indicates that according to the
Store Accounting Controller data, the till is still in use.
Unable to complete till
balance - Till not
found
POS Manager In general, user should not see this message. This
means that there is no till data found in the Store
Accounting Controller.
Tender List is not
available
POS Manager This error message indicates that there is no tender is
setup for tender management functions.
Open Store operation
cannot be completed
POS Manager This error message indicates that the Store request is
failed at the server side and the error is unknown. The
administrator should check the server's logs for details.
Close Store operation
cannot be completed
POS Manager This error message indicates that the Store request is
failed at the server side and the error is unknown. The
administrator should check the server's logs for details.
Store has not yet been
opened for the first
time
POS Manager This message may show up during the End Of Day
(EOD) processing. This message indicates that there is
no data for that store at the Store Accounting
Controller. The user should try to open the store first.
Could not retrieved the
store status
POS Manager This message indicates that the store status code
cannot be retrieved or the unexpected store status is
returned.
Invalid accounting
information (trading
week and/or
accounting business
day)
POS Manager This message indicates that the trading week and/or
account business day are not entered or the data is no
in proper format, i.e., a date for account business day
and a number for trading week.
Transaction was not
completed as no
tender amounts were
provided
POS Manager The message indicates that the user entered 0 for
Tender Management functions.
155
Error Messages
Transaction could not
be completed as not all
tills have been
reconciled
POS Manager The message indicates that there is at least one till at
the store which is not reconciled according to the
Store Accounting Controller data.
Some tills still open
before the specified
business date
POS Manager The message indicates that there is at least one till at
the store which is open for the given business date
according to the Store Accounting Controller data.
Invalid Business Date POS Manager Invalid Business Date
Suspended
transactions found
POS Manager Store functions failed due to the fact that there is a
suspended POS transactions.
Store is already opened POS Manager Store Open function failed due to the store is already
opened.
Store is already closed POS Manager Store Close function failed due to the store is already
closed.
Not all tills have been
reconciled
POS Manager The message indicates that there is at least one till at
the store which is not reconciled according to the
Store Accounting Controller data.
No amounts have been
provided
POS Manager The message indicates that the user entered 0 for
Tender Management functions.
Invalid department
code.
POS Manager Invalid department code.
Future price effective
day must be provide
when given future
price.
POS Manager The effective day for the future price of an item
cannot be the date prior to today's date.
Missing range value(s)
for ...
POS Manager General data validation error message for the user
interface means one or both values next to at the
range entries are not provided by the user.
Missing selection
value(s) for ...
POS Manager General data validation error message for the user
interface means no value is selected by the user from
the selection box.
Invalid number value
for ...
POS Manager General data validation error message for the user
interface means the value provided by the user is not a
numeric value.
Invalid money value
for ...
POS Manager General data validation error message for the user
interface means the value provided by the user is not a
money value.
Invalid date value for
...
POS Manager General data validation error message for the user
interface means the value provided by the user is not a
date value.
Unknown datatype for
...
POS Manager General data validation error message for the user
interface means the value provided by the user cannot
be parsed into the expected datatype.
Unknown POS Manager Unknown error message.
156
General error messages
Selected operator was
not found
POS Manager The operator cannot be found in the employee
database
Selected employee is
still signed on
POS Manager The operator still at signed on state.
Employee Sign-On ID
already exists
POS Manager Employee Sign-On ID already exists in the employee
database.
Employee SSN already
exists
POS Manager Employee SSN already exists in the employee
database.
Mix Match ID already
exists
POS Manager Mix Match ID already exists in the database.
Promotion ID already
exists
POS Manager Promotion ID already exists in the database.
Invalid date entered POS Manager The date string entered cannot be parsed as a date.
Unknown Business
Day - New Store
POS Manager At the report criteria, the business day is not provided
by the user.
Unknown Previous
Business Day
POS Manager At the report criteria, the previous business day is not
provided by the user.
Unknown Trading
Week
POS Manager At the report criteria, the trading week is not provided
by the user.
Incorrect trading week
ending date
POS Manager At the report criteria, the trading week ending date is
not provided by the user.
Active trading week
cannot be closed.
POS Manager The Safe Adjustment cannot be performed during the
current working trading week.
Please complete the till
reconciliation process
before closing the
trading week.
POS Manager The Safe Adjustment cannot be performed due to the
fact that there is an unreconciled till, i.e., the number
of approved tills is less than the total number of tills.
No support for the
configuration
component override
POS Manager The user cannot override the configuration defined in
the Configurator. The user can override certain
configuration at the "Store Setup"
Mix-Match Effective
Date is after the
Expiry Date
POS Manager The user should enter an Effective Date with the date
prior to the Expiry Date.
Invalid Business Day
Range
POS Manager At the report criteria, the business day range is not
provided by the user.
Receipt contains
sensitive data and
cannot be seen.
POS Manager The user do not have permission to view the sensitive
data.
Promotion amount
exceed original price.
POS Manager Promotion amount exceed original price.
Item Key entered is
not valid.
POS Manager Item Key entered is not valid.
Expiry Date is earlier
than effective date
POS Manager The user should enter an Effective Date with the date
prior to the Expiry Date.
157
Error Messages
POS Client error messages
Expiry Date is in the
past
POS Manager The user should enter an Effective Date with the date
prior to the Expiry Date.
Discount % is greater
than item price
POS Manager The discount % is set to a value greater than 100.
MixMatch amount
exceed original price.
POS Manager MixMatch amount exceed original price.
MixMatch Sale Price
exceed original price.
POS Manager MixMatch Sale Price exceed original price.
Your session expired.
Please sign-on again.
POS Manager The session for the web application is expired.
Unable to perform
balancing as till is
currently in use
POS Manager Unable to perform balancing as till is currently in use.
No Receipts Available POS Manager No Receipts Available for the transaction. The user
cannot view the receipt.
No records found. POS Manager No records found in the database.
No more records. POS Manager No more records/result from the data retrieved.
Reset Business Date
was not completed
POS Manager Reset Business Date request is failed at the server side
due to an unknown error.
Open Next Day not
completed
POS Manager Open Next Day request is failed at the server side due
to an unknown error.
No Data Found POS Manager No result from the database.
Electronic Signature
not captured.
POS Manager There is no electronic signature captured from the
POS transaction.
Error Function Description
Function XXX is not
available in XXX state.
You may have pressed
Enter by mistake.
POS Client This error occurs when the system tried to perform an
invalid action at the given state. It is the result of
invalid configuration or program code.
System Error (UR).
Call for Support.
POS Client Normally this error caused by very critical problem.
For instance: database SQL Exception, network issue,
application server problem. Investigate server and
client log files to find out root cause.
System Error (IAC).
Call for Support.
POS Client This error may caused by invalid configuration. It
occurs when the system tried to perform an action
that is not supported.
System Error (RQE).
Call for Support.
POS Client The request cannot pass the request qualifier due to an
unknown error.
158
General error messages
This value must be
provided.
POS Client The error is caused by missing value in the request. It
is the result of invalid configuration.
System Error (TGNF).
Call for Support.
POS Client Tax group is not defined. It is the result of the tax
group is not setup properly.
INVALID
QUANTITY
POS Client The error is caused by missing quantity value in the
request. Usually, it is the result of invalid
configuration.
Transaction not found POS Client Transaction cannot be found at the server side.
Could not find a valid
configuration for client
...
POS Client This error is caused by missing configuration for the
client. This may indicate that the client cannot connect
to the server or the application profile is not deployed
to the client.
Cannot retrieve state
value.
POS Client This error occurs when the system tried to qualify a
suspend transaction request but it cannot retrieve the
sale transaction state.
Line cannot be voided. POS Client General message that indicates the line cannot be
voided
Tender must be voided
prior to applying
discount.
POS Client The message indicates that the user tried to apply
discount after partially tendered.
INVALID
QUANTITY: value
POS Client Invalid quantity is entered.
Password Change
Required
POS Client Password change is required. The user has to change
the password as required by the configuration.
Invalid New Password. POS Client The password entered by the user does not match the
password requirement set in the configuration.
New password and
confirm Password do
not match.
POS Client The new password and the confirm password have to
be the same.
Confirm Password
Required.
POS Client This message indicates that the user doesn't enter the
confirm password.
New Password is too
short.
POS Client The password entered by the user is shorter that the
minimum length defined in the configuration.
New Password is too
long.
POS Client The password entered by the user is shorter that the
minimum length defined in the configuration.
New Password already
used.
POS Client In some configuration, the user cannot reuse the same
password in certain period of time.
Password cannot be
blank.
POS Client This message indicates that the user doesn't enter the
password.
New password cannot
be same as old
password.
POS Client In some configuration, the user cannot reuse the
previous password in certain period of time.
Invalid Business Date POS Client Business Date string entered cannot be recognized as
a date.
159
Error Messages
Price Correction is not
allowed on this item
POS Client Price override cannot be applied to certain items. If
the user tried to do that, this message will be
displayed.
Item Not
Discountable
POS Client The item selected is not discountable.
Exit pos client not
allowed in training
mode.
POS Client User cannot exit pos client in training mode.
Press CLEAR to
continue, and then
rescan items scanned
after WFS.
POS Client The message will be shown when the user tried to
make an attempt of selling the item if it is not a
restoring transaction and the item is not voided and
not suspended voided.
xxx has been
withdrawn from sale.
POS Client This message will be shown when the user tried to
return a not for sale item.
xxx Item WFS-DO
NOT SELL
POS Client This message will be shown when the user tried to sell
a not for sale item.
Item can not be
returned. Press
CLEAR to continue.
POS Client This message will be shown when the user tried to
return an item that cannot be returned.
Item price is not
allowed for override
POS Client This message will be shown when the user tried to
modify the price on an item that price override is not
allowed.
Item price exceed
maximum single item
price
POS Client This message will be shown when the user tried to
modify the price on an item to the price higher than
the maximum price in configuration. If the maximum
price in configuration is set to zero, this message will
not be shown.
No available cash
drawer.
POS Client Another operator trying to sign on same till which has
no more cash draw available.
Operator is already
signed on at another
till.
POS Client Operator is already signed on at another till.
No operator sessions
locked.
POS Client This message will be shown when the user tried to
unlock the POS that is locked by another user.
Context switching
error.
POS Client Failed to switch drawer.
ITEM xxx NOT
FOUND. PLEASE
ENTER ITEM
DETAILS
POS Client Item is not found in the database.
Item not unique. Press
CLEAR to continue.
POS Client This message is not being used.
Item key xxx is invalid.
Press CLEAR to
continue.
POS Client This message will be shown when the user does not
enter the item.
Re-Enter Item Key. POS Client The user has to re-enter the item.
160
General error messages
Employee ID is invalid POS Client This message will be shown when the user does not
enter the employee ID.
Item action is invalid POS Client The action cannot be performed on an item.
More information is
required for xxx
POS Client For not on file item, the user is supposed to provide
additional item information.
INVALID
QUANTITY for xxx
POS Client The quantity for the item cannot pass the validation.
Item quantity exceeds
maximum quantity
limit
POS Client The quantity for the item entered is greater than the
maximum quantity limit setup in the configuration.
Invalid tender type POS Client The tender information is missing or invalid.
Invalid message
format
POS Client The message does not match the format expected by
the server.
Currency name is
invalid
POS Client The currency name is empty.
Tender type not found POS Client Missing tender information.
Positive amount is
required
POS Client Value expected is greater than zero.
Non-negative amount
is required
POS Client Value expected is greater than zero.
Cheque number is
invalid
POS Client This message is not being used.
Cheque number is
required
POS Client This message will be shown when the user does not
enter the cheque number.
Driver's license
number is invalid
POS Client This message is not being used.
Driver's license
number is required
POS Client This message is not being used.
Driver's license
jurisdiction is invalid
POS Client This message is not being used.
Driver's license
jurisdiction is required
POS Client This message is not being used.
Store action not
allowed.
POS Client The store action, i.e., store close, is not allowed due to
the business rule.
Some tills are still
open.
POS Client The message indicates that there is at least one till at
the store which is open for the given business date
according to the Store Accounting Controller data.
Unknown error POS Client Unknown error.
Manager authorization
is required.
POS Client General message that indicates the action has to be
authorized by the user in the "Manager" group.
Invalid user or
password
POS Client General message that indicates either the user ID or
the password doesn't pass the security clearance.
161
Error Messages
Timed out POS Client General message that indicates the transaction
requested is not being processed within the time
expected.
The transaction is not
complete. Please
restart the transaction.
Press Clear to
continue.
POS Client The message will be shown when the POS is
disconnect to the one server and connected to another
server and the receipt form is initialized.
POS client corrupted.
Please restart the
client.
POS Client This message indicates that there is a problem in the
code or bad configuration data. If the problem persists
and it cannot be resolved by restarting the POS client,
the administrator should capture the POS Client logs
and call for support.
Function not allowed. POS Client The function is not setup properly or the user has no
permission to perform the function.
Transaction not
completed.
POS Client This message is not being used.
Not Completed POS Client This message is not being used.
Declined POS Client This is a general message indicates that the system
declined the request of an operation.
No supported
customer lookup
information
POS Client General response when no customer lookup data was
provided in the request.
Drawer open time is
invalid
POS Client The drawer open time in the request is less than zero.
Pickup form data is
required
POS Client The request processing could not be performed
because form data is missing. User has to provide the
data entry.
Scan context is invalid POS Client The message is defined but it is not being used.
Scan data is invalid POS Client The message is defined but it is not being used.
Scan data type is
invalid
POS Client The message is defined but it is not being used.
Discount value not
allowed
POS Client The discount value entered by the user is out of the
range defined in the configuration.
Discount group code
is invalid
POS Client The discount group code is missing from the request.
Usually, the value is defined in the configuration.
Discount group not
found
POS Client The discount group code in the request cannot be
found at the database. Usually, the value is defined in
the configuration.
Not eligible for this
discount
POS Client The item is not eligible for discount according to item
eligibility rule checking.
Discount cannot be
applied to a void line
POS Client Discount cannot be applied to a voided item.
162
General error messages
No Discountable
Items in this
Transaction
POS Client Discount cannot be applied to a transaction with a
total of zero.
This line item cannot
be discounted
POS Client The message is defined but it is not being used.
Zero discount
calculated, no discount
applied.
POS Client Discount calculation resulted in 0.00 discount amount,
therefore, no discount will be applied.
Invalid password POS Client User cannot access the system without a valid
password.
Employee not found POS Client Employee data cannot be found in the database.
Item amount of zero is
not allowed
POS Client The non-merchandise item amount (presetAmount) is
zero and the Allow Zero Amount is not set to be
"Yes" in the configuration of the non-merchandise
item. The user should check the setting is in the
Non-Merchandise configuration.
The configuration is
not valid see logs
POS Client General message indicates that the configuration of
the function is invalid. The administrator should check
the server's logs and identify the problem, then modify
the corresponding configuration in the Configurator.
The department ID is
not valid
POS Client The department ID in the item data is invalid or the
user entered an invalid department ID during the
department sale.
The price is not valid POS Client User entered the price less than or equal to 0 during
the department sale.
The price is below the
allowed minimum
amount
POS Client The message is defined but it is not being used.
The price is above the
allowed maximum
amount
POS Client The message is defined but it is not being used.
Refunds are not
allowed for this tender.
POS Client The message is defined but it is not being used.
Amount Input
Exceeds Refund Due -
Please re-enter
POS Client User entered the refund amount that is greater than
the total price of the items refunded.
Payments are not
allowed for this tender.
POS Client The message is defined but it is not being used.
he configuration was
not found for tender
payments.
POS Client The message is defined but it is not being used.
Tender amount was
over the manual
authorization limit.
POS Client The message is defined but it is not being used.
Prior tender was not
available.
POS Client The original tender request cannot be found.
163
Error Messages
Prior tender was not
valid.
POS Client The original tender request doesn't contain a valid
state value.
Till action was not
allowed.
POS Client The OPEN/CLOSE action failed due to the status of
the till. For example, try to open a till when the till is
already opened.
Authorization service
was invalid.
POS Client The message is defined but it is not being used.
Dataform is required. POS Client Data form is required for the function but it is not
setup properly. The administrator has to setup the
dataform for the function by using Configurator.
Data is required for the
tender admin form
request.
POS Client The message is defined but it is not being used.
Transaction number is
invalid
POS Client The transaction number is not being provided in the
request.
Transaction number
not found
POS Client The message is defined but it is not being used.
Line not found POS Client No line item is selected for tax/price modification.
Pending line not found POS Client There is no pending item for pickup.
Line number is invalid POS Client General message indicates that the line number is not
supplied in the request.
Employee Sign-On
entered is not the same
as the current
employee Sign On
POS Client The message is defined but it is not being used.
Return item needs
required information,
please return by item
POS Client No item information is provided in the return request.
Invalid URL POS Client No URL is supplied to the POS browser.
Invalid Browser Menu POS Client No menu is supplied to the POS browser.
Quantity not allowed
for xxx
POS Client The item is not setup to allow quantity.
Operator is already
signed on.
POS Client Operator is already signed on.
Operator is not signed
on.
POS Client Operator is not signed on.
Problem finding
loyalty service.
POS Client The system cannot retrieve customer data from the
loyalty service.
Invalid Date Format. POS Client Failed to parse the date string with given date format.
Item Combination Not
Allowed
POS Client Item combination is restricted by one of the Item
Combination Restrictions defined in the Configurator.
164
General error messages
Unrecognized
configuration object.
Call support.
POS Client Invalid configuration for the user defined function
usually caused by bad configuration.
Split tendering not
allowed with this
tender
POS Client (Tender) Split tendering is not allowed with the tender without
"Allow Split Tender" set to "Yes". The option can be
found in the Tender Configuration.
Below threshold. Press
Clear to continue.
POS Client (Tender) The tender amount is below the minimum amount
defined in the configuraton for that tender. The
option can be found in the Tender Configuration.
Tender is above the
maximum allowed
POS Client (Tender) The tender amount is above the maximum amount
defined in the configuraton for that tender. The
option can be found in the Tender Configuration.
xxx tender amount
exceeds the allowed
max amount of yyy
POS Client (Tender) The amount in the tender management function is
greater than the maximum amount defined in the
configuration for that tender. Where xxx is the tender
description; yyy is the maximum amount defined.
No amounts have been
provided.
POS Client (Tender) The message indicates that the user entered 0 for
Tender Management functions.
Invalid tender amount POS Client (Tender) The message is defined but it is not being used.
Under tender not
allowed
POS Client (Tender) The user try to under tender the transaction with the
tender that is not setup for under tender. The option
can be found in the Tender Configuration.
Under minimum
percent of purchase
POS Client (Tender) The tender amount is below the minimum percent of
purchase defined in the configuraton for that tender.
The option can be found in the Tender Configuration.
Over tender not
allowed
POS Client (Tender) The user try to over tender the transaction with the
tender that is not setup for over tender. The option
can be found in the Tender Configuration.
Amount is above the
percent limit for this
tender
POS Client (Tender) The over tender was greater than the percentage limit
defined in the configuraton for that tender. The
option can be found in the Tender Configuration.
Amount is above the
limit for this tender
POS Client (Tender) The over tender was greater than the amount limit
defined in the configuraton for that tender. The
option can be found in the Tender Configuration.
Reference number is
required
POS Client (Tender) For certain tenders, the reference number is required
for processing. The option can be found in the Tender
Configuration.
Tender action is invalid POS Client (Tender) The processing could not be performed because the
tender action is missing from the request.
Not allowed with
Local Server.
POS Client (OLC) The message indicates that the user request a function
that is not available when the POS is in OLC mode.
Local Server posting to
Primary. Retry later.
POS Client (OLC) The user has to wait until the posting process is
finished. The posting started when the OLC POS
reconnect to the Primary server.
Cannot sell items not
found while offline.
POS Client (OLC) The user cannot sell items not found in the database
while it is in OLC mode, i.e., offline.
165
Error Messages
Configurator error messages
Error Function Description
Organization is invalid Configurator Organization ID is not provided.
Organization not
found
Configurator Organization ID provided is not found in the
database.
Application is invalid Configurator Application ID is not provided.
Application not found Configurator Application ID provided is not configured in the
configuration data.
Application entity is
invalid
Configurator Application Entity ID is not provided.
Application entity not
found
Configurator Application Entity ID provided is not configured in
the configuration data.
Component is invalid Configurator Config Component ID is not provided.
Component not found Configurator Config Component ID provided is not configured in
the configuration data.
Configuration XML is
invalid.
Configurator Configuration data is invalid, the configuration data is
stored in an XML.
Component code is
invalid
Configurator The message is defined but it is not being used.
Component code not
found
Configurator The message is defined but it is not being used.
Component name is
invalid
Configurator The message is defined but it is not being used.
Component name not
found
Configurator The message is defined but it is not being used.
Configuration id not
found
Configurator The version ID of the Configuration Profile is not
provided.
Configuration status
not found
Configurator The status of the Configuration Profile is not
provided.
Activation date or time
are invalid
Configurator The activation date of the Configuration Profile is not
provided.
166
General error messages
Hardware error messages
Error Function Description
Correct hardware
error. Press CLEAR to
continue.
Hardware Hardware is not installed properly or hardware has
problem. Check hardware.
Close the cover on the
printer
Hardware (Printer) The message indicates that the cover of the printer is
opened. The user has to close the cover.
Journal is out of paper Hardware (Printer) For the printer with paper journal, the message
indicates that the paper roll for the journal printer is
finished.
Journal is almost out
of paper
Hardware (Printer) For the printer with paper journal, the message
indicates that the paper roll for the journal printer is
almost finished.
Printer is out of paper Hardware (Printer) Receipt printer is out of paper or there is no paper roll
installed. The user need to install a new roll of paper.
Printer is almost out of
paper
Hardware (Printer) Receipt printer is almost out of paper.
Slip printer empty Hardware (Printer) For the printer with slip printer, the message indicates
that there is no paper at the slip printer.
Slip printer near empty Hardware (Printer) For the printer with slip printer, the message indicates
that the slip is not insert properly.
Remove form from
slip printer
Hardware (Printer) Slip printing is finished.
Graphic too large to
Hardware (Printer) The graphic is larger than the memory available for
printing it. The user should go to the Configurator
and change the graphic for the documents.
Graphic format not
valid
Hardware (Printer) The graphic is not in the format that the printer
supported. Try to use JPRG or BMP format.
Error Printing. Check
paper feed
Hardware (Printer) The paper may be jammed.
Unknown printer error
xxx
Hardware (Printer) Unknown printer error with an error code xxx, the
user has to refer to the printer's manual for details.
Unknown printer
status xxx
Hardware (Printer) Unknown printer status with an status code xxx, the
user has to refer to the printer's manual for details.
Unknown scanner
error xxx
Hardware (Scanner) Unknown scanner error with an error code xxx, the
user has to refer to the scanner's manual for details.
Unknown scanner
status xxx
Hardware (Scanner) Unknown printer status with an status code xxx, the
user has to refer to the printer's manual for details.
Could not read card.
Swipe again.
Hardware (MSR) The MSR or PIN Pad cannot read the track data from
the card that may caused by a damaged card.
167
Error Messages
MSR is not available. Hardware (MSR) MSR is not connected or the POS has problem to
communicate with it.
Remove the card from
reader.
Hardware (MSR) Card from last transaction must be removed.
Card removed too
soon. Operation failed.
Hardware (MSR) Card was removed before transaction was complete.
Cannot communicate
with card reader.
Hardware (MSR) The POS device cannot communicate with the card
reader.
MSR error xxx Hardware (MSR) Parameterized device error message with one
substitutable parameter. The error code will be shown,
the user has to refer to the device's manual for details.
MSR error xxx yyy Hardware (MSR) Parameterized device error message with two
substitutable parameters. The error code will be
shown, the user has to refer to the device's manual for
details.
Card expired. Try
another card.
Hardware (MSR) The expiry date read from the track data is older than
the transaction date.
Invalid card. Hardware (MSR) For the card with the valid from date in the track data,
if the valid from date is in the future, i.e., it is not
active, then this message will be shown. This error
message also indicate the PAN length is invalid.
Card removed too
early. Press Clear to
continue, and re-insert
card.
Hardware (MSR) Card removed too early.
Signature Capture
MSR device not
available. Please use
other MSR devices.
Hardware (MSR) Usually, there is a MSR at the Signature Capture
device, if that MSR is not available, this message will
be shown.
PIN entry cancelled,
reverting to signature
Hardware (MSR) The message is defined but it is not being used.
PIN entry cancelled,
reverting to signature
Hardware (MSR) The message is defined but it is not being used.
Unknown MICR error
xxx:yyy. zzz
Hardware (MICR) Parameterized device error message with 3
substitutable parameters. The error code will be
shown, the user has to refer to the device's manual for
details.
No Check in the
device.
Hardware (MICR) No cheque is inserted to the device for reading.
Check still in the
device.
Hardware (MICR) The message indicates that there is a cheque inserted
in the device.
Bad data in the check. Hardware (MICR) MICR data from the cheque is rejected by the device.
No data in the inserted
check.
Hardware (MICR) MICR data cannot be read from the cheque.
Bad check size. Hardware (MICR) The device determines that the cheque size is bad.
168
General error messages
Check is jammed. Hardware (MICR) The cheque is jammed in the reader.
Invalid check digit.
Invalid check.
Hardware (MICR) The check digit from the MICR data read from the
MICR is invalid.
MICR's cover is open. Hardware (MICR) The cover of the MICR is opened.
Weight over scale limit.
Press CLEAR to
cancel
Hardware (Scale) The weight of the item is over the scale limit. The
scale cannot be used to weight this item.
Scale Timed out. Enter
weight manually or
press CLEAR to retry
Hardware (Scale) Scale cannot determine the weight of the item.
Scale Error xxx Please
press CLEAR to retry
Hardware (Scale) Scale error with an error code xxx. The user has to
refer to the device's manual for details.
Unknown scale error
xxx
Hardware (Scale) Unknown scale error with an error code xxx. The user
has to refer to the device's manual for details.
Unknown scale status
xxx
Hardware (Scale) Unknown scale status with a status code xxx. The user
has to refer to the device's manual for details.
169
Error Messages
170
Item Key Expansion Rule
This section shows the Item Key Expansion Rule setting used to generate expanded keys. It is applied
to item lookup and is used for the POS Client and POS Manager. When short codes are entered at the
POS, for example shortened PLU or item numbers, instead of entering a five digit (or longer) code the
cashier can enter three digits (the short code) to represent the long code.
Note: Short codes are sometimes referred to as velocity codes.
When the item service provider is requested to look up an item, it checks each MatchRule in the
ItemKeyExpansion.xml file to determine if the key needs to be expanded. If a match is found, the key
is expanded according to the instructions found in the GeneratedCode block. This can be any
combination of adding a designated prefix, adding a designated suffix, or appending a check digit. The
item service provider uses the first match it encounters in the .xml file based on key length. If no match
is found the key is used, unexpanded, to look up the item.
Note: The expanded item data is imported via the data import utility.
Item Key Expansion.xml<?xml version="1.0" encoding="UTF-8" ?>
<Parameter Name="Authorizer Parameters" Title="Authorizers">
<ItemKeyExpansion>
<KeyExpansionRule>
<MatchRule>
<MinLength>3</MinLength>
<MaxLength>3</MaxLength>
</MatchRule>
<GeneratedCode>
<Prefix>000000000</Prefix>
<Suffix />
<CheckDigit>MOD10</CheckDigit>
</GeneratedCode>
</KeyExpansionRule>
<KeyExpansionRule>
<MatchRule>
<MinLength>4</MinLength>
171
Item Key Expansion Rule
<MaxLength>4</MaxLength>
</MatchRule>
<GeneratedCode>
<Prefix>00000000</Prefix>
<Suffix />
<CheckDigit>MOD10</CheckDigit>
</GeneratedCode>
</KeyExpansionRule>
</ItemKeyExpansion>
</Parameter>
Example key expansions
Below are some example expansions for key 1234, where c is the proper check digit for the expanded
string:
� Prefix = ppp, Suffix = sss, CheckDigit empty: ppp1234sss
� Prefix = empty, Suffix = sss, CheckDigit MOD10: 1234sssc
� Prefix = ppp, Suffix = empty, CheckDigit MOD10: ppp1234c
� Prefix = empty, Suffix = empty, CheckDigit MOD10: 1234c
� Prefix = ppp, Suffix = sss, CheckDigit FOO (where FOO is not a recognized checksum type):
ppp1234sss
172
Index
Aarchitecture
components of 17logical elements 12overview 11technical components 15
Ccloning store data 126communication between applications and services 18converting to Unicode
literal.properties file 45customer services interface files 151
Customer.xsd 151Customers.xsd 151
Ddata cloning 126data import 27data types
known 129dataflow 17, 18deleting store data 126department maintenance files 122deployment options 20
Eemployee maintenance files 122end of day notification files 56
Ffile formats
item maintenance files 122transaction logs 97validation maintenance files 125
files
item maintenance 122transaction logs 97validation maintenance 125
Iimporting data 27
introduction 9item hierarchy maintenance files 123item maintenance files 101, 122
JJapanese language support 45
Kknown data types 129
Llanguage support
Japanese 45literal.properties file
converting to Unicode 45loading data 27logs
location 28
Mmessaging 17, 18mixmatch pricing maintenance files 124
Nnew store setup 126
Ooperational data 125
PPOSLogRetailTransactionStockView_Extensible.xsd 98postal code files 152PostalCodeLookup.xsd 152pricing files 122promotion maintenance files 123
Rresetting a store server 126
173
Sschemas
POSLogRetailTransactionStockView_Extensible.xsd 98PostalCodeLookup.xsd 152
setup new store 126simulation plan
configuring 38simulator
client 37client script recording 40client scripts 38configuring a simulation plan 38engine 40input parameters 41
site parameter maintenance files 124
Ttime zone handling 46Tlogs
missing sequence numbers 56XML interpretation of POS activities 55
Tlogs. See transaction logs
training mode 41electronic fund transfer 41transactions 41
transaction audit files 152transaction logs 97
about the XML files 50sample XML for specific transactions 96sample XML output 51sample XML tags and elements 57schemas
POSLogRetailTransactionStockView.xsd 98validating 97
troubleshooting 45
Uupdating data 125
Vvalidating
transaction logs 97validation maintenance files 125
XXML formats
item maintenance files 122transaction logs 97validation maintenance files 125
XSD schemas
Customer.xsd 151Customers.xsd 151POSLogRetailTransactionStockView_Extensible.xsd 98
174