• No results found

WIC Smart Card Processing. Integration Guide

N/A
N/A
Protected

Academic year: 2021

Share "WIC Smart Card Processing. Integration Guide"

Copied!
76
0
0

Loading.... (view fulltext now)

Full text

(1)
(2)
(3)

72E-86292-01 Revision A November 2006

(4)

© 2006 by Symbol Technologies, Inc. All rights reserved.

No part of this publication may be reproduced or used in any form, or by any electrical or mechanical means, without permission in writing from Symbol. This includes electronic or mechanical means, such as

photocopying, recording, or information storage and retrieval systems. The material in this manual is subject to change without notice.

The software is provided strictly on an “as is” basis. All software, including firmware, furnished to the user is on a licensed basis. Symbol grants to the user a non-transferable and non-exclusive license to use each software or firmware program delivered hereunder (licensed program). Except as noted below, such license may not be assigned, sublicensed, or otherwise transferred by the user without prior written consent of Symbol. No right to copy a licensed program in whole or in part is granted, except as permitted under copyright law. The user shall not modify, merge, or incorporate any form or portion of a licensed program with other program material, create a derivative work from a licensed program, or use a licensed program in a network without written permission from Symbol. The user agrees to maintain Symbol’s copyright notice on the licensed programs delivered hereunder, and to include the same on any authorized copies it makes, in whole or in part. The user agrees not to decompile, disassemble, decode, or reverse engineer any licensed program delivered to the user or any portion thereof.

Symbol reserves the right to make changes to any software or product to improve reliability, function, or design. Symbol does not assume any product liability arising out of, or in connection with, the application or use of any product, circuit, or application described herein.

No license is granted, either expressly or by implication, estoppel, or otherwise under any Symbol Technologies, Inc., intellectual property rights. An implied license only exists for equipment, circuits, and subsystems contained in Symbol products.

Symbol, Spectrum One, and Spectrum24 are registered trademarks of Symbol Technologies, Inc. Bluetooth is a registered trademark of Bluetooth SIG. Microsoft, Windows and ActiveSync are either registered trademarks or trademarks of Microsoft Corporation. Other product names mentioned in this manual may be trademarks or registered trademarks of their respective companies and are hereby acknowledged.

Symbol Technologies, Inc. One Symbol Plaza

Holtsville, New York 11742-1300

(5)

Revision History

Changes to the original manual are listed below:

Change Date Description

-01 Rev A 11/2006 Initial Release. (Hypercom Rev. B)

(6)
(7)

Revision History ... iii

About This Guide

Introduction ... v

Chapter Descriptions... v

Notational Conventions ... v

Related Documents... vi

Service Information ... vii

Global Customer Interaction Center... vii

Chapter 1: WIC EBT Card Processing

Introduction ... 1-1

Software Environment ... 1-1

Hardware Environment ... 1-1

Protocol ... 1-2

STX, ETX, and LRC ... 1-2

ACK and NAK ... 1-2

WIC EBT Card Processing ... 1-2

Required Security Keys ... 1-3

Transaction Summary ... 1-3

Start_WIC_Session ... 1-4

PIN Verification ... 1-4

Utilization Approval ... 1-5

Prescription Update Processing ... 1-5

WIC Update Prescription Operation Flow ... 1-6

WIC ICC Status Change Reason Code Update ... 1-7

Operation Flow ... 1-8

WIC Messages ... 1-8

WIC Message Details ... 1-10

Start_WIC_Session ... 1-10

Request (ASYNC) ... 1-11

Response (ASYNC) ... 1-12

Action Codes ... 1-13

Comments ... 1-14

Usage Scenario ... 1-14

Example ... 1-15

Get_WIC_Pin ... 1-15

Request (ASYNC) ... 1-15

Response (ASYNC) ... 1-16

(8)

Action Codes ... 1-16

Comments ... 1-17

Usage Scenario ... 1-17

Example ... 1-17

Get_Prescription ... 1-18

Request (ASYNC) ... 1-18

Response (ASYNC) ... 1-18

Action Codes ... 1-19

Comments ... 1-19

Usage Scenario ... 1-19

Examples ... 1-20

Update_Prescription ... 1-20

Request (ASYNC) ... 1-20

Response (ASYNC) ... 1-21

Action Codes ... 1-21

Comments ... 1-22

Usage Scenario ... 1-22

Examples ... 1-22

End_WIC_Session ... 1-23

Request (ASYNC) ... 1-23

Response (ASYNC) ... 1-23

Action Code ... 1-23

Comments ... 1-24

Usage Scenario ... 1-24

Examples ... 1-24

Lock_WIC_ICC ... 1-24

Request (ASYNC) ... 1-25

Response (ASYNC) ... 1-25

Action Code ... 1-25

Comments ... 1-26

Usage Scenario ... 1-26

Examples ... 1-26

Remove_WIC_ICC ... 1-27

Request (ASYNC) ... 1-27

Response (ASYNC) ... 1-27

Action Codes ... 1-28

Comments ... 1-28

Usage Scenario ... 1-28

Example ... 1-28

Smart_Card_Removed ... 1-29

Request (ASYNC) ... 1-29

Action Code ... 1-29

Example ... 1-29

Utilization_Approval ... 1-30

Request (ASYNC) ... 1-30

Response (ASYNC) ... 1-30

Action Codes ... 1-31

Comments ... 1-31

Usage Scenario ... 1-31

(9)

Example ... 1-31

Update_WIC_Status ... 1-32

Request (ASYNC) ... 1-32

Response (ASYNC) ... 1-33

Action Code ... 1-33

Comments ... 1-33

Allowed FPE Interface Messages ... 1-34

Beeper Control ... 1-34

Request (ASYNC) ... 1-34

Example ... 1-34

Form Request ‘V’ ... 1-35

Request ... 1-35

Field Tokens Used in Form Request ‘V’ Messages ... 1-35

Response ... 1-37

Field Tokens Sent by FPE in Response to Form Request ‘V’ Messages ... 1-38

Example ... 1-38

Update Display ‘M’ ... 1-39

Request ... 1-39

Response ... 1-39

Field Tokens ... 1-39

Example ... 1-39

Clear All Display Lines ‘N’ ... 1-40

Request ... 1-40

Response ... 1-40

Example ... 1-40

Scenarios ... 1-41

Redeem Food Benefits Process Overview ... 1-41

Scenario 1 ... 1-41

Scenario 2 ... 1-43

Action Codes ... 1-47

WIC Form Names and Global Prompt Texts ... 1-48

Default Form Names and Prompt Texts ... 1-48

WICSTFRM ... 1-48

WICPINFRM ... 1-48

WICRXFRM ... 1-49

WICENDFRM ... 1-49

WICREMFRM ... 1-49

WICINPFRM ... 1-49

WICCANFRM ... 1-49

WICRETFRM ... 1-49

WICLOCFRM ... 1-49

WICWTFRM ... 1-50

PINFRM ... 1-50

SWIPEFRM ... 1-50

WAITFRM ... 1-50

Form and Prompt Text Selection Algorithms ... 1-51

Default Change Procedure ... 1-52

WIC Prompts Configuration File ... 1-53

Sample Screen ... 1-55

(10)
(11)

Introduction

This WIC EBT card processing guide was prepared for Symbol payment terminals and contains detailed descriptions of supported commands, including request/response format and utilization examples, and provides guidelines for this interface integration into POS solutions for retail.

This guide is intended for network administrators, merchants, operators, technicians or those who oversee the configuration and daily maintenance of the terminals

Chapter Descriptions

Topics covered in this guide are as follows:

• Chapter 1, WIC EBT Card Processing provides information about the payment terminal application and PIN Pad communication with the retail point-of-sale cash register system (the “host” or ECR) in order to complete a WIC (Program for Women, Infants and Children) smart card transaction.

Notational Conventions

The followingconventions are used in this document:

Italics are used to highlight the following:

-

Chapters and sections in this and related documents

-

Drop-down list and list box names

-

Check box and radio button names

-

Icons on a screen.

NOTE Screens and windows pictured in this guide are samples and can differ from actual screens.

IMPORTANT Any references in this guide to Hypercom Corporation, Hypercom logo, Hypercom file names and file paths, Hypercom software (e.g., FormBuilder) and terminals reflect hardware and software manufactured by Hypercom Corporation for Symbol Technologies, Inc.

(12)

Bold text is used to highlight the following:

-

Names of windows

-

Dialog box components.

• bullets (•) indicate:

-

Action items

-

Lists of alternatives

-

Lists of required steps that are not necessarily sequential

• Sequential lists (e.g., those that describe step-by-step procedures) appear as numbered lists.

• Special icons:

Related Documents

For the latest version of this guide go to:http://www.symbol.com/manuals.

NOTE Notes contain neutral or positive information supplementing the main text. It is often information that applies only to special cases.

IMPORTANT Important statements draw attention to information crucial to using the product successfully. Pay special attention to Important statements.

CAUTION Cautions advise that a negative result, such as a loss of data, may occur.

WARNING! Warnings provide information that is essential to the safety of the user, the equipment, or both. Failure to do as instructed may result in physical damage.

(13)

Service Information

For service information, warranty information, technical assistance or problems with the equipment, contact the regional Symbol Global Customer Interaction Center. Before calling, have the model number, serial number and several bar code symbols at hand.

Call the Global Customer Interaction Center from a phone near the scanning equipment so that the service person can try to troubleshoot the problem. If the equipment is found to be working properly and the problem is reading bar codes, the Support Center will request samples of the bar codes for analysis at our plant.

If the problem cannot be solved over the phone, it may be necessary to return the equipment for servicing. If that is necessary, the Global Customer Interaction Center will provide specific directions.

If the Symbol product was purchased from a Symbol Business Partner, contact that Business Partner for service.

Global Customer Interaction Center

The addresses and telephone numbers below are provided for you convenience. However, this information can change due to telephone provider updates. For the most up-to-date contact number information, visit:

www.symbol.com/contactsupport for a Customer Interaction Center in your area.

NOTE Symbol Technologies is not responsible for any damages incurred during shipment if the approved shipping container is not used. Shipping the units improperly can possibly void the warranty. If the original shipping container was not kept, contact Symbol to have another sent.

Country/Region Address Telephone

United States Symbol Technologies, Inc. One Symbol Plaza

Holtsville, New York 11742-1300

1-800-653-5350

Canada Symbol Technologies Canada, Inc.

5180 Orbitor Drive

Mississauga, Ontario, Canada L4W 5L9

1-866-416-8545 (Inside Canada) 905-629-7226 (Outside Canada)

United Kingdom Symbol Technologies Symbol Place

Winnersh Triangle, Berkshire RG41 5TP United Kingdom

0800 328 2424 (Inside UK) +44 118 945 7529 (Outside UK)

Asia/Pacific Symbol Technologies Asia, Inc. (Singapore Branch)

230 Victoria Street #12-06/10 Bugis Junction Office Tower Singapore 188024

Tel: +65-6796-9600 Fax: +65-6337-6488

Australia Symbol Technologies Pty. Ltd. 432 St. Kilda Road

Melbourne, Victoria 3004

1-800-672-906 (Inside Australia) +61-3-9866-6044 (Outside Australia)

(14)

Österreich/Austria Symbol Technologies Austria GmbH Prinz-Eugen Strasse 70 / 2.Haus 1040 Vienna, Austria

01-5055794-0 (Inside Austria)

+43-1-5055794-0 (Outside Austria)

Danmark/Denmark Symbol Technologies AS Dr. Neergaardsvej 3 2970 Hørsholm 7020-1718 (Inside Denmark) +45-7020-1718 (Outside Denmark) Europe/Mid-East Distributor Operations

Contact your local distributor or call +44 118 945 7360

Suomi/Finland Oy Symbol Technologies Kaupintie 8 A 6

FIN-00440 Helsinki, Finland

9 5407 580 (Inside Finland) +358 9 5407 580 (Outside Finland)

France Symbol Technologies France

Centre d'Affaire d'Antony 3 Rue de la Renaissance 92184 Antony Cedex, France

01-40-96-52-21 (Inside France) +33-1-40-96-52-50 (Outside France) Deutschland/ Germany Symbol Technologies GmbH Waldstrasse 66 D-63128 Dietzenbach, Germany 6074-49020 (Inside Germany) +49-6074-49020 (Outside Germany)

Italia/Italy Symbol Technologies Italia S.R.L. Via Cristoforo Columbo, 49 20090 Trezzano S/N Navigilo Milano, Italy 2-484441 (Inside Italy) +39-02-484441 (Outside Italy) Latin America Sales Support 2730 University Dr.

Coral Springs, FL 33065 USA

1-800-347-0178 (Inside United States) +1-954-255-2610 (Outside United States) 954-340-9454 (Fax)

México/Mexico Symbol Technologies Mexico Ltd. Torre Picasso

Boulevard Manuel Avila Camacho No 88 Lomas de Chapultepec CP 11000 Mexico City, DF, Mexico

5-520-1835 (Inside Mexico) +52-5-520-1835 (Outside Mexico) Nederland/ Netherlands Symbol Technologies Kerkplein 2, 7051 CX Postbus 24 7050 AA Varsseveld, Netherlands 315-271700 (Inside Netherlands) +31-315-271700 (Outside Netherlands)

(15)

Norge/Norway Symbol’s registered and mailing address: Symbol Technologies Norway

Hoybratenveien 35 C N-1055 OSLO, Norway

Symbol’s repair depot and shipping address:

Symbol Technologies Norway Enebakkveien 123

N-0680 OSLO, Norway

+47 2232 4375

South Africa Symbol Technologies Africa Inc. Block B2

Rutherford Estate 1 Scott Street

Waverly 2090 Johannesburg Republic of South Africa

11-809 5311 (Inside South Africa) +27-11-809 5311 (Outside South Africa)

España/Spain Symbol Technologies S.L. Avenida de Bruselas, 22 Edificio Sauce Alcobendas, Madrid 28108 Spain 91 324 40 00 (Inside Spain) +34 91 324 40 00 (Outside Spain) Fax: +34.91.324.4010

Sverige/Sweden “Letter” address:

Symbol Technologies AB Box 1354 S-171 26 SOLNA Sweden Visit/shipping address: Symbol Technologies AB Solna Strandväg 78 S-171 54 SOLNA Sweden Switchboard: 08 445 29 00 (domestic) Call Center: +46 8 445 29 29 (international) Support E-Mail:

[email protected]

(16)
(17)

Chapter 1

Chapter 1 WIC EBT Card Processing

Introduction

The Program for Women, Infants and Children (WIC) provides nutritious supplemental foods, nutritional education, and health and nutrition referral services to low-income pregnant, postpartum, and breast feeding women, infants, and children up to five years old. The program is administered by the federal government. For more information on the WIC program, see www.fns.usda.gov/wic.

WIC benefits are authorized through local clinics and given to the family in a prescription format that allows only specific food items to be purchased. Once participants have been issued a card with benefits, they are able to redeem food benefits at a grocer with the WIC EBT system. Grocers will provide food items to the participant based on the current prescription information found on the card. When the transaction is complete, the food prescription is decremented by the amount redeemed, and the updated prescription is written to the card.

Software Environment

The application is written in C++ for the ARM Compiler (ARM Developer Suite version 1.2).

Hardware Environment

The application requires a Symbol payment terminal with WIC chip/smart card reader device able to attach to an ECR using RS-232 serial, TCP/IP, or USB communication.

(18)

Protocol

ASYNC

<STX><Message Type><Data><ETX><LRC>

STX, ETX, and LRC

Each message sent or received by either the PIN Pad or the terminal must be formatted with a leading STX (0x02) character and followed by a trailing ETX (0x03) character and an LRC. The LRC is a checksum character generated by performing an XOR (exclusive-or) operation upon all bytes of the message <Message Type><Data>, including the ETX, but excluding the STX. When a message is received, the LRC calculation will be performed, and the result compared to the value of the LRC character received as part of the message. If the values are not identical, the message will be considered corrupt, and will be NAKed.

ACK and NAK

All messages received by either the PIN Pad or the terminal will be checked for format (as discussed above) and a single ACK (0x06) or NAK (0x15) character will be sent in response. The sender of the message must wait for a period of time (the parameter value for ‘link level timeout’) for the ACK or NAK to arrive. If an ACK is received, the message will be considered successful. If a NAK is received, or if the timeout is reached without a response, the message will be considered to have failed, and will be resent, provided the previous attempt was not the third retry attempt.

WIC EBT Card Processing

The payment terminal application is capable of performing Texas and New Mexico WIC programs issued smart card transactions in a fully integrated retail environment. The PIN Pad communicates with the retail

point-of-sale cash register system (the “host” or ECR) in order to complete a WIC smart card transaction. In the integrated environment, the PIN Pad performs the following functions:

• Provides the cardholder’s user interface for performing the operations/actions. • Completes all card authentication activities independent of the host.

• Provides for communications with the host in a “slave” mode in which all message exchanges are

originated by the host.

• Exchanges messages (receiving requests and transmitting responses) with the host using an ISO 8583

type message structure.

• Translates the data stored on the card into a host-usable data format.

• Interprets host requests, validates the requests, and manipulates data on the smart card appropriately.

The ECR performs the following functions:

• Communicates with the terminal as the “master” in which it originates all message exchanges. • Provides means of identification of WIC smart cards that are on the State hot card list.

• Performs all of the functions required to identify appropriate WIC food items being purchased. • Formulates the appropriate transaction requests to send to the PIN Pad.

(19)

Required Security Keys

In order to process WIC EBT transactions, the payment terminal requires specific double length data encryption keys injected to indexes 2, 3, 5, and 6. If the terminal does not have the proper security keys injected, a WIC session cannot be started.

Transaction Summary

A WIC card transaction begins with a Start_WIC_Session ECR request. The request contains two prompt lines to propose that the user inserts a card, a timeout for card insert activity/terminal response, and can contain the name of the form to display, including optional parameters, etc. The terminal displays the form specified in the request or, if the form name is omitted, the terminal displays the default screen and waits for a card insertion.

When the WIC card is inserted or a timeout occurs, the terminal responds with a Start_WIC_Session response message. It contains action code, general card information, and food prescription access information.

The next step, after a Start_WIC_session response with action code=”300” (“Success”) is received, should be PIN verification. It is initiated by a Get_WIC_PIN request, that contains two prompt lines to propose PIN entry, timeout for terminal response, name of the form, etc. The terminal displays form specified in the request or the default screen, when the “Form name” is omitted, and waits for the PIN to be entered. After the PIN entry, the terminal responds with a Get_WIC_PIN response message, that contains only action code.

If the PIN verification completed successfully, the ECR may send a Get_Prescription request, which contains two prompt lines: date and transaction number. The terminal displays the SWIPEFRM screen and responds with a Get_Prescription response message. The response contains action code and prescription data available for the date contained in the request.

Usually the goal of a transaction is to update the prescription when any item is purchased. To update the prescription, the ECR may send an Update_Prescription request that contains two prompt lines, the form name, an optional parameter, and data for the prescription update. This data contains information about all of the prescription’s items. The terminal’s Update_Prescription response message contains action code and all of the data that can be used for transaction identification.

To complete the WIC session, the ECR may send an End_WIC_Session request to the terminal that contains two prompt lines usually suggesting to remove the WIC card. The terminal will immediately send the

End_WIC_Session response message.

IMPORTANT The WIC Smart Card locks up after three attempts if the terminal does not have the proper security keys injected.

NOTE For details on form names, see WIC Prompts Configuration File on page 1-53.

NOTE The Start_WIC_Session and End_WIC_Session commands are the only commands allowed when there is no active WIC session. If other WIC commands (for example, Get_Prescription, Update_Prescription, Utilization_Approval, etc.) are sent out of WIC session bounds, terminal behavior is undefined.

(20)

Start_WIC_Session

The WIC session, or transaction, begins with a Start_WIC_Session ECR request. No actions can be done with the WIC smart card before this request. The WIC session cannot be initiated by the terminal before it receives a Start_WIC_Session request. The WIC session is completed when the End_WIC_Session request is

processed. If the WIC card is removed from the reader, the WIC session is interrupted. Card data is not damaged if the WIC card session is interrupted.

The terminal’s Start_WIC_Session response message contains action code, general card information, and food prescription access information.

If the terminal’s Start_WIC_Session response message has action code 104, that means that the terminal does not have its required security keys with indexes 2, 3, 5, and 6 or that the keys are invalid. Three attempts to use the terminal without the required security keys cause permanent card lock.

All dates in WIC messages, except the Card Reference Date in the Start_WIC_Session response message, are four-digit numbers and represent offset days from January 1, 2000.

The WIC smart card can have up to four WIC food prescription lists (usually three lists) for different periods of time. A Start_WIC_Session response message contains start and end dates for each of these periods. Zero dates (0000) mean that date is not set or that the period does not exist.

PIN Verification

To allow access to prescription information, the WIC card requires the correct PIN to be entered. The WIC card verifies the PIN in off-line mode. This means that no PIN information, not even encrypted PIN information, will be transferred from the terminal to the ECR.

PIN verification starts with a Get_WIC_PIN request from the ECR to the terminal. The terminal then displays the form specified in the request or the default screen, when the “Form name” is omitted, and prompts the user to enter the PIN. The PINFRM screen should contain the global prompt control (@G1, @G2) to properly display WIC prompts to the user.

See Get_WIC_Pin on page 1-15 for more information on the Get_WIC_PIN message format. You can set the maximum number of PIN entry retries from 0 to 9.0. A 9.0 entry means an unlimited number of attempts are allowed.

If a wrong PIN was entered, the terminal decrements this counter and checks. If the counter is not zero, the terminal clears the PIN entry field on the screen and prompts the user to re-enter the PIN. Otherwise, a Get_WIC_PIN response is sent to the ECR with an Action Code of 106.

The WIC card also has an internal counter of PIN retries permitted. (The default number of PIN retries is 7.) If this internal counter is exceeded, the card will be permanently locked. This counter automatically resets to zero when a correct PIN is entered. The terminal checks the internal counter value when it processes the

Start_WIC_Session message. Action Code 135 is returned if the counter is exceeded.

If the user hits the Cancel button (Return Key=”Cancel”) or the Clear button (Return Key=”Clear”) when the PIN entry field is empty on the PIN entry screen, the Get_WIC_PIN response will contain action Code 389 (“PIN Entry Cancelled by user”).

(21)

Utilization Approval

WIC specifications state that the participant should be prompted to approve the utilization of benefits before they are decremented from the prescription area on the card. A Utilization_Approval (or ‘K’) message should be used to request the user to approve the transaction before the request to Update_Prescription.

If it is required to display changes introduced by the transaction, the ECR can send ‘M’ messages to update the pole display lines prior to a Utilization_Approval message.

Prescription Update Processing

When the PIN is successfully validated, the WIC smart card is ready to access prescription information.

Get_Prescription

A Get_Prescription request contains a date that determines which one of the card prescriptions has to be sent to the ECR. If no appropriate prescription is found, a response message with Action Code 306 (Prescription not found) will be received. The response to the Get_Prescription request returns an action code and a block of prescription data.

The prescription data length is 438 characters. A block of prescription data consists of a header, a list of items, and a tail.

The header (22 characters) includes:

• Prescription start date – 4 hex characters (offset days from January 1, 2000) • Prescription end date – 4 hex characters (offset days from January 1, 2000) • Card issuer site id – 6 digits

• Issued date – 4 hex characters (offset days from January 1, 2000) • Issued time – 4 digits (hhmm)

The list of items (400 characters) can contain information about up to 40 items. Information about each item takes 10 characters:

• Item code – 5 digits • Item count – 5 digits

The item count shows the number of available items. The item count fields are the only prescription fields that can be changed (only decreased). The unused area is filled by zeros.

The tail contains 16 characters.

NOTE The form specified in the “Form name” parameter of the Utilization_Approval message should contain pole display lines if you plan to use ‘M’ messages.

(22)

Update_Prescription

After the Get_Prescription response message is received, the ECR can send an Update_Prescription request to update the content of the prescription. If it is required to approve the utilization of the benefits, data received in the Get_Prescription response message can be used to form the Utilization_Approval request and, based on the response (approved or disapproved), issue the Update_Prescription request.

This Update_Prescription request must contain a block of prescription data that must have exactly the same information except that the item counters have to be replaced with the number of corresponding items that are given out and have to be subtracted from the counters. This means, if the counters are replaced by zeros, the prescription will remain the same. If an Update_Prescription request contains exactly the same block of prescription data as received in a Get_Prescription response message, all counters will become zero. The Update_Prescription response message from the terminal contains:

• Action Code (A successful action code is 000.) • SRS32 (A 8-character hex check sum.)

• Card transaction count (This count increases after processing each Update_Prescription request.) • Transaction signature (This 8-character hex code identifies the transaction.)

• Block of Prescription data (This block is exactly the same as sent by an Update_Prescription request.)

End_WIC_Session

To complete the WIC session, the ECR sends an End_WIC_Session request to the terminal that contains two prompt lines usually suggesting to remove the WIC card. The terminal immediately sends an

End_WIC_Session response message.

If the WIC card is removed without receiving an End_WIC_Session request, the terminal will complete the WIC session and send a Smart_Card_Removed request to the ECR.

WIC Update Prescription Operation Flow

This section describes the operations performed by the Symbol terminal when it receives the WIC Update_Prescription message.

The following preconditions apply:

• The Start_WIC_Session message is successfully processed. • The Get_WIC_PIN message is successfully processed.

• The Get_Prescription message is successfully processed. The current prescription has been loaded into

the memory by this message.

• Optional – The Utilization_Approval message response is received. The current prescription data can be

used to fill pole display lines (use ‘M’ messages allowed in FPE application mode) available on the form specified in the “Form name” parameter of the Utilization_Approval message.

• The Update_Prescription message is received from the ECR.

When processing the Update_Prescription message, the Symbol terminal performs the following operations:

1. Extracts the redeemed items quantities from the received Update_Prescription message.

(23)

a. Checks that the utilization amount does not exceed the prescription amount. If this check fails, it notifies the ECR with Action Code “116” and stops further processing.

b. Reduces the food prescription available units by the amount indicated in the Update_Prescription message and saves the updated prescription in memory.

c. Appends the updated category and amount to the CRC32 Input Utilization String.

3. Sorts the CRC32 Input Utilization String by WIC Item Codes and calculates CRC32.

4. Reads the transaction counter (CTC) from the card.

5. Increments the read transaction counter in memory.

6. Signs the transaction. CRC32 and transaction counter values are presented to the card, which returns an encrypted string uniquely representing the transaction.

7. Writes the temporary food prescription to the card.

8. Sends the Update_Prescription response to ECR. The response contains Action Code, CRC32, transaction counter, transaction signature, and Prescription Data.

9. Writes the updated CTC to the card.

10. Writes the current food prescription to the card.

11. Erases the temporary food prescription.

WIC ICC Status Change Reason Code Update

The PIN pad automatically updates the Status Change Reason Code on WIC ICC if one of the following events occurs:

• The maximum number of invalid PIN attempts allowed by the card has been exceeded. See Table 1-1

below for a description of code 0x12.

• The WIC card contains invalid food prescription data. See Table 1-1 below for a description of code 0x10.

Table 1-1 Status Change Reason Codes

Status Change Code (Hexadecimal) Card Failure Description Write Status Change Reason Code to Card? Meaning

0x00 Card OK N Default value. The card has not been

invalidated.

0x10 Food

Prescription Conflict

Y An error was encountered while

determining a unique current food prescription.

0x12 PIN

Presentation Failure

Y During this visit to the grocer, the participant enters one or more invalid PIN attempts such that the maximum number of PIN attempts (currently 7) allowed by the card has been exceeded.

(24)

Operation Flow

This section describes the operations performed by the Symbol payment terminal in order to update the Status Change Reason Code (SCRC) on a WIC card when the number of invalid PIN attempts have exceeded the maximum number of PIN attempts (currently seven) allowed by the card.

The following preconditions apply:

• The Start_WIC_Session message has been successfully processed. The Start_WIC_Session response

would include Action Code “300”.

• The GET_WIC_Pin message has been received.

• The user entered a wrong PIN and the WIC card has returned information that the maximum PIN entry

attempts number had been exceeded.

The terminal performs the following operations to update the Status Change Reason Code and date:

1. Read a current SCRC from the WIC card.

2. If the code read is not 0x00 (Card OK), skip Step 3 because an update is not required.

3. Write the new Status Change Reason Code value and date to the WIC ICC.

WIC Messages

Table 1-2 contains an overview of the supported interface messages sent from the ECR to the PIN Pad. Detailed specification is available in the WIC Message Details on page 1-10.

Table 1-2 Messages from ECR to PIN Pad

ID Message Type Description Possible Response

‘[‘ Start_WIC_Session Request Starts the SmartWIC session and prompts the customer to insert their card.

Start_WIC_Session Response

‘<‘ Get_WIC_Pin Request Asks the customer to enter their PIN and validates the PIN against security information stored on the card.

Get_WIC_Pin Response

‘{‘ Get_Prescription Request Gets the WIC prescription from the card to tell POS what items are allowed for WIC.

(25)

Table 1-3 contains an overview of the supported interface messages sent from the PIN Pad to the ECR. Detailed specification is available in the WIC Message Details on page 1-10.

‘}’ Update_Prescription Request

Writes the updated prescription information back to the card. This is the data received from the Get_Prescription command modified to decrement the items purchased with the card.

Note: This request must be sent after the

Get_Prescription request.

Update_Prescription Response

‘\’ End_WIC_Session Request Ends the WIC session and prompts the customer to remove the smart card.

End_WIC_Session Response

‘]’ Lock_WIC_ICC Request Locks the card. Used if the card appears on the ‘hot list’.

Note: Hot list tracking is on ECR responsibility.

Lock_WIC_ICC Response

‘~’ Remove _WIC_ICC

Request

Asks the user to remove WIC EBT card

Remove_WIC_ICC Response

‘k’ Utilization_Approval Request

Should be used to ask the user to approve utilization of benefits before they are decremented from the prescription area on the card.

Utilization_Approval Response

‘q’ Update_WIC_Status

Request

Sets the status code of the WIC card.

Update_WIC_Status Response

Table 1-3 Messages from PIN Pad to ECR

ID Message Type Description

‘[‘ Start_WIC_Session Response Sent by the PIN Pad as a response to a Start_WIC_Session request command. ‘<‘ Get_WIC_Pin Response Sent by the PIN Pad as a response to a

Get_WIC_Pin request command. ‘{‘ Get_Prescription Response Sent by the PIN Pad as a response to a

Get_Prescription request command.

Table 1-2 Messages from ECR to PIN Pad (Continued)

(26)

WIC Message Details

The following section describes WIC interface commands and codes for the entire WIC session process. Commands are broken into tables for Requests (request messages) from the ECR and Responses (response messages) from the Terminal. There are also examples of message codes and comments on specific usage conditions.

Start_WIC_Session

This request should be sent by the ECR to the PIN Pad in order to initialize the WIC session. The WIC session should be initialized prior to any operations with the WIC EBT card.

When the PIN Pad receives this message, it beeps and displays text specified in “Prompt text line one” and “Prompt text line two” on the form specified in the “Form Name” field. If the “Form Name” field is omitted from the request, the WICSTFRM form is used when it is available on the terminal. If the WICSTFRM form does not exist, the SWIPEFRM form will be used.

‘}’ Update_Prescription Response Sent by the PIN Pad as a response to an Update_Prescription request command. ‘\’ End_WIC_Session Response Sent by the PIN Pad as a response to an

End_WIC_Session request command. ‘]’ Lock_WIC_ICC Response Sent by the PIN Pad as a response to a

Lock_WIC_ICC request command. ‘~’ Remove_WIC_ICC Response Sent by the PIN Pad as a response to a

Remove_WIC_ICC request command. ‘?’ Smart_Card_Removed This message is sent when WIC session is

started and WIC program card is removed from the PIN Pad.

‘k’ Utilization_Approval Response Sent by the PIN Pad as a response to a Utilization_Approval request command. ‘q’ Update_WIC_Status Response Sent by the PIN Pad as a response to an

Update_WIC_Status request command.

Table 1-3 Messages from PIN Pad to ECR (Continued)

ID Message Type Description

NOTE In all WIC messages, the “Prompt text line one” field contents will be displayed in global prompt @G1 and “Prompt text line two” in @G2, respectively. If these global prompts are not available on the screens, information will be invisible. By default, all internally generated messages use @G1 and/or @G2. See

(27)

Request (ASYNC)

Table 1-4 Start WIC Session - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘[‘ Start_WIC_Session 1 0x5B

Data Prompt text line one varies ASCII

<FS> Field separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field separator 1 0x1C

Data Timeout card insert (in seconds) 2 ASCII Numeric

<FS> Field separator 1 0x1C

Data Current date 1-5 ASCII numeric, offset days

from January 1, 2000

<FS> Field separator 1 0x1C

Data Form name 1-11 ASCII character name of

form that will be displayed

<ETX> End of text 1 0x03

(28)

Response (ASYNC)

Table 1-5 Start WIC Session - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘[‘ Start_WIC_Session 1 0x5B

Data Action Code 3 ASCII Numeric

Data Card Reference Date 8 ASCII

YYYYMMDD

Note: In the case of bad action code, this field contains binary zeros.

Data PAN 20 ASCII Numeric

Data Issuer ID 4 ASCII Numeric

Data Authorization Date 4 ASCII Numeric

Data Status change date 4 ASCII Numeric

Data Status change reason 2 ASCII Numeric

Data Hotlist lock date 4 ASCII Numeric

Data Hotlist lock byte 2 ASCII Numeric

Data Major data version 4 ASCII Numeric

Data Minor data version 4 ASCII Numeric

Data Start date for WICFP 1 4 ASCII Numeric

Data End date for WICFP 1 4 ASCII Numeric

Data Start date for WICFP 2 4 ASCII Numeric

Data End date for WICFP 2 4 ASCII Numeric

Data Start date for WICFP 3 4 ASCII Numeric

Data End date for WICFP 3 4 ASCII Numeric

Data Start date for WICFP 4 4 ASCII Numeric

Data End date for WICFP 4 4 ASCII Numeric

<FS> Field separator 1 0x1C

Data ATR 0-64 ASCII Hex

<FS> Field separator 1 0x1C

Data Issuer Reference Number

and check byte

(29)

Action Codes

Data Maximum PIN

presentation number

2 ASCII Numeric

Data Incorrect PIN

presentation number

2 ASCII Numeric

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-6 Start WIC Session - Action Codes

Action

Code Status Code Description

104 – Secret Code Presentation Failure

(Card locked)

122 – Cyptographic Authentication Failure

(Bad keys or security violation)

130 – CSN Read Failure

131 – DFSystem Read Failure

132 – DFWIC Read Failure

133 – Invalid Data Version

135 0x12 PIN Already Blocked

136 – Card Presented is Already in Hot list

138 – Failed Data Recovery

300 – Session Started Successfully

(Data read OK)

381 – Card has not been inserted (timeout)

382 Invalid or Damaged Card

If an ICC card is inserted but does not send ATR, it is considered damaged.

383 – Invalid ATR

400 – Smart Card device is not available

Table 1-5 Start WIC Session - Response (ASYNC) (Continued)

(30)

Comments

• A WIC session should be initialized with the Start_WIC_Session ECR request prior to any operations

with the WIC EBT card.

When the Start_WIC_Session request is received from the ECR and the smart card is inserted into the terminal card reader, the card is validated (it is determined whether the card is a valid WIC card) and cryptographically authenticated (it is determined whether the terminal has the required security keys). When these checks are complete, the terminal sends a Start_WIC_Session response to the ECR.

• A WIC session is interrupted when:

-

The WIC card is removed from the reader. (The ECR is notified about session interruption with the Smart_Card_Removed message.) Session interruption does not cause any damage of the card data.

-

Any command, other than the WIC interface commands, are sent to the PIN Pad. Any previously started WIC session is automatically closed without ECR notification.

• The terminal’s Start_WIC_Session response message contains action code, general card information,

and food prescription periods.

• If the Start_WIC_Session response message contains “104” in the action code field, this means that the

terminal does not have security keys with indexes 2, 3, 5, and 6 installed onto the PIN Pad. Three attempts to use the terminal without the required security keys cause permanent card lock.

• A WIC smart card can have up to 4 WIC food prescription records (usually 3) for different periods of time.

Start_WIC_Session response messages contain start and end dates for each of these periods. All dates in WIC messages, except the Card Reference Date in a Start_WIC_Session response message, are four-digit numbers and represent offset days from January 1, 2000.

Usage Scenario

Send (ECR to PIN Pad)

<STX><Start_WIC_Session><Prompt text line one><FS><Prompt text line two> <FS><Timeout on card insert><FS><Current Date>[<FS><Form Name>]<ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX><Start_WIC_Session><ActionCode>< PAN >...<ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

NOTE There is no way to initialize a WIC session on the PIN Pad before it receives the Start_WIC_Session ECR request.

NOTE Zero dates (0000) mean that the date is not set or the period does not exist.

(31)

Error Response

<STX><Start_WIC_Session><ActionCode>...<ETX><LRC> Time out error

Example

Request (ECR to PIN Pad)

ECR sends a request:

<STX>[Please Insert<FS>Your WIC Card<FS>60<FS>1940<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:

<STX>[30000000000050771710008001870291313144000000000000000010001143014601461149114921520 00000000<FS>3B2A008065A20102013172D6<FS>010200160701<ETX><LRC>

Error Response (PIN Pad to ECR)

ECR receives a time out error response:

<STX>[38100000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000<FS><FS>0000000000<ETX><LRC> Time out error

Get_WIC_Pin

This command is used to validate the WIC smart card user PIN. Operations on prescription data, such as Get_Prescription and Update_Prescription, are allowed only after a successful cardholder’s authentication.

Request (ASYNC)

Table 1-7 Get WIC Pin - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘<‘ Get_WIC_PIN 1 0x3C

Data Prompt text line one varies ASCII

<FS> Field separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field separator 1 0x1C

Data PIN entry timeout (in seconds)

2 ASCII Numeric

Data Max PIN entry retries 1 ASCII Numeric

(32)

Response (ASYNC)

Action Codes

Data Form name 1-11 ASCII character

name of the form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-8 Get WIC Pin - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘<‘ Get_WIC_PIN 1 0x3C

Data Action Code 3 ASCII Numeric

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-9 Get WIC Pin - Action Codes

Action Code

Status

Code Description

106 0x12 Maximum number of PIN attempts

permitted by the WIC card is exceeded

– Maximum number of PIN attempts

specified in the “Max PIN entry retries” field is exceeded

300 – PIN has been accepted

385 – Card removed

This Action Code will be sent as a Smart_Card_Removed message.

386 – PIN entry timeout

389 – PIN entry cancelled by user

Fired when user hits the Cancel button (Return Key=”Cancel”) or Clear button (Return Key=”Clear”) when PIN entry field is empty.

Table 1-7 Get WIC Pin - Request (ASYNC) (Continued)

(33)

Comments

• If the “PIN entry timeout” field is set to 00, then waiting for a PIN entry is unlimited.

• Setting the “Max PIN entry retries” field to 0 means that no limitations on the PIN entry are posed from

the terminal application. However, the WIC card has an internal counter of PIN entries (by default the WIC card permits seven retries) that will remain in effect.

• The form specified in the “Form Name” field will be used for PIN entry. If the “Form Name” field is omitted

from the request, then the PINFRM form is used.

Usage Scenario

Send (ECR to PIN Pad)

<STX><Get_WIC_PIN><Prompt text line one><FS><Prompt text line two><FS><PIN Entry Timeout><Max PIN entry retries>[<FS><Form Name>]<ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< Get_WIC_PIN ><Action Code><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Example

Request (ECR to PIN Pad)

<STX><Please Enter<FS>Your WIC PIN<FS>603<FS>PINFRM<ETX><LRC>

Response (PIN Pad to ECR)

<STX><300<ETX><LRC>

Error Response (PIN Pad to ECR)

(34)

Get_Prescription

This command reads the WIC prescription information stored on the WIC EBT card, tells the POS terminal what items are allowed for WIC, and sends a Response to the ECR that contains action code regarding the prescription data available for the date specified in the request.

Request (ASYNC)

Response (ASYNC)

NOTE The Get_Prescription command is allowed only if the cardholder’s authentication (PIN Verification) process is successful.

Start_WIC_Session and End_WIC_Session commands are the only commands allowed when there is no active WIC session. If other WIC commands (e.g. Get_Prescription, Update_Prescription, Utilization_Approval, etc.) are sent out of WIC session bounds, then terminal behavior is undefined.

Table 1-10 Get Prescription - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘{‘ Get_Prescription 1 0x7B

Data Prompt text line one varies ASCII

<FS> Field Separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field Separator 1 0x1C

Data Date 4 ASCII Numeric

Data Transaction Number 4 ASCII Numeric

<FS> Field separator 1 0x1C

Data Form name 1-11 ASCII character name of

the form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-11 Get Prescription - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘{‘ Get_Prescription 1 0x7B

(35)

Action Codes

Comments

• When the PIN pad receives a Get_Prescription message from the ECR, it displays the text specified in

“Prompt text line one” and “Prompt text line two” on the form specified in the “Form Name” field. It then attempts to read the prescription for the date given in the “Date” field from the WIC card and sends back a response with the “WIC Food Prescription” to the ECR.

• If the “Form Name” field is omitted from the request, a WICRXFRM form is used when it is available on

the terminal. If a WICRXFRM form does not exist, a WAITFRM form will be used.

Usage Scenario

Send (ECR to PIN Pad)

<STX>< Get_Prescription ><Prompt text line one><FS><Prompt text line two><FS> <Date><Transaction Number><Form Name><ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< Get_Prescription ><Action Code>< WIC Food Prescription ><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Data WIC Food Prescription 438 ASCII

<ETX> End of Text 1 0x03

<LRC> Check character 1 Calculated

Table 1-12 Get Prescription - Action Codes

Action

Code Status Code Description

104 – Secret Code Presentation Failure

(Card locked)

134 0x10 Food Prescription Conflict

300 – Success

306 – Prescription not found

385 – Card removed

This Action Code will be sent as a Smart_Card_Removed message.

Table 1-11 Get Prescription - Response (ASYNC) (Continued)

(36)

Examples

Request (ECR to PIN Pad)

ECR sends a request:

<STX>{Please wait<FS>for cashier<FS>14610001<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:

<STX>{300<438 bytes of data><ETX><LRC>

Error Response (PIN Pad to ECR)

ECR receives Prescription not found error response:

<STX>{306<438 bytes of data (all zeros)><ETX><LRC> Prescription not found

Update_Prescription

This command writes the updated prescription information back to the card. It uses prescription data received from the Get_Prescription command modified to decrement the items purchased with the card.

Request (ASYNC)

Table 1-13 Update Prescription - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘}‘ Update_Prescription 1 0x7D

Data Prompt text line one varies ASCII

<FS> Field Separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field Separator 1 0x1C

Data WIC Food Prescription 438 ASCII

<FS> Field separator 1 0x1C

Data Response flag 1 ASCII number

‘N’ or ‘Y’

See Comments on page 1-22.

(37)

Response (ASYNC)

Action Codes

Data Form name 1-11 ASCII character name of

form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-14 Update Prescription - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘}‘ Update_Prescription 1 0x7D

Data Action Code 3 ASCII Numeric

Data CRC32 8 HEX

Data Card Transaction Count 8 HEX

Data Transaction Signature 8 HEX

Data Prescription Data 438 ASCII

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-15 Update Prescription - Action Codes

Action

Code Description

000 Prescription updated successfully 104 Secret Code Presentation Failure

(Card locked)

116 Update was not successful (Quota exceeded)

382 Other errors

385 Card removed

This Action Code will be sent as a Smart_Card_Removed message.

Table 1-13 Update Prescription - Request (ASYNC) (Continued)

(38)

Comments

• The “WIC Food Prescription” parameter sent in the request must have the same format as the “WIC

Food Prescription” data received in the Get_Prescription response. Please see Section 5.4 of the ICD WIC EBT Grocer System for more details. The food prescription items (e.g. ITEM_1, etc.) must include the following values in the ‘available units’ field:

-

The value that will be subtracted from the current item value to decrease the remainder.

-

Zeros if the current item is not changed.

• An Update_Prescription response will be sent in the following manner:

-

If the “Response flag” field is set to ‘N’ or is omitted, the response is sent immediately after the temporary food prescription area has been updated and before the permanent food prescription area has been updated.

-

If the “Response flag” field is set to ‘Y’, the first response is sent after the temporary food prescription area has been updated and the second response is set after the permanent food prescription area has been updated.

• If the “Form name” field is omitted from the request, a WICRXFRM form is used when it is available on

the terminal. If a WICRXFRM form does not exist, a WAITFRM form will be used.

Usage Scenario

Send (ECR to PIN Pad)

<STX>< Update_Prescription ><Prompts><><WIC Food Prescription><ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< Update_Prescription ><Action Code><Transaction Signature><CRC32> <Card Transaction Count><WIC Food Prescription><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Examples

Request (ECR to PIN Pad)

ECR sends a request:

<STX>}Please wait<FS><FS><438 bytes of data><ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:
(39)

End_WIC_Session

This command ends the WIC session and prompts the customer to remove the smart card. For details on the WIC session, see Comments on page 1-14.

Request (ASYNC)

Response (ASYNC)

Action Code

Table 1-16 End WIC Session- Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘\‘ End_WIC_Session 1 0x5C

Data Prompt text line one varies ASCII

<FS> Field separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field separator 1 0x1C

Data Form name 1-11 ASCII character

name of the form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-17 End WIC Session- Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘\‘ End_WIC_Session 1 0x5C

Data Action Code 3 ASCII Numeric

<ETX> End of Text 1 0x03

<LRC> Check character 1 Calculated

Table 1-18 End WIC Session- Action Code

Action

Code Description

(40)

Comments

• Upon receipt of the “End_WIC_Session” message and when the WIC card is in the reader, the terminal

beeps shortly and displays text specified in “Prompt text line one” and “Prompt text line two” on the form specified in the “Form Name” field and then immediately sends an End_WIC_Session response.

• If the “Form name” field is omitted from the request, the WICENDFRM form is used when it is available

on the terminal. If the WICENDFRM form does not exist, the a WAITFRM form will be used.

Usage Scenario

Send (ECR to PIN Pad)

<STX>< End_WIC_Session ><Prompt text line one><FS><Prompt text line two> [<FS><Form Name>]<ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< End_WIC_Session ><Action Code><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Examples

Request (ECR to PIN Pad)

ECR sends a request:

<STX>\Transaction completed<FS>Thank You<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:

<STX>\300<ETX><LRC>

Lock_WIC_ICC

This message is used to lock the ICC card by the host application or ECR, which is distinct from card locking that is automatically performed by the card.

NOTE The format “[<Field name>]” means that the specified field is optional and can be omitted from the request.

NOTE The WIC smart card locks up after three attempts if the terminal does not have the proper security keys injected. For details on security keys, see Required Security Keys on page 1-3.

(41)

Request (ASYNC)

Response (ASYNC)

Action Code

Table 1-19 Lock WIC ICC- Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘]‘ Lock_WIC_ICC 1 0x5D

Data Prompt text line one varies ASCII

<FS> Field Separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field Separator 1 0x1C

Data Date 4 ASCII Numeric

<FS> Field separator 1 0x1C

Data Form name 1-11 ASCII character

name of the form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-20 Lock WIC ICC - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘]‘ Lock_WIC_ICC 1 0x5D

Data Action Code 3 ASCII Numeric

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-21 Lock WIC ICC - Action Code

Action

Code Description

(42)

Comments

• When the terminal receives the Lock_WIC_ICC message from the ECR, it displays the text specified in

“Prompt text line one” and “Prompt text line two” on the form specified in the “Form Name” field and performs a permanent lock of the WIC card. Once the card is permanently locked, the card cannot be unlocked.

• If the “Form Name” field is omitted from the request, a WICLOCKFRM form is used when it is available

on the terminal. If a WICLOCKFRM form does not exist, the a WAITFRM form will be used.

Usage Scenario

Send (ECR to PIN Pad)

<STX>< Lock_WIC_ICC ><Prompt text line one><FS><Prompt text line two> <FS><Date>[<FS><Form Name>]<ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< Lock_WIC_ICC ><Action Code><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Examples

Request (ECR to PIN Pad)

ECR sends a request:

<STX>]Your WIC card<FS>will be locked<FS>1857<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:
(43)

Remove_WIC_ICC

This command is used to request the user to remove the WIC smart card.

Request (ASYNC)

Response (ASYNC)

NOTE The Remove_WIC_ICC command should be sent within the WIC session, otherwise behavior is undefined.

Table 1-22 Remove WIC ICC - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘~‘ Remove_WIC_ICC 1 0x7E

Data Prompt text line one varies ASCII

<FS> Field Separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field Separator 1 0x1C

Data ICC removal timeout 1-4 Timeout value in seconds

‘0’ - respond immediately ‘9999’ - infinite waiting

<FS> Field separator 1 0x1C

Data Beeper flag 1 ’N’- disable beeper

’Y’- enable beeper

<FS> Field separator 1 0x1C

Data Form name 1-11 ASCII character name of the

form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-23 Response WIC ICC - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘~‘ Remove_WIC_ICC 1 0x7E

Data Action Code 3 ASCII Numeric

<ETX> End of text 1 0x03

(44)

Action Codes

Comments

• When the “Remove_WIC_ICC” message is received, the terminal displays the text specified in “Prompt

text line one” and “Prompt text line two” on the form specified in the “Form Name” field, beeps, and waits until the WIC card is removed.

• If the “Form name” field is omitted from the request, then the WICREMFRM form is used when it is

available on the terminal. If a WICREMFRM form does not exist, a WAITFRM form is used.

Usage Scenario

Send (ECR to PIN Pad)

<STX>< Remove_WIC_ICC ><Prompt text line one><FS><Prompt text line two> <FS><ICC removal timeout><FS>< Beeper flag >[<FS><Form Name>]<ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< Remove_WIC_ICC ><Action Code><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Example

~ Please Remove\Your Card\9999\Y

Request (ECR to PIN Pad)

Asks user to remove the WIC smart card. The command below specifies that the terminal should beep until the card is removed and that waiting for card removal is infinite (not limited):

<STX>~ Please Remove <FS> Your Card <FS>9999<FS>Y<ETX><LRC>

Table 1-24 Response WIC ICC - Action Codes

Action

Code Description

300 Success. WIC card is removed.

387 Timeout exceeded, but the WIC card is still in the reader.

390 WIC session is not started.

NOTE When calling the Remove_WIC_ICC command from either OPOS Demo or JavaPOS Demo, use the following string as the Direct IO parameter (where ‘\’ - <FS> = ‘0x1C’):

(45)

Response (PIN Pad to ECR)

ECR receives a response:

<STX> ~300<ETX><LRC>

Request (ECR to PIN Pad)

<STX>~ Please Remove <FS> Your Card <FS>0000<FS>Y<FS>WAITFRM<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:

<STX>~300<ETX><LRC>

Smart_Card_Removed

This message is sent to the ECR (Open EPS) if a WIC session was active, but the WIC card was removed from the terminal reader. This is an unsolicited request from the terminal to the ECR.

Request (ASYNC)

Action Code

Example

Request (PIN Pad to ECR)

ECR receives message:

<STX>?385<ETX><LRC>

Table 1-25 Smart Card Removed - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘?‘ Smart_Card_Removed 1 0x3F

Data Action Code 3 “385”

<ETX> End of Text 1 0x03

<LRC> Check character 1 Calculated

Table 1-26 Smart Card Removed - Action Code

Action

Code Description

(46)

Utilization_Approval

This message should be used to ask the user to approve the utilization of benefits. The Utilization_Approval response contains the code of the button pressed by the user or a “388” code if the time allowed for user input was exceeded.

Request (ASYNC)

Response (ASYNC)

Table 1-27 Utilization Approval - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘k‘ Utilization_Approval 1 0x6B

Data Prompt text line one varies ASCII

<FS> Field Separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field Separator 1 0x1C

Data Approval timeout (in seconds)

2 ASCII Numeric

<FS> Field separator 1 0x1C

Data Form name 1-11 ASCII character

name of the form that will be displayed

<ETX> End of text 1 0x03

<LRC> Check character 1 Calculated

Table 1-28 Utilization Approval - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘k‘ Utilization_Approval 1 0x6B

Data Action Code 3 ASCII Numeric

Data Pressed button code 3 ASCII Numeric

<ETX> End of text 1 0x03

(47)

Action Codes

Comments

• When a “Utilization_Approval” message is received, the terminal displays the screen specified in the

“Form name” field and lets the user approve or disapprove prescription utilization by pressing a button (e.g. Button Return Key “Done” or “Cancel”).

• If the “Form Name” field is omitted from the request, a WICINPFRM form is used when it is available on

the terminal. If a WICINPFRM form does not exist, a WAITFRM form will be used.

Usage Scenario

Send (ECR to PIN Pad)

<STX>< Utilization_Approval ><Prompt text line one><FS><Prompt text line two> <FS>< Approval timeout >[<FS><Form Name>]<ETX><LRC>

Receive (PIN Pad to ECR)

<ACK> (or <NAK>)

Receive (PIN Pad to ECR)

<STX>< Utilization_Approval ><Action Code><Pressed button code><ETX><LRC>

Send (ECR to PIN Pad)

<ACK (or <NAK>)

Example

k Please Approve\Benefit Utilization\10\WICINPFRM

Request (ECR to PIN Pad)

<STX>k Please Approve <FS> Benefit Utilization <FS>10<ETX><LRC>

Table 1-29 Utilization Approval - Action Codes

Action

Code Description

300 Success. Button pressed.

388 Timeout waiting for approval has been exceeded.

NOTE You can access and modify the Return Key, a button control property, from your FormBuilder project.

NOTE When calling the Utilization_Approval command from either OPOS Demo or JavaPOS Demo, use the following string as the Direct IO parameter (where ‘\’ - <FS> = ‘0x1C’):

(48)

Response (PIN Pad to ECR)

ECR receives the following response when the button with the “Done” Return Key is pressed on the screen:

<STX>k300Q<ETX><LRC>

Request (ECR to PIN Pad)

<STX>k Please Approve <FS> Benefit Utilization <FS>10<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives the following response when the button with the “Cancel” Return Key is pressed on the screen:

<STX>k300Q<ETX><LRC>

Request (ECR to PIN Pad)

Waiting for approval timeout expired:

<STX>k Please Approve <FS> Benefit Utilization <FS>10<FS>WICINPFRM<ETX><LRC>

Response (PIN Pad to ECR)

ECR receives a response:

<STX>k388<ETX><LRC>

Update_WIC_Status

This command set the Status Change Reason Code (status code) of the WIC card.

Request (ASYNC)

Table 1-30 Update WIC Status - Request (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘q‘ WIC_Status_Code 1 0x71

Data Prompt text line one varies ASCII

<FS> Field separator 1 0x1C

Data Prompt text line two varies ASCII

<FS> Field separator 1 0x1C

Data Status Change Date 4 ASCII Numeric

Data Status Change Reason 2 ASCII Hex

<ETX> End of text 1 0x03

(49)

Response (ASYNC)

Action Code

Comments

• It is possible to change the status code of the card from 0x00 (Card Ok) to any other code. • Change of the card status code from a code other than 0x00 is not supported.

For example, if the ECR issues an Update_WIC_Status request with Status Change Reason Code 0x10 for the card with status code 0x12 “PIN Presentation Failure” (different than 0x00 “Card Ok”), the PIN Pad does not change the status code of the card and sends back an “Update_WIC_Status” response with action code “137”.

Table 1-31 Update WIC Status - Response (ASYNC)

Field Description Length Value

<STX> Start of text 1 0x02

‘q‘ WIC_Status_Code 1 0x71

Data Action Code 3 ASCII Numeric

<ETX> End of Text

References

Related documents

People and management buy-in, Agile champions and supporters of the process, were the most important factors that were used to facilitate and speed up

As provided by statute and the Attorney General's regulations, acceptance by the claimant, his agent, or legal representative, of any award, compromise, or settlement made

Despite in the pT3 gallbladder cancer group positive for hepatic- invasion, the recurrence in the cut end of the liver was most common in the group that underwent resection of

This negative prognostic impact was not observed in patients with intestinal type or well or moderately differentiated histology.. These findings have been consist- ently confirmed

The themes of the questions covered the following: a) The meanings of ‘ASEAN integration’ according to respondents; b) Reporting about ASEAN and ASEAN identity; c) Roles

The Treaty of Lisbon set the framework for a common education policy and defined the developmental strategy of the European Union, setting the focus on the Technical and

Scattered Golgi Structures Consist of Stacked Cisternae To characterize the structure of nocodazole-scattered, Golgi-derived elements and possible intermediates in their formation,

Florida, amending the text of the South Miami Comprehensive Plan, by amending the Comprehensive Plan Future Land Use Element in order to adopt a new future land use