BASE24-Pos SPDH Device Config
BASE24-Pos SPDH Device Config
All information contained in this documentation, as well as the software described in it, is
confidential and proprietary to ACI Worldwide, Inc., or one of its subsidiaries, is subject to a license
agreement, and may be used or copied only in accordance with the terms of such license. Except as
permitted by such license, no part of this documentation may be reproduced, stored in a retrieval
system, or transmitted in any form or by electronic, mechanical, recording, or any other means,
without the prior written permission of ACI Worldwide, Inc., or one of its subsidiaries.
ACI, ACI Worldwide, and the ACI product names used in this documentation are trademarks or
registered trademarks of ACI Worldwide, Inc., or one of its subsidiaries.
Other companies’ trademarks, service marks, or registered trademarks and service marks are
trademarks, service marks, or registered trademarks and service marks of their respective
companies.
Preface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
1: Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
BASE24 Standard POS Device Handler Module Overview. . . . . . . . . . . . . . . . . . . . . . 1-2
Supported Terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3
Supported Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
Supported Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5
Expanded Transaction Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Multiple Terminal Vendor Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Configurable Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6
Multiple Language Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7
Configurable Receipts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
Download Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
Draft Capture Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
American Express Data Collection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
BASE24-pos Settlement and Cutover. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
Terminal Balancing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
BASE24 Transaction Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11
Derived Unique Key per Transaction (DUKPT) Support . . . . . . . . . . . . . . . . . . . 1-12
American Express Card Security Codes (CSCs) . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
Message Sequencing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
Event Message Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
BASE24-mail Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13
PS2000 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Track 1 and Track 2 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Address Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Port Usage Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Maximum Returns and Adjustments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-15
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index-1
Audience
This manual is intended as a reference for financial institution personnel
responsible for updating and maintaining ACI standard POS devices for use with
BASE24-pos.
Prerequisites
A knowledge of BASE24-pos is encouraged for the customer who is reading this
manual. This manual is designed to be used in conjunction with the ACI Standard
POS Device Message Specifications Manual, which defines the format of the ACI
standard POS message. If more information about BASE24-pos is desired, readers
should refer to the BASE24-pos Transaction Processing Manual.
Additional Documentation
The BASE24 documentation set is arranged so that each BASE24 manual presents
a topic or group of related topics in detail. When one BASE24 manual presents a
topic that has already been covered in detail in another BASE24 manual, the topic
is summarized and the reader is directed to the other manual for additional
information. Information has been arranged in this manner to be more efficient for
readers that do not need the additional detail and at the same time provide the
source for readers that require the additional information. This manual contains
references to the following BASE24 publications:
●
The BASE24 CRT Access Manual contains information on accessing and
printing BASE24-pos files maintenance screen.
●
The BASE24 Base Files Maintenance Manual discusses the base files used
with the SPDH module.
●
The BASE24 Device Control Manual contains additional information on the
EMT Control Command screen.
●
The BASE24 Logical Network Configuration File Manual discusses in
detail the assigns and params used in configuring the SPDH module.
●
The BASE24 Event Message Reference Manual discusses in detail how to
access event messages generated by the SPDH module.
●
The BASE24 Text Command Reference Manual discusses in detail text
commands initiated from the network control facility.
●
The BASE24 Tokens Manual provides information about tokens used with
the BASE24-pos Standard Internal Message.
●
The BASE24 Transaction Security Manual discusses in detail PINs,
message authentication codes (MACs), and dynamic key management used to
provide transaction security for the SPDH module.
●
The BASE24 Transaction Security Services Processing Guide describes
how the Transaction Security Services process is integrated into a BASE24
system. It describes how BASE24 hardware security data is converted and
maintained in data files, how BASE24 processes are configured to use the
Transaction Security Services process, and the implementation requirements
for using the process.
●
The BASE24-pos Standard POS Device Support Manual documents the
release 5.3 native message format used by the SPDH module.
● The BASE24-pos Address Verification Manual provides more information
on the BASE24-pos add-on Address Verification module.
●
The BASE24-pos Transaction Processing Manual discusses in detail
transaction processing used in configuring the SPDH module as well as the
BASE24-pos Standard Internal Message (PSTM).
●
The BASE24-pos Files Maintenance Manual discusses the BASE24-pos
files used with the SPDH module.
●
The BASE24-pos EMV Support Manual discusses configuration and
processing options for the BASE24-pos Europay, MasterCard, and Visa
(EMV) add-on product.
● The BASE24-pos Multiple Currency Support Manual discusses
configuration and processing options for the BASE24-pos Multiple Currency
add-on product.
●
The ACI Standard POS Device Message Specifications Manual contains
detailed descriptions of ACI standard POS message data elements.
Software
This manual documents standard processing as of its publication date. Software
that is not current and custom software modifications (CSMs) may result in
processing that differs from the material presented in this manual. The customer is
responsible for identifying and noting these changes.
Manual Summary
The following is a summary of the contents of this manual.
“Conventions Used in This Manual” follows this preface and describes notation
and documentation conventions necessary to understand the information in the
manual.
Section 5, “Download Data,” contains information about the role of the SPDH
module when downloading configuration data to terminals for use during
processing. It includes information about the records that can be fully or partially
downloaded to terminals from the ACI Standard Device Configuration File
(ACNF), the BASE24-pos Terminal Data files (PTD), and the POS Retailer
Definition File (PRDF).
Section 8, “Configuration Files Maintenance and Set Up,” contains the files
used in configuring the SPDH module. BASE24-pos file maintenance manipulates
these files through the use of formatted screens. This section shows the formatted
screens used by the SPDH module and describes each field shown on these
screens. It also includes the procedures an operator can take to configure each
screen to meet specific requirements.
Appendix A, “Track Data Processing,” describes how the SPDH module formats
Track 1 and Track 2 information in the BASE24-pos Standard Internal Message
(PSTM).
Publication Identification
Three entries appearing at the bottom of each page uniquely identify this BASE24
publication. The publication number (for example, PS-DP140-02 for the
BASE24–pos Standard POS Device Configuration Manual) appears on every
page to assist readers in identifying the manual from which a page of information
was printed. The publication date (for example, Dec-2009 for December 2009)
indicates the issue of the manual. The software release information (for example,
R6.0v9 for release 6.0, version 10) specifies the software that the manual
describes. This information matches the document information on the copyright
page of the manual.
This section explains how fields and unlabeled fields on screens, blank characters,
and optional data fields and subfields in the ACI standard POS message are
documented in this manual.
Field Descriptions
Each field appearing on a file maintenance screen is listed by name and then
described. Field descriptions briefly summarize the contents, purpose, and
permissible values, as shown in the following example taken from the ACI
Standard Device Configuration File (ACNF).
Example
TERMINAL GROUP — The terminal group combined with the RECORD TYPE
and RECORD ID is the primary key into the ACNF. It identifies the terminal or
group of terminals to which the configuration information set up in the ACNF
applies. The configuration information is used by all terminals that have a value
corresponding to this field in the TERMINAL GROUP field on POS Terminal
Data files (PTD) screen 1.
Explanation
Item Description
Example Illustrates a possible entry for the field to further clarify the
value or values that can be entered.
Item Description
Field Length Specifies the size of the field and the type of characters that
can be entered. This length refers to the field and valid
values for the file maintenance screen, not the field in the
DDLs. Possible values are alphabetic, alphanumeric,
hexadecimal, and numeric. The term alphanumeric
includes all alphabetic, numeric, and special characters that
can be entered from a keyboard without using a control
sequence. The term hexadecimal includes all numbers and
the letters A through F.
When a field value cannot be modified by the operator, the
field length is System-protected.
Default Value Specifies the value that is automatically placed in the field
when the screen is first displayed or when the F8 key is
pressed to clear the screen.
Data Name Provides the DDL name associated with the field appearing
on the screen. Data names are included in the
documentation to assist in communicating screen and field
issues to your technical staff. Note that screen data is not
always stored in the BASE24 database as it appears on the
screen or as it is described in the field description. If you
need information on how screen data is actually stored,
consult the DDLs.
In the field descriptions for the screen, the unlabeled field appears according to its
place on the screen and is identified by the same label.
Unlabeled fields are not included in the index by field name; they appear by
subject in the main index.
Blank Characters
Field descriptions for internal and external messages, tokens, files maintenance
screens, and reports often include lists of valid values. When the value contains a
blank character, this manual uses the symbol c to indicate the blank character.
FID x The field identifier for this field, where x is the alphabetic
(A–Z, a–z) or numeric (0–9) character that identifies the field.
Field Name A text description of the data associated with the FID.
Subfield Name A text description of the data associated with the SFID.
Internal Field: The name of the POS Standard Internal Message (PSTM)
field, token, or file field to which this FID/SFID is mapped or
associated with internally.
The standard labeled fields are followed by a description of the FID/SFID and its
use. The description includes the valid values associated with the FID/SFID, if
applicable, and if the data associated with the FID/SFID consists of a group of
fields, these group fields are described as well.
This section is intended for readers who require only an overview of the SPDH
module and its functionality. It provides information on topics important in
gaining a basic understanding of the SPDH module, such as supported features and
terminals. However, this section is also helpful to readers who require a detailed
explanation of the SPDH module and its functionality. Section 1 lays the
groundwork to prepare these readers for information covered in the rest of the
manual by providing readers with previews of topics discussed in greater detail in
subsequent sections. In addition, it provides comprehensive lists of the terminals
supported by the SPDH module, the transactions supported by the SPDH module,
and the files used by the SPDH module. Section 1 also outlines the responsibilities
of ACI, the customer, and the vendor when implementing the SPDH module.
Supported Terminals
Multiple terminal vendors have worked with the BASE24 Standard POS Device
Handler (SPDH) specifications as set forth in this manual. Processors and retailers
have used the SPDH specifications in developing the terminal functionality that
meets their POS EFT requirements.
Supported Protocols
The SPDH module can be configured to use the following communication
protocols:
●
ACISTD
●
Asynchronous 3270
●
Bisynchronous 3270
●
POS-2 DATAPAC 3101/VISA End-to-End
●
SNA LU Type 0
●
TCP/IP
●
Visa
●
Visa 1
●
Visa 2
●
X.21
●
X.25
Supported Features
An enhanced set of features is available for use with the SPDH module.
Customers can select and configure the features necessary to meet their processing
requirements. This subsection provides a list of these features, followed by a
summary of each feature. The following features are supported by the SPDH
module:
●
Expanded transaction set
●
Multiple terminal vendor support
●
Configurable messages
●
Multiple language support
●
Configurable receipts
●
Download options
●
Draft capture options
●
American Express data collection
●
BASE24-pos settlement and cutover support
●
Terminal balancing
●
BASE24 transaction security
●
Derived unique key per transaction (DUKPT) support
●
American Express card security codes (CSCs)
●
Message sequencing
●
Event message generation
●
BASE24-mail support
●
PS2000 support
●
Track 1 and Track 2 processing
●
Address verification
●
Port usage tracking
●
Maximum returns and adjustments
● Stored value cards
●
Balance inquiry service
●
Electronic check authorization
●
Electronic benefits transfer (EBT) support
●
Europay, MasterCard, and Visa (EMV) chip card support
●
Multiple currency support
●
Mobile Top-Up support
●
Contactless Transaction Support
●
Dynamic Card Verification
●
Healthcare/Transit Auto-Substantiation Transactions
●
Healthcare Eligibility Inquiry Transactions
●
Visa Card Level Results
Configurable Messages
The SPDH message (also referred to as the ACI standard POS message) format
allows customers to configure message requests and responses. The SPDH
module can read requests from the terminal that include any number of optional
data fields. These optional data fields can be in the request in any order. The data
fields included in responses sent to the terminal can also be configured by
customers.
Customers can select a different message format for each transaction type, if they
want. The request message and the response message for each transaction type can
consist of different fields. The fields included in the request message can be in any
order the customer chooses.
All SPDH messages consist of a standard header and optional data fields. The
standard header is mandatory and can stand alone (i.e., Logon, Logoff, Handshake,
and Totals transactions). However, it can be followed by any number of optional
data fields. Optional data fields are subject to the requirements of the transaction.
This means that certain transactions may require the presence of certain data fields
in their messages. The only other restrictions on the number of optional data fields
that can be included in the message are the protocol limitations, the size of the
terminal read buffer, and the size of the SPDH read buffer. The SPDH read buffer
is configurable to a maximum of 4,088 bytes, including all data communication
characters associated with the message.
Optional data fields are identified in the SPDH message using field identifier (FID)
characters. Some optional data fields can contain subfields, which are identified
using subfield identifier (SFID) characters. The SPDH module maps data
contained in optional data fields and subfields to and from BASE24-pos Standard
Internal Message (PSTM) fields, tokens appended to the PSTM, or BASE24-pos
files. This manual contains detailed information on optional data fields and
subfields, FIDs, and SFIDs. The PSTM is described in the BASE24-pos
Transaction Processing Manual and tokens are described in the BASE24 Tokens
Manual. BASE24-pos files are described in the BASE24-pos Files Maintenance
Manual.
Note: Data entered or accessed from PTD screens is stored in different files,
depending on whether the data is dynamic or static. Dynamic data, such as
terminal totals, is stored in the POS Terminal Data Dynamic File—general data
(PTDD1). Static data, such as the default language, is stored in the POS Terminal
Data Static File—general data (PTDS1). Last message token data is optionally
stored in the POS Terminal Data Dynamic File—scratch pad (PTDD2).
Throughout this manual, the phrase “BASE24-pos Terminal Data files (PTD),”
refers to all three of the above files.
Configurable Receipts
The SPDH module does not format receipts. Customers must determine if receipts
are necessary and then supply the optional data using the ACI Standard Device
Configuration File (ACNF), ACI Standard Device Response File (ARSP), and
Response Code Description File (RCDF). It is the customer’s responsibility to
configure each response in the terminal configuration data to include sufficient
data for the terminal to format and print a receipt. The SPDH module has the
capability of returning a response determined by the customer in up to three
different languages as well as returning a 48-character response. This is set up in
the ARSP and the RCDF.
Download Options
The SPDH module supports both full and partial downloads. The terminal can
receive full configuration file information or single records. Whether a full or
partial download is requested is determined at the terminal level. Download data is
flexible, allowing customers the ability to send more than 1,000 bytes of
discretionary processing data to the terminal. In addition, the download data can
pertain to as many terminals as the customer selects. A separate download record
is not required for each terminal.
The SPDH module also supports transactions that require paper follow-up. This
method consists of authorizing a transaction online and then sending a paper
voucher/draft follow-up. This method requires merchants to submit the paper
voucher/draft follow-up in order to receive payment.
For the American Express standard industry formats, refer to the ACI Standard
POS Device Message Specifications Manual.
An extensive set of reports provides financial entities with the information they
require to settle their accounts. BASE24-pos also provides the POS Transaction
Log File (PTLF), which keeps a record of each transaction processed by
BASE24-pos during its defined reporting day. In addition, BASE24-pos provides
an automated method to cut over terminals, retailers, institutions, interchanges, and
the BASE24-pos network to a new posting day. For more information on
BASE24-pos settlement, cutover, and reporting, refer to the BASE24-pos
Settlement and Reporting Manual.
Terminal Balancing
The SPDH module enables merchants to balance their terminals with
BASE24-pos. The SPDH module retains terminal totals and enables the retailer to
request totals information from BASE24-pos in order to balance their totals and
receipts against BASE24-pos.
The SPDH module maintains totals for each terminal at a merchant site.
Additionally, the SPDH module can maintain a set of totals that combines all of the
terminals at a merchant site. Terminals in a department store or a pay-at-the-pump
service station are examples of site configurations.
The SPDH module provides at least three methods for merchants to balance
terminals with BASE24-pos. Merchants have the option of performing subtotal
request transactions to determine if BASE24-pos and the terminal have
accumulated the same totals. Merchants then have the option of entering
adjustment transactions, if necessary, before closing the batch.
In addition, merchants also can receive a report a day later, or contact the service
provider to receive terminal balancing information. The BASE24-pos report that
contains terminal balancing information is the Retailer Reconciliation Report
(B24POS35). This report is used to balance transaction activity at the terminal
batch level and can be used by customers to determine whether their terminals
balance with BASE24-pos.
The SPDH module supports the use of message authentication codes (MACs).
MACs are used to verify whether data has been accidentally or fraudulently
altered. Any data sent between the terminal and the SPDH module can be verified
through the use of the MACs. The details necessary to use this standard have been
developed by ACI to use with BASE24-pos and the SPDH module. The customer
can decide whether to use MAC verification with a particular transaction by
configuring MAC parameters in the ACNF.
The SPDH module uses the Transaction Security Services (TSS) process to
provide data encryption for FID J (Available Balance). TSS is used for full
message encryption and configurable message encryption.
The SPDH module supports dynamic key management, which is the automatic
replacement of working keys for a terminal based on one or more thresholds, for
the following working keys:
●
The PIN communications key (KPE), which is returned in FID M.
● The MAC communications key (KMAC), which is returned in FID H.
● The data encryption communications key (KME), which is returned in FID I.
The ACI standard POS message supports full message encryption and configurable
message encryption. Full message encryption allows the institution to encrypt all
optional data fields, except G, H, I, M, b, and c, in the ACI standard POS message.
Configurable message encryption allows the institution to encrypt specific optional
data fields, except G, H, I, M, b, and c, in the ACI standard POS message. The
specific optional data fields are configured to be encrypted in the ACI Standard
Device Configuration File (ACNF) request and response field maps. Full message
encryption and configurable message encryption are enabled using the DATA
ENCRYPTION TYPE field in the POS Terminal Data File.
Transaction security features are described in greater detail in section 6 and setting
up the options associated with these features is explained in section 8. For more
information on BASE24 transaction security, refer to the BASE24 Transaction
Security Manual and the BASE24 Transaction Security Services Processing
Guide.
●
Three-digit CSC located on the signature panel
●
Four-digit CSC located on the front of the card
●
Five-digit CSC located on the magnetic stripe
For more information about CSC processing performed by the SPDH module,
refer to section 6.
Message Sequencing
The SPDH module supports message sequencing, which is a method of ensuring
that every message being sent from the terminal is being received only once and in
the correct order. There are two options available for message sequencing. One
option calls for the SPDH module to check the transmission number, which is a
field in the ACI standard POS message header, in order to detect and drop
duplicate requests. The other option consists of comparing message sequence
numbers to positively identify the sequencing of a request. If message sequence
numbers are included in the message, the SPDH module can ensure that no
messages have been lost or transmitted out of sequence. The message sequence
number method is more reliable, but requires an additional sequence number field
to be included in the message itself. For more information on the sequence
number field, refer to section 4.
In addition, ACI has developed a method that allows customers to view event
message documentation electronically. This online event message documentation
provides customers with greater flexibility by allowing them to print out event
message documentation as needed at their location or to electronically manipulate
the data to suit their needs. The online event message documentation provides the
message number, severity, and text for each event message generated by the SPDH
module. In addition, it also provides the cause of each message and the
recommended action to take.
Accessing the documentation for event messages generated by the SPDH module
is discussed in section 4. For a complete explanation of online event message
documentation, refer to the BASE24 Event Message Reference Manual.
BASE24-mail Support
The SPDH module is fully compatible with BASE24-mail release 6.0.
BASE24-mail allows host processors to send informational messages to POS
terminals throughout a network. Mail messages can also be transmitted from
POS terminals to the host processor. BASE24-mail uses the technology of the
PS2000 Support
The SPDH module is compatible with Visa Payment Service 2000 (PS2000).
PS2000 is a Visa program that ensures that the portion of the transaction that is
authorized is the same as the portion that is cleared and settled. All phases of the
transaction are linked, allowing the institution to reduce back office expenses. The
SPDH module supports the PS2000 program for the passenger transport, hotel,
automobile rental, direct marketing, and fuel market segments.
Address Verification
The SPDH module is compatible with the BASE24-pos add-on Address
Verification module. Address verification assists merchants in controlling losses
that can result from credit card fraud during transactions where the cardholder
cannot be readily identified. The SPDH module places address verification
information in the PSTM. See section 4 for information about the data fields used
to format address verification data in the PSTM. For more information on the
BASE24-pos add-on Address Verification module, refer to the BASE24-pos
Address Verification Manual.
places it in the Station ID token. The token is appended to the PSTM and can be
configured to be logged to the POS Transaction Log File (PTLF). Refer to the
BASE24 Tokens Manual for more information on the Station ID token.
●
Additional Card Activation
●
Card Activation
●
Full Redemption
●
Replenishment
●
Normal Purchase
●
Preauthorization Purchase
●
Preauthorization Purchase Completion
●
Mail or Telephone Order
●
Merchandise Return
●
Cash Advance
●
Card Verification
●
Balance Inquiry
●
Offline Log-only
●
Purchase with Cash Back
●
Purchase Adjustment
●
Merchandise Return Adjustment
●
Cash Advance Adjustment
●
Cash Back Adjustment
The SPDH module supports the FIDs, subFIDs, and tokens used to process these
transactions. This manual contains detailed information on FIDs and subFIDs.
The BASE24-pos EMV Support Manual describes the SPDH module
configuration and processing requirements for EMV transactions. The BASE24
Tokens Manual describes the tokens used to process these transactions.
●
Normal Purchase
●
Preauthorization Purchase
●
Preauthorization Purchase Completion
●
Mail or Telephone Order
●
Merchandise Return
●
Cash Advance
●
Card Verification
●
Purchase with Cash Back
●
Check Verification
●
Check Guarantee
●
Purchase Adjustment
●
Merchandise Return Adjustment
●
Cash Advance Adjustment
●
Cash Back Adjustment
The SPDH module supports the FIDs and tokens used to process these transactions
in a multiple currency environment. This manual contains detailed information on
FIDs. The BASE24-pos Multiple Currency Support Manual describes the SPDH
module configuration and processing requirements for multiple currency
transactions. The BASE24 Tokens Manual describes the tokens used to process
these transactions.
Contactless Transactions
The SPDH module allows for identifying contactless transactions from terminals.
Contactless transactions are transactions initiated without physical contact
between the card and terminal. They can include contactless magnetic stripe
transactions and contactless chip card transactions.
The SPDH moves the contents from FID 6 subFID E (POS Entry Mode) into the
PT-SRV-ENTRY-MDE field in the 0200 request PSTM.
Terminal Requirements
EMV terminal capabilities are determined from Processing Flag 2 field in the
standard message header. If the terminal is capable of contactless EMV
transactions, the Processing Flag 2 field must be set to 5 also.
Configuration Requirements
The terminal’s ACNF response field map record must be configured to include FID
6 subFID E (POS Entry Mode) in requests from the terminal.
Terminal Requirements
For contactless magnetic stripe transactions, the applicable card verification values
for Dynamic Card Verification are included in the Issuer Discretionary Data fields
of the Track 1 and Track 2 Data. To support Dynamic Card Verification, the
terminal must include the following in the track information it sends:
●
Card verification value (the CVC3 or dCVV)
●
Application Transaction Counter (ATC) – a transaction counter maintained by
the application on the integrated chip card.
●
Unpredictable Number (UN) – a number generated by the terminal and used
to create uniqueness in the transaction (required by MasterCard only).
In addition, the track location and length of this card verification information must
match that defined to BASE24 in the Card Prefix File.
Additionally, participating retailers that sell transit fare media, such as commuter
passes, parking passes, and mass transit vouchers and tickets, can also use auto-
substantiation transactions to approve purchases made with FSA payment cards.
The SPDH returns subFID l to the terminal when the 0210 response PSTM
contains the Healthcare/Transit token (CV) and when auto-substantiation data is
present in the token.
Terminal Requirements
The terminal must set the following fields when formatting a healthcare/transit
auto-substantiation transaction request.
FID 1 (PS2000 Data) The Market Specific Data ID field must be set to M
for healthcare (medical) or T for transit.
The terminal will receive FID B (Amount 1) and FID 6 subFID l (Healthcare/
Transit Data) in the healthcare/transit auto-substantiation transaction response. If
the issuer approves the healthcare/transit auto-substantiation transaction for the
full amount, FID B will contain the original requested amount.
FID B (Amount 1) Set to the approved partial amount (less than the
original requested amount).
FID 6 subFID l Fields in the first Additional Amount table entry will
(Healthcare/Transit be set as follows:
Data) ●
Amount Type – Set to 57 (original amount).
●
Amount – Set to the original requested amount.
Entries 2 through 6 of the Additional Amount table
will not be included in the response.
Configuration Requirements
The terminal’s ACNF response field map record should be configured so that FID
B (Amount 1) and FID 6 (Product subFIDs) are returned to the terminal in
transaction responses.
The SPDH moves the healthcare service data received in subFID m to the
Healthcare Service token (CW) and adds the token to the 0200 request PSTM.
Similarly, the SPDH returns subFID m to the terminal when the 0210 response
PSTM contains the Healthcare Service token (CW) and when healthcare service
data is present in the token.
Terminal Requirements
The terminal must set the following fields when formatting a healthcare eligibility
inquiry transaction request.
The terminal may request eligibility information for up to five healthcare services
within a single request message. Each entry in the subFID m Service table
represents a single healthcare service.
The terminal will receive FID 6 subFID l (Healthcare/Transit Data) and FID 6
subFID m (Healthcare Service Data) in the healthcare eligibility inquiry
transaction response. SubFID l will contain from 1 to 6 entries in the Additional
Amount table.
The Amount Type field in each entry will contain a value of 3S (amount co-
payment). SubFID m will contain from 1 to 5 entries in the Service table.
Configuration Requirements
The terminal’s ACNF response field map record should be configured so that FID
6 (Product subFIDs) is returned to the terminal in transaction responses.
Card level results codes are carried in the Card Level Product ID field in the
Switch Common Data token (BY). If the 0210 response PSTM contains the
Switch Common Data token and the token’s Card Level Product ID field is not
blank, the SPDH will move the information to FID 6 subFID k (Card Level
Results) and send it to the terminal.
Configuration Requirements
To receive card level results, the terminal’s ACNF response field map record must
be configured so that FID 6 (Product subFIDs) is returned to the terminal in
transaction responses.
Financial Transactions
The following table describes the financial transactions supported by the SPDH
module.
Financial Transactions
Transaction Description
Financial Transactions
Transaction Description
Financial Transactions
Transaction Description
Financial Transactions
Transaction Description
Administrative Transactions
The following table describes the administrative transactions supported by the
SPDH module.
Administrative Transactions
Transaction Description
Administrative Transactions
Transaction Description
Close Batch Ends the current batch and opens a new batch to
which data is logged and accumulated. When a
close batch transaction is received, the system
creates a batch totals record from the terminal totals
in the PTDD1 and writes it to the PTLF, if batch
totals are configured to be logged. It then clears the
batch totals in the PTDD1.
If the terminal can send its own batch totals, the
system also compares the terminal totals to the
PTDD1 totals, and, if the debits, credits, and
adjustments do not match exactly, writes the
terminal totals to the PTLF immediately following
the PTDD1 totals, if terminal totals are configured
to be logged.
Note: When a batch is closed, the system
automatically writes a service totals record to the
PTLF (prior to the batch totals record), if service
totals are configured to be logged, and clears the
service totals in the PTDD1.
The system also automatically writes a clerk totals
record to the PTLF (prior to a batch totals record), if
clerk totals are configured to be logged, and clears
the clerk totals in the PTDD1.
Administrative Transactions
Transaction Description
Close Day Ends the current terminal day and begins a new day.
When a close day transaction is received, the system
creates a daily totals record from the terminal totals
in the PTDD1 and writes it to the PTLF, if terminal
totals are configured to be logged. It then clears the
terminal daily totals in the PTDD1 that have
accumulated since the last close day transaction or
since the totals were last cleared.
If the terminal can send its own daily totals, the
system also compares the terminal totals to the
PTDD1 totals, and, if the debits, credits, and
adjustments do not match exactly, writes the
terminal totals to the PTLF, if daily totals are
configured to be logged, immediately following the
PTDD1 totals.
Note: Close day transactions, when entered, must
be immediately preceded by a close shift
transaction. If not, the system denies the close day
transaction. Close day transactions should be
entered only once during a reporting day in order to
maintain reporting integrity.
Administrative Transactions
Transaction Description
Close Shift Ends the current shift and opens a new shift to which
data is logged and accumulated. When a close shift
transaction is received, the system creates a shift
totals record from the terminal totals in the PTDD1
and writes it to the PTLF, if shift totals are
configured to be logged. It then clears the shift
totals in the PTDD1.
If the terminal can send its own shift totals, the
system also compares the terminal totals to the
PTDD1 totals, and, if the debits, credits, and
adjustments do not match exactly, writes the
terminal totals to the PTLF immediately following
the PTDD1 totals, if terminal totals are configured
to be logged.
Note: Close shift transactions, when entered, must
be immediately preceded by a close batch
transaction. If not, the system denies the close shift
transaction.
Administrative Transactions
Transaction Description
Mail Delivered Notifies the Mail process that mail in a read mail
request was delivered to the terminal.
Administrative Transactions
Transaction Description
BASE24-pos offers routing of transactions based on card type and retailer floor
and ceiling limits. If the primary destination for authorization is not available,
BASE24-pos allows the transaction to be sent to up to two additional authorization
centers before a decision is made about approving, denying, or referring the
transaction. Destinations to which transactions can be routed include host
computers and interchange networks.
Transaction Flow
When a POS terminal sends a message to BASE24, it is first received by the
XPNET process, the transaction manager, which then sends the message to the
bound Device Handler/Router/Authorization process.
Native Native
XPNET Router
Native
Process
SPDH translates
message into
PSTM
PSTM
PSTM Configuration
POS Device
Files
Authorization
Interchange Host
Interface Interface Process
Process
Release 6.0 of the SPDH module supports the release 6.0 native message format.
While release 6.0 of the SPDH module is documented in this manual, release 5.3
of the SPDH module is documented in the BASE24-pos Standard POS Device
Support Manual.
Implementation Responsibilities
Implementing the SPDH module requires the cooperation of three separate parties
in the POS environment. These three parties are ACI, the terminal vendor, and the
terminal owner, who is referred to as the customer. Each of these parties has
certain responsibilities when implementing the SPDH module. However, the
customer is primarily responsible for selecting the options available with the
SPDH module that are applicable to the particular POS environment in which the
terminals will be operating. Responsibilities are outlined below.
The BASE24 Standard POS Device Handler (SPDH) module enables customers to
configure their POS terminals to meet their exact specifications.
Options supported by the SPDH module are based on the way the base, SPDH
module, and associated BASE24-pos files are set up. These files consist of the
following:
The ACNF is a key-sequenced file, with a primary key consisting of three fields:
the TERMINAL GROUP, RECORD TYPE, and RECORD ID.
The value in the TERMINAL GROUP field should correspond to a value in the
TERM GROUP field on screen 1 of the POS Terminal Data files (PTD). The
SPDH module uses the TERM GROUP field on PTD screen 1 to determine the
ACNF records associated with the terminal. Therefore, ACNF records are
applicable to an entire group of terminals. The number of terminals within one
group is determined by the customer when they set up records in the BASE24-pos
Terminal Data files (PTD).
The value in the RECORD TYPE field indicates whether the record contains
processing data, field map data, or download data. These record types are
discussed in the following paragraphs. The value in the RECORD ID field
identifies the record number within the record type.
Processing Data
One processing data record exists for each terminal group defined in the ACNF.
This record consists of fields and flags that allow customers to set up general
processing parameters used by the SPDH module when handling messages. From
this record, customers can configure several timeout options including the amount
of time the SPDH module waits for responses from the Authorization and Mail
processes. Customers can also determine the maximum length of responses from
the SPDH module to the terminal and whether the SPDH module is to log user data
from the POS Standard Internal Message (PSTM) to the POS Transaction Log File
(PTLF) with every financial transaction. In addition, customers can determine if
totals returned to the terminal in responses are draft capture totals or if the totals
include all totals.
Customers can use the ACNF to set up dynamic key management thresholds for
PIN, message authentication code (MAC), and data encryption keys.
Several BASE24-mail options can also be set using this record. Customers can
determine whether unsolicited mail messages are sent to the terminal, whether a
terminal is allowed to perform implicit closes, and the data processing centers to
which mail should be sent.
The SPDH module reads this data for a terminal into memory upon receiving the
first message from the terminal. When the SPDH module receives a
WARMBOOT message, the data in memory is deleted and this record is reread
when the SPDH module receives the first message from the terminal.
Two field map data records exist for each terminal group included in the ACNF.
The first record defines the fields that are required in requests for each transaction
type, the fields within these request messages that are required to be encrypted,
and the fields within these request messages to be verified with MACs. The
second record defines the fields to be included in responses for each transaction
type, the fields within these response messages to be encrypted, and the fields
within these response messages to be verified with MACs.
Changes to field map data can be made online through BASE24 files maintenance.
However, the customer and vendor must coordinate on this data because the field
maps do not determine the data sent in requests. The purpose of the field map data
in the ACNF is to allow the SPDH module to know what to expect from the
terminal and how to format the responses to the terminal. Terminals do not receive
the field map data. It is the responsibility of the terminal software to determine the
data in requests.
The SPDH module reads this data for a terminal into memory upon receiving the
first message from the terminal. When the SPDH module receives a
WARMBOOT message, the data in memory is deleted and this record is reread
when the SPDH module receives the first message from the terminal.
Although the fields within the requests and responses can be determined by the
customer, some are required for certain transactions. Information concerning the
fields required for specific transactions is included in section 3. Using MACs is
described later in this section.
Download Data
There are 12 download records for each terminal group included in the ACNF.
Records 00, 01, and 02 contain a total of 26 40-byte fields that can consist of any
data the customer wants to download to the terminal or any information the
terminal requires.
Records 03, 04, 05, 07, 08, 09, 10, and 11 contain card prefix range processing
parameters. Examples of the processing parameters include whether cards within
a specified card prefix range use draft capture processing, whether cards within a
specified card prefix range require PINs, and authorization telephone numbers for
each card prefix range specified. Up to 30 card prefix ranges can be defined in this
set of records.
Record 06 contains flags that indicate the fields from the BASE24-pos Terminal
Data files (PTD) that can be downloaded to the terminal.
The SPDH module reads this data for a terminal into memory upon receiving the
first message from the terminal. When the SPDH module receives a
WARMBOOT message, the data in memory is deleted and this record is reread
when the SPDH module receives the first message from the terminal.
The ARSP is a key-sequenced file with the primary key consisting of two fields:
the TERMINAL GROUP and RECORD NUMBER. The value in the
TERMINAL GROUP field should correspond to a value in the TERM GROUP
field on screen 1 of the POS Terminal Data files (PTD). If no terminal group is
specified on PTD screen 1, a terminal group default of **** can be used. If a
customer wants to have all terminals or a select few associated with a set of ARSP
records, the TERMINAL GROUP field in the ARSP should be left blank and the
default terminal group can be used. In this case, the SPDH module reads the
ARSP for the default records. The SPDH module uses the TERM GROUP field on
PTD screen 1 to determine the ARSP records associated with the terminal.
Therefore, ARSP records are applicable to an entire group of terminals. The
number of terminals within one group is determined by the customer when they set
up POS Terminal Data file records.
The ARSP contains a maximum of five records for each terminal group. These
records consist of a response code map record, three display text records, and a
transaction description table record. The response code map record allows for up
to 1000 response codes to be mapped to descriptions defined in the display text
records. Since there are three display text records, responses for the terminal can
be in one of three languages. The language to be used is determined in the request
from the terminal. Language parameters are set up in the LANGUAGE ID field on
screen 1 of the PTD. The transaction description table record allows customers to
determine the wording to be used to describe each transaction in the transaction
set.
When processing a transaction from a POS device, the SPDH module accesses the
APCF extended memory table to determine whether a transaction is allowed from
that device. The SPDH module accesses the APCF directly when downloading the
transactions allowed table to a POS device.
The SPDH module accesses information in the IDF using the IDF extended
memory table.
Assigns
The SPDH module requires several assigns in the LCONF in order to perform
processing. These assigns are as follows and are in addition to any assigns
required by the Router/Authorization module bound to the SPDH module.
APCF — The fully file qualified name of the Acquirer Processing Code File
(APCF).
RCDFEMT — The fully qualified file name of the Response Code Description
File (RCDF) extended memory table. A separate utility program builds this
extended memory table from the RCDF for use by the SPDH module.
Params
The SPDH module uses several params during processing. The following params
are in addition to any params required by the Router/Authorization module bound
to the SPDH module.
●
The POS Terminal Data Dynamic File—general data (PTDD1) contains
dynamic data such as terminal totals that changes during transaction
processing.
●
The POS Terminal Data Static File—general data (PTDS1) contains static
terminal data that generally does not change during the course of transaction
processing.
Generally, when file maintenance is performed to the static data in the
PTDS1, a warmboot is required for this data to be used in processing.
However, a parameter in the Logical Network Configuration File (LCONF)
can override this requirement. When the POS-DH-PTD-STATIC-REPL
parameter is set to Y, and a change to static data in the PTDS1 is made, the
latest modified record is used in the current transaction without a warmboot.
For more information on the POS-DH-PTD-STATIC-REPL parameter, refer
to the BASE24 Logical Network Configuration File.
●
The POS Terminal Data Dynamic File—scratch pad (PTDD2) is an optional
file used to store last message token data for reversal processing. If this file is
not used, last message token data is retrieved from the PTLF for reversal
processing.
The SPDH module uses the TERMINAL ID field contained in the standard
message header of all request messages to access the appropriate records in the
BASE24-pos Terminal Data files (PTD).
For more information on the BASE24-pos Terminal Data files (PTD), refer to the
BASE24-pos Files Maintenance Manual.
Last message token data can be retrieved from the PTLF for reversal processing if
a POS terminal is configured to do so.
For more information on the PTLF, refer to the BASE24-pos Files Maintenance
Manual.
User data contained in the PSTM can be included in messages if it is formatted and
sent by the terminal and if the PSTM USER FLD field on screen 2 of the ACNF is
set to a value of Y (Yes). The PSTM USER FLD field indicates to the SPDH
module whether to format user data in the PSTM for all financial transactions. The
USER-DATA field from the PSTM in the BASE24 transaction log data can be
extracted from the PTLF for host usage.
The USER-DATA field in the PSTM contains the information included in the table
below. The information must be included in the transaction request in order to be
placed in the USER-DATA field.
d Retailer ID X(12)
For more information on the Response Code Description File (RCDF), refer to the
BASE24-pos Files Maintenance Manual.
The Router and Authorization modules are the same for each Device Handler/
Router/Authorization process. However, the Device Handler module differs
between Device Handler/Router/Authorization processes depending on the type of
POS device attached to the system. For example, a different Device Handler
module is required for Hypercom devices than is required for BASE24-pos
Standard POS devices.
This section is devoted to describing the processing associated with the Device
Handler module required for BASE24-pos Standard POS devices—the SPDH
module.
This section describes the processing performed by the SPDH module. It includes
the following information about the SPDH module:
The SPDH module also controls several other functions in the BASE24-pos
system. These functions are listed and briefly described in the following
paragraphs.
PRDF record. If the acquirer transaction profile is found in the PRDF, it is used to
read the APCF extended memory table as described below. If the acquirer
transaction profile is blank in the retailer’s PRDF record, the module attempts to
retrieve the default acquirer transaction profile from the terminal owner’s IDF
record. If the acquirer transaction profile is found in the IDF, it is used to read the
APCF extended memory table as described below. Finally, if the acquirer
transaction profile is blank in the IDF, a value of all asterisks is used to read the
APCF extended memory table.
Once the acquirer transaction profile value used to read the APCF extended
memory table has been determined, the SPDH module attempts to read the APCF
extended memory table using the acquirer transaction profile value, the message
category code from the transaction, and the ISO processing code for the
transaction. The SPDH module calls a utility to map the internal BASE24
transaction code for the transaction to the corresponding ISO processing code
before reading the APCF extended memory table.
Using the acquirer transaction profile, message category, and ISO processing code,
the SPDH module steps through the records in the APCF extended memory table
looking for a match. If an exact match is not found, certain other alternatives are
allowed. Below is the hierarchy used for selection.
Once a match is found, the record is read to determine whether the transaction is
allowed. If the transaction is not allowed, the transaction is declined with response
code 055 (invalid transaction). If the transaction is allowed, the SPDH module
performs the following:
●
Adds the Transaction Profile token with the acquirer transaction profile used.
●
Adds the Acquirer Routing token if the transaction is allowed and an
authorization destination is specified in the APCF record.
Note: The APCF also allows you to specify an authorization destination for a
transaction other than the Router/Authorization module bound in with the
SPDH module. This mechanism allows you to route transactions received
from a POS device to an application process in the XPNET system. When a
transaction is routed in this way, you can also specify whether the transaction
response returned from the authorization destination is logged to the POS
Transaction Log File (PTLF).
●
Adds the Transaction Description token with the transaction description from
the APCF record. If adding this token causes the maximum message length
to be exceeded, it is not added.
Decrypting PINs
The SPDH module can decrypt PINs using software for incoming transactions.
However, if decryption is done using a hardware security module, the SPDH
module passes the transaction to the Authorization module. The Authorization
module then passes the transaction to the hardware security module. Refer to the
BASE24 Transaction Security Manual for more information on PIN decryption.
Authenticating Messages
The SPDH module can authenticate messages passed between BASE24-pos and a
POS device by using message authentication codes (MACs). The options for using
MACs with the SPDH module consist of software or hardware MAC generation
and verification. Refer to section 6 of this manual for a detailed discussion of how
MACs are used specifically with the SPDH module. For more information on
using software and hardware MACs, refer to the BASE24 Transaction Security
Manual.
Downloading
The SPDH module performs both full and partial downloads consisting of terminal
configuration information. The information is downloaded from load files. The
SPDH module downloads information from the ACNF to BASE24-pos Standard
POS devices.
Refer to the BASE24 Logical Network Configuration File Manual for more
information about the POS-DH-LMT-EXCEED-DISP param. For more
information about return and adjustment limit fields in the BASE24-pos Terminal
Data files (PTD), refer to the BASE24-pos Files Maintenance Manual.
Checking Limits
The SPDH module checks return and adjustment limits on the following
transactions:
●
Merchandise return
●
Adjustment to merchandise return
●
Adjustment to purchase
●
Adjustment to cash advance
An adjustment to a merchandise return goes through two sets of checks. After the
SPDH module performs return limit checks, it then performs adjustment limit
checks.
The first check is to see if the transaction is under the return or adjustment count
limit. The following table describes the return or adjustment count check:
If the count limit has been exceeded, the SPDH module takes the action specified
by the POS-DH-LMT-EXCEED-DISP param. This is described in the topic
“Processing Transactions Exceeding Limits.” If the count limit has not been
exceeded, the SPDH module checks return or adjustment amount limits.
If the transaction does not exceed amount limits, the SPDH module continues
processing as usual. If the transaction exceeds the amount limit, the SPDH module
takes the action specified by the POS-DH-LMT-EXCEED-DISP param, as
discussed below.
1. Logs a message.
2. Sets the error flag in the BASE24-pos Release 5.0 token to E (return limit
exceeded) or A (adjustment limit exceeded).
3. Takes action specified in the POS-DH-LMT-EXCEED-DISP param, as
follows:
●
If the POS-DH-LMT-EXCEED-DISP param is set to 0 (continue
processing) or if this is a force-post or store-and-forward transaction
(message subtypes F and S, respectively), the SPDH module continues
processing the transaction. Limits processing is now complete.
●
If the POS-DH-LMT-EXCEED-DISP param is set to 1 (deny
transaction), the SPDH module denies the transaction with a response
code 094 and continues with step 4.
● If the POS-DH-LMT-EXCEED-DISP param is set to 2 (refer
transaction), the SPDH module denies the transaction with a response
code 102 and continues with step 4.
4. Sends the transaction to the Router/Authorization module to be logged to the
PTLF. This is a log only transaction (message type 9900).
5. Responds to the terminal.
Reversal Processing
The TOKEN RETRIEVAL OPTION field on Institution Definition File (IDF)
screen 19 indicates whether BASE24-pos Device Handler modules include tokens
in reversal messages, and if so, whether the token data is retrieved from the second
BASE24-pos Terminal Data Dynamic File—scratch pad (PTDD2) or from the
POS Transaction Log File (PTLF). This option can be overridden at the terminal
level using the TOKEN RETRIEVAL OPTION field on POS Terminal Data files
(PTD) screen 2.
When the SPDH module receives a request from a POS device, it creates the TLF
token with a field indicating the token reversal processing option. If the option is
set to a value of 2 in the TLF token, the Router/Authorization module updates the
token with POS Transaction Log File (PTLF) key data when processing the
transaction response. The SPDH module updates device-dependent PTD extended
memory with the TLF token data and writes this data to the BASE24-pos Terminal
Data Dynamic File—general data (PTDD1). It can then use this information to
retrieve the record from the PTLF during reversal processing. If the token retrieval
option is set to a value of 0 or 1, the Router/Authorization module does not update
the TLF token.
EMV Support
If you have installed the BASE24-pos Europay, MasterCard, and Visa (EMV) add-
on product, the SPDH module performs the following functions:
●
For requests, the module maps EMV data from the request message to tokens
and appends these tokens to the PSTM. If EMV terminal capabilities are not
provided in the request message, the module checks the EMV terminal
capability settings for the terminal on PTD screen 17 to determine which
EMV tokens to include. The module formats the EMV Request Data token,
the EMV Status token, the EMV Discretionary Data token, and the EMV
Supplementary Data token as needed.
●
For responses, the module maps EMV data from the EMV Response Data
token and the EMV Script Data token to the response message sent back to
the terminal.
For detailed information on PTD screen 17, refer to the BASE24-pos EMV
Support Manual.
●
Validates the transaction currency code passed in the request message against
the primary terminal currency defined in the CURRENCY CODE field on
PTD screen 2.
●
Adds the Multiple Currency token with an entry for the primary terminal
currency.
● If the MC TOTALLING TYPE field on PTD screen 2 is set to a value of 1,
amounts in the PSTM are converted into the primary terminal currency before
they are stored in the POS Terminal Data Dynamic File—general data
(PTDD1). Otherwise, amounts in the PSTM are not converted into the
primary terminal currency before they are stored in the PTDD1.
For detailed information on Multiple Currency support for the SPDH module, refer
to the BASE24-pos Multiple Currency Support Manual.
File Usage
The SPDH module uses the following files during processing. Each file listed is
followed by a brief description explaining how it is used by the SPDH module.
Acquirer Processing Code File (APCF) — The SPDH module accesses the
APCF extended memory table to determine whether a transaction is allowed from
a POS device. The SPDH module accesses the APCF directly when downloading
the transactions allowed table to a POS device.
Institution Definition File (IDF) — The SPDH module accesses the IDF
extended memory table to obtain the acquirer transaction profile (if it is not
defined in the POS Terminal Data files or PRDF) and token retrieval option (if it is
not defined in the POS Terminal Data files).
POS Retailer Definition File (PRDF) — The SPDH module accesses the
PRDF to obtain the acquirer transaction profile if it is not defined in the
BASE24-pos Terminal Data files (PTD).
BASE24-pos Terminal Data files (PTD) — The SPDH module uses records
in the BASE24-pos Terminal Data files (PTD) to build a table of PTD key
positions in extended memory. This table enables the SPDH module to access and
update the BASE24-pos Terminal Data files (PTD) records as transactions are
processed.
POS Transaction Log File (PTLF) — The PTLF contains information about
the transactions processed by BASE24-pos. Approved or denied transactions are
logged to the PTLF only if they are sent by a terminal. When a close batch
request, a close shift request, or a close day request transaction is performed, totals
are logged to the PTLF if logging PTLF totals is configured in the LOG TOTALS
field on screen 3 of the PTD. If logging PTLF totals is not configured, no totals are
logged to the PTLF.
1. Initializes the logging process with the name of the specific SPDH module
being initialized and reads the Log Message Configuration File (LMCF).
2. Retrieves the following assigns and params from the Logical Network
Configuration File (LCONF):
Assigns
APCF
POS-SPDH-ACNF
POS-SPDH-ARSP
POS-PTD-DYN-GNRL
POS-PTD-DYN-SCRATCH-PAD
POS-PTD-STATIC-GNRL
POS-DH-PTD-EXTMEM-SWAPVOL
RCDFEMT
Params
POS-DH-CONS-MAC-ERR-LMT
POS-DH-DUKPT-UPDATE-METHOD
POS-DH-ISO-RESP-CDE-FRMT
POS-DH-KEYD-FROM-DISK
POS-DH-KSN-APPRV-OPT
POS-DH-KSN-CNTR-APPRV-OPT
POS-DH-KSN-DESCR
POS-DH-KSN-MAX-DIFFERENCE
POS-DH-LMT-EXCEED-DISP
POS-DH-MAX-CNFGS
POS-DH-MAX-TERMS
POS-DH-MAX-TERMS-IN-DYN-TBL
POS-DH-MAX-TERMS-IN-STATIC-TBL
POS-DH-MAX-CNFGS
POS-DH-PTD-STATIC-REPL
POS-LOG-MAC-ERR
POS-PASSTHRU-ACQ-SEQ-NUM-CHK
POS-PASSTHRU-PROCESS-TYPE
POS-RETRY-TIMER
REVERSE-BAL-INQ
3. Opens the BASE24-pos Terminal Data files (PTD) and sets the file mode so
any process attempting to lock or read a PTD record while the SPDH module
has the record locked receives an error 73. This error indicates the file or
record is locked. If the SPDH module is unable to open the BASE24-pos
Terminal Data files (PTD), the SPDH module abends.
4. Allocates and initializes extended memory space for the number of POS
Terminal Data file records it needs at one time. The number of records that
can be in memory at one time is specified in the POS-DH-MAX-TERMS
param.
5. Opens the ACI Standard Device Configuration File (ACNF). This file is used
in the configuration of the SPDH module. If the SPDH module is unable to
open the ACNF, the SPDH module abends.
6. Allocates extended memory for the ACNF.
7. Opens the ACI Standard Device Response File (ARSP). If the SPDH module
is unable to open the ARSP, the SPDH module abends.
8. Allocates extended memory for the ARSP and loads the default records into
extended memory.
9. Opens the Response Code Description File extended memory table
(RCDFEMT) and places its contents into extended memory, overriding
information from the ARSP where necessary.
Note: The RCDFEMT must be built with the Base Extended Memory Table
Build utility prior to initializing the SPDH module. Refer to the BASE24-pos
Transaction Processing Manual for a complete discussion of the Base
Extended Memory Table Build utility.
Instead, when a WARMBOOT command is received, the first step taken by the
SPDH module is to read the Log Message Configuration File (LMCF). An
internal table stored in the SPDH module containing LMCF information requires
updating if event messages have been altered using the LMCF. The SPDH module
requires warmbooting in order for any LMCF changes to take affect. The logging
facility itself does not be reinitialized because it was already started during
initialization.
Note: The RCDFEMT must be built with the Base Extended Memory Table Build
utility prior to placing it in extended memory. Refer to the BASE24-pos
Transaction Processing Manual for a complete discussion of the Base Extended
Memory Table Build utility.
Text Commands
Network text commands are used to send information from a network control
facility to a process. These commands can be entered by an operator using a
network control facility and serve as a tool that operators can use to perform
network management functions such as changing certain processing parameters,
warmbooting a specific process, monitoring a specific process, and resolving
problems encountered by a specific process. The following text commands can be
used with the SPDH module. For detailed descriptions and the syntax of all text
commands, refer to the BASE24 Text Command Reference Manual.
For a list of the steps the SPDH module follows when a WARMBOOT command is
issued, refer to the “Warmbooting the SPDH Module” topic elsewhere in this
section.
LOADKEY — Loads the PIN encryption key to the SPDH module (not
supported).
LOADFLAGOFF — Indicates that download data is not waiting for the terminal.
The LOADFLAGON command sets the REQUEST-LOAD flag in the device
dependent area of the POS Terminal Data Dynamic File—general data (PTDD1) to
off. When the next response is being formatted to the terminal, the SPDH module
sets the PROCESSING FLAG 2 in the standard header of the message to indicate
that a download is not waiting.
TRACE4 number — Activates response time trace only. The variable number is
the number of transactions that are accumulated before the average response time
is displayed. This is entered by the network operator.
ACI has developed a method that enables customers to access event message
documentation electronically. Event messages are contained in files on a
designated HP NonStop volume and subvolume. Each file contains event
messages for a specific BASE24 process. Files on the designated HP NonStop
volume and subvolume are organized according to product module ID (PMID).
One PMID exists for each process in BASE24. PMIDs identify a specific process
in the BASE24 system (e.g., PSSPDH identifies the SPDH module). Providing
event message documentation in files on the HP NonStop gives customers greater
flexibility by allowing them to print out event message documentation as needed at
their location or to electronically manipulate the data to suit their needs.
Documentation is available in file form for the event messages generated by the
SPDH module. It is located in the $volume.BAxxLOGM.PSSPDH file, where
volume is the site-specific volume and xx is the number of the current release.
Note that BASE24 event messages comply with the PCI Data Security Standards.
This section contains the following information concerning the ACI standard POS
message:
●
Binary data conversion
●
Control header prefixed to response messages for the X.21 protocol
● Standard message header
● Optional data fields
● Request and response message requirements
● External transaction code mapping to and from BASE24-pos internal
transaction codes
The optional data fields to be included in requests from the terminal and responses
from the SPDH module for each transaction type are specified in the ACI Standard
Device Configuration File (ACNF). The ACNF is explained in more detail in
sections 5 and 8.
Several fields in EMV request and response data contain binary data. For
conversion, the binary data is divided into groups of four bits. Each group of four
bits is assigned a hexadecimal (hex) character. Thus, eight bits of binary data is
represented by two hexadecimal characters. It is the hexadecimal characters that
are carried in the ACI standard POS device message.
Conversion Table
0000 0 1000 8
0001 1 1001 9
0010 2 1010 A
0011 3 1011 B
0100 4 1100 C
0101 5 1101 D
0110 6 1110 E
0111 7 1111 F
In all conversions, bit 0 of the binary data is always considered to be the most
significant (i.e., “leftmost”) bit. Thus, for eight bits of binary data in a field,
bits 0–3 are represented by the first hexadecimal character in the field, while
bits 4–7 are represented by the second hexadecimal character in the field.
Note: In EMV specifications, bits are numbered from 8 to 1, with bit 8 considered
to be the most significant bit. Thus, bit 8 in EMV specifications is represented by
bit 0 in this manual, while bit 1 in EMV specifications is represent by bit 7 in this
manual. The following table shows the EMV bit numbering scheme for the bits
carried in the ACI standard POS message. The ACI bit numbering scheme is used
for the applicable fields described in this manual.
Bit Numbering
0 8 4 4
1 7 5 3
2 6 6 2
3 5 7 1
The following example illustrates how eight bits of binary data are converted by a
POS device for placement in the Cryptographic Information Data field of an EMV
request message sent to the BASE24 system.
0–3 1000 8
4–7 1011 B
Bits 0–3 of binary data are represented by the first hexadecimal character, while
bits 4–7 are represented by the second hexadecimal character. In this example
message, the cryptogram is an authorization request cryptogram (ARQC), issuer
authentication failed, and an advice is required. The binary data for this
information is 10001011, which is represented as “8B” in the ACI standard POS
device message.
In EMV request messages, the EMV Request Data (FID 6, subFID O) field must
contain the hexadecimal equivalents of binary data. In EMV response messages,
the following fields must contain the hexadecimal equivalents of binary data.
●
EMV Response Data (FID 6, subFID Q)
●
EMV Additional Response Data (FID 6, subFID R)
Control Header
For all response messages sent from the SPDH module to a device connected to the
BASE24 system using the X.21 protocol, the module adds a control message
header to the beginning of the message. The XPNET process uses this control
header when responding to the POS device. The format is as follows:
Originator X
Control Code X
Phone Number Length X
Phone Number X(21)
Descriptions of the control message header fields are provided below. Possible
values for each of these fields are listed throughout the descriptions. A value of a
blank space is indicated with the symbol c. The data name associated with each
field in the control message header is also provided.
Originator — A code identifying the originator of this message. For the SPDH
module, this field is always set to 0 (application process).
Control Code — A code indicating the type of action for the XPNET process to
take for this message. Valid values are as follows:.
1 = Disconnect
6 = Respond and disconnect
7 = Connect with data
8 = Connect with data and disconnect
Phone Number Length — The length of the phone number used to connect
with this POS device. The length is set to one greater than the length of the phone
number in the TERMINAL PHONE field on PTD screen 1 for this terminal. This
allows for a one-byte baud rate character to be appended to the end of the number.
Phone Number — The phone number used to connect with this POS device.
This is the value from the TERMINAL PHONE field on PTD screen 1 plus a
binary baud rate character appended to the end. The binary baud rate character
allows for multi-speed line support.
The customer and the terminal vendor decide the manner in which values in the
standard header are determined. For example, when the values in the processing
flag fields need to be changed, the customer and the vendor must agree on the
manner in which to change the values.
Standard message header fields are summarized in the table below. Following the
table are individual descriptions of the fields. Field descriptions include possible
values for each of these fields along with the internal data name of the POS
Standard Internal Message (PSTM) field, token, or file field to which the field is
mapped. Fields not used in requests must be blank-filled or zero-filled. A value of
a blank space is indicated with the symbol c.
A two-digit number used by the SPDH module to detect and drop duplicate
requests. If this field is nonzero, and if it is equal to the transmission number of
the last request and the previous response was an approval, the SPDH module
drops the request and sends a response indicating that it received a duplicate
request and that it was dropped. This field is right-justified and zero filled. Valid
values are as follows:
A value that uniquely identifies the terminal. It is used by the SPDH module as the
key to the appropriate record in the BASE24-pos Terminal Data files (PTD). This
value must be manually entered at the terminal initially and whenever the value has
been corrupted. This field is left-justified and blank filled.
One to six alphanumeric characters that uniquely identify the employee entering
the transaction. It is used by the SPDH module to maintain employee totals. This
field is left-justified and blank filled. For request headers, the valid values are as
follows:
In order for the employee totals to be accumulated, additional fields must be set in
the BASE24-pos Terminal Data files (PTD). Values in the CLERK ID field on
PTD screen 1, along with the CLERK TOTALS FLAG field on PTD screen 5 and
the CLERK TOTALS field on PTD screen 6 determine whether clerk totals are
supported. Clerk total counts and amounts can be kept for debit, credit,
adjustment, cash back, and check transactions. For more information on the
BASE24-pos Terminal Data files (PTD) fields used for clerk totals, refer to the
BASE24-pos Files Maintenance Manual.
The date (YYMMDD) of the transaction. For requests, this field is optional and
contains the local terminal date. If it is not provided in the request, or is invalid or
incorrect, the SPDH defaults to the current system date. For responses, the SPDH
returns the current system date taking into account differing time zones. The value
in this field must be echoed in terminal-generated reversals.
If this field contains a value in the request, the Current Time field also must
contain a valid value. The device must send both fields if the current system date
and time of the host are not to be used.
In message authentication code (MAC) reversal messages from the terminal, the
value in this field must match the date on the response being reversed.
The time (hhmmss) of the transaction, where 000000 is midnight. For requests,
this field is optional and contains the local terminal time. If it is not provided in
the request, or is invalid or incorrect, the SPDH defaults to the current system time.
For responses, the SPDH returns the current system time taking into account
differing time zones. The value in this field must be echoed in terminal-generated
reversals.
If this field contains a value in the request, the Current Date field also must contain
a valid value. The device must send both fields if the current system date and time
of the host are not to be used.
In message authentication code (MAC) reversal messages from the terminal, the
value in this field must match the time on the response being reversed.
A = Administrative transaction
F = Financial transaction
L = Pass-through administrative transaction (formerly called merchant link)
M = Pass-through financial transaction (formerly called merchant link)
A code that identifies the message as being either online, store-and-forward, force-
post, or a reversal. Reversals are generated by the terminal or controller, or
because of a message authentication code (MAC) problem. Valid values are as
follows. All values are uppercase letters.
E = Europay, MasterCard, and Visa (EMV) chip card log-only. Indicates that
the transaction was approved by the terminal or EMV card offline. When
an EMV transaction is authorized offline by the terminal/EMV card, the
card generates a Transaction Certificate (TC). The TC is found in the
Application Cryptogram (AC) field within FID 6 subFID O (EMV
Request Data). The TC provides information about the transaction which
can be used if the transaction is disputed. The terminal uploads EMV log-
only transactions one at a time to the SPDH Device Handler module.
F = Force-post. Indicates the transaction is to be force-posted. Force posting
is the manual posting of a transaction to an account. For example, if a
POS device becomes inoperable but a merchant wants a transaction to be
posted for settlement purposes, the transaction can be posted manually to
the account.
O = Online. Indicates the terminal is online to the BASE24 system. Note:
Type A messages must be subtype O.
R = MAC reversal. Placed in this field by the terminal or controller when it
receives a response message containing a MAC that does not match the
MAC computed by the terminal. The original response message is then
sent back to SPDH module as received, with the exception of this field,
thus reversing the transaction.
S = Store-and-forward. Indicates the terminal or controller was offline or
otherwise not communicating with SPDH module when the transaction
was initiated. The transaction was approved and held in the terminal
memory until communications resumed, at which time the transaction was
sent to SPDH module. BASE24-pos must accept and post the transaction.
T = Timeout reversal—online. Placed in this field by the terminal or
controller when an online transaction must be reversed because of a
timeout.
U = Customer-canceled reversal. Placed in this field by the terminal when a
transaction is reversed by a clerk at the terminal.
V = EMV log-only cancellation. Placed in this field by the terminal or the
controller when an EMV log-only transaction (subtype E) needs to be
cancelled.
A code that identifies the transaction type associated with the message. Together
with the value in the Message Type field, this code identifies the type of
transaction sent to the SPDH module. A listing of the various combinations is
included later in this section. Valid values for this field are as follows:
00 = Normal purchase
01 = Preauthorization purchase
02 = Preauthorization purchase completion
03 = Mail or telephone order
04 = Merchandise return
05 = Cash advance
06 = Card verification
07 = Balance inquiry
08 = Purchase with cash back
09 = Check verification
10 = Check guarantee
11 = Purchase adjustment
12 = Merchandise return adjustment
13 = Cash advance adjustment
14 = Cash back adjustment
15 = Card activation
16 = Additional card activation
17 = Replenishment
18 = Full redemption
50 = Logon request
51 = Logoff request
60 = Close batch request
61 = Close shift request
62 = Close day request
64 = Employee subtotals request
65 = Batch subtotals request
66 = Shift subtotals request
67 = Day subtotals request
70 = Read mail request
71 = Mail delivered request
75 = Send mail request
90 = Download request
95 = Handshake request
96 = Key change request
A code that is used in requests to direct the SPDH module to disconnect after its
response, or to remain connected for more transactions.
If this field is set to not disconnect the terminal, the SPDH module maintains the
line indefinitely. In dial-up environments, it is the responsibility of the terminal to
initiate a disconnect, either by sending a request (e.g., a Handshake request) with
this field set to disconnect, or by dropping the line. If the terminal disconnects by
dropping the line, this can be treated as an error condition by the protocol.
In general, when using Visa or POS-2 protocols, the terminal does not know if
subsequent requests are pending and should set this field to disconnect. When the
protocol receives a message from the terminal, the protocol determines whether
more requests exist for the SPDH module in its queue before the SPDH module
issues a disconnect message to the terminal.
An example of this situation is a full download that requires multiple request and
response messages. For downloads, BASE24 sends an 880 response code
indicating that no more data exists or an 881 response code indicating that more
data is forthcoming. Thus, this field should be set to disconnect for downloads.
Then, when there is no more data to be sent, the SPDH module issues a disconnect
message to the terminal. For requests, the valid values are as follows:
This field is used in responses to inform the terminal of waiting mail. For
responses, the valid values are as follows:
0 = No mail waiting
1 = Mail waiting
The use of this code depends on the value in the Message Type field.
For pass-through administrative transactions (message type L), this code is used in
requests to indicate whether concurrent processing can be used. The valid values
are as follows:
For all other transactions, this code is used in requests to indicate whether the POS
device is EMV capable. The valid values are as follows:
For all transactions, this code is used in responses to inform the terminal that it
should request a download. The valid values are as follows:
0 = No download waiting
1 = Download waiting
The use of this code depends on the value in the Message Type field.
For failed pass-through administrative transactions (message type L), this code is
used in requests to indicate whether concurrent processing can be used. If
concurrent processing is used, the PIN Pad ID will be capable of processing
multiple credit card transactions at the same time. The valid values are as follows:
For all other requests, this code is used to indicate the totals to return in response to
a clerk totals request. This field is not used for responses. Valid values are as
follows:
This code is used in responses to inform the terminal of the transaction processing
results. Valid values are as follows:
Approved Codes
000 = Approved balances available
001 = Approved no balances available
002 = Approved country club status
003 = Approved (maybe more identification is required)
004 = Approved pending identification (sign paper draft is required)
005 = Approved blind
006 = Approved VIP status
007 = Approved administrative transaction
008 = Approved national NEG hit OK
009 = Approved commercial status
010 = Approved for a partial amount
Declined Codes
050 = General
051 = Expired card
052 = Number of PIN tries exceeded
053 = No sharing allowed
054 = No security module
055 = Invalid transaction
056 = Transaction not supported by institution
057 = Lost or stolen card
058 = Invalid card status
059 = Restricted status
060 = Account not found on CAF
Referral Codes
100 = Unable to process transaction
101 = Unable to authorize—issue call
102 = Call
103 = NEG file problem
104 = CAF problem
105 = Card not supported
106 = Amount over maximum
107 = Over daily limit
108 = CAPF not found
109 = Advance less than minimum
110 = Number times used
111 = Delinquent
112 = Over limit table
113 = Timeout
115 = PTLF full
120 = Bad UAF
121 = ADMN file problem
122 = Unable to validate PIN; security module is down
130 = Authorization request cryptogram (ARQC) referral
131 = Card verification results (CVR) referral
132 = Terminal verification results (TVR) referral
133 = Reason online code referral
134 = Fallback referral
Service Code
150 = Merchant not on file
Decline Codes
878 = Incorrect PIN length error
889 = MAC communications key (KMAC) synchronization error
898 = Invalid MAC
899 = Sequence error—resync
Chargeback Codes
955 = Chargeback—customer file updated
956 = Chargeback—customer file updated—acquirer not found
957 = Chargeback—incorrect prefix number
958 = Chargeback—incorrect response code or CPF configuration
960 = Chargeback—approved customer file not updated
961 = Chargeback—approved customer file not updated, acquirer not found
962 = Chargeback—accepted, incorrect destination
Note: Optional data fields 6 through 9 contain subfields that supply additional
optional information. These subfields are identified by Subfield Identifiers
(SFIDs). For more information about these subfields, see the “Optional Data
Subfield” topics later in this section.
Summary Table
The optional data fields are summarized in the table below in order by FID, capital
letters first, followed by lowercase letters, followed by numbers. The table lists the
FID, the length of the field in the message, its associated field name, and the name
of the internal field to which it is mapped by the SPDH module. In addition, a
check mark (✓) appears in the RQST or RESP columns if the optional data field is
available for requests or responses, respectively.
M 16 to 48 Communications PTDD1.PTDD1-CORE. ✓
bytes Key ENCR-PIN.ENCR-KEYS.P-
KEY
The Billing Address is the cardholder’s billing address. This address is used for
address verification.
FID B — Amount 1
Request: Required for the following transactions. Variable length of 1
to 18 bytes.
Normal purchase
Preauthorization purchase
Preauthorization purchase completion
Mail or telephone order
Merchandise return
Cash advance
Purchase with cash back
Check guarantee
Purchase adjustment
Merchandise return adjustment
Cash advance adjustment
Cash back adjustment
Mobile top-up cash
Mobile top-up with funds
Amount 1 is the primary amount field. For transactions that involve one amount,
this is the transaction amount. For transactions that involve more than one amount,
this is the original or total amount.
For an EMV request, the data in this field is used for the AMT-AUTH field of the
EMV Request Data token.
For a transaction that is authorized for a lesser or a greater amount than requested,
this field contains the authorized amount in the response message.
FID C — Amount 2
Request: Required for the following transactions. Variable length of 1
to 18 bytes.
For transactions with two amounts involved, this field contains the revised amount.
For transactions with cash back, this field contains the cash back amount.
For an EMV request, this field is used for the AMT-OTHER field of the EMV
Request Data token.
For a purchase with cash back or a preauthorization purchase with cash back
transaction that is authorized for a lesser amount, this field contains the reduced
cash back amount.
The Application Account Type indicates the type of account for the transaction. If
this field is not submitted by the terminal, BASE24-pos uses the DEFAULT
ACCOUNT TYPE field on Card Prefix File (CPF) screen 7. Valid values are as
follows:
The Application Account Number indicates the account against which the
transaction was processed. This field can originate with BASE24-pos or with a
host.
The Approval Code represents a unique number generated by the authorizer for the
transaction.
The Authentication Key is a working key generated by the host and provided to the
terminal. The authentication key is the MAC communications key (KMAC),
encrypted under the MAC terminal master key. The number and type of keys used
determines the length of this field, as follows.
●
A single-length key contains 16 bytes.
●
A double-length key contains 32 bytes.
●
A triple-length key contains 48 bytes.
The Data Encryption Key is a working key generated by the security module and
provided to the terminal. The data encryption key is the data encryption
communications key (KME) encrypted under the data encryption terminal master
key. This key is used to encrypt the Available Balance field. The Data Encryption
Key is also used for full message encryption and configurable message encryption.
The number and type of keys used determines the length of this field, as follows.
●
A single-length key contains 16 bytes.
● A double-length key contains 32 bytes.
● A triple-length key contains 48 bytes.
The Available Balance is the amount available to the customer from the account
against which a debit or credit card transaction was processed. The amount can be
encrypted or in the clear. If the PTD is configured to return balances on all
transactions, this FID contains balance information from the TXN-AMT-1 field in
the POS Balances token.
The Available Balance can also be used for the available balance returned from the
mobile operator in a mobile top-up transaction.
If the PTD is not configured to return balances on all transactions and the CPF is
not configured to return balances on purchase transactions, this FID is available in
responses only on balance inquiry transactions. If configured in other responses, it
is zero filled. With the Multiple Currency add-on product, the SPDH module can
use the value in the POS Balances token for FID J. Otherwise, the SPDH module
uses only the TRAN.AMT-1 field in the PSTM for FID J.
The PIN Communications Key is a working key generated by the host or security
module and provided to the terminal. This key is the PIN communications key
(KPE), encrypted under the terminal master key. The number and type of keys
used determines the length of this field, as follows.
●
A single-length key contains 16 bytes.
●
A double-length key contains 32 bytes.
●
A triple-length key contains 48 bytes.
FID N — Customer ID
Request: Optional. Variable length of 1 to 40 bytes. Trailing blanks are
removed.
The Customer ID Type specifies the type of identification used in the Customer ID
field. The values in these fields are logged by BASE24-pos. Valid values are as
follows:
00 = None
01 = Credit card
02 = Drivers license
03 = Checking account number
04 = Debit card
05 = Proprietary check cashing card
06 = State ID number
07 = Social security number
08 = Student ID number
09 = Employee ID
10 = Passport number
12–50 = Reserved for national use
51–75 = Reserved for ISO use
76–99 = Reserved for private use
The Draft Capture Flag can be specified by the terminal. However, the transaction
profile kept in the BASE24-pos Terminal Data files (PTD) overrides the value in
this field, unless the PTD transaction profile is 3 (terminal determines data capture
mode for each transaction), in which case the SPDH module uses the value in this
field. Values for this field would typically originate in data downloaded to the
terminal by card prefix ranges. Valid values are as follows:
0 = Authorize only
1 = Authorize and capture
The Echo Data represents data that the terminal requires to be echoed back to it in
the response. BASE24-pos does not edit this field. It is recorded in the transaction
log data and returned in the response to the terminal.
Response: Optional for credit or debit card. Mandatory for mobile top-up
transactions using cash or funds. Fixed length of 1 byte. The
value in this field is the card type as determined by
BASE24-pos.
The Card Type enables the terminal to specify the intended usage for a card used as
a debit card and a credit card. Valid values are as follows:
C = Credit card
D = Debit card
N = No card type. Used with mobile top-up transactions using cash.
The Language Code enables the terminal to override the default language in the
BASE24-pos Terminal Data files (PTD). It is used in formulating a terminal
display response. The terminal can select one of three different language displays.
Valid values are as follows:
0 = Table 1
1 = Table 2
2 = Table 3
The Mail/Download Key consists of a group of fields that identify mail to be read
or marked as delivered, or the type of download to be performed.
Concerning mail, this group identifies a mail category (user-defined), the type of
mail access desired (any mail, only undelivered mail, specific mail), a flag used for
mail broadcast processing, and a mail ID. The mail ID serves to identify a specific
piece of mail or the ID of the last mail read. The format is as follows:
Category X(2)
Access Code 9(1)
Processing Flag X(2)
Mail Date 9(6)
Mail ID 9(4)
If partial, this group also identifies which download field is requested. The format
is as follows:
Category X(2)
Access Code X
Processing Flag X(2)
Filler X(10)
Note: In continuation requests (i.e., read next mail or continue download), the
terminal should echo the value contained in the previous response.
The Mail/Download Text field consists of a group of fields representing the text of
a send mail request (from the terminal to the host) or the download fields from the
host. Concerning mail, this group contains a maximum of 449 bytes and identifies
the destination DPC number (when more than one exists) and the text itself.
Concerning downloading, this group contains the fields being downloaded from
the ACNF. The group contains a maximum of 956 bytes of download data. It
identifies the destination DPC number (when more than one exists) and the text
itself. The format is as follows:
The ISO Response Code is the ISO equivalent of the BASE24 response code found
in the SPDH message header. Used to inform the terminal of transaction
processing results. The SPDH module uses the SPDH Names File (SPDHNAMS)
to map BASE24 response codes to their ISO equivalents.
The Postal (ZIP) Code field contains the ZIP code of the cardholder’s billing
address. The ZIP code should be either five or nine digits in length. If it is five
digits in length, the digits should be left-justified and the remaining positions are
space filled.
For responses, this FID contains the address verification status code. The address
verification status code identifies the results of comparing address verification
information received in the transaction and address verification information
contained in the processor’s database.
The following values can be set by BASE24-pos through its address verification
processing. If a transaction is sent to an interchange for processing, the response
message may contain other interchange-specific values (BASE24 does not change
values received from the interchanges).
W = Whole ZIP. The nine-digit ZIP code matched, but the address did not
match.
X = Exact. Both the addresses and the nine-digit ZIP codes matched.
Y = Yes. Both the addresses and the five-digit ZIP codes matched.
Z = ZIP. The five-digit ZIP codes matched, but the addresses did not match.
c = Address verification information was not included in the transaction.
0 = Address verification information was included in the transaction, but was
not verified. This code is used by transactions to be verified by either a
host or an interchange. In addition, transactions to be verified by
BASE24-pos that are declined before address verification can be
performed carry this code.
The Optional Data field allows the terminal to exchange any type of optional data
for BASE24-pos. Typically, this field is used to indicate product codes, quantities,
and amounts within a total purchase amount.
When receiving a request from the POS device, the Device Handler module checks
the length of the data in this field. If this field contains 80 bytes or fewer, the data
is carried in the USER-DATA field of the PSTM. If the field contains more than 80
bytes, the data is carried in the Optional Data token.
When formatting a response to return to the device, the Device Handler module
checks the contents of the optional data field in device-dependent data. If the
device-dependent data field is not blank filled, the contents of this field are
returned in the response. If the device-dependent data is blank filled or not
present, the Device Handler module returns the data in the Optional Data token if
present.
FID b — PIN/Customer
Request: Optional. Variable length of 1 to 16 bytes. Trailing blanks are
removed. This field is in PIN/PAD or PIN/PAN PIN block
format. The PIN PAD character is 1 byte. Derived unique key
per transaction (DUKPT) encrypted PIN blocks are also
carried in this field.
FID c — PIN/Supervisor
Request: Optional. Variable length of 1 to 16 bytes. The PIN PAD
character is 1 byte. Typically, this field is submitted only in
certain transaction requests, like returns and adjustments. In
these cases, BASE24-pos is also configured to indicate that
supervisor security is to be applied to these transactions. This
field is in PIN/PAD or PIN/PAN PIN block format. Derived
unique key per transaction (DUKPT) encrypted PIN blocks are
also carried in this field.
FID d — Retailer ID
Request: Optional. Variable length of 1 to 12 bytes. The ID value is
padded with trailing blanks.
The POS Condition Code field further describes the transaction being submitted.
Valid values are as follows:
00 = Normal presentment
01 = Customer not present
02 = Unattended terminal able to retain card
03 = Merchant suspicious
04 = Electronic cash register interface
05 = Customer present but card not present
06 = Preauthorization request
07 = Telephone device request
08 = Mail or telephone order
09 = Security alert
10 = Customer identity verified
11 = Suspected fraud
12 = Security reasons
13 = Representment of item
14 = Public utility terminal
15 = Customer terminal (Home terminal)
16 = Administration terminal
17 = Returned item (Chargeback)
The PIN Length field contains the actual length of the PIN entered at the terminal.
This field can optionally contain 1 to 400 bytes of generic marketing message from
the Mobile Operator File (MOF) or a marketing message from the mobile operator
host.
The Receipt Data field applies only to situations where the customer has
commissioned ACI to customize the SPDH module to format receipts. In this
case, this field contains the receipt data. This FID is not supported for receipt data
in standard BASE24-pos product.
The Response Display field represents a 48-character display that explains the
BASE24 response code contained in the standard header or the ISO response code
contained in FID X. This field is extracted from one of the SPDH language tables
in the ACI Standard Device Response File (ARSP) or from the Response Code
Description File (RCDF).
ISO response codes must be defined in the RCDF. BASE24 response codes can be
defined in the RCDF, the ARSP, or both. When a BASE response code is defined
in both files, the display in the RCDF overrides the one in the ARSP.
The ARSP and the RCDF can support three languages. The language used
depends on the default language code stored in the BASE24-pos Terminal Data
files (PTD) or the language code included in the request.
The Sequence Number field consists of a group of fields. The purpose of this
group of fields is to help ensure that the SPDH module receives and processes
every transaction only once. The structure is shown below. Included for each field
is its position in the element, its length, and a description of its contents. This
group of fields consists of the following:
07–09 3 Seq #
The Seq # ranges from 001 to 999. It is a unique number
for the current batch. When the Batch Number changes,
the Seq # is set to 001. This portion of FID h is called Seq
# so as not to confuse it with the name of FID h, which is
Sequence Number.
10 1 Reset Flag
The Reset Flag indicates whether the terminal or the
SPDH module is responsible for determining the correct
Shift Number, Batch Number, and Seq #. Only the
terminal can set the Reset Flag. Valid values are as
follows:
0 = Do not reset the sequence number.
1 = Reset the sequence number.
The State Code is associated with the transaction request. Valid values are defined
by the check verification provider.
Note: For electronic check authorization transactions sent to Visa, the state code
entered must be a valid Visa state code.
FID l — Totals/Batch
Request: Optional. Fixed length of 75 bytes.
FID m — Totals/Day
Request: Optional. Fixed length of 75 bytes.
The Totals/Day field consists of a group of fields representing terminal day totals
as accumulated by the terminal. This field includes a shift and batch count, along
with counts and amounts of debits, credits, and adjustments. BASE24-pos logs
these totals and the totals accumulated by the SPDH module to the POS
Transaction Log File (PTLF). These totals contain a sign character (+ or –) in the
first byte of the amount fields.
FID n — Totals/Employee
Request: Not available.
FID o — Totals/Shift
Request: Optional. Fixed length of 75 bytes.
The Totals/Shift field consists of a group of fields representing terminal shift totals
as accumulated by the terminal. This field includes a shift ID and batch count,
along with counts and amounts of debits, credits, and adjustments. BASE24-pos
logs these totals and the BASE24-accumulated totals to the POS Transaction Log
File. These totals contain a sign character (+ or –) in the first byte of the amount
fields.
Normal purchase
Preauthorization purchase
Preauthorization purchase completion
Mail or telephone order
Merchandise return
Cash advance
Card verification
Balance inquiry
Purchase with cash back
Purchase adjustment
Merchandise return adjustment
Cash advance adjustment
Cash back adjustment
Mobile top-up with funds
Note: For EMV transactions, the Application PAN Sequence Number (EMV
Tag: 5F34) is carried in the EMV Additional Request Data field (FID 6,
subFID P). EMV tags are hexadecimal identifiers for data elements in EMV
specifications. They are provided in this FID description for reference purposes
only.
The PIN pad identifier is the logical identifier of the PIN pad at the acquiring
terminal and is unique in the accepting BASE24-pos environment.
The acceptor posting date (YYMMDD) is the date of the POS Transaction Log
File (PTLF) to which the acceptor logged the transaction. The acceptor SPDH
module returns this field to the Merchant Link process so that transactions can be
matched between the acquirer and acceptor, and reconciliation totals can be
accumulated regardless of individual cutover configurations. This field can also
be returned by the acceptor on transactions originated at POS devices.
The AMEX Data Collection field is used to capture transactions originating from
American Express cardholders. American Express has defined categories under
which transactions are placed. These categories are as follows:
●
Auto rental
●
Lodging
●
Restaurant
●
General retail
●
Oil
For each of these categories, American Express requires different data to be sent
from the device. Therefore, American Express has set forth standard industry
formats for each category to ensure the data they require is captured by the device
and sent to the host. The SPDH module is able to recognize the standard industry
formats carried in this field and, subsequently, capture and process transactions
sent using them. In conjunction with this field, the customer must set up Standard
Industrial Classification (SIC) Codes or Merchant Category Codes in the PTD.
SIC and Merchant Category Codes identify the merchant’s line of business. For
more information on the PTD, refer to the BASE24-pos Files Maintenance
Manual. For the American Express standard industry formats, refer to the ACI
Standard POS Device Message Specifications Manual.
The PS2000 Data field consists of a group of fields used with the Visa PS2000
program. This field contains PS2000 data for both request and response messages.
The terminal is responsible for correctly filling in any of the fields that are required
in a given request, placing default values in the other fields, and parsing any of the
fields out of the response message that need to be printed on a receipt or displayed.
Normal purchase
Preauthorization purchase
Preauthorization purchase completion
Mail or telephone order
Merchandise return
Cash advance
Card verification
Balance inquiry
Purchase with cash back
Purchase adjustment
Merchandise return adjustment
Cash advance adjustment
Cash back adjustment
The format for customer Track 1 data, organized in ISO Standard Format, is as
follows:
Field Description
Start sentinel 1 character (%)
Format code 1 character (B for credit cards)
Identification (PAN) Up to 19 digits (variable length)
Field separator 1 character (^)
Country code 3 digits (only present when the PAN starts with 59)
Name Up to 26 characters (variable length)
Field separator 1 character (^)
Expiration date 4 digits (YYMM)
Service code 3 digits
Discretionary data Up to 21 characters (variable length)
End sentinel 1 character (?)
Longitudinal redundancy 1 character
check character
Note: For contactless transactions, the Discretionary Data field can contain the
information necessary for dynamic card verification (card verification value,
application transaction counter, and unpredictable number).
The format for supervisor Track 1 data, organized in ISO Standard Format, is as
follows:
Field Description
Start sentinel 1 character (%)
Format code 1 character (B for credit cards)
Identification (PAN) Up to 19 digits (variable length)
Field separator 1 character (^)
Country code 3 digits (only present when the PAN starts with 59)
Name Up to 26 characters (variable length)
Field separator 1 character (^)
Expiration date 4 digits (YYMM)
Service code 3 digits
Discretionary data Up to 21 characters (variable length)
End sentinel 1 character (?)
Longitudinal redundancy 1 character
check character
The Industry Data field contains information associated with lodging and vehicle
rental. The format is as follows:
This Product SubFIDs field consists of subordinate optional data subfields. For
information about these subfields, see the topic “Optional Data Subfields — FID
6” later in this section.
When you include FID 6 in the request and response field maps of the ACI
Standard Device Configuration File (ANCF), you are enabling all subfields to be
added to the request or response.
This Product SubFIDs field consists of subordinate optional data subfields. For
information about these subfields, see the topic “Optional Data Subfields — FID
7” later in this section.
When you include FID 7 in the request and response field maps of the ACI
Standard Device Configuration File (ANCF), you are enabling all subfields to be
added to the request or response.
This Product SubFIDs field consists of subordinate optional data subfields. For
information about these subfields, see the topic “Optional Data Subfields — FID
8” later in this section.
When you include FID 8 in the request and response field maps of the ACI
Standard Device Configuration File (ANCF), you are enabling all subfields to be
added to the request or response.
Summary Table
The subfields for FID 6 are described below according to their subfield identifiers
(SFIDs). The table lists the SFID, the length of the subfield in the message, its
associated field name, and the name of the internal field to which it is mapped by
the SPDH module. In addition, a check mark (✓) appears in the RQST and RESP
columns if a subfield is available for requests and responses, respectively.
The BASE24 Original Data field represents the original transaction time
(hhmmsshh) and date (MMDD) information carried in the BASE24-pos Standard
Internal Message (PSTM). The format of this data is identical to the subordinate
data definitions TRN-TIM and TRN-DAT for the ORIG-DATA structure of the
PSTM.
The Manual CVD—Customer field contains the manually entered card verification
digits from the customer’s card. The format is the same as the Manual CVD field
of the BASE24-pos Release 5.1 token.
If this field contains a 3-digit American Express card security code (CSC), it must
be left-justified and followed by a blank.
If this field contains a 3-digit American Express card security code (CSC), it must
be left-justified and followed by a blank.
The Purchasing Card/Fleet Card Data field contains purchasing or fleet card
information used to create the Purchasing Card token. The format is the same as
the Purchasing Card token.
00 =
Unspecified
01 =
Manually
02 =
Magnetic stripe
03 =
Bar code
04 =
OCR
05 =
Integrated circuit card
06 =
Reserved for ISO use.
07 =
Contactless chip card transaction
08–60 =
Reserved for ISO use
61–80 =
Reserved for national use
81–90 =
Reserved for private use
91 =
Contactless magnetic stripe transaction (including a Visa MSD
transaction containing a cryptogram)
92–99 = Reserved for private use
0 = Unspecified
1 = PIN entry capability
2 = No PIN entry capability
3–5 = Reserved for ISO use
6–7 = Reserved for national use
8–9 = Reserved for private use
For EMV transactions, the first two digits of this field must be set to a value of 05
and the third digit must be set to a value of 0, 1, or 2.
Valid values for the Recurring Payment Indicator, if it is present, are as follows:
The second byte is the CVD result. Valid values for this byte are as follows:
0 = Card verification was not performed because the transaction was denied
before card verification processing started.
C = Card verification was performed and the card verification digits (CVD)
were invalid. The situation was noted, and transaction processing
continued.
D = Card verification was performed and the CVD was invalid. The
transaction was denied and the ERR-FLG field was set to C.
J = CVV checking was not performed. The track length was in error. The
host database indicates that the transaction should be denied.
K = Card verification was not performed. The track length was in error. The
situation was noted and the transaction was referred.
L = CVV checking was not performed. The track length was in error. The
host database indicates that processing should continue.
N or c = Authorizing entity has not attempted card verification or could not
verify the CVD due to a security device error. (c indicates a blank
character.)
O = Card verification was not performed. A CVD value was not on the card.
Not all cards have a CVD value encoded. The card expiration date must
be equal to or greater than an expiration date defined on the Card Prefix
File (CPF) to ensure that the CVD field has been encoded. If the card
expiration date is equal to or greater than the CPF date, the CVD checks
are performed.
P = Card verification was not performed. Either the merchant ignored the
CVD on purpose or the user falsely indicated no CVD was on the card.
R = Card verification was performed and the CVD was invalid. The
situation was noted and the transaction should be referred.
U = Issuer has not certified or has not provided the encryption keys to the
switch.
Y = Card verification was performed and the CVD was valid.
A numeric code indicating the currency of the transaction, as received from the
POS device, according to the ISO 4217 standard, Codes for the Representation of
Currencies and Funds.
For an EMV request, this field is placed in the TRAN-CRNCY-CDE field of the
EMV Request Data token.
The transaction identifier and transactions stain. The transaction identifier (XID)
is 40 bytes long. The transaction stain is a hash value calculated by applying a
secure hash algorithm to the XID and CardSecret (a secret SET-defined value
known only to the cardholder and the issuer of the cardholder certificate). It is 40
bytes long.
In an online request message (message subtype O), the message reason code
contains one of the values in the table below. When more than one message reason
code condition applies to a transaction, the applicable message reason code with
the highest priority is used.
1503 6 Terminal random selection The “Transaction selected randomly for online
processing” bit is set in byte 4, bit 5 of the
Terminal Verification Results (TVR) in the
EMV Request Data (SFID O).
1505 2 Online forced by ICC ICC forced online, no bits set in TVR.
1506 3 Online forced by card Card used twice; used the maximum times per
acceptor day; one in n authorization; PAN key entry
authorization; exclusion band checks; prevalid
card.
1508 8 Online forced by terminal The TVR indicates that online processing is
required.
1509 4 Online forced by card Expired card; new card; service code; hot card.
issuer
1006 3 Under floor limit Amount is less than the terminal’s floor limit
in a non-ICC transaction.
Acquirers can use the message reason code to determine the appropriate EMV
Authorization Response Code (ARC) for transactions authorized at a terminal. If
an approved advice message is received with a message reason code of 10xx, then
the ARC is Y1 (offline approved). If an approved advice message is received with
a message reason code of 15xx, then the ARC is Y3 (unable to go online, offline
approved).
The EMV Request Data field contains the thirteen minimum request data
elements, as defined by EMV. This subFID is required for all EMV transaction
requests. The format of this subFID depends on the value in the Smart Card
Scheme field.
For more information about the EMV data elements, refer to the MasterCard
M/Chip or the Visa Smart Debit Credit (VSDC) documentation sets or the EMVCo
specification.
For terminals supporting the EMV version 1 scheme, the format is as follows:
For terminals supporting the EMV version 2 scheme, the format is as follows:
58–59 2 Length
89–104 16 Counters
73–74 2 Length
89–104 16 Counters
Note: EMV tags are hexadecimal identifiers for data elements in EMV
specifications. They are provided in this SFID description for reference purposes
only.
The EMV Additional Request Data field contains additional EMV transaction
data. This subFID is optional for all EMV transaction requests. The format of this
subFID depends on the value in the Smart Card Scheme field.
For more information about the EMV data elements, refer to the MasterCard
M/Chip or the Visa Smart Debit Credit (VSDC) documentation sets or the EMVCo
specification.
For terminals supporting the EMV version 1 scheme, the format is as follows:
For terminals supporting the EMV version 2 scheme, the format is as follows:
For terminals supporting the EMV version 3 scheme, the format is as follows:
Note: EMV tags are hexadecimal identifiers for data elements in EMV
specifications. They are provided in this SFID description for reference purposes
only.
The EMV Response Data field contains the response cryptogram and the response
code used to generate the response cryptogram. This subFID is required for EMV
transaction response messages for which an ARPC has been generated. The
format of this subFID depends on the value in the Smart Card Scheme field.
For more information about the EMV data elements, refer to the MasterCard
M/Chip or the Visa Smart Debit Credit (VSDC) documentation sets or the EMVCo
specification.
For terminals supporting the EMV version 1 scheme, the format is as follows:
For terminals supporting the EMV version 2 scheme, the format is as follows:
Note: EMV tags are hexadecimal identifiers for data elements in EMV
specifications. They are provided in this SFID description for reference purposes
only.
The EMV Additional Response Data field contains EMV script data returned in an
EMV transaction response from the card issuer. It also can be used in a subsequent
reversal message to deliver EMV script results, if required. This subfield is
required in EMV transaction response messages only if a script is present for script
processing.
For more information about the EMV data elements, refer to the MasterCard
M/Chip or the Visa Smart Debit Credit (VSDC) documentation sets or the EMVCo
specification.
The format for script data returned in an EMV transaction response form the card
issuer is as follows:
Note: EMV tags are hexadecimal identifiers for data elements in EMV
specifications. They are provided in this SFID description for reference purposes
only.
The format for returning EMV script results in a reversal message is as follows:
The Stored Value Data field contains stored value card information. This subFID
is required for additional card activation transaction requests and all stored value
transaction responses. The format is as follows:
The key serial number (KSN) and key descriptor are used with derived unique key
per transaction (DUKPT) processing. The format is as follows:
The CAVV/AAV result code indicates the result of the CAVV (Visa method) or
AAV (MasterCard method) validation. Valid values are as follows:
Point of service data includes a group of flags that indicate card, cardholder, and
transaction status associated with a point-of-sale transaction. The format is as
follows:
06 1 Cardholder ID Method
A code indicating how the cardholder was verified at the
point-of-service. Valid values are as follows:
0 = Unknown (default)
1 = Signature
2 = PIN
3 = None (Cardholder Present)
4 = None (Cardholder Not Present)
5 = Authentication Value
6 = Electronic Signature Analysis
7 = Biometrics
8 = Biographics
9 = Other
The card verification flag 2 indicates whether the card involved in a card-read
transaction has already been verified using the CVV2/CVD2/CSC. Valid values
are as follows:
C = Card verification was performed and the card verification digits (CVD)
were invalid. The situation was noted and the transaction processing
continued.
D = Card verification was performed and the CVD was invalid. The
transaction was denied.
N or!c = Card verification was not attempted or a security device error occurred
(where c indicates a blank space).
O = Card verification was not performed. A CVD value was not on the
card. Not all cards have a CVD value encoded. The card expiration
date must be equal to or greater than an expiration date defined on the
Card Prefix File (CPF) to ensure that the CVD field has been encoded.
If the card expiration date is equal to or greater than the CPF date, the
CVD checks are performed.
P = Card verification was not performed. Either the merchant ignored the
CVD on purpose or the user falsely indicated no CVD was on the card.
R = Card verification was performed and the CVD was invalid. The
situation was noted and the transaction should be referred.
S = CVV2 should be on the card but the merchant indicates that it is not.
U = Issuer has not certified or has not provided the encryption keys to the
interchange.
39 1 Conversion Flag
A flag indicating the type of electronic conversion to
perform. Valid values are as follows:
0 = No conversion.
1 = Perform a check verification or check guarantee
transaction with conversion.
2 = Conversion only transaction.
The magnetic ink character recognition (MICR) data for the check in Raw Toad
format (i.e., as read by the MICR reader). If this subFID is present in the message,
the MICR data in the Electronic Check Conversion Data field (subFID b) is parsed
from this data. If this subFID is not present in the message, the MICR data in the
Electronic Check Conversion Data field (subFID b) is manually entered.
This field is not used by the host for processing. Only SFID b is used by the host
and must be present. SFID c is present only if an interchange requires the full
MICR in the Raw Toad format.
01–15 15 Trace ID
The code assigned by the interchange to a transaction
that has met the required compliance edits. A
combination of the network ID, reference number, and
date is filled into this field, depending on the interchange.
20 1 Monitoring Status
A code returned from the interchange indicating whether
MasterCard changed the point-of-service entry mode
from 90 to 02. A value of Y indicates that the status is
being monitored.
21 1 Error Indicator
A code returned from the interchange indicating an error
condition that may have occurred. Valid values are as
follows:
c = No error occurred (where c indicates a blank space)
A= Track 1 or Track 2 data not present in message
B= Track 1 and Track 2 data present in message
C= PAN not equal in PAN data
D= Expiration date not equal in PAN data
E= Card type invalid in track data
F = Field separator invalid in track data
G= A field within the track data exceeds the maximum
length
H = Transaction category code is T
I = POS customer presence indicator is 1
J = POS card presence indicator is 1
The response source or reason code subfield contains the response source or reason
code set by an interchange to provide additional information regarding a response.
Valid values are as follows:
To avoid this situation, the intermediate system can use this subfield to indicate
that a system other than the card issuer is the authorizing entity. If a value of 1 or 4
is returned in this subfield, then the transaction could not be sent to the issuer for
authorization. If the Issuer Authentication Data (subFID 6Q) is not present in the
response message, then the terminal should respond to the integrated circuit card
with an EMV response code of Y3 (unable to go online, offline approved) or Z3
(unable to go online, offline declined). If a value of 2 or A is returned in this
subfield, then the transaction was authorized on behalf of the issuer. If the Issuer
Authentication Data (subFID 6Q) is not present in the response message, then the
terminal should respond to the integrated circuit card with an EMV response code
of Y1 (offline approved) or Z1 (offline declined).
The POS merchant data subfield contains additional POS merchant data. The
format is as follows:
This subfield contains a reference number supplied by the system that retains the
original source information.
This subfield is a network identifier for the message transmission and defines the
program rules that apply to the transaction. It is usually set by the interchange
network that acquires the transaction.
This subfield contains a code indicating the participation program for the card
involved in the transaction. The first byte has one of the following values:
AX = American Express
DI = Discover
K = Visa Corporate
Q = Private Label
R = Proprietary
S = Visa Purchasing
U = Visa TravelMoney
The second byte is a blank, A-Z or 0-9. All are reserved values.
08 1 Amount Sign
A code indicating whether the amount is positive or
negative. Valid values are as follows:
C = Credit, positive balance
D = Debit, negative balance
09-20 12 Amount
The amount specified by the Amount Type field (right-
justified and zero-filled on the left).
When this subfield is used for healthcare eligibility inquiry transactions, the use of
the Additional Amount and Amount Type fields can vary depending on whether
the merchant supports optional amount types. If the merchant does not support
If the merchant supports optional amount types, the message contains up to six
occurrences of the Additional Amount field. The first occurrence of the Additional
Amount field represents the total healthcare amount, and the Amount Type field is
set to 4S. In subsequent occurrences of the subfield, the Amount Type field
contains a value specific to each charge (4S, 4U, 4V, 4W, or 4X) that make up the
total. For example, if a purchase includes $15 (USD) of over the counter and $30
prescriptions, there would be three occurrences of the subfield, as shown below:
1 4S $45.00
2 4S $15.00
3 4U $30
This subfield contains additional data for American Express transactions. The
subFID is variable-length, and the format is as follows:
3 Data ID
CEc = Customer Email (c = blank character)
2 Data Length
Length of the following field.
3 Data ID
CHc = Customer Host Name (c = blank character)
2 Data Length
Length of the following field.
3 Data ID
HBT = HTTP Browser Type
2 Data Length
Length of the following field.
3 Data ID
STC = Ship To Country
2 Data Length
Length of the following field.
3 Ship To Country
Three-byte numeric ISO country code.
3 Data ID
SMc = Shipping Method (c = blank character)
2 Data Length
Length of the following field.
2 Shipping Method
Shipping method code. Valid values are as follows:
01 = Same day
02 = Overnight/next day
03 = Priority, 2-3 days
04 = Ground, 4 or more days
05 = Electronic delivery
06–ZZ = Reserved for future use
3 Data ID
MPS = Merchant Product SKU
2 Data Length
Length of the following field.
3 Data ID
+IP = Customer IP (ACI-defined data ID)
2 Data Length
Length of the following field.
15 Customer IP
Customer’s internet IP address in the following format:
nnn.nnn.nnn.nnn
3 Data ID
+AN = Customer ANI (ACI-defined data ID)
2 Data Length
Length of the following two fields.
10 Customer ANI
ANI (Automatic Number Identification). The specified
phone number that the customer used to place the order
with the merchant.
2 Customer II Digits
Telephone company-provided ANI II (Information
Identifier) code digits that are associated with the
Customer ANI phone number and correspond to the call
type (e.g., cellular, government institution).
3 Data ID
+DD = Departure Date (ACI-defined data ID)
2 Data Length
Length of the following field.
8 Departure Date
Departure date in the format YYYYMMDD.
3 Data ID
APN = Airline Passenger Name
2 Data Length
Length of the following field.
3 Data ID
CNc = Cardmember Name (c = blank character)
2 Data Length
Length of the following field.
3 Data ID
+AP = Origination/Destination Airport (ACI-defined
data ID)
2 Data Length
Length of the following two fields.
5 Origination Airport
Origination airport for the first segment of the trip. Five-
character airport code allows for the anticipated
expansion of the current three-character code. Left-
justify and blank-fill as needed.
5 Destination Airport
Destination airport for the first segment of the trip; not
necessarily the final destination. Five-character airport
code allows for the anticipated expansion of the current
three-character code. Left-justify and blank-fill as
needed.
3 Data ID
RTG = Routing
2 Data Length
Length of the following two fields.
2 Number of Cities
Number of airports or cities on the ticket, maximum of
10.
3 Data ID
ALC = Airline Carriers
2 Data Length
Length of the following two fields.
2 Data Length
Length of the following three fields.
24 Fare Basis
Primary and secondary discount codes indicating the
class of service and fare level associated with the ticket.
Truncate to 24 bytes, if necessary.
3 Number of Passengers
Number of passengers in the party.
1 E-Ticket Indicator
Indicates if the ticket is electronic. Valid values are as
follows.
E = electronic ticket
blank = non-electronic ticket
3 Data ID
RES = Reservation Code
2 Data Length
Length of the following field.
For more information about the EMV data elements, refer to the MasterCard
M/Chip or the Visa Smart Debit Credit (VSDC) documentation sets, or the
EMVCo specification.
For Visa contactless transactions, the Dataset ID is 01, and the buffer may contain
any of the following EMV data elements:
Note that EMV data elements are typically defined as binary, but the SPDH
message supports display-format data only; therefore, each binary byte in an EMV
data element must be converted to a pair of hexadecimal characters for
transmission in the SPDH message. However, there is no change to the value of the
“length” subfield, which therefore specifies the number of pairs of hexadecimal
characters in the “value” subfield in the SPDH message.
01–02 2 Dataset ID
A code indicating the data passed in this subfield.
Valid values are as follows:
01 = Visa contactless transaction data
Note: EMV tags are hexadecimal identifiers for data elements in EMV
specifications.
Summary List
The subfields for FID 7 are described below according to their subfield identifiers
(SFIDs). The table lists the SFID, the length of the subfield in the message, its
associated field name, and the name of the internal field to which it is mapped by
the SPDH module. In addition, a check mark (✓) appears in the RQST and RESP
columns if a subfield is available for requests and responses, respectively.
For requests, this subFID contains the mobile top-up Track 2. This subFID is
required for mobile top-up transactions.
For mobile top-up refund requests, this subFID contains the original mobile top-up
reference number for refunds used to match the refund with the original request.
This subFID is reserved for future use.
For responses, this subFID contains the original mobile top-up reference number
for refunds used to match the refund with the original request. This subFID is
reserved for future use.
For responses, this subFID contains the pre-pay mobile top-up response. It
includes the following fields:
Summary List
The subfields for FID 8 are described below according to their subfield identifiers
(SFIDs). The table lists the SFID, the length of the subfield in the message, its
associated field name, and the name of the internal field to which it is mapped by
the SPDH module. In addition, a check mark (✓) appears in the RQST and RESP
columns if a subfield is available for requests and responses, respectively.
For requests, this subFID can contain the electronic benefits transfer (EBT)
voucher number. This subFID is required for manually entered EBT transaction
requests that were voice authorized.
For responses, this subFID contains the available balance for a cash account.
In EBT transaction responses, the EBT Available Balance field contains the
available balance for a food stamp account.
For more information on required optional data fields for different transaction
requests, refer to section 8 and the ACI Standard POS Device Message
Specifications Manual.
Note: Either FID q or FID 2 is required for all financial transaction requests. The
customer selects the preferred track on Card Prefix File (CPF) screen 1. The
SPDH module checks each financial transaction for the presence of either FID q or
FID 2 and declines those transactions that have neither FID.
Some fields may be included in responses regardless of the ACNF data, including:
FID H, the Authentication Key; and FID V, the Mail/Download Key. However,
these are returned only when found to be applicable. The Authentication Key is
included when a new MAC communications key is generated due to the configured
number of consecutive messages failing to be verified when using message
authentication codes (MACs).
If the SPDH module is unable to format a response message due to errors in the
ACNF, the response message consists of a header only, with the response code set
to 821, indicating an invalid response length. A possible error in the ACNF could
be that the format specified results in a response longer than the maximum
allowable response.
Note: FIDs V and W are the only FIDs allowed in the response message for a
download.
For more information on required optional data fields for different transaction
responses, refer to section 8 and the ACI Standard POS Device Message
Specifications Manual.
The list below identifies the message types and transaction codes sent in the
standard message header and the BASE24 transaction codes subsequently
computed by the SPDH module. The BASE24 transaction codes listed below
include the letter t to indicate the position of the code identifying the type of card
that generated the transaction. Also, the BASE24 transaction codes include the
letters aa to indicate the position of the code that identifies the type of application
account used in transactions initiated by debit cards. Refer to the BASE24-pos
Transaction Processing Manual for a listing of valid BASE24-pos card types and
account types.
F 17 Replenishment 27taa
*
The transaction is submitted as a card verification (16taa) if administrative
approval is required.
The BASE24 ACI Standard POS Device Handler supports full and partial
downloads to terminals. Downloads provide a way to transport and load the data
necessary to configure a terminal. Configuration data downloaded to terminals is
set up in the ACI Standard Device Configuration File (ACNF), the Acquirer
Processing Code File (APCF), the BASE24-pos Terminal Data files (PTD), and the
POS Retailer Definition File (PRDF). This section provides the following
information on SPDH module download support:
●
Downloading records
●
Data elements and download field identifiers (DIDs)
●
Data element records
●
Full download requests and responses
●
Partial download requests and responses
Configuration data downloaded to the terminal from the ACNF records depends on
the request sent from the terminal. Terminals can request a full download, which
results in all of the configuration data contained in the up to 12 ACNF records
being sent to the terminal. Terminals can also request a partial download, asking
for a single download field.
The data elements to be included within the ACNF records are determined by the
customer. Information that can be included within these records includes
telephone numbers, floor limits, and receipt data.
Download Records
Each terminal group has up to 12 download records in the ACNF. They are
designated with record identifiers of 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, and
11. Records 00, 01, and 02 contain 26 40-byte fields. Records 03, 04, 05, 07, 08,
09, 10, and 11 contain processing parameters for 30 card prefix ranges. Record 06
contains 26 flags, indicating what fields from the PTD and PRDF are downloaded
to the terminal. The download fields are set up in the ACNF using files
maintenance functions. Refer to section 8 for more information on the download
fields in the ACNF.
For example, the SPDH module attempts to retrieve record 00. If record 00 is
found, the data from this record is downloaded and the SPDH module attempts to
retrieve record 01. If record 00 is not found, the SPDH module does not download
any records for record 00 and attempts to retrieve record 01.
In addition, the SPDH module continues to download card prefix range data
(records 03, 04, 05, 07, 08, 09, 10, and 11) until the first blank card prefix range is
found in the ACNF. The SPDH module then stops searching for card prefix range
data and moves to record 06. For example, the SPDH module locates record 03
and all four card prefixes are defined in the record. The SPDH module formats this
data in the download data message and attempts to locate record 04. If record 04 is
not found, the SPDH module attempts to locate record 06 (i.e., the SPDH module
does not attempt to locate records 05 and 07 through 11). As another example,
assume the SPDH module locates record 03 and the third card prefix range in the
record contains blanks. In this case, the SPDH module downloads only the first
two card prefix ranges, then stops attempting to locate card prefix ranges and
moves to record 06.
The data elements are identified with DIDs A through Z. DIDs A through J are
stored in record 00. DIDs K through T are stored in record 01. DIDs U through Z
are stored in record 02.
The data elements contained in records 00, 01, and 02 are sent only if they are
requested by the terminal and if they contain data. If the terminal requests these
data elements, but the data elements contain no data, they are not sent to the
terminal.
●
DIDs 0 through 3 are stored in record 03
●
DIDs 4 through 7 are stored in record 04
●
DIDs 8 through 9 are stored in record 05
●
DIDs 10 through 13 are stored in record 07
●
DIDs 14 through 17 are stored in record 08
●
DIDs 18 through 21 are stored in record 09
●
DIDs 22 through 25 are stored in record 10
●
DIDs 26 through 29 are stored in record 11
Data concerning the card prefix ranges is entered in the ACI Standard Device
Configuration File (ACNF) through BASE24 files maintenance. The instructions
for setting up card prefix ranges in the ACNF are described in section 8. The data
elements in records 03, 04, 05, 07, 08, 09, 10, and 11 are sent to the terminal only
if they are requested by the terminal and if they contain data.
Note: For releases 5.0 and above, the SPDH module can support up to 30 card
prefix ranges. In prior releases, only 10 card prefix ranges were supported. In
order for the SPDH module to support up to 30 card prefixes, the REL-NUM field
in the BASE24-pos Terminal Data files (PTD) must be set to 50 (release 5.0 or
above). The REL-NUM field identifies the BASE24-pos message format used by
the terminal. This field is used by the SPDH module to determine the
BASE24-pos release number of the message format the terminal understands. If
the REL-NUM field is set to 50, the SPDH module can download up to 30 card
prefix ranges. If the REL-NUM field is not set to 50, only 10 card prefix ranges
can be downloaded. In this situation, if an operator attempts to download more
than 10 card prefix ranges (records 07 through 11), only the first 10 are successful.
In addition, a message is logged indicating that 30 card prefix ranges cannot be
downloaded for the release number specified in the REL-NUM field. An 880
response code is also sent indicating no more data exists.
The card prefix data elements listed above are taken from records 03, 04, 05, 07,
08, 09, 10, and 11 in the ACNF. For descriptions of the card prefix data elements,
refer to the “Download Records 03, 04, 05, 07, 08, 09, 10, and 11 Screens” topic
documented in section 8.
Record 06
The data elements in record 06 consist of flags corresponding to fields in the
BASE24-pos Terminal Data files (PTD), Acquirer Processing Code File (APCF),
and the POS Retailer Definition File (PRDF). These flags are used to determine
the PTD and PRDF fields to be downloaded. Record 06 can store 26 download
flags. DIDs a through z identify the 26 data elements that can be included in
record 06, although only 13 of the data elements are currently supported.
Flags concerning the data elements are set in the ACI Standard Device
Configuration File (ACNF) through BASE24 files maintenance. The instructions
for setting up data elements in the ACNF are described in section 8. The data
elements in record 06 are sent to the terminal only if they are requested by the
terminal and if they contain data.
d N/A RESERVED
e N/A RESERVED
m N/A RESERVED
n N/A RESERVED
o N/A RESERVED
t N/A RESERVED
u N/A RESERVED
v N/A RESERVED
w N/A RESERVED
x N/A RESERVED
y N/A RESERVED
z N/A RESERVED
TERM-CITY-ST — DID b contains the city and state in which this terminal is
located for printing receipts and to comply with Regulation E. The following
fields are taken from the PTDS1:
1–13 13 CITY
14–16 3 STATE
TERM-OWNER-NAME — DID c contains the name of the retailer who owns the
terminal. This element is taken from the PTDS1.
01–25 25 NAME
26–50 25 ADDRESS
51–63 13 CITY
64–66 3 STATE
67–68 2 COUNTRY
69–88 20 PHONE
P-KEY — DID g contains the PIN encryption key used by this terminal. This
element is taken from the POS Terminal Data Dynamic File—general data
(PTDD1). The number and type of keys used determines the length of this field, as
follows.
●
A single-length key contains 16 bytes.
●
A double-length key contains 32 bytes.
●
A triple-length key contains 48 bytes.
A-KEY — DID h contains the message authentication code (MAC) generation key
used by this terminal. This element is taken from the PTDD1. The number and
type of keys used determines the length of this field, as follows.
●
A single-length key contains 16 bytes.
●
A double-length key contains 32 bytes.
●
A triple-length key contains 48 bytes.
PIN PAD CHARACTER — DID i contains the character used to pad the PIN
block. This element is taken from the PTDD1.
DATA ENCRYPTION KEY — DID j contains the data encryption key used by
this terminal. This element is taken from the PTDD1. The number and type of
keys used determines the length of this field, as follows.
●
A single-length key contains 16 bytes.
● A double-length key contains 32 bytes.
● A triple-length key contains 48 bytes.
DID k contains the card processing parameters for this terminal. These parameters
are taken from the PTDD1.
Note: Release 3.4 and newer releases of the SPDH module support functionality
that allows downloading of fields whose lengths typically exceed the maximum
response length of the SPDH module. The only field to which this enhancement
currently applies is DID k. The following paragraph describes the way in which
the SPDH module processes fields whose lengths exceed the maximum response
length allowed by the SPDH module.
01–02 2 TYP
Indicates the type of card accepted at this terminal.
03–11 9 NP-FLOOR-LIM
The floor limit as used by BASE24, in whole currency
units, for normal purchase transactions performed at this
terminal for this card type.
12–20 9 CA-FLOOR-LIM
The floor limit as used by BASE24, in whole currency
units, for cash advance transactions performed at this
terminal for this card type.
21–29 9 MO-FLOOR-LIM
The floor limit as used by BASE24, in whole currency
units, for mail or telephone order transactions performed
at this terminal for this card type.
30–38 9 TRAN-LIMIT
The transaction amount limit for this card type as used by
BASE24, in whole currency units, for this terminal.
Transactions for amounts exceeding this limit are denied.
This limit does not apply to cards with VIP status.
39 1 TRAN-PROFILE
A code indicating the transaction profile. Valid values
are as follows:
0 = Authorize only
1 = Authorize and capture
2 = Authorize and expect electronic follow up
3 = Terminal determines data capture mode for each
transaction
LIMITS — DID l contains the limit parameters for the terminal. The following
parameters are taken from the PTDS1:
01–04 4 ADJ-LIMIT-CNT
The maximum number of adjustment transactions
allowed to be performed on this terminal for each batch.
When this limit is exceeded, an event message is
generated.
05–22 18 ADJ-LIMIT-AMT
The maximum amount, in whole and fractional currency
units, that can be accepted at this terminal using
adjustment transactions. This limit is invoked for each
batch. When this limit is exceeded, an event message is
generated.
23–26 4 RETURN-LIMIT-CNT
The maximum number of merchandise return
transactions allowed to be performed on this terminal for
each batch. When this limit is exceeded, an event
message is generated.
27–44 18 RETURN-LIMIT-AMT
The maximum amount, in whole and fractional currency
units, that can be accepted at this terminal using
merchandise return transactions. This limit is invoked
for each batch. When this limit is exceeded, an event
message is generated.
Normal Purchase
Preauthorization Purchase
Preauthorization Purchase Completion
Mail or Telephone Order
Merchandise Return
Cash Advance
Card Verification
Balance Inquiry
Purchase With Cash Back
Check Verification
Check Guarantee
Purchase Adjustment
Merchandise Return Adjustment
Cash Advance Adjustment
Close Batch
Close Shift
Close Day
Reserved
Read Mail
Send Mail
Mail Delivered
Sales Drafts
Clerk Totals
Cash Back Adjustment
Adjustments when Amt2 > Amt1
Preauthorizations for a lesser amount
Card Activation
Additional Card Activation
Replenishment
Full Redemption
RETAILER-ID — DID q contains the retailer identifier of the retailer who owns
this terminal, as defined in the RETAILER ID field on PTD screen 1.
Requesting a Download
When download data is required, the SPDH module sets the PROCESSING FLAG
2 in the standard message header. This indicates to the terminal that a download
should be requested. The terminal should then programmatically request a full
download.
In addition, an operator can force the SPDH module to set the PROCESSING
FLAG 2 in the standard header through the network control facility
LOADFLAGON command. The format of this text command is contained in
section 3. The LOADFLAGON command instructs the SPDH module to set the
PROCESSING FLAG 2 in the standard message header in responses to the
terminal to indicate a download is required. Upon receipt of the command with the
LOADFLAGON parameter, the SPDH module sets the appropriate flag within the
PTD device dependent data area. When the next response is being formatted to the
device, the SPDH module sets the PROCESSING FLAG 2 in the standard header
to indicate that a download is waiting. For more information on text commands
sent using the network control facility, refer to the BASE24 Text Command
Reference Manual.
For a full download, the configuration data specified in the 12 ACNF records is
sent to the terminal. Responses to a full download request have as much of the 12
records included as fits in a response. The maximum response length is configured
in the ACI Standard Configuration File (ACNF).
The terminal can also make a request to the SPDH module for a partial download
(i.e., a specific DID). A partial download consists of sending one item to the
terminal.
Detailed request and response message requirements for full and partial
downloads, including message flow examples, are provided in the ACI Standard
POS Device Message Specifications Manual.
● Configurable receipts
● Returning account balances
● Chargebacks for preauthorization completions
● Draft capture
● Message sequencing
● Transaction accumulation totals
● Europay, MasterCard, and Visa (EMV) Transaction Certificates
● PIN encryption
● Data encryption
●
Message authentication codes (MACs)
●
American Express card security codes (CSCs)
●
Dynamic key management
●
Handshaking
●
BASE24-mail support
●
Interac Online Payment transaction identification requirements
●
Suppression of consumer transaction data
Configurable Receipts
The SPDH module does not format receipts. Instead, it is the customer’s
responsibility to configure each response in the terminal configuration data to
include sufficient data for the terminal to format and print a receipt.
●
Standard receipt information
●
SPDH module response considerations
●
Optional data field information
Receipt Information
Although it is the customer’s responsibility to determine the information to be
included on receipts, several suggestions follow.
The standard header fields typically printed on a receipt include the following:
●
Terminal ID
●
Employee ID
●
Date
●
Time
●
Transaction code
●
Response code
The optional data fields typically printed on a receipt include the following:
B Amount 1
F Approval Code
J Available Balance
K Business Date
h Sequence Number
k Terminal Location
q* Track 2/Customer
r* Track 2/Supervisor
s Transaction Description
2* Track 1/Customer
3* Track 1/Supervisor
*
Either Track 2 or Track 1 data must be specified in the ACI Standard Device
Configuration File (ACNF) to print the primary account number (PAN).
In addition to the above optional data fields, the following optional data fields are
typically printed on a mobile top-up transaction receipt.
f Marketing message
Response Considerations
Although the customer and the terminal vendor are responsible for determining
what the receipt looks like, several aspects of the receipts must be set up through
BASE24 software. These include setting parameters so the SPDH module knows
which response to return to the terminal and developing the exact text of the
responses to be sent.
Language Code
The SPDH module uses the request first to determine the language in which to
return responses. Specifically, the SPDH module checks for the presence of the
language code field identified with FID U. If present, the SPDH module checks
the value in this field. If this field is not included in the request, the SPDH module
uses the default language code set in the LANGUAGE ID field on POS Terminal
Data files (PTD) screen 1.
Therefore, the customer is required to set a default language code in the PTD. If a
specific language code is required for certain transactions or for any other reason,
the customer needs to include FID U in the request message. For consistency, the
ACI Standard Device Configuration File (ACNF) should also be set appropriately,
indicating when FID U is going to be included in requests.
The SPDH module uses the language code, along with the BASE24-pos response
code returned from the Authorization module, to determine the response to send to
the terminal.
When the SPDH module receives the response code from the Authorization
module, the SPDH module accesses the ACI Standard Device Response File
(ARSP) using the terminal group identified in the PTD or the default terminal
group (****) and record 00. An index in record 00 of the ARSP links all
BASE24-pos response codes to a number. The SPDH module then uses this
number as an offset into the appropriate language table to determine the correct
response. The language tables are located in records 01, 02, and 03 of the ARSP.
Customers must enter the appropriate responses in the language tables and the
correct numbers in the index in the ARSP for the response to be accurate.
Instructions on entering this information are included in section 8.
Optional Responses
If the ACNF is set to include FID g in responses to the terminal, the SPDH module
returns a customer-configured response to the terminal. Although these responses
are typically used to inform the terminal operator of processing results, the
response text is optional and up to the discretion of the customer. The only
restriction on these responses is that they not exceed 48 characters. If the response
is less than 48 characters, trailing spaces are removed by the SPDH module.
\B B Amount 1
\C C Amount 2
\F F Approval Code
\J J Available Balance
\K K Business Date
\N N Customer ID
\Q Q Echo Data
\S S Invoice Number
\T T Invoice Number/Original
\d d Retailer ID
\h h Sequence Number
Responses are configured in the response code description fields on the ARSP
Language Display screens and in the DESCRIPTION field on RCDF screen 2.
The ARSP screens and field descriptions are in section 8. The RCDF screens and
field descriptions are in the BASE24-pos Files Maintenance Manual.
The ARSP contains BASE24 response codes, while the RCDF can contain
BASE24 and ISO response codes. Descriptions for ISO response codes must be
defined in the RCDF when responses include FID X (ISO Response Code).
Descriptions for BASE24 response codes must be defined in the ARSP. However,
if a BASE24 response code is defined in the ARSP and RCDF, the RCDF
description overrides the ARSP description.
The value in the RETURN BALANCES field on CPF screen 7 cannot override the
value in the BALANCE RETURNED field on PTD screen 2, as shown in the
following table.
The SPDH module returns the available balance in FID J in response messages.
When configured to return balances only for account balance inquiries, the
Multiple Currency add-on determines where the SPDH module obtains the
available balance it returns for balance inquiry transactions.
●
With the Multiple Currency add-on, the SPDH can obtain the available
balance from the POS Balances token if the transaction involves multiple
currencies or the TRAN.AMT-1 field in the PSTM if the transaction does not
involve multiple currencies.
●
Without the Multiple Currency add-on, the SPDH obtains the available
balance only from the TRAN.AMT-1 field in the PSTM.
Refer to the BASE24 Tokens Manual for information about the POS Balances
token.
The SPDH module can encrypt the account balance. Refer to the Data Encryption
discussion in this section for more information.
The SPDH module uses the REVERSE-BAL-INQ param in the Logical Network
Configuration File (LCONF) to determine whether balance inquiry transactions
should be reversed if they do not complete as intended. While balance inquiry
transactions typically are not reversed, it may be appropriate to do so when a
service charge is applied for an inquiry. The REVERSE-BAL-INQ param applies
only to the balance inquiry transaction, not the return of balances on other
transactions.
●
In standard preauthorized holds processing, a chargeback can be generated if
the hold has expired.
●
In enhanced preauthorized holds processing, a chargeback can be generated if
any of the following processing requirements are not met.
❏
The preauthorization completion amount must not exceed the
preauthorization hold amount.
❏
The preauthorization hold must not have expired.
❏
The preauthorization hold completion timer must not have expired.
Draft Capture
BASE24-pos allows for processing retailer transactions as draft capture or non-
draft capture. Non-draft capture transactions are transactions for which the paper
draft represents the actual settlement instrument. Paper drafts must be physically
presented for deposit in order for the transaction to be settled. While the
transaction may have been authorized by BASE24-pos, the BASE24-pos record
cannot be used to settle the item.
Draft capture transactions are electronically captured at the time of the transaction
and are sufficient in themselves to enact a funds transfer for the transaction
amount. BASE24-pos identifies draft capture transactions in its files and includes
draft capture totals on its retailer reports so that the retailer sponsor can settle with
the retailer.
●
Authorization only with paper draft follow-up
●
Authorize and draft capture
●
Terminal-defined draft capture
Different draft capture options may be selected for each terminal and card type.
Customers set the TP field on PTD screens 8, 9, and 10 to indicate the draft capture
option they have selected for each terminal and card type. The values that can be
placed in the PTD TP (transaction profile) field for BASE24-pos Standard POS
terminals are as follows:
For request or force-post transactions (PSTM message types 0200 and 0220,
respectively) from an SPDH terminal, the transaction profile from the terminal can
be 0 or 1. For a reversal transaction (PSTM message type 0420) from an SPDH
terminal, the transaction profile must be the same as that of the original
transaction.
If the terminal is to determine the draft capture value, the SPDH module uses the
value sent in FID P (Draft Capture Flag) of the request. FID P contains the
following values for the SPDH module:
With this method, BASE24 updates the cardholder usage and activity totals, logs
transactions to the PTLF, and updates the service totals and authorization totals in
the PTD.
The host waits for paper to post and settle with retailer and on-us cardholder
accounts.
The value in the PTD, or the value in FID P, must be set to 0 or 3 with the terminal
sending 0, indicating to authorize with paper follow-up.
With this method, BASE24-pos updates the cardholder usage and activity totals,
logs transaction to the PTLF, and updates service totals, authorization totals, and
draft capture totals on the PTD.
The host posts and settles with the retailer and on-us cardholder accounts without
paper follow-up.
The value in the PTD, or the FID P (Draft Capture Flag), must be set to 1 or 3 with
the terminal sending 1, indicating to use the authorization and draft capture
method.
The SPDH module uses the TP field on PTD screens 8, 9, and 10 or the transaction
profile sent by the terminal to set the TRAN-PROFILE field in the PSTM. The
Router module then moves the value in the TRAN-PROFILE field of the PSTM to
the DFT-CAPTURE-FLG field in the PSTM. The transaction profile values and
the corresponding draft capture flag settings for the SPDH module are shown in
the following table.
0 0 All transactions
Message Sequencing
A terminal that conforms to the SPDH module can request the SPDH module to
validate transmission numbers and sequence numbers by including these in the
requests. Transmission number checking is only intended to avoid duplicates.
Sequence number checking is intended to ensure that BASE24-pos has received
and processed every transaction only once. Any combination of these checking
techniques can be implemented.
For online transactions (the Message Subtype field in the standard message header
set to O), it is theoretically sufficient for the terminal to supply only the sequence
number on requests as a means of controlling duplicate transmissions. When the
SPDH module receives an online request with a sequence number that it is not
expecting, it can execute the resynchronization procedure described later in this
section, thereby avoiding duplicate processing.
●
The terminal must assign a new transmission number to each new transaction.
The SPDH module expects the terminal to increment the number from 1 to 99
and then roll back to 1 again.
● When a new PTD record is initialized, the transmission number is set to 00, so
the terminal can be configured to send 01 as an initial value.
●
When transactions are retransmitted as force-post transactions due to a
terminal timing out, the transmission number that accompanied the original
transaction is used on the force post transaction.
● When the SPDH module receives a message having the same transmission
number as the last message received by the SPDH module, and the last
message received by the SPDH module was approved, the message is
declined with a response code of 078, indicating the transaction is a duplicate.
When the SPDH module receives a message having the same transmission
number as the last message received by the SPDH module, and the last
message received by the SPDH module was declined, the message is
processed.
Store-and-Forward Considerations
Because the SPDH module does not support sequence number resynchronization
for store-and-forward transactions, it processes any retransmission as a new
transaction unless there is some way to determine that the transaction has already
been processed.
The only way to do this check on store-and-forward transactions is through the use
of transmission numbers. The terminal should assign the transmission number to a
transaction when it is sent for the first time. Only after a valid response for the
transaction is received from the SPDH module should the terminal increment the
transmission number for use on the next transaction. This way a terminal can
retransmit repeatedly knowing that the SPDH module only processes the
transaction once, regardless of communication line failures.
Force-post Considerations
The SPDH module offers an alternate solution to the duplicate detection problem.
Transactions that are offline-authorized by the terminal can be sent as force-post
transactions (the Message subtype field in the standard message header set to F).
In this case, sequence number checking logic is applied, exactly as with online
transactions, before force posting the transaction.
This alternate solution is less efficient than the transmission number solution
because it compromises the distinction that the SPDH module draws between
force-post and store-and-forward transactions.
Sequence number checking is done by the SPDH module only when FID h is
included in the request from the terminal. This field consists of 10 numeric
characters. The first three characters indicate the shift number and range from 001
to 999, rolling back to 001. The next three characters identify the current batch
and range from 001 to 999, rolling back to 001. The next three characters consist
of a unique sequence number within the shift and batch which ranges from 001 to
999, rolling back to 001. The last character is a reset flag, indicating whether the
terminal or the SPDH module is responsible for determining the correct sequence
number.
The SPDH module is initialized to expect sequence number 001001001, with the
shift number set to 001, the batch number set to 001, and the sequence number set
to 001. From this point on, the SPDH module expects the sequence number to
increment by one. When 999 is reached, the SPDH module expects 001 as the next
sequence number.
When the first batch close transaction is performed, the SPDH module next
expects a sequence number of 001002001. Since the batch close transaction is
optional, the SPDH module is conditioned to always allow the terminal to send a
sequence number with the sequence number set to 001 without incrementing the
batch number to 002. When this occurs the SPDH module can perform an implicit
batch close.
When the first shift close transaction is performed, the SPDH module next expects
a sequence number of 002001001. Since the shift close transaction is optional, the
SPDH module is conditioned to always allow the terminal to send a sequence
number with the batch number set to 001 without incrementing the shift number to
002. When this occurs the SPDH module can perform an implicit shift close
transaction. An implicit batch close transaction may also be in order at this time.
When the first day close transaction is performed, the SPDH module next expects a
sequence number of 001001001. Since the day close transaction is optional, the
SPDH module is conditioned to always allow the terminal to send a sequence
number with the shift number set to 001 without resetting the shift, batch, and
sequence number to 001. When this occurs the SPDH module can perform an
implicit day close transaction. An implicit shift close transaction and an implicit
batch close transaction may also be in order at this time.
Implied closes are processed only if the terminal group is configured to support
implied closes in the ACNF. If the terminal group is not configured to support
implied closes, the SPDH module does not perform closes and the BASE24 Report
programs do not execute correctly. In addition, implied closes are completed only
if the reset flag in the sequence number is set to 1, indicating that the terminal is to
determine the sequence number.
When the SPDH module receives an unexpected sequence number, batch number,
or shift number and the reset flag in the sequence number is set to 0, indicating the
SPDH module is to determine the sequence number, the SPDH module responds to
the terminal with a denial response code of 899 and FID h. Response code 899
indicates a sequence error has occurred and resynchronization is to be performed.
FID h contains the expected sequence number.
The terminal has two options when it receives a response code of 899 with FID h.
It can adjust its sequence number, batch number, or shift number to correspond
with the sequence number, batch number, or shift number received from the SPDH
module. This implies the terminal is able to adjust its sequence numbers, batch
numbers, and shift numbers backward or forward in its internal queue and send
subsequent transactions that correspond to the adjusted sequence number, batch
number, or shift number.
The terminal can also direct the SPDH module to adjust its sequence number,
batch number, or shift number to match the sequence number, batch number, or
shift number maintained by the terminal. To do this, the terminal needs to put the
sequence number, batch number, and shift number that the terminal determines to
be correct in FID h, set the reset flag to 1, and send the transaction that originally
received a response code of 899 back to the SPDH module. Once the transaction is
resubmitted to the SPDH module, the SPDH module accepts the transaction.
In addition, if the batch or shift number has been changed from the batch or shift
number in the original transaction, the SPDH module determines that the
transaction being resubmitted contains a new batch or shift number and the SPDH
module performs an implied batch close or an implied shift close. The SPDH
module then processes the transaction and responds to the terminal.
0 = Use standard reset procedures (reset, shift, batch, and seq # values)
1 = Reset shift and seq # values, but increment batch value
2 = Reset batch and seq # values, but increment shift value
3 = Reset seq # value, but increment shift and batch values
9 = Increment shift, batch, and seq # values
If this param is missing or invalid, the SPDH module uses standard sequence
number reset procedures.
The standard sequence number reset procedure is resetting shift, batch, and
sequence number (seq #) values to 001 when a Day Close transaction is performed.
Under most operating conditions, this procedure is sufficient to provide unique
sequence numbers for all transactions. However, in certain environments where a
cardholder does not use ATMs and uses the same POS terminal on a regular
schedule, the possibility exists for transactions performed on different days to have
the same sequence number. In this situation, the SPDH module could decline a
transaction because the transaction sequence numbers are the same, even though
the transactions are unique because they are performed on different days.
The SPDH module can be configured to increment various shift, batch, and
sequence number (seq #) combinations as a way to eliminate such duplicate
sequence number situations from occurring, as shown in the following table.
Values that differ from the standard reset are highlighted in red italics.
Refer to the ACI Standard POS Device Message Specifications Manual for
detailed sequence number checking message flow examples.
The SPDH module always accumulates batch, shift, and day totals. When an
explicit or implicit close for the corresponding period is received, the SPDH
module records these totals in the PTLF and resets the totals as appropriate. The
SPDH module also supports reconciliation with a series of subtotals request
transactions prior to an explicit or implicit close.
The BALANCE SUPPORT field on PTD screen 3 indicates to the SPDH module
which totals are supported by the terminal by means of close transactions. Totals
specified in the PTD are allowed to accumulate until reset by means of a close
transaction.
The SPDH module records clerk totals as required by the terminal. It logs these
totals to the PTLF. When a clerk totals request is received from the terminal, the
SPDH module accumulates the clerk totals by employee ID or terminal ID and
returns them to the terminal.
A site configuration uses one PTD record for each terminal plus one PTD record
for the site itself. The value in the SITE ID field on PTD screen 1 identifies the
site. The site-level PTD records are called primary records, and the terminal-level
PTD records are called secondary records. Each site can have only one primary
PTD record.
Once all primary and secondary PTD records have been defined, modifications
made to certain fields of the primary record can be applied to all secondary records
with the same value in the SITE ID field on PTD screen 1 by pressing a single
function key. Secondary PTD fields that can be updated from the primary PTD
screen include all user-modifiable PTDS1 fields other than TERMINAL ID and
TERMINAL TYPE. The data name associated with each PTD field in the
BASE24-pos Files Maintenance Manual identifies whether it is a PTDS1 field.
A site configuration accumulates the following transaction totals for the individual
terminals at the site and displays the aggregate totals in the primary PTD record.
●
Service totals (also called totals by card type) displayed on PTD screens 11
through 16
●
Batch totals displayed on PTD screen 4
●
Shift totals displayed on PTD screen 4
●
Daily totals displayed on PTD screen 4
●
Current network totals displayed on PTD screen 4
The following settings are required for the totals on the primary PTD record to be
displayed accurately.
●
Every card type that is defined on screens 8 through 10 of any secondary PTD
record at a site must also be configured on screens 8 through 10 of the
primary PTD record for the site. Service totals are displayed on PTD screens
11 through 16 of the primary record only if the card type is defined on screens
8 through 10 of the primary PTD record.
●
The TERMINAL CUTOVER field on screen 3 of the primary PTD record
must be set to a value of 3 (network forced-cutover by the Settlement Initiator
process). The Settlement Initiator process clears the site aggregate
transaction totals at the end of the retailer cutover window.
● The TERMINAL CUTOVER field on screen 3 of each of the secondary PTD
records must be set to a value of 3 (network forced-cutover by the Settlement
Initiator process). This ensures that terminal totals are cleared at the same
time as the site totals.
PIN Encryption
Customers are not required to support PIN encryption, but if they do decide to
support it, the SPDH module offers several methods of PIN encryption. It is up to
the customer to determine which method best suits their particular requirements.
●
Single-length key (16 bytes), single DES performed in software
●
Single-length key (16 bytes), single DES performed in hardware
●
Double-length key (32 bytes), triple DES performed in hardware
●
Triple-length key (48 bytes), triple DES performed in hardware
The SPDH module can perform PIN verification with single-length keys. The
Transaction Security Services process is optional for the single DES hardware
option and is required for the triple DES options. The terminal and the appropriate
BASE24 process (SPDH module or Transaction Security Services process) must
be configured for the same key length. Refer to the BASE24 Transaction Security
Services Processing Guide for information about the Transaction Security
Services process.
If PIN encryption is selected, the terminal must support the manual entry or
injection of a master key. Master/session keys are used with master/session key
management. Base derivation keys are used when the POS devices derive a unique
key per transaction (DUKPT). For more information on the PIN fields contained
for terminals in the PTD, refer to the BASE24-pos Files Maintenance Manual.
●
When a response message is configured to contain FID M (PIN
Communications Key). This is set in the Field Map Data record in the ACI
Standard Device Configuration File (ACNF).
● When a dynamic key management threshold is reached. Refer to the
Dynamic Key Management discussion in this section for more information.
●
During a download if download field identifier (DID) g (PIN
Communications Key) is to be sent. In order to include the communications
key in a download, record 06 in the ACNF must have DID g set.
PIN Encryption
Customers are not required to support PIN encryption, but if they do decide to
support it, the host offers several methods of PIN encryption. It is up to the
customer to determine which method best suits their particular requirements.
Depending on how the terminal is configured in the host database, the PIN/
Customer field (FID b) and the PIN/Supervisor field (FID c) can be encrypted
using the following methods:
●
Single-length key (16 bytes), single DES performed in software
●
Single-length key (16 bytes), single DES performed in hardware
●
Double-length key (32 bytes), triple DES performed in hardware
●
Triple-length key (48 bytes), triple DES performed in hardware
If PIN encryption is selected, the terminal must support the manual entry or
injection of a master key or base derivation key. Master/session keys are used with
master/session key management. Base derivation keys are used when the POS
devices derive a unique key per transaction (DUKPT).
If the host is required to perform PIN decryption and the communications key is all
spaces, the host assumes the terminal has never received a communications key
from the host and rejects the PIN as invalid.
The SPDH Device Handler module accepts TCs uploaded, one at a time, from the
terminal. Each TC is sent to the device handler module as an EMV log-only
transaction identified by the message subtype E in the message header. The TC is
carried in the Application Cryptogram (AC) field in FID 6 subFID O (EMV
Request Data).
If the terminal does not receive a response to an EMV log-only transaction request
prior to timing out, the terminal should immediately send an EMV log-only
cancellation request (message subtype V). From the perspective of the terminal,
an EMV log-only cancellation should be handled similarly to a timeout reversal
(message subtype T).
●
The EMV log-only cancellation must immediately follow the original EMV
log-only transaction.
●
The EMV log-only cancellation must take precedence in the queue over
online requests and SAF requests.
●
The transmission number of the EMV log-only cancellation request must be
set to match that of the original EMV log-only transaction. The SPDH uses
the transmission number to match the EMV log-only cancellation with the
original EMV log-only transaction.
●
Creates an internal message (message type 9920) and passes it to the
BASE24-pos Router/Authorization module for logging.
●
Updates the terminal and clerk totals in the BASE24-pos Terminal Data files
(PTD) to enable the EMV terminal to balance during settlement.
●
Formats and sends an appropriate response to the terminal.
The SPDH creates the internal message for EMV log-only transactions as follows:
● Verifies that it is not a duplicate request. If a terminal, for example, does not
receive a response to an initial EMV log-only cancellation request and sends a
second, the SPDH will verify that the previous request was processed and, if
so, return a decline response to the terminal for the duplicate.
●
Verifies that it is not out-of-sequence. If the transmission number does not
match that of the original EMV log-only transaction, the request is declined.
●
Decreases the POS Terminal Data files (PTD) terminal and clerk totals by the
transaction amount, effectively cancelling the impacts of the original EMV
log-only transaction.
●
Creates an internal message (message type 9921) and passes it to the
BASE24-pos Router/Authorization module for logging. The message type
9921 allows the Extract module to recognize the transaction as an EMV log-
only cancellation.
●
Formats and sends an appropriate response to the terminal.
If an EMV log-only cancellation request is declined, the SPDH sets the Response
Code in the message header to 050 (general decline).
The SPDH creates the internal message for EMV log-only cancellation
transactions as follows:
Data Encryption
The SPDH data encryption module is an additional licensable module that, when
bound with the standard SPDH module, supports data encryption for FID J
(Available Balance). The SPDH also supports full message encryption and
configurable message encryption. DUKPT is supported with data encryption.
Before encrypted data other than PINs and MACs can be returned to a terminal
that conforms to the SPDH module, the data encryption terminal master key must
be manually entered or injected into the terminal. The same key also must be
entered in the Transaction Security Services database. The other key used with
data encryption is the data encryption communications key, a working key that is
also known as the message encryption key (KME). The data encryption
communications key is encrypted under the data encryption terminal master key
before it is downloaded to the terminal.
The SPDH module generates a new data encryption communications key under the
following conditions:
●
When a response message is configured to contain FID I (Data Encryption
Key). This is set in the Field Map Data record in the ACNF.
●
When a dynamic key management threshold is reached. Refer to the
Dynamic Key Management discussion in this section for more information.
●
During a download if download field identifier (DID) j (Data Encryption Key)
is to be sent. In order to include the data encryption communications key in a
download, record 06 in the ACNF must have DID j set.
The ACI standard POS message supports full message encryption and configurable
message encryption. Full message encryption allows the institution to encrypt all
optional data fields, except G, H, I, M, b, and c, in the ACI standard POS message.
Configurable message encryption allows the institution to encrypt specific optional
data fields, except G, H, I, M, b, and c, in the ACI standard POS message. The
optional data fields are configured to be encrypted in the ACI Standard Device
Configuration File (ACNF) request and response field maps. Full message
encryption and configurable message encryption are enabled using the DATA
ENCRYPTION TYPE field in the POS Terminal Data File.
For DUKPT data encryption, optional field 6 subfield T (Key Serial Number and
Descriptor) must not be encrypted, but the remaining subfields can be encrypted or
unencrypted. To do this, field 6 appears in the message twice. For example, the
first field 6 would contain subfield T and would reside in the unencrypted data area
of the message. It could also contain other subfields that are unencrypted and
would reside in the encrypted data area of the message after the encryption
separator.
A code for the type of data encryption must be entered in the DATA
ENCRYPTION TYPE field on PTD screen 7. Valid values are as follows:
00 = No encryption
01 = Available balance encryption–ASCII
02 = Available balance encryption–Binary
03 = Full message encryption
04 = Configurable message encryption
05 = Full message encryption–DUKPT
06 = Configurable message encryption–DUKPT
Data encryption support requires the Transaction Security Services process. Refer
to the BASE24 Transaction Security Services Processing Guide for information
about the Transaction Security Services process and database.
The customer determines whether to use MACs and, if so, how they are
implemented. MAC generation and verification options include the following:
●
Single-length key (16 bytes), single DES performed in software
●
Single-length key (16 bytes), single DES performed in hardware
●
Double-length key (32 bytes), triple DES performed in hardware
●
Triple-length key (48 bytes), triple DES performed in hardware
The SPDH module can perform MAC generation and verification with single-
length keys. The Transaction Security Services process is optional for the single
DES hardware option and is required for the triple DES options. The terminal and
the appropriate BASE24 process (SPDH module or Transaction Security Services
process) must be configured for the same key length. Refer to the BASE24
Transaction Security Services Processing Guide for information about this
process.
Note: The remainder of this subsection is discusses how MACs are used
specifically with the SPDH module. For more information on using software and
hardware MACs plus specific instructions for entering required information in the
BASE24 database, refer to the BASE24 Transaction Security Manual and the
BASE24 Transaction Security Services Processing Guide.
If MACs are used in any form, the following three fields in the standard message
header are authenticated in every request:
● Transmission Number
● Terminal ID
● Transaction Code
The same three fields are authenticated in every response using MACs in any form.
In addition, the Response Code field in the standard message header is always
authenticated in responses using MACs.
Any number of optional fields totaling up to 1000 bytes can be verified using
MACs, but BASE24-pos does not support authenticating the entire message.
While the data within the fields are verified using MACs, the FIDs identifying the
optional data fields are not included in the MAC.
In addition, ACNF Processing Record screen 2 contains the following flags that
identify whether one or more of the communications keys are included when
MACs are computed.
Setting Up MACs
The fields to be verified using MACs are set in the ACNF for requests and
responses for every transaction type. However, the customer and the vendor must
agree on the fields using MACs in order for the messages to be verified.
ACI recommends that several optional data fields be included when MACs are
used. These fields, including their field identifier (FID), follow.
B (Amount 1)
C (Amount 2)
F (Approval Code)
b (PIN/Customer)
q (Track 2/Customer)
2 (Track 1/Customer)
Whenever MACs are used at a terminal that conforms to the SPDH module, FID G
(Authentication Code) must be included in both the request and the response. The
MAC terminal master key must be manually entered or injected into the terminal.
The same key also must be entered in the BASE24 database. The other key used
with MACs, the MAC communications key (KMAC), is randomly generated by
the SPDH module or the Transaction Security Services process.
●
When a response message is configured to contain FID H (Authentication
Key). This is set in the Field Map Data record in the ACNF.
●
When a dynamic key management threshold is reached. Refer to the
Dynamic Key Management discussion in this section for more information.
●
During a download if download field identifier (DID) h (Authentication Key),
is to be sent. In order to include the authentication key in a download, record
06 in the ACNF must have DID h set.
When a terminal is unable to verify a MAC received from the SPDH module in a
transaction response with monetary impact, the terminal must generate a reversal.
The reversal is identical to the response message, with two exceptions. The
response code is set to 989, indicating an invalid MAC response. Also the
Message Subtype field in the standard message header contains an R, indicating a
reversal. The reversal is not verified using a MAC.
When the SPDH module receives a MAC reversal, the SPDH module sends a
warning message to the logging facility. The SPDH module also sends a 0420
reversal message to the transaction authorizer. The MAC reversal must be the next
request from the terminal. If any other requests from the terminal are processed
before the reversal, the reversal is dropped and a message is logged.
When using DUKPT key management, a unique base derivation key must be
manually entered or injected into each POS device. The same base derivation key
must be loaded into a database maintained by the host. When a POS device
derives a unique key for a transaction, it must include the Key Serial Number
(KSN) and Descriptor field (FID 6, subFID T) in the request message sent to the
host.
The Derivation Key File (KEYD) is used for ACI Standard POS device terminals
that use DUKPT key management. The KEYD can contain derivation keys or key
locators. Derivation keys are used by the SPDH module to translate incoming
DUKPT-encrypted PIN blocks received from the terminal into a single-length
Master/Session key PIN block. Key locators are nonencrypted values used by the
Transaction Security Services process to locate hardware-encrypted key
information maintained in the Transaction Security Services database.
Values in the PIN ENCRYPTION TYPE and MAC TYPE fields on PTD
screen 7 control the use of DUKPT for PIN and MAC communications keys.
Optionally, you can configure DUKPT support with message data encryption.
This option enables you to protect the data encryption messages sent between the
POS device and the SPDH module using either full message encryption or
configurable message encryption. Message data is encrypted under the derived
key, which supports double-length keys. The DATA ENCRYPTION TYPE field
on PTD screen 7.
Refer to the BASE24-pos Files Maintenance Manual for more information about
the PTD.
●
Three-digit CSC located on the signature panel
●
Four-digit CSC located on the front of the card
●
Five-digit CSC located on the magnetic stripe
●
The five-digit CSC is mandatory and is submitted as part of the Track 2 or
Track 1 data. If Track 2 or Track 1 is missing, the SPDH module rejects the
transaction. The SPDH module cannot check for the CSC value itself
because the SPDH module cannot determine the location of the CSC within
the track data.
●
The four- and three-digit CSCs are optional.
●
The four- and three-digit CSCs are mutually exclusive.
●
If a transaction contains a five-digit CSC and one of the shorter CSCs, both
sets of data are passed to the Router/Authorization module for verification.
●
The five-digit CSC cannot be submitted.
● The four- and three-digit CSCs are optional, meaning some transactions will
not have either of these CSCs.
●
The four- and three-digit CSCs are mutually exclusive.
Refer to the BASE24 Base Files Maintenance Manual for more information
about the CPF.
Refer to the BASE24 Transaction Security Manual for more information about
the location of card verification information on Track 2 and Track 1.
●
The PIN communications key (KPE), which is returned in FID M.
●
The MAC communications key (KMAC), which is returned in FID H.
●
The data encryption communications key (KME), which is returned in FID I.
The SPDH module uses thresholds based on the following values set on ACNF
screen 3. If a nonzero value is placed in the ACNF field, the SPDH module
generates a new key and sends it to the terminal with the next response whenever a
threshold is reached. The new key is included in the response regardless of
whether its FID is set in the Field Map Data record in the ACNF.
●
The value in the MAC KEY THRESHOLD field identifies the total number
of messages that can be authenticated with a MAC communications key.
●
The value in the MAC KEY ERROR THRESHOLD field identifies the
number of failed message authentication attempts with a MAC
communications key.
●
The value in the CONSECUTIVE MAC KEY ERROR THRESHOLD field
identifies the maximum number of consecutive message authentication errors
allowed before the SPDH module generates a new MAC communications key
and instructs the terminal to request a download. The SPDH module resets
the counter associated with this threshold when a message is authenticated
successfully.
●
The value in the PIN KEY THRESHOLD field identifies the total number of
PINs that can be verified with a PIN communications key.
● The value in the PIN KEY ERROR THRESHOLD field identifies number of
failed PIN verification attempts with a PIN communications key.
●
The value in the DATA KEY THRESHOLD field identifies the total number
of times a data encryption communications key can be used.
●
The value in the DATA KEY ERROR THRESHOLD field identifies the
number of times a data encryption communications key can be used
unsuccessfully.
Handshaking
The customer must decide whether to support text-level handshake requests. The
purpose of this request is to allow the terminal to verify the status of the
communications link and, optionally, validate the communication key and
authentication key for the terminal.
If the handshake request is made with only the standard message header, the SPDH
module ignores every field in the header except for the Transaction Code,
Processing Flag 1, and Processing Flag 2 fields. The SPDH module responds with
the standard message header, including a response code of 007, and the valid local
terminal date and time. In addition, appropriate values in the Processing Flag 1
and Processing Flag 2 fields can be sent in the response, if a mail message or a
download is waiting. The SPDH module also returns any optional data fields as
configured by the customer in the ACNF.
If the handshake request includes FID G (Authentication Code), the SPDH module
validates the MAC, using the specified MAC FIDs. If not equal, the response code
is set to 898, indicating an invalid MAC.
BASE24-mail Support
The SPDH module is fully compatible with release 6.0 of the BASE24-mail
product. Although BASE24-mail must be purchased separately from
BASE24-pos, it provides customers with the added advantage of a fully functional
electronic mail system. However, it is the customers’ decision whether to support
BASE24-mail, and to determine the degree to which the product is supported. For
example, the customer can choose to allow the terminal only to receive mail, or
allow the terminal only to send mail. As another option, the customer can choose
to support mail message transmission in both directions. The terminal can also be
configured to accept unsolicited mail, or it can be configured to not allow mail to
be sent to the terminal without the terminal first initiating a read mail request
transaction. In short, customers can choose from several options of sending and
receiving mail electronically using BASE24-mail.
The host processor has the ability to attach an expiration date and time to every
mail message, as well as specify that it is to be notified when a particular message
is delivered. The message can be displayed on the terminal immediately, or stored
by BASE24-mail on the HP NonStop computer until the terminal requests receipt
of any outstanding mail.
Broadcast lists can be created that allow a series of terminals to receive the same
message at the same time.
An extracted tape image of all mail messages that were stored and have expired is
available for the host. The image shows the message that was transmitted, and
indicates if the message was successfully delivered to the terminal. All mail
messages that were unable to be transmitted to the host are also included on an
extract tape.
A mail message received by a user terminal can be read again by the user until the
message expires. The user can specify which message is to be received, or can ask
for the next message within the system. However, messages destined for a host are
transmitted successfully to the host once and are then purged.
Unsolicited Mail
When the SPDH module receives an unsolicited mail message from the
BASE24-mail process intended for a terminal, the SPDH module checks the ACI
Standard Configuration File (ACNF) to determine if the terminal can accept
unsolicited mail. The SPDH module also checks if the terminal is a dial-up
terminal.
The SPDH module sends unsolicited mail messages to the terminal if the terminal
is not a dial-up terminal and the ACNF indicates the terminal can accept
unsolicited mail. If both of these conditions are met, the SPDH module sends
unsolicited mail messages to the terminal even if the terminal has not sent a read
mail request to the SPDH module. The only time the SPDH module does not send
unsolicited mail messages to the terminal when these two conditions are met is if
the terminal has outstanding requests being processed. Unsolicited mail is sent to
the terminal containing a standard message header that appears as though the
SPDH module actually received a read mail request. FID V is also included in the
message and is configured so the terminal can return it in a subsequent read mail
request to retrieve the next piece of undelivered mail.
If mail exists for a terminal and the terminal is unable to accept the mail (i.e., the
terminal is a dial-up terminal) or is not configured to support unsolicited mail, the
SPDH module sets Processing Flag 1 in the standard message header in each
successive response to the terminal. This indicates to the terminal that mail is
waiting. The SPDH module continues to notify the terminal that mail exists in this
manner until the terminal makes any read mail request (typically, a read first
undelivered mail request).
In situations where the terminal is configured to support unsolicited mail, only one
unsolicited delivery attempt per piece of mail is made by the SPDH module.
When the terminal receives a message with Processing Flag 1 set, the terminal
should send a read mail request to retrieve the mail messages that are waiting.
The only optional request field required by the SPDH module for this transaction is
FID W. FID W is the Mail Text field, which is composed of a destination DPC and
a maximum of 449 characters of mail text.
Access Code — The type of access desired. The access code is a 1-position
numeric field. The valid values for this field are as follows:
1 = Read first message. This value directs the SPDH module to read the first
piece of any mail existing for the terminal.
2 = Read any next message. This value directs the SPDH module to retrieve the
next piece of any mail existing for the terminal.
3 = Read first undelivered message. This value directs the SPDH module to
retrieve the first piece of mail existing for the terminal that has not already
been delivered.
4 = Read next undelivered message. This value directs the SPDH module to
retrieve the next piece of mail existing for the terminal that has not already
been delivered.
5 = Read specific message. This value directs the SPDH module to retrieve a
specific piece of mail existing for the terminal. A valid Mail ID field must
be present to use this value.
Mail ID — The date and identification for the message. The mail ID is a 10-
position alphanumeric field. The first six bytes contain the date (YYMMDD) of
the message. The last four bytes contain the mail message number. This field
specifies the starting point for a read next request or the specific piece for a read
specific request.
If the SPDH module receives a request from the terminal to read mail, it formats
the request and sends it to the BASE24-mail process. The BASE24-mail process
then responds and sends the appropriate message back to the SPDH module, which
sends it back to the terminal. When the SPDH module receives an
acknowledgment from the terminal, the SPDH module sends a completion
message to the BASE24-mail process.
If the response does not fit, the response code is set to 881, indicating that more
data exists. The SPDH module saves the message context for the anticipated read
next request. The terminal echoes the FID V from the previous response in read
next requests.
When returning a read mail response, the SPDH module also translates the value in
the Access Code field to the value it anticipates will follow.
An 880 response, indicating that no more data exists for a particular piece of mail,
does not mean that no more mail exists for the terminal. In order to determine if no
more mail exist for the terminal, the terminal must make another read next request.
No more mail is implied when the response code is 880 and no mail text is
included in the response. In this case, FID W is not included in the response.
Terminals must also respond to unsolicited mail they receive with a mail delivered
request. If a terminal receives unsolicited mail and does not respond with a mail
delivered request, the BASE24-mail process marks the terminal down. No more
unsolicited mail is sent to the terminal until a subsequent mail request from the
terminal is processed by the BASE24-mail process. If a terminal is capable of
supporting unsolicited mail, an unsolicited mail message should be acknowledged
by a mail delivered request.
Interac Online Payment transactions are supported through the SPDH Device
Handler process with the following fields in the inbound device messages:
●
FID D (Application Account Type) must be set to a value of 5.
●
FID e (POS Condition Code) must be set to a value of 01.
●
FID q (Track 2) must begin with an M to indicate that Track 2 was manually
entered.
●
The Normal Purchase and Merchandise Return options in the ACI Standard
Device Configuration File (ACNF) must be set to Y to enable IOP
transactions.
See the BASE24 Logical Network Configuration File (LCONF) Manual for
specific configuration information.
This section contains examples of the message flows between a POS device and
the SPDH module. Each example includes a diagram illustrating the message
flow, followed by a description of each step. The message flows listed below are
documented in this section.
●
Approved normal purchase received by the device
● Approved normal purchase; communications between device and BASE24
down
● Declined normal purchase received by the device
● Declined normal purchase; communications between the device and BASE24
down
● Reversal generated by a POS device or controller
● Approved transaction reversal
● MAC reversal
● Transaction reversed by a clerk at the POS device
● Unsolicited mail
● Terminal send mail request
● Mail pick up request—single response
● Mail pick up request—multiple response
●
Mail pick up request—no mail stored
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
1 2 3 4
XPNET
Process Router SPDH Auth
7 6 5
POS Device
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. This message passes through the XPNET
process and the Router module.
Device Handler/Router/
Authorization
Authorization
11 22 3 4
XPNET
Process Router SPDH Auth
7 6 55
88 99 10
10
POS Device
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. This message travels through the
XPNET process and the Router module.
Steps Processing
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
1 2 3 4
XPNET
Process Router SPDH Auth
7 6 5
POS Device
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. This message travels through the
XPNET process and the Router module.
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
11 22 33 44
XPNET
Process Router SPDH Auth
77 66 55
88 99 10
10
POS Device
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. This message travels through the
XPNET process and the Router module.
Steps Processing
Controller Reversal
The diagram below illustrates the transaction message flow in a scenario
containing a transaction reversed from a controller. In this transaction, the lines of
communication between the POS device and the controller go down, and the
controller detects this before it receives a response from the SPDH module. The
message does not time out. See appendix B for transaction flows illustrating how
reversals are processed when the transaction times out.
Device Handler/Router/
Handler/Router/
Authorization
1 2 3 4 5
XPNET
Process Router SPDH Auth
9 8 7 6
10 11 12 13
Steps Processing
1, 2, 3, 4 The POS device sends its native message for a normal purchase
to the SPDH module. The message passes through the
controller, the XPNET process, and the Router module.
Steps Processing
9 The controller tries to send the response to the POS device, but
the line is down.
13 The SPDH module updates totals in the PTD, sets the reversal
code to 03 (destination not available) and generates a 0420
reversal message and sends it to the Authorization module.
14, 15 The SPDH module checks the reversal response flag in the
ACNF. The flag is set to yes, so the SPDH module echoes the
reversal request back to the controller. (If the flag had been set
to no, the SPDH module would not echo the reversal request
back to the controller.) This message passes through the
XPNET process.
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
11 22 33 44
XPNET
Process Router SPDH Auth
77 66 55
88 99 10
10 11
11
POS Device 13
13 12
12
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. The message passes through the XPNET
process and the Router module.
Steps Processing
12, 13 The SPDH module checks the reversal response flag in the
ACNF. The flag is set to yes, so the SPDH module echoes the
request back to the POS device. (If the flag had been set to no,
the SPDH module would not echo the request back to the POS
device.) This message passes through the XPNET process.
MAC Reversal
The diagram below illustrates the transaction message flow in a scenario
containing a reversal of a message with an invalid message authentication code
(MAC).
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
11 22 33 44
XPNET
Process Router SPDH Auth
77 66 55
88 99 10
10 11
11
POS Device 13
13 12
12
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. The message passes through the XPNET
process and the Router module.
Steps Processing
11 The SPDH module updates totals in the PTD, sets the reversal
code to 21 (MAC failure) and generates a 0420 reversal
message and sends it to the Authorization module.
The SPDH module checks the POS-DH-CONS-MAC-ERR-
LMT parameter in the LCONF. If the limit has been reached,
the SPDH module sets a flag that indicates the SPDH module
needs to send a new MAC key on its next response to the POS
device. If the limit has not been reached, the SPDH module
increases the consecutive MAC error counter by one.
12, 13 The SPDH module checks the reversal response flag in the
ACNF. The flag is set to yes, so the SPDH module echoes the
request back to the POS device. (If the flag had been set to no,
the SPDH module would not echo the request back to the
POS device.) This message passes through the XPNET
process.
Customer-Cancellation Reversal
The diagram below illustrates the transaction message flow in a scenario
containing a normal purchase transaction that is cancelled by the clerk at the POS
device before the SPDH module sends a response.
Device Handler/Router/
Authorization
Authorization
1 2 3 4
6 XPNET
Process Router SPDH Auth
8 7 5
9 10
10 11 12
12
POS Device 14 13
13
Configuration
Files
Steps Processing
1, 2, 3 The POS device sends its native message for a normal purchase
to the SPDH module. The message passes through the XPNET
process and the Router module.
Steps Processing
6 The clerk cancels the transaction at the POS device. The POS
device waits to send the reversal to the SPDH module until after
it receives the response to the original transaction.
12 The SPDH module updates totals in the PTD, sets the reversal
code to 08 (customer canceled), generates a 0420 reversal
message, and sends it to the Authorization module.
13, 14 The SPDH module checks the reversal response flag in the
ACNF. The flag is set to yes, so the SPDH module echoes the
request back to the POS device. (If the flag had been set to no,
the SPDH module would not echo the request back to the POS
device.) This message passes through the XPNET process.
Unsolicited Mail
The diagram below illustrates the transaction message flow in a scenario where the
SPDH module receives unsolicited mail for a POS device.
Device Handler/Router/
Handler/Router/
Authorization
3 4
XPNET
Process Router SPDH Auth
6 5
7 8 9
POS Device 10
10
2
11
11
12
12
Mail Process
Steps Processing
Steps Processing
12 The Mail process receives the MB643 message and marks the
piece of mail as delivered.
Device
Device Handler/Router/
Handler/Router/
1 Authorization
2 33 44
XPNET
Process Router SPDH Auth
8 9
POS Device 11
11 10
77
Mail Process
Steps Processing
2, 3, 4 The POS device sends the Send Mail Request to the SPDH
module. The message travels through the XPNET process and
Router module.
Steps Processing
Device Handler/Router/
Handler/Router/
Authorization
Authorization
1 2 3
44
XPNET
Process Router SPDH Auth
7 8
10
10 99
11
11 12
12 13
POS Device
14
17 18
18 19
19
20
20
23
23 24
24
26
26 25
25
6
15
15
16
16
21 Mail Process
22
22
Steps Processing
4, 5 The SPDH module translates the request from the POS device’s
native mode and sends an MB640 request to the Mail process.
This message travels through the XPNET process.
6, 7, 8 The Mail process determines from the MB640 request that the
POS device is requesting mail. The Mail process reads the
Mail Box File (MBF), formats an MB641 mail response
message, and sends the message to the SPDH module. This
message travels through the XPNET process and Router
module.
11, 12, 13 The POS device sends a message to the SPDH module to mark
the mail as delivered. This message travels through the XPNET
process and Router module.
Steps Processing
16 The Mail process updates the mail record in the MBF and
marks the mail as being read. Information in the MBF
concerning the POS device is also updated at this time by the
Mail process.
22, 23, 24 The Mail process reads the MBF, finds no mail, and responds to
the SPDH module with an MB641 no mail response. This
response travels through the XPNET process and Router
module.
Steps Processing
25, 26 The SPDH module translates the response from native mode
and responds to the POS device with a response code of 880
(mail message has been received in its entirety) and the absence
of FID W (Mail/Download Text). This indicates that all mail
has been read. The response is formatted as
“.V00419202170068”.
Note: The POS device operator can continue to send Read
Next Requests to the SPDH module as long as the SPDH
module responses contain a response code of 880 and
information in FID W (Mail/Download Text). The absence of
FID W indicates that all mail has been read.
Device Handler/Router/
Authorization
Authorization
1 2 33
4
XPNET
Process Router SPDH Auth
77 8
10
10 99
11 12 13
POS Device
14
17
17 18
20
20 19
21 22
22 23
24a
24a
25b
25b 24b
24b
5
6
15
15
16
Mail Process
25a
25a
26
Steps Processing
4, 5 The SPDH module translates the request from the POS device’s
native mode and sends an MB640 request to the Mail process.
This message travels through the XPNET process.
6, 7, 8 The Mail process determines from the MB640 request that the
POS device is requesting mail. The Mail process reads the
Mail Box File (MBF), formats an MB641 mail response
message, and sends the message to the SPDH module. This
message travels through the XPNET process and Router
module.
11, 12, 13 The POS device sends a request to the SPDH module for the
next packet of information. This message travels through the
XPNET process and Router module.
14, 15 The SPDH module sends an MB641 request to the Mail process
for more data. This message travels through the XPNET
process.
16, 17, 18 The Mail process responds to the SPDH module with the mail
text. This message travels through the XPNET process and the
Router module.
Steps Processing
19, 20 The SPDH module translates the response into the POS
device’s native mode and sends it to the POS device. The
response contains the next packet of information. This message
travels through the XPNET process.
Steps 11–20 repeat until no more packets are needed. Along
with the last packet the SPDH module responds with a response
code of 880 (mail message has been received in its entirety) to
the POS device.
21, 22, 23 The POS device sends a message to the SPDH module to mark
the mail as delivered. This message travels through the XPNET
process and Router module.
26 Steps 1–25 repeat until in step 6 the Mail process reads the
MBF, finds no mail, and responds with MB641 no mail
response message.
Device Handler/Router/
Handler/Router/
Authorization
1 2 3
XPNET
Process Router SPDH Auth
7 8
POS Device 10 9
Mail Process
Steps Processing
4, 5 The SPDH module translates the request from the POS device’s
native mode and sends an MB640 request to the Mail process.
This message travels through the XPNET process.
6, 7, 8 The Mail process determines from the MB640 request that the
POS device is requesting mail. The Mail process reads the
Mail Box File (MBF), determines there is no mail for the
specified POS device, formats an MB641 no mail response
message, and sends the message to the SPDH. This message
travels through the XPNET process and Router module.
Steps Processing
9, 10 The SPDH translates the response into the POS device’s native
mode and sends it to the POS device. The response code 880
(Mail message has been received in its entirety) is included.
This message travels through the XPNET process.
The BASE24 Standard POS Device Handler (SPDH) module is the exclusive
reader of the following files:
●
ACI Standard Device Configuration File (ACNF)
● ACI Standard Device Response File (ARSP)
● Response Code Description File (RCDF)
The ACNF and ARSP must contain a record or set of records for each terminal
group in the network. The RCDF contains records to override response codes
contained in the ARSP. All three files are accessed through BASE24-pos files
maintenance.
The SPDH configuration files are set up in the same manner as most other files in
the BASE24-pos system. Additional information on BASE24-pos files
maintenance can be found in the BASE24 Base Files Maintenance Manual, the
BASE24-pos Files Maintenance Manual, and the BASE24 CRT Access Manual.
The information provided in this section, however, should be sufficient to set up
the necessary records in the ACNF, ARSP, and RCDF for persons familiar with
BASE24 CRT access and files maintenance.
The data in this file is divided into three categories defined as processing data,
format data, and download data. The processing data contains timeout values and
other processing parameters. The format data consists of up to 30 card prefix
ranges used to define processing parameters by card prefix range. The download
data contains all the information sent to the terminal in a download.
ACNF records are added and maintained through BASE24-pos files maintenance.
To access the ACNF, select POS from the Primary Menu and ACNF from the POS
Product Menu. There are four types, or sets, of screens associated with the ACNF.
These are used to access the seven records that can be stored in the ACNF. These
screen types are as follows:
●
Selection Screen
●
Processing Record Screen
●
Field Map Screens
●
Download Record Screens
1. Access the Virtual Menu by entering your assigned logon, password, and
logical network on the BASE24 Logon screen. Press the F1 key to move to
the Virtual Menu.
2. Enter ACNF in the FILE DESTINATION field at the bottom of the Virtual
Menu and press the F1 key to display ACNF screen 1. From a file screen,
press the F16 key to display ACNF screen 1.
3. Enter the appropriate values in the following fields on ACNF screen 1, based
on the parameters you want to configure (i.e., processing, formatting, or
download), and the terminal group to which you want the parameters to
apply:
TERMINAL GROUP
RECORD TYPE
RECORD ID
The screen you access is determined by the values placed in the RECORD
TYPE and RECORD ID fields.
Field descriptions for these fields, together with ACNF screen 1, are provided
later in this section.
4. Move to the appropriate ACNF screen by pressing the F9 key.
Selection Screen
ACI Standard Device Configuration File (ACNF) screen 1 is shown below,
followed by its field descriptions.
TERMINAL GROUP — The terminal group combined with the RECORD TYPE
and RECORD ID is the primary key into the ACNF. It identifies the terminal or
group of terminals to which the configuration information set up in the ACNF
applies. The configuration information is used by all terminals that have a value
corresponding to this field in the TERMINAL GROUP field on POS Terminal
Data files (PTD) screen 1.
D = Download record
F = Formatting record
P = Processing record
D allows 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11
F allows 00 or 01
P allows 00
Processing Records
The Processing Record screen allows customers to set up general processing
parameters used by the SPDH module when handling messages. From this screen,
you can configure several timeout options, including the amount of time the SPDH
module waits for responses from the Authorization and Mail processes. You can
also determine the maximum length of responses from the SPDH module to the
terminal and whether the SPDH module is to format user data from the USER-
DATA field in the POS Standard Internal Message (PSTM) with every financial
transaction. In addition, you can determine if totals returned to the terminal in
responses are draft capture totals only or if the totals include all transactions.
Several BASE24-mail options can also be set from this screen. You can determine
whether unsolicited mail messages are sent to the terminal, whether a terminal is
allowed to perform implicit closes, and the data processing centers to which mail
should be sent.
( N = NO, Y = YES )
UNSOLICITED MAIL: N DC/ALL TOTALS: N IMPLICIT CLOSES: N
OLD MSGS: N PSTM USER FLD: N REVERSAL RESPONSES: N
INCLUDE KMAC IN MAC: N INCLUDE KME IN MAC: N INCLUDE DPE IN MAC: N
RESERVED: N RESERVED: N RESERVED: N
RESERVED: N RESERVED: N RESERVED: N
RESERVED: N RESERVED: N RESERVED: N
RESERVED: N RESERVED: N RESERVED: N
OLD MSGS — Indicates the procedure to be taken with messages that have
expired. Valid values are as follows:
PSTM USER FLD — Indicates whether the SPDH module is to format user data
in the POS Standard Internal Message (PSTM) with every financial transaction.
Valid values are as follows:
Y = Yes, format user data in the PSTM with every financial transaction.
N = No, do not format user data in the PSTM with every financial transaction.
RESERVED — The fields marked RESERVED are included to allow for future
expansion. All of these fields default to N.
MAX RESP LEN( BYTES ) — Defines the maximum length, in bytes, for a
transaction response message that can be sent to a terminal. This value varies
depending on the protocol being used. The length set in this field must be 3 to 5
bytes less than the value specified in the XMITLEN attribute for the device in the
XPNET system. Valid values are 96 to 1024 bytes.
AUTH TIMEOUT( SECS ) — Defines the length of time, in seconds, the SPDH
module waits for a response from the Authorization module before responding to
the terminal with a timeout response code. This value should be less than the value
specified in the TIMEOUT attribute for the line in the XPNET system. The SPDH
module checks all timeout fields for a valid value between 5 and 600 inclusive.
LOAD TIMEOUT( SECS ) — Defines the length of time, in seconds, the SPDH
module waits for a download response from the terminal before aborting the
download. The SPDH module checks all timeout fields for a valid value between 5
and 600 inclusive.
MAIL TIMEOUT( SECS ) — Defines the length of time, in seconds, the SPDH
module waits for a response from the Mail process before responding to the
terminal with a timeout response code. The SPDH module checks all timeout
fields for a valid value between 5 and 600 inclusive.
OLD MSG TIMEOUT( SECS ) — Defines how old, in seconds, a message can
be before it is considered to be an expired message. If this field is set to 0, no
expired message processing is performed. Instead, expired messages go through
the system like any other message. If this field is set greater than 0, expired
message processing is performed based on the value in the OLD MSGS field on
this screen.
Expired messages are messages received by the Device Handler module after the
terminal has already timed out. This occurs when an SPDH module is stopped and
terminals are still sending transaction messages. These messages are placed in the
queue and are processed when the SPDH module is restarted.
The SPDH module checks all timeout fields for a valid value between 5 and 600
inclusive.
DPC #0 — Defines the DPC to which mail sent to DPC #0 is delivered. This field
is used by FID W when sending BASE24-mail messages.
DPC #1 — Defines the DPC to which mail sent to DPC #1 is delivered. This field
is used by FID W when sending BASE24-mail messages.
DPC #2 — Defines the DPC to which mail sent to DPC #2 is delivered. This field
is used by FID W when sending BASE24-mail messages.
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.MAC-TXN-LMT
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.MAC-ERR-LMT
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.CNSC-MAC-ERR-LMT
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.PIN-TXN-LMT
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.PIN-ERR-LMT
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.DATA-TXN-LMT
Default Value: 0
Field Length: 1 to 4 numeric characters
Required Field: Yes
Data Name: ANCF.PRO-DATA.DATA-ERR-LMT
In addition, the field maps enable you to determine which fields in any request or
response message should be verified using message authentication codes (MACs).
The SPDH module allows individual message fields to be verified using MACs.
You are responsible for identifying these fields on this screen.
Changes to this data can be made online through BASE24 files maintenance.
However, the customer and vendor must coordinate on this data because the field
maps do not determine the data sent in requests. The purpose of the field map data
in the ACNF is to allow the SPDH module to know what to expect from the
terminal and how to format the responses to the terminal. Terminals do not receive
the field map data. It is the responsibility of the terminal software to determine the
data in requests.
For each transaction type, the FIDs associated with the optional data fields are
listed across the top of the screen. The fields listed on the Field Map screens allow
optional data fields to be included in requests and responses for each type of
transaction. A detailed explanation of each FID is included in section 4.
The transaction types are listed down the left side of the screen, along with two
rows. The first row indicates which optional data fields you want to include in the
message and the second row indicates which optional data fields in the message
you want to be verified using MACs.
No FIDs can be set to a value of E for the download transaction type. The ACNF
Field Map screens do not allow the following FIDs to be set to a value of E.
FID Description
G Authentication code
H Authentication key
b PIN/Customer
c PIN/Supervisor
The ACNF Field Map screens are accessed through BASE24 files maintenance
much in the same manner as the ACNF Processing Records screen. Once
accessed, you can set up the field maps to meet your specific requirements. The
following steps describe the procedures to set up the Field Map screens. These
procedures assume you have already accessed the ACNF Selection screen. To set
up the ACNF Field Map screen for requests, perform the following steps:
4. Press the F9 key from the ACNF Selection screen to display the first ACNF
Field Map screen for requests or responses. The field maps for requests and
responses each consist of seven screens. Each screen contains five transaction
types. Then press the F2 key to read the record.
The first Field Map screen for requests (00 in the RECORD ID field) is
shown below.
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
NORM PURCH MSG NYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PRE AUTH MSG NYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PRE AUTH C MSG NYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PH/MAIL MSG NYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MERCH RET MSG NYNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNENNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
The first Field Map screen for responses (01 in the RECORD ID field) is
shown below.
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
NORM PURCH MSG NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PRE AUTH MSG NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PRE AUTH C MSG NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
PH/MAIL MSG NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MERCH RET MSG NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
MAC NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
The remaining five Field Map request and response screens are formatted in
the same manner as screen 02. Each screen displays five transaction types
that must be configured separately. Press the F9 key to access subsequent
Field Map screens. The following table identifies the transaction types that
correspond to each Field Map screen. Generally, screens 02 through 04 are
used to configure financial transactions, screens 05 through 07 are used to
configure administrative transactions, screen 8 is used to configure stored
value transactions, and screen 9 is used for mobile top-up transactions.
02 of 09 Normal purchase
Preauthorization
Preauthorization completion
Mail or telephone order
Merchandise return
03 of 09 Cash advance
Card verification
Balance inquiry
Purchase with cash back
Check verification
04 of 09 Check guarantee
Purchase adjustment
Merchandise return adjustment
Cash advance adjustment
Cash back adjustment
05 of 09 Logon
Logoff
Close batch
Close shift
Close day
06 of 09 Clerk totals
Batch totals
Shift totals
Day totals
Read mail
07 of 09 Mail delivery
Send mail request
Download
Handshake
New key
08 of 09 Card activation
Additional card activation
Replenishment
Full redemption
Reserved—Reserved for future use
5. Determine which optional data fields (FIDs) to include for each transaction
type. For a list of FIDs and their corresponding field names, press the F7 key
to display the following Field Map Help screen. The Field Map Help screen
displays the optional data fields allowed for requests or responses.
It may be helpful to print this screen for use as a reference tool when setting
up the Field Map screens. To print this screen, perform the following steps:
a. Specify a printer location in the SCREEN PRINTER field located on the
BASE24 Logon Menu.
b. Access the ACNF screens.
c. Press the F7 key to move to the Field Map Help screen.
d. Press the F10 key. The F10 key is used to print the screen.
For more information on printing screens, refer to the BASE24 CRT Access
Manual.
6. Enter Y, N, or E in the MSG row after each transaction type for each optional
data field listed across the top of the screen. Optional data fields are
identified across the top of the screen by their corresponding FIDs. A Y
indicates the FID is included in requests, an N indicates the FID is not
included in requests, an E indicates the FID is included in requests, and it is
encrypted under the data encryption key.
7. Determine which optional data fields should be verified using MACs and
enter Y or N in the MAC row after each transaction type for each optional
data field (FID) listed across the top of the screen. A Y indicates the optional
data field should be verified using MACs and an N indicates the optional data
field should not be verified using MACs.
8. Verify that the optional data fields set up for each transaction type are correct,
and that the appropriate optional data fields are being verified using MACs.
9. Repeat steps 6 through 8 for each of the remaining request screens.
10. Change the value in the RECORD ID field to 01 and repeat steps 6 through 8
for each of the response screens.
11. Press the F3 key to add the record.
12. Read the data associated with these records by pressing the F9 key to access
the screen. Then press the F2 key to read the record.
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
q Track2/Customer Y or E N N N
(PSTM.TRACK2)
Required FIDs
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
C Amount 2 Y or E N N N
(PSTM.TRAN.AMT-2)
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
*
Either FID q or 2 is required for request and response messages.
Check Verification
The following table contains the ACNF settings for FIDs and MAC values for
check verification transactions.
Required FIDs
L Check Type Y or E N N N
N Customer ID N* N N N
O Customer ID Type N N N N
Required FIDs
j State Code N N N N
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(PSTM.TRACK2)
*
Either FID q or 2 is required if the customer ID type (FID O) is defined as a
debit or credit card. Otherwise, FID N contains the customer ID.
Check Guarantee
The following table contains the ACNF settings for FIDs and MAC values for
check guarantee transactions.
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
L Check Type Y or E N N N
N Customer Id N* N N N
O Customer Id Type N N N N
j State Code N N N N
k Birth Date or N N N N
Terminal Location
Required FIDs
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
*
FID q is required if the customer ID type (FID O) is defined as a debit or credit
card. Otherwise, FID N contains the customer ID.
Clerk Totals
The following table contains the ACNF settings for FIDs and MAC values for
clerk totals.
Required FIDs
n Totals/Clerk N N Y N
Batch Totals
The following table contains the ACNF settings for FIDs and MAC values for
batch totals.
Required FIDs
l Totals/Batch N N Y N
Shift Totals
The following table contains the ACNF settings for FIDs and MAC values for shift
totals.
Required FIDs
o Totals/Shift N N Y N
Day Totals
The following table contains the ACNF settings for FIDs and MAC values for day
totals.
Required FIDs
m Totals/Day N N Y N
Required FIDs
V Mail/Download Key Y or E N Y N
Required FIDs
W Mail/Download Text Y or E N Y N
Download Request
The following table contains the ACNF settings for FIDs and MAC values for
download request transactions.
Required FIDs
V Mail/Download Key Y or E* N Y* N
*
FID V is required for downloads except on initial requests.
The following table contains the ACNF settings for FIDs and MAC values for
mobile top-up with cash transactions.
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
R Card Type Y or E N N N
The following table contains the ACNF settings for FIDs and MAC values for
mobile top-up with funds transactions.
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
R Card Type Y or E N N N
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
Card Activation
The following table contains the ACNF settings for FIDs and MAC values for
stored value card activation transactions.
Required FIDs
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
*
Either FID q or 2 is required for request and response messages.
The following table contains the ACNF settings for FIDs and MAC values for
stored value additional card activation transactions.
Required FIDs
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
*
Either FID q or 2 is required for request and response messages.
Replenishment
The following table contains the ACNF settings for FIDs and MAC values for
stored value replenishment transactions.
Required FIDs
B Amount 1 Y or E N N N
(PSTM.TRAN.AMT-1)
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
*
Either FID q or 2 is required for request and response messages.
Full Redemption
The following table contains the ACNF settings for FIDs and MAC values for
stored value full redemption transactions.
Required FIDs
q Track2/Customer N* N N N
(PSTM.TRACK2)
2 Track1/Customer N* N N N
(Track 1 token)
*
Either FID q or 2 is required for request and response messages.
Download Records
The SPDH module supports full and partial downloads to terminals. The
information to be sent to terminals during a download is configured using the
ACNF. Download records 00, 01, and 02 allow customers to download up to 26
fields of 40 characters each. The data to be included is left to the discretion of the
customer. Download records 03, 04, 05, 07, 08, 09, 10, and 11 contain card prefix
range processing parameters for up to 30 card prefix ranges. Download record 06
is used to identify which fields from the BASE24-pos Terminal Data files (PTD)
and POS Retailer Definition File (PRDF) are downloaded to the terminal.
Additional information on download records is included in section 5.
The data elements are identified with DIDs A through Z. DIDs A through J are
stored in record 00. DIDs K through T are stored in record 01. DIDs U through Z
are stored in record 02.
The data elements in records 00, 01, and 02 are sent to the terminal only if they are
requested by the terminal and if they contain data.
To access ACNF download records 00, 01, 02, perform the following steps:
4. From screen 1 of the ACNF, press the F9 key to display the first ACNF
Download Data screen. The three possible screens that can be displayed are
shown below and on the following page. The DIDs are listed in a column on
the left side of the screens, followed by fields of 40 characters each. Data can
be entered in any of the 40-character fields.
If the RECORD ID field is set to 00, the following screen is displayed:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
Setting up Download Records 03, 04, 05, 07, 08, 09, 10,
and 11
Download records 03, 04, 05, 07, 08, 09, 10, and 11 contain card prefix range
processing parameters. Up to 30 ranges can be defined within this set of records.
Card prefix information is defined by the terminal owner and operator.
Note: For customers who do not want to upgrade their firmware to support 30
card prefixes (Release 5.0 and later releases), only records 03, 04, and 05 are used.
These records support up to 10 card prefixes.
Records 03, 04, 07, 08, 09, 10, and 11 can contain parameters for four separate
card prefix ranges. Record 05 can contain parameters for two separate card prefix
ranges.
To access ACNF download records 03, 04, 05, 07, 08, 09, 10, and 11, perform the
following steps:
3. Enter one of the following in the RECORD ID field on screen 1 of the ACNF:
Record 03 is associated with two screens accessed by placing 03 in the
RECORD ID field on the ACNF Selection screen.
Record 04 is associated with two screens accessed by placing 04 in the
RECORD ID field on the ACNF Selection screen.
Record 05 is associated with one screen accessed by placing 05 in the
RECORD ID field on the ACNF Selection screen.
Record 07 is associated with two screens accessed by placing 07 in the
RECORD ID field on the ACNF Selection screen.
Record 08 is associated with two screens accessed by placing 08 in the
RECORD ID field on the ACNF Selection screen.
Record 09 is associated with two screens accessed by placing 09 in the
RECORD ID field on the ACNF Selection screen.
Record 10 is associated with two screens accessed by placing 10 in the
RECORD ID field on the ACNF Selection screen.
Record 11 is associated with two screens accessed by placing 11 in the
RECORD ID field on the ACNF Selection screen.
4. Enter the following fields for each card prefix range to identify the
parameters:
LOW PREFIX
HIGH PREFIX
NETWORK PH
NETWORK BKUP PH
REFERRAL PH
RETAILER ID
DRAFT CAP FLG
TOTAL FLG
PIN VALIDATION FLAG
RECEIPT FLG
MOD-CK FLG
PAN FRAUD CK FLG
USER DEF
For a description of the PTD fields, refer to the topic “Download Records 03,
04, 05, 07, 08, 09, 10, and 11 Screens” where the fields displayed on the
screens are described.
5. Press the F3 key to add the record.
Download Records 03, 04, 05, 07, 08, 09, 10, and 11 Screens
ACI Standard Device Configuration File (ACNF) screens for download record 03
are shown below, followed by their field descriptions. The screens for records 04,
05, 07, 08, 09, 10, and 11 are formatted in the exact same manner as record 03 and,
therefore, additional screen examples are unnecessary to describe these records.
Download record 03 defines information for up to four card prefix ranges.
Download records 04, 05, 07, 08, 09, 10, and 11 also have two screens. Download
record 05 does not have the second screen because it only defines information for
two card prefix ranges. The first screen associated with download record 03 is
formatted as follows:
LOW PREFIX(1) — The lowest card prefix value defined by this range. Any
card prefix values greater than or equal to the value specified in this field, and less
than or equal to the value specified in the HIGH PREFIX(1) field are included
within the card prefix range defined. The (1) indicates the information set up
defines the first card prefix range for download record 03. A (2) indicates the
information set up defines the second card prefix range for download record 03,
and so on. Download record 03 can define information for up to four card prefix
ranges.
HIGH PREFIX(1) — The highest card prefix range defined by this range. Any
card prefix range values equal to or less than the value specified in this field, and
greater than or equal to the value specified in the LOW PREFIX(1) field are
included within the card prefix range defined.
RETAILER ID(1) — An identifier for the retailer associated with this card prefix
range. The retailer ID is assigned by MasterCard, Visa, American Express, or
another card issuer.
DRAFT CAP FLG(1) — A flag indicating whether cards within the defined
range use draft capture processing. This field is taken from the ACNF and
overrides the value in the TP field on PTD screens 8, 9, or 10 for the card prefix, if
the PTD field is set so the terminal determines the draft capture mode for each
transaction. The following valid values can be entered in this field:
0 = Authorize only
1 = Authorize and capture
This field remains blank if the corresponding prefix range is not defined.
TOTAL FLG(1) — A flag indicating whether the terminal maintains totals for the
card prefix range. The terminal must have the capability of maintaining totals if
the value entered in this field is 1. The following valid values can be entered in this
field:
This field remains blank if the corresponding prefix range is not defined.
PIN VALIDATION FLAG(1) — A flag indicating whether cards within the card
prefix range require PINs. The following valid values can be entered in this field:
This field remains blank if the corresponding prefix range is not defined.
This field remains blank if the corresponding prefix range is not defined.
MOD-CK FLG(1) — A flag indicating whether MOD-10 checks are used for
cards within the card prefix range. The following valid values can be entered in
this field:
This field remains blank if the corresponding prefix range is not defined.
This field remains blank if the corresponding prefix range is not defined.
Required Field: No
Default Value: N
Data Name: ACNF.FORMAT3.FLD.PRESENT
The ARSP contains a map linking BASE24 response codes to response code
descriptions. This map is one record within the ARSP. Up to three more records
can be added to the file. These additional records can contain the wording to send
a response explanation in different languages. The wording can be sent to the
terminal in the response and used for printing receipts and displaying messages to
the terminal.
There are four types, or sets, of screens associated with the ARSP. These are used
to access five records that can be stored in the ARSP. These screen types are as
follows:
●
Selection Screen
●
Response Display Map Screens
●
Language Display Screens
●
Transaction Description Screens
Each of the above screen groups are described on the following pages.
1. Enter ARSP in the FILE DESTINATION field at the bottom of the CRT
access screen. From a menu, press the F1 key to display ARSP screen 1.
From a file screen, press the F16 key to display ARSP screen 1.
2. Enter the appropriate values in the TERMINAL GROUP and RECORD
NUMBER fields on ARSP screen 1, based on the parameters you want to
configure (i.e., responses, language display, or transaction descriptions) and
the terminal group to which you want the parameters to apply.
The Response Display Map record, accessed by placing 00 in this field, links
each response code to a response display.
The three language display records, accessed by placing 01, 02, or 03 in this
field, can contain responses in different languages.
The Transaction Description record, accessed by placing 04 in this field,
enables customers to determine the name of transactions.
3. Once values are entered in these fields, press the F9 key to access the record.
4. Configure the selected record and press the F3 key to add the record.
Selection Screen
ACI Standard Device Response File (ARSP) screen 1 is shown below, followed by
descriptions of its fields.
DIRECTIONS:
The main purpose of the Response Display Map screens is to provide an index into
the Language Display screens. The Response Display Map record consists of four
screens that list the BASE24-pos response codes and their corresponding
descriptions as defined in the POS Standard Internal Message (PSTM). From
these screens, you can enter an index number for each response code. The index
number corresponds to text contained in the Language Display records.
FID U is used to determine which of the three language displays to use for
responses. If FID U is included in the request, this language code overrides the
default language code defined in the BASE24-pos Terminal Data files (PTD) and
is echoed in responses. If FID U is not included in the request, the value from the
LANGUAGE ID field on PTD screen 1 identifies the language display used for the
response.
1. Check the ACNF Field Map screens to ensure that FID g (Response Display)
has been configured to be included in messages for the transaction types you
want. If FID g is not configured for the transaction types you want, add it to
the configuration using the steps described in the “Setting Up Field Map
Records” topic documented earlier in this section.
2. Enter ARSP in the FILE DESTINATION field at the bottom of the ACNF
screen and press the F16 key to access the ARSP Selection screen.
3. Enter the appropriate value in the TERMINAL GROUP field, based on the
terminal group to which you want the ARSP parameters to apply.
4. Enter 00 in the RECORD NUMBER field on the ARSP Selection screen and
press the F9 key to access the first screen associated the ARSP Response
Display Map record.
Record 00 consists of five screens of response codes. Continue to press the
F9 key to access subsequent screens.
Each screen associated with record 00 is divided into two columns, each
containing three fields. The first field in each column contains the
BASE24-pos standard response code number. Response codes are listed on
the screens in numeric order from left to right across the screen.
The second field in each column contains the standard BASE24-pos response
code description that corresponds to the response code number identified in
the first field. The response code number and description are taken from the
COBNAMES table.
The third field in each column is the only field on the screens that you can
alter. This field contains the number used to index the response code
description entered in the Language Display Record and placed in FID g of
the response by the SPDH module.
5. Select the response code you want to index by pressing the Tab key until you
are positioned directly to the right of the response code on the screen.
6. Enter a two digit number to index the Language Display record.
7. Repeat the previous two steps until you have completed indexing the response
codes on one screen.
8. Verify the response codes are indexed as you want them on the screen, make
any corrections, and move to the next screen by pressing the F9 key. The F9
key is used to access subsequent pages associated with the record.
Note: The ARSP Response Display record consists of five screens, each
containing response codes. You must enter information on each screen for
each response code you want to index.
9. Repeat the procedures described above on each ARSP Response Display
screen for each response code you want to index.
10. When you have completed indexing the response codes on all of the ARSP
Response Display screens, press the F3 key to add the record.
11. Press the F2 key to read the record to verify it has been added correctly.
<rc> — The values in this column are BASE24-pos response codes and cannot be
altered by the user. All BASE24-pos response codes are listed in the record. The
screens on which particular responses codes are listed are noted below. The screen
numbers are in the upper-right corner of the screen.
Several of the spaces in the response code column are blank, indicating that
numbers have been reserved for future use.
The BASE24-pos response codes listed here correspond to the RESP-CDE field in
the POS Standard Internal Message (PSTM). Additional information about the
response codes can be found in the BASE24-pos Transaction Processing Manual.
<ld> — The values in this column relate to the various language displays. The
numbers in this column are used when determining the language to be included in
the response.
The SPDH module reads the language code it receives in the request from the
terminal. The SPDH module uses FID U in the request to determine which
Language Display record to access. If FID U is absent, the SPDH module uses the
default language code set in the LANGUAGE ID field on PTD screen 1 to
determine which record to access. The language codes that can be included in the
request from the terminal are as follows:
The SPDH module reads the Response Display Map records and determines which
response codes have corresponding response code descriptions indexed in the
Language Display records. The SPDH module accesses the appropriate Language
Display record, matches the correct response code description to the response code
number it is indexed to in the Response Display record, and sends the information
to the terminal in the response.
To access the ARSP Language Display screen, perform the following steps:
1. Check the ACNF Field Map screens to ensure that FID U (Language Code)
has been configured to be included in messages for the transaction types you
want. If FID U is not configured for the transaction types you want, add it to
the configuration using the steps described in the “Setting Up Field Map
Records” topic documented earlier in this section. An alternative to this step
is to use the default language code set in the LANGUAGE ID field on PTD
screen 1. If the default language code is being used, skip this step and move
to step 2.
2. Enter ARSP in the FILE DESTINATION field at the bottom of the ACNF
screen and press the F16 key to access the ARSP Selection screen.
3. Enter the appropriate value in the TERMINAL GROUP field, based on the
terminal group to which you want the ARSP parameters to apply.
4. Enter 01, 02, or 03 in the RECORD NUMBER field on the ARSP Selection
screen and press the F9 key to access the first screen associated with the
ARSP Language Display record.
5. Select the index number to which you want to add a response code by
pressing the Tab key until you are positioned directly to the right of the index
number on the screen.
The Tab key automatically positions you in the second column on the screens
where you can enter your modified response code descriptions.
6. Enter a response code description of up to 48 characters in length.
7. Repeat the previous two steps until you have completed indexing the response
code descriptions on one screen.
8. Verify the response code descriptions are entered as you want them on the
screen, make any corrections, and move to the next screen by pressing the F9
key. The F9 key is used to access subsequent pages associated with the
record.
Note: The response code descriptions indexed in the ARSP Language
Display record correspond to response code numbers in the ARSP Response
Display records. You should verify that response code descriptions match
their corresponding response codes. In addition, you must enter response
code descriptions on each screen for each response code number indexed in
the ARSP Response Display records.
9. Press the F9 key to move to the next screen and repeat the procedures
described above on each ARSP Language Display screen for each response
code description required.
10. When you have completed indexing the response code descriptions on all of
the ARSP screens, press the F3 key to add the record.
11. Press the F2 key to read the record to verify it has been added correctly.
LANGUAGE 1
LANGUAGE 1
LANGUAGE 1
LANGUAGE 1
The terminal sends 0 to indicate the responses in Table 1; 1 to indicate Table 2; and
2 to indicate Table 3.
Optional data may be included in the responses listed on this screen, if certain
codes are included in the response. Refer to the Configurable Receipts discussion
in section 6 for a complete list of available optional data fields. The codes allow
variable data to be included in the response. The codes must be uppercase or
lowercase as shown.
Example: 0\D\K\s
Field Length: 1 to 48 alphanumeric characters
Occurs: 10 times per screen
Required Field: Yes
Default Value: No default value
Data Name: ARSP.DISPLAYS.TEXTS
If FID s is configured for inclusion in the transaction response, the response will
contain a transaction description. If FID s is not configured for inclusion in the
transaction response, the response will not contain a transaction description.
You can specify whether to include FID s in responses for each transaction type
when configuring the Field Map screens in the ACNF. For more information on
setting up the ACNF Field Map screens, refer to the ACNF documentation earlier
in this section.
When the SPDH module is configured to include FID s in its response, the SPDH
module places information in the FID in the following order of priority:
Note: The transaction code in the standard message header of the request is used
by the SPDH module to identify the appropriate transaction description.
1. Check the ACNF Field Map screens to ensure that FID s (Transaction
Description) has been configured to be included in messages for the
transaction types you want. If FID s is not configured for the transaction
types you want, add it to the configuration using the steps described in the
“Setting Up Field Map Records” topic documented earlier in this section.
2. Enter ARSP in the FILE DESTINATION field at the bottom of the ACNF
screen and press the F16 key to access the ARSP Selection screen.
3. Enter the appropriate value in the TERMINAL GROUP, based on the terminal
group to which you want the ARSP parameters to apply.
4. Enter 04 in the RECORD NUMBER field on the ARSP and press the F9 key
to access the first screen associated with the ARSP Transaction Description
record.
5. Select the transaction description you want to enter by pressing the Tab key
until you are positioned directly to the right of the applicable transaction
listed in column one.
You cannot alter the transaction descriptions displayed in the first column on
the screens. The Tab key automatically positions you in the second column
on the screens where you can enter or modify your transaction description
text.
6. Enter up to 24 characters of text to create your own transaction description.
7. Repeat the previous two steps until you have completed altering transaction
descriptions on one screen.
8. Verify the transaction descriptions are as you want them on the screen, make
any corrections, and move to the next screen by pressing the F9 key. The F9
key is used to access subsequent pages associated with the record.
Note: The ARSP Transaction Description record consists of four screens,
each containing transaction descriptions.
9. Repeat the procedures described above on each ARSP Transaction
Description Record screen for each transaction description you want to alter.
10. When you have completed altering the transaction descriptions on all of the
ARSP Transaction Description Record screens, press the F3 key to add the
record.
11. Press the F2 key to read the record to verify it has been added correctly.
DESCRIPTION RECORD
DESCRIPTION RECORD
DESCRIPTION RECORD
DESCRIPTION RECORD
DESCRIPTION RECORD
The following fields describe supported transactions with original descriptions and
customer descriptions.
One of the functions of the SPDH module is to translate the native message into
the POS Standard Internal Message (PSTM) before sending the message to the
Authorization module.
Native message track data is found in optional data fields. The FID for Track 2
customer or supervisor data is q or r, respectively. The FID for Track 1 customer
or supervisor data is 2 or 3, respectively. These optional data fields are defined in
section 4.
This appendix describes the actions the SPDH module takes when translating track
data to the PSTM under various scenarios.
For more information about the PSTM, refer to the BASE24-pos Transaction
Processing Manual. For more information about the Track 1 token, refer to the
BASE24 Tokens Manual.
●
The native message contains Track 2 data only
●
The native message contains Track 1 data only
●
The native message contains both Track 1 and electronically entered Track 2
data
●
The native message contains both Track 1 and Track 2 data, but the Track 2
data was manually entered
●
The native message contains no track data
Note that the SPDH module does not support manually entered Track 1 data.
If the data is entered manually, the SPDH module sets the first byte of the TRAN.
TRACK2 field in the PSTM to M and the PT-SRV-ENTRY-MDE field in the
PSTM to 01 (manual). If an expiration date is not specified, the SPDH module
uses the appropriate default value. The SPDH module also sets the COMPLETE-
TRACK2-DATA field in the BASE24-pos Release 5.0 token to the corresponding
value from the COMPLETE TRACK DATA field on POS Terminal Data files
(PTD) screen 2. The value in this field should not be used for further processing.
If the data is entered electronically, the SPDH module sets the PT-SRV-ENTRY-
MDE field in the PSTM is set to 02 (magnetic stripe). The SPDH module also sets
the COMPLETE-TRACK2-DATA field in the BASE24-pos Release 5.0 token to
the corresponding value from the COMPLETE TRACK DATA field on PTD
screen 2.
If FID 6, subFID E (POS Entry Mode) is present in the message and contains a
value of 05 (integrated circuit card), 07 (contactless chip card), or 91 (contactless
magnetic stripe card), the SPDH module sets the PT-SRV-ENTRY-MDE field in
the PSTM to that value.
The SPDH module then moves the information from the Track 1 data field to the
Track 1 token and adds the token to the PSTM. If an error occurs when adding the
Track 1 token, the SPDH module continues processing the transaction if possible.
If the Track 1 token cannot be added, the SPDH module sets the PT-SRV-ENTRY-
MDE field to 01 to indicate that the track data is manually entered.
If FID 6, subFID E (POS Entry Mode) is present in the message and contains a
value of 05 (integrated circuit card), 07 (contactless chip card), or 91 (contactless
magnetic stripe card), the SPDH module sets the PT-SRV-ENTRY-MDE field in
the PSTM to that value.
The SPDH module then moves the Track 1 information from the Track 1 data field
to the Track 1 token and adds the token to the PSTM. If an error occurs when
adding the Track 1 token, the SPDH module continues processing the transaction if
possible.
If FID 6, subFID E (POS Entry Mode) is present in the message and contains a
value of 05 (integrated circuit card), 07 (contactless chip card), or 91 (contactless
magnetic stripe card), the SPDH module sets the PT-SRV-ENTRY-MDE field in
the PSTM to that value.
No Track Data
If the SPDH module receives no track data (not all transaction types require track
data), the SPDH module determines whether an error condition exists and
processes accordingly.
This appendix illustrates the transaction flows in scenarios that contain a reversal
at the POS device, controller, or SPDH module.
The diagram for a communication failure during a request to the SPDH module is
the same for both online and offline authorization. The scenario is documented
only in the subsection “Transaction Flows for Online Authorization.”
Two scenarios, timeout of an online transaction at the SPDH module and store-
and-forward transaction arrives at the SPDH module before a late response from
the authorizer, cannot occur in offline authorization.
The Message Subtype field in the standard message header of a timeout reversal is
set to a value of T (timeout reversal—online) or A (timeout reversal—advice). The
different values are for the benefit of the controller. For each physical POS device
attached to the controller, some controller software uses one logical terminal to
process online transactions and one logical terminal to process store-and forward
transactions. The different message subtypes enable the controller to distinguish
between online transactions and store-and-forward transactions, so it can route
reversal responses to the correct logical terminal. The SPDH module processes
reversals with message subtypes T and A identically.
The message header of the timeout reversal message also must contain a
transmission number. The SPDH module uses the transmission number to match
the timeout reversal to the transaction it is intended to reverse.
The SPDH responds to a timeout reversal message with the optional timeout
reversal response message. The reversal response message is an echo of the
reversal request. If your POS device software or controller software supports
timeout reversals, the REVERSAL RESPONSES flag on ACI Standard
Configuration File (ACNF) screen 2 must be set to a value of Y.
Device
Device Handler/Router/
Handler/Router/
Authorization
1 2 3 4
XPNET 66 55
Process Router SPDH Auth
9b 9a
9a 10 11
11
Controller 13 12
POS Device
15
15 16
16
18
18 17
17
7
Host
14
14
Interface Process
19
Steps Processing
Steps Processing
14, 15, 16 The Host Interface process sends a late 0210 response to the
SPDH module. This message travels through the XPNET
process and the Router module.
17, 18, 19 The SPDH module checks the device-dependent data for the
transaction status. The status indicates that the transaction has
timed out, so the SPDH module returns a 0420 reversal to the
Host Interface process. This message travels through the
Router module and the XPNET process.
Device Handler/Router/
Handler/Router/
Authorization
1 2 3
7 5 44
XPNET
Process Router SPDH Auth
88 9 10
10
13
13 12 11
11
15
15 14
14
POS Device Controller
18 17
17
16 Host
Interface Process
Steps Processing
Steps Processing
14, 15, 16 The SPDH module sends a 0420 reversal message to the Host
Interface process. This message travels through the Router
module and the XPNET process.
17, 18 The SPDH module echoes the timeout reversal response to the
controller. This message travels through the XPNET process.
Device Handler/Router/
Handler/Router/
Authorization
Authorization
11 2 3 4
XPNET 6 55
Process Router SPDH Auth
8
10
10 9
15 14
14
7
Host
11
Interface Process
16
16
Steps Processing
Steps Processing
11, 12, 13 The Host Interface process sends a late 0210 response to the
SPDH module. This message travels through the XPNET
process.
14, 15, 16 The SPDH module reads the transaction status in the device-
dependent data. The status indicates that the transaction has
timed out, so the SPDH module returns a 0420 reversal to the
Host Interface process. This message travels through the
Router module and the XPNET process.
Device Handler/Router/
Handler/Router/
1 Authorization
Authorization
2 3 4 5
XPNET
Process Router SPDH Auth
7 6
Host
Interface Process
Steps Processing
Steps Processing
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
1 22 3 44
XPNET 6 55
Process Router SPDH Auth
88
9 10
10
Controller 18
18 12 11
POS Device
13 14
16
16 15
19b 19a 20 21
21 22
24 23
23
7
Host
88
Interface Process
17
Steps Processing
Steps Processing
15, 16, 17 The SPDH module generates and routes a 0420 reversal to the
Host Interface process. This message travels through the
Router module and the XPNET process.
23, 24 The SPDH module echoes the timeout reversal response to the
controller. This message travels through the XPNET process.
Device Handler/Router/
Handler/Router/
Authorization
1 2 3
XPNET 5 44
Process Router SPDH Auth
14 88 7
9 10
10
Controller 12
12 11
11
POS Device
15 16 17 18
20
20 19
19
13 Host
Interface Process
Steps Processing
4, 5, 6 The SPDH module formats and sends a 0220 advice to the Host
Interface process. This message travels through the Router
module and the XPNET process.
Steps Processing
11, 12, 13 The SPDH module formats and sends a 0420 reversal to the
Host Interface process. This message travels through the
Router module and the XPNET process.
15, 16, 17 The controller sends a timeout reversal with a message subtype
of A to the SPDH module. The transmission number of the
timeout reversal must match that of the store-and-forward
transaction request sent in step 1. This message travels through
the XPNET process and the Router module.
Device Handler/Router/
Handler/Router/
Authorization
11 2 3 4
XPNET 6 55
Process Router SPDH Auth
9 10
10
Controller 13
13 12 11
11
POS Device
14b
14b 14a 15 16
18
18 17
17
21
21 20
7
Host
8
Interface Process
19
19
Steps Processing
Steps Processing
17, 18, 19 The SPDH module sends a 0420 reversal message to the Host
Interface process. This message travels through the Router
module and the XPNET process.
Device
Device Handler/Router/
Handler/Router/
Authorization
1 22 33
XPNET 5 44
Process Router SPDH Auth
9 8 7
10 11
11 12
15 Host
Interface Process
Steps Processing
Steps Processing
10, 11, 12 The controller sends a timeout reversal message with a message
subtype of A to the SPDH module. The transmission number
of the timeout reversal must match that of the message sent in
step 1. This message travels through the XPNET process and
the Router module.
13, 14, 15 The SPDH module routes a 0420 reversal to the Host Interface
process. This message travels through the Router module and
the XPNET process.
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
11 2 33
7 5 44
XPNET
Process Router SPDH Auth
99 8
10 11
Controller 11 15
15 13
13 14
POS Device
16 15
15
6
Host
Interface Process
Steps Processing
Steps Processing
11, 12, 13 The controller resends the timeout reversal to the SPDH
module. This message travels through the XPNET process and
the Router module. Steps 7 through 13 repeat until the SPDH
module echoes a timeout reversal response before the timeout
reversal times out at the controller.
Device
Device Handler/Router/
Handler/Router/
Authorization
Authorization
11 2 33
XPNET 5 44
Process Router SPDH Auth
77 8 9 10
10
12 11
17 16
20 19
19
22 23
25 24
24
18 Host
Interface Process
21
21
26
Steps Processing
Steps Processing
16, 17, 18 The SPDH module sends a 0220 advice to the Host Interface
process. The SPDH module sets the transaction status to a
value of B (the advice was sent to the Authorization module).
This message travels through the Router module and the
XPNET process.
21, 22, 23 The Host Interface process sends a late 0210 response to the
SPDH module. This message travels through the XPNET
process and the Router module.
24, 25, 26 The SPDH module checks the transaction status in the device-
dependent data. The status has changed (that is, it is not set to
indicate that the request was sent to the Authorization module).
The SPDH module returns a 0420 reversal of the request sent in
step 4 to the Host Interface process. This message travels
through the Router module and the XPNET process.
Device Handler/Router/
Handler/Router/
Authorization
11 2 3 4
6 XPNET 55
Process Router SPDH Auth
7b 7a
7a 8
12
12 11 10 9
13
13 14
POS Device Controller
16
16 15
Steps Processing
Steps Processing
Device
Device Handler/Router/
Handler/Router/
Authorization
1 2 3 4
55
XPNET
Process Router SPDH Auth
66 7
10 9 88
Controller 11
11 12
POS Device
14
14 13
Steps Processing
Steps Processing
12
12 8 77 6
Router SPDH Auth
9 10
10 11
13b 13a
13a 14 15 16
16
18
18 17
POS Device Controller
Steps Processing
Steps Processing
17, 18 The SPDH module echoes the timeout reversal to the controller.
This message travels through the XPNET process.
1 22 3 4
10
10 6 5
Router SPDH Auth
77 8 9
11 12 13 14
16
16 15
15
POS Device Controller
Steps Processing
Steps Processing
11, 12, 13 The controller sends a timeout reversal with a message subtype
of A to the SPDH module. The transmission number of the
timeout reversal must match that of the store-and-forward
transaction request sent in step 1. This message travels through
the XPNET process and the Router module.
9 8 77 6
Router SPDH Auth
10b 10a
10a 11
11 12
12 13
15
15 14
Steps Processing
Steps Processing
1 2 3 4
7 6 55
Router SPDH Auth
8 99 10 11
11
13
13 12
Steps Processing
Steps Processing
XPNET Device
Device Handler/Router/
Handler/Router/
Process Authorization
1 22 33 4
5
Router SPDH Auth
8 7 66
9 10
10 11
11 12
Steps Processing
Steps Processing
Terminology
The following terms appear in this documentation to describe the BASE24-pos
Mobile Top-Up Device Handler extension.
Top-up authorizer — The entity responsible for authorizing the top-up portion
of a mobile top-up transaction. This entity can verify that the mobile telephone
number exists, that the account can be replenished, and that the amount or number
of minutes requested is valid.
●
Receives the transaction request from the POS device and appends the
necessary tokens to identify the transaction as a mobile top-up transaction
●
Forwards customer actions to the TCM process
●
Receives information from the TCM process
●
Formats and sends native mode messages to the POS device
A mobile top-up transaction message has two processing requirements: the funds
portion and the top-up portion (includes the mobile telephone number and all
processing information). If the POS-SPLIT-TXN-RTG-DEST param is present in
the Logical Network Configuration File (LCONF), the Device Handler process
forwards the transaction to the TCM process specified in the param, which can
route the transaction to multiple authorizing entities. If the param is not present,
the transaction is declined.
After the SPDH Device Handler process retrieves the destination name from the
LCONF, it adds the Split Transaction Routing token with the name of the
Authorization process in the FUNDS-AUTH-DEST field.
When the BASE24-pos system uses the Transaction Context Manager process, all
messages between the Device Handler process and Authorization process are
routed through the Transaction Context Manager process.
The Device Handler process formats the transaction as a mobile top-up transaction
and builds the pre-pay top-up token which contains the phone PAN and the amount
to be replenished. Upon completion of building the transaction and all its
associated data, the Device Handler process sends the transaction to the TCM.
If the transaction involves a credit or a debit card, the TCM formats a purchase
transaction and routes the funds portion of the transaction to the FUNDS-AUTH-
DEST defined in the Split Transaction Routing token. Depending on the funds
issuer, the Authorization process may or may not route the funds portion of the
transaction to an interchange.
The TCM completes the transaction by logging the secondary service transaction
to the POS Transaction Log File (PTLF) and forwards the response to the SPDH
Device Handler process.
The Transaction Context Manager process splits the transaction routing to different
destinations. In the case of mobile top-up processing, mobile top-up with funds
transaction routing is split between the top-up authorizer and the funds authorizer.
The TCM process uses the routing hierarchy specified in the Split Transaction
Routing File (STRF) to determine the order to send the transaction message to the
authorizing entities. The TCM process uses the Split Transaction Routing token to
keep track of the transaction routing. The TCM process updates the TXN-RESP-
IND, the FUNDS-AUTH-STAT, and the SCND-SVC-STAT fields in the Split
Transaction Routing token each time it passes the transaction to either the funds
authorizer or the top-up authorizer.
Configuration Considerations
The following files contain fields needed for the mobile top-up product.
●
TSPDNAMS
●
Logical Network Configuration File (LCONF)
●
Transaction Code/Subtype Relationship File (TSRF)
●
Split Transaction Routing File (STRF)
●
Mobile Operator File (MOF)
The ROUTING HIERARCHY field specifies the order to which the Transaction
Context Manager process routes the transaction for authorization of the funds and
top-up portions of the transaction. For mobile top-up with funds processing, you
can configure sequential routing, with the transaction going to the funds authorizer
first by setting this field to the value B0. For mobile top-up with cash processing,
you can configure routing so that the transaction goes to the secondary service only
by setting this field to the value BS.
Refer to the BASE24 Base Files Maintenance Manual for more information
about this file.
Refer to the BASE24 Base Files Maintenance Manual for more information
about the MOF.
Tokens
In addition to tokens already used in BASE24-pos processing, the BASE24-pos
Mobile Top-Up solution uses the following tokens:
POS Split Transaction Routing Token — This token (token ID CR) carries
POS-specific data that enables BASE24 to route multiple transaction requests
related to a single cardholder request. It also allows BASE24 to identify and
merge the multiple responses received into a single response destined for the
cardholder. The token is added by the BASE24-pos Transaction Context Manager
process.
Pre-Pay Generic Receipt Token — This token is used by the Device Handler
process and the Transaction Context Manager process. It contains the timestamp
when the generic receipt message was last changed.
Pre-Pay Merchant Token — This token is used by the Device Handler process
and the Transaction Context Manager process. It contains information from the
telecommunications service provider Mobile Operator File (MOF).
Pre-Pay Original Data Token — This token contains data from an original
transaction that can be modified during pre-pay processing. This data is restored
to the appropriate fields in the internal message before returning a response to the
transaction originator.
Pre-Pay Receipt Token — This token is used by the Device Handler process
and the Transaction Context Manager process. It contains information receipt
information.
Pre-Pay Top-Up Token — This token is used by the Device Handler process
and Transaction Context Manager process. This token contains the information
captured by the acquiring interface, for example, the phone primary account
number and the amount to be replenished.
Refer to the BASE24 Tokens Manual for more information on these tokens.
Field Identifiers
Field Identifier (FID) R (Card Type) — Supports a value of N (No card type)
for mobile top-up transactions using cash. This FID is mandatory for top-up
transactions.
FID J (Available Balance) — Contains the available balance returned from the
mobile operator in a mobile top-up transaction.
FID 7 (Mobile Top- Data) — Contains data for mobile top-up transactions.
Subfield Identifiers
The following are the descriptions for the subfields (SFIDs) for FID 7.
Refer to section 4 for complete information on the mobile top-up FIDs and
SubFIDs.
The TCM process logs the top-up transactions with a transaction code of 29 (cash)
or 30 (funds). The TCM process logs the value S in the responder field, indicating
a secondary service transaction and enables Transaction-based Pricing and POS
settlement reports to process the secondary service transactions appropriately.
A ARSP
see ACI Standard Device Response File (ARSP)
Acceptor Posting Date, 4-54
Authentication code field, 4-29
Account balances, 6-7
Authentication collection indicator subfield, 4-95
ACI Standard Device Configuration File (ACNF)
ACNF record 06 screen, 8-46 Authentication data subfield, 4-98
ACNF records 00, 01, and 02 screens, 8-36 Authentication key field, 4-29
ACNF records 03, 04, 05, 07, 08, 09, 10, and 11 Auto-substantiation data, 4-123
screens, 8-39
Auto-Substantiation Transactions, 1-19
file usage, 3-10
in downloading procedures, 5-2 Available balance field, 4-30
request message requirements, 4-130
response considerations, 6-4 B
response message requirements, 4-131
ACI Standard Device Response File (ARSP) Base Extended Memory Table Build utility, 3-13
ARSP Language Display records, 8-60 BASE24 Standard POS Device Handler (SPDH) module
ARSP Response Display Map screens, 8-53 configuration considerations, 6-1
ARSP Transaction Description records, 8-67 downloading data, 5-2
file usage, 3-10 exclusive configuration of, 8-1
language index and responses, 6-5 implementation responsibilities, 1-39
variable data fields, 6-5 messages, 1-6
ACI standard POS message, 4-1 overview, 3-2
terminal configuration, 2-1
ACNF transaction support, 1-25
see ACI Standard Device Configuration File (ACNF)
BASE24 transaction security options, 1-11
Acquirer Processing Code File (APCF)
description, 2-5 BASE24-mail support
downloading, 5-2, 5-11 mail delivered request, 6-43
file usage, 3-10 overview, 1-14
routing, 3-4 read mail request, 6-41
read mail response, 6-42
Address verification, 1-14 send mail request, 6-41
Address verification status code field, 4-40 unsolicited mail, 6-40
Adjustment limits, 3-5 BASE24-pos Terminal Data files (PTD)
Allowed transaction checking, 3-2 data encryption type, 6-30
default language code, 6-4
ALTERATTRIBUTE command, 3-16
downloading, 5-2, 5-11
American Express Additional Data, 4-115 draft capture flag, 4-34
American Express card security codes, 6-35 file usage, 3-11
American Express data collection, 1-9 in transaction processing, 1-25
overview, 2-10
AMEX data collection field, 4-54 PIN fields, 6-23
Amount 1 field, 4-26 posting date, 4-31
Amount 2 field, 4-27 returning account balances, 6-7
terminal location, 4-48
APCF
see Acquirer Processing Code File (APCF) BASE24-pos transaction flows
approved normal purchase received by device, 7-2
Application account number field, 4-28 approved normal purchase, communications between
Application account type field, 4-28 device and BASE24, 7-3
Approval code field, 4-29 controller reversal, 7-8
Transaction flow
BASE24-pos Standard Internal Message
(PSTM), 1-37
Router/Authorization process, 1-36
SPDH releases and versions, 1-38
tying the SPDH to BASE24-pos, 1-37
Transaction subtype data subfield, 4-92
Transaction support, 1-6
Transmission number field, 4-8
V
Visa Card Level Results, 1-23
Visa Payment Service 2000 support
see PS2000 support
W
WARMBOOT command, 3-15
Warmboot processing, 3-13
WARMBOOT PTD command, 3-15
Warmboot PTD processing, 3-14
X
X.21 control header, 4-5
XID/transaction stain subfield, 4-74
D
DESCR.TBL, 8-71
DISPLAYS.TEXTS, 8-66
F
FORMAT2.FLD.FILLER, 8-46
FORMAT2.FLD.INFO, 8-42, 8-43, 8-44, 8-45, 8-46
FORMAT3.FLD.PRESENT, 8-48
K
KEY-S.GRP, 8-5
KEY-S.REC-ID, 8-6
KEY-S.REC-TYPE, 8-6
P
PRI-KEY.REC-NUM, 8-52
PRI-KEY.TERM-GRP, 8-51
PRO-DATA.AUTH-TIMEOUT, 8-12
PRO-DATA.CNSC-MAC-ERR-LMT, 8-16
PRO-DATA.DATA-ERR-LMT, 8-17
PRO-DATA.DATA-TXN-LMT, 8-16
PRO-DATA.DPC-0, 8-14
PRO-DATA.DPC-1, 8-14
PRO-DATA.DPC-2, 8-14
PRO-DATA.FLAGS, 8-9, 8-10, 8-11, 8-12
PRO-DATA.LOAD-TIMEOUT, 8-13
PRO-DATA.MAC-ERR-LMT, 8-15
PRO-DATA.MAC-TXN-LMT, 8-15
PRO-DATA.MAIL-TIMEOUT, 8-13
PRO-DATA.MAX-RESP-LEN, 8-12
PRO-DATA.OLDMSG-TIMEOUT, 8-13
PRO-DATA.PIN-ERR-LMT, 8-16
PRO-DATA.PIN-TXN-LMT, 8-16
R
RESP.TBL, 8-59