SPIRIT Realtime Message Processing

Understanding the realtime processing rules in WEM first requires a fundamental understanding of the architecture, if needed the architecture overview is available here. Currently WEM messages exist in two legacy formats. One is the format needed for Open Domain's WIC MIS System in Nevada - this method invokes message processing through the socket host.

The other is for the SPIRIT WIC MIS System used by a large number of WIC agencies throughout the United States. As others are introduced these tables may be changed. The information below is from the perspective of SPIRIT system.

Note

NOTE: For more information on WEM messages, refer to the WEM Error Code Mapping topic.

 

Document Conventions

The following conventions apply to this document.

Field Data Types

Type Description
X Denotes text fields.
9 Denotes numeric fields.
9v9 Denotes decimal numeric fields, where the v represents an implied decimal. 999v99 for example could appear in the message as 43842,but would be read as 438.42.

Annotations

Type Description
Dropped Denotes that the field is not required for communication with the MIS according to processing analysis.
Unmapped Indicates that there is no equivalent field to use when transforming the data.
Requires Mapping This field must be mapped from another field or data element*.
Pass through Fields marked as pass through require no manipulation or mapping, beyond that of the field name or format adjustment when transforming files.
Space filled Fields marked with the space filled annotation will be any nonsignificant digits, up to the entire length of the record will be filled with the empty character repeating.
Zero filled Fields marked with the zero filled annotation will be any nonsignificant digits, up to the entire length of the record will be filled with the zero digit repeating.

* When possible this mapping will be explained in the text of this documentation.

General Requirements

The following is a list of general requirements for realtime processing. The WEM shall:

Supported Message Types

Common Header

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Program ID Not Mapped 2 2 X “XX” R
Device ID WIC MIS System ID 8 18 X Assigned value for the WIC Agency server acting as host-to-host client - Pass Through R
Token Processor Dependent 32 32 X Assigned security token for the above device ID R
Tran Code Message Type 4 4 X Transaction code indicating the type of message contained within R
          '1000/1010 Account Setup Request/Response'  
          2000/2010 Benefit Request/Response  
          3000/3010 Recipient Number Request/Response  
          3100/3110 Card History Request/Response  
          3200/3210 WIC Account Balance Request/Response  
          3300/3310 Benefit Detail History Request/Response  
          3400/3410 Redemption Detail History Request/Response  
          3500/3610 Reset Bad PIN count Request/Response  
          3600/3610 Account Inquiry Request/Response  
Message Timestamp Date and Time, Transmission 16 16 X Time stamp of the message format: DateType 2 R
Return Code Function Return Code 4 4 X Success = 0000, Failure > 0000 The sending system will initialize this to zero and the EBT system will set it on response based on the application result R
Return Code-Detail Not Mapped 4 4 X Success = 0000, Failure > 0000 Internal EBT Processor error code R
Terminal ID Workstation ID 4 16 X Unique identifier of the terminal of the user making the request R
NIT WIC State Agency Id 2 8 X WIC Authority ID value as designated by FNS R
Group-ID Not Mapped 0 8 X Group ID of the user making the request O
User-ID Initiating User Id 0 8 X User ID of the user making the request - Pass Through O
Unique Message ID Unique EBT Transaction Identifier 0 30 X Unique message information generated by the message originator that can be used for matching the response to the request - Pass Through O
Version Not Mapped 2 2 X “01” - Version number of the messaging system R
Local_Agency_ID Local Agency ID   10 X WIC MIS assigned identifier which identifies a local agency within the WIC State Agency O
Clinic_ID Clinic Id   10 9 WIC MIS assigned identifier for a clinic. R

Account Setup

The ACCT_SETUP_MSG messages are used by SPIRIT for a number of purposes. In turn, the WEM, upon receiving an account setup message from SPIRIT may send one or more corresponding messages to the WIC EBT system(s) associated with the given SPIRIT client endpoint.

Generally speaking when an account setup message is received by the WEM it analyses the content of the message to attempt to determine the intent of the message. From a functional point of view, the following possibilities exist:

However, in the EBT Universal Interface, there are distinct messages for account and card operations. There are also distinct messages for add vs. update operations. In the Universal Interface, we have:

So in order to determine the intent of the message the WEM applies the following rules:

  1. Call Get Cardholder/Cards for the given household and cardholder type.

  2. If the action code is "03" then this is an account inquiry, not an update or add of any kind. This means the WEM will call *Get Cardholder/Cards" and respond with the results.

Workflow Diagram

Message Structure

The following table breaks out the message structure of the Account Setup message and how it is mapped to the Universal Interface fields:

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Action Code Not Mapped - 2 X "01” = Authorized Person Demographic Add/Update “05” = Proxy Demographic Add/Update Action codes indicate a complete overlay of the entire record. Records are added if they do not already exist based on processing rules. R
Profile Number Not Mapped - 9 X   R
Recipient Number WIC MIS Account ID - 15 X Requirement is a “W” as the last character of the Recipient number. The WIC EBT Middleware will add the “W” as the last character of the Recipient number. All at family level. R
Primary/Alternate Indicator Not Mapped - 2 X “01” = Authorized Person, “04” = Proxy (WIC) R
Cardholder Access Not Mapped - 1 X “4” = Allow WIC Account Access, “5” = Disable WIC Account Access. If cardholder access value is changed to 5, this will prevent access to WIC benefits but will not status the card. R
Phone Number Not Mapped - 10 9 Phone Number, Zero Filled R
First Name Not Mapped + - 20 X Authorized Person, or Proxy's First Name, space-filled, no special characters. R
Middle Initial Not Mapped + - 1 X Authorized Person’s or Proxy’s Middle Initial, space-filled, no special characters. R
Last Name Not Mapped + - 30 X Authorized Person, or Proxy's Last Name, space-filled, no special characters. R
Optional Name Not Mapped + - 30 X Authorized Person's Name, space-filled, no special characters. R
Mail Address Line 1 Not Mapped + - 30 X Left justified, space-filled, no special characters. R
Mail Address Line 2 Not Mapped + - 30 X Left justified, space-filled, no special characters. R
City Not Mapped + - 25 X Left justified, space-filled, no special characters. R
State Not Mapped + - 2 X Left justified, space-filled, no special characters. R
Zip Not Mapped + - 9 9 Pos 1-5 = 5 digit zip, Pos 6-9 = zip qualifier or zeroes. R
Filler Not Mapped - 4 X Space Filled R
Date of Birth Not Mapped + - 8 9 DOB of Authorized Person, Zero filled if unknown. format: DateType 1 R
Language Indicator Language Code - 1 X Reserved for future use, space filled R
Reserved for WIC EBT Program Not Mapped - 25 X Space Filled, not stored O
Social Security Number Not Mapped - 9 9 Zero Filled R
NIT Not Mapped - 6 X WIC Authority ID as designated by the FNS R
Card Number Not Mapped - 19 X Card Number Issued Over the Counter, 16 digits, left justified, Space filled. Card number will only be included in transaction when WIC issues a card over the counter. For demo update transactions where no card is issued, this field is left blank. When a value other than spaces is included in this field, will run a Luhn Mod-10 check prior to transmission. O
Special Case Handling Indicator Not Mapped - 1 9 0 = Do not apply restriction: 1 = Do not allow card .replacement but allow card status change. 2 = Do not allow card replacement or card status change. R
Region Not Mapped - 5 X Undefined O
County Not Mapped - 5 X Left justified, space filled. O
Clinic Clinic Id - 5 X Left justified, space filled, WIC Clinic Number R
Account Type Type Code     X Indicates the type of household – pass through (Refer to Mappings) R
Not Mapped Address, household mailing.Address line 1     X Optional in WUMEI, not sent by WEM O
Not Mapped Address, household mailing.Address line 2     X Optional in WUMEI, not sent by WEM O
Not Mapped Address, household mailing.Address city     X Optional in WUMEI, not sent by WEM O
Not Mapped Address, household mailing.Address state     X Optional in WUMEI, not sent by WEM O
Not Mapped Address, household mailing.Address zip     X Optional in WUMEI, not sent by WEM O
Not Mapped Date of birth, head of household     X Optional in WUMEI, not sent by WEM O
Not Mapped Gender     X Optional in WUMEI, not sent by WEM O
Not Mapped (Name, head of household).Name, first     X Optional in WUMEI, not sent by WEM O
Not Mapped (Name, head of household).Name, middle initial     X Optional in WUMEI, not sent by WEM O
Not Mapped (Name, head of household).Name, last     X Optional in WUMEI, not sent by WEM O
Not Mapped (Name, head of household).Name, suffix     X Optional in WUMEI, not sent by WEM O

*+ In SPIRIT, the name, address, and date of birth are for the cardholder. In the WUMEI, the name, address, and date of birth are for the head of household. SPIRIT does not track head of household.

Benefit Transaction

SPIRIT issues and adjusts benefits maintained in the WIC EBT system using WIC_BENEFIT_REQUEST / WIC_BENEFIT_REPLY messages. These messages and the business rules correlate with the Add/Update Benefit message in the Universal Interface. There are, however, a few differences with respect to how SPIRIT voids benefits that require some additional work in the WEM.

In order to explain the differences between the SPIRIT Interface and the Universal Interface, we must first introduce some background information on how SPIRIT issues and maintains EBT benefits. With paper, SPIRIT issues a FI for each food package and each participant. With EBT, SPIRIT aggregates the food packages for a participant and issues a single “set” of EBT benefits to each participant. A “set” of EBT benefits is a collection of categories, subcategories, and quantities of food benefits with the same effective dates that are issued at the same time. When EBT benefits are issued, SPIRIT assigns a unique number to each issuance. In the SPIRIT Interface, this number is referred to as the ISSUANCE_NUMBER. In the WUMEI, this number is referred to as the Benefit issuance ID.

SPIRIT uses the ISSUANCE_NUMBER throughout the life cycle of a benefit. If a benefit is subsequently altered after issuance, then SPIRIT uses the ISSUANCE_NUMBER to instruct the WIC EBT system as to which benefit is being altered. The WIC EBT system reports current balances to SPIRIT broken down by the ISSUANCE_NUMBER. In the UPC/PLU Redemption File, the WIC EBT system also reports redemptions broken down by the ISSUANCE_NUMBER of the benefits utilized in the redemption record. This functionality is key to SPIRIT reconciliation and is core to current SPIRIT processing.

Note that in smart card processing this requires the presence of the SPIRIT WIC EBT MIDDLEWARE QUEUE (SWEM-Q) On the smart card itself, benefits are stored at the aggregate household level and any individual identity of benefits based on an issuance number is lost. SWEM-Q provides the audit trail of what has been transmitted to the card and tying it back to the ISSUANCE_NUMBER

The main difference between the SPIRIT Interface and the WUMEI occurs in how SPIRIT voids benefits from the WIC EBT system. In the WUMEI, voids are accomplished by debiting (subtracting) a quantity of available benefits from a specified benefit period. In other words, the initiating MIS explicitly instructs the WIC EBT how much benefit quantity to deduct for particular categories/subcategories in the benefit. If there is not sufficient benefits available to cover the debit, then the WIC EBT system must reject the request. In the SPIRIT interface, SPIRIT issues a request to void remaining benefits based upon a specified ISSUANCE_NUMBER without necessarily specifying the specific category, subcategory, and quantity of benefits to debit. The WIC EBT system removes whatever benefits remain for the specified ISSUANCE_NUMBER and returns the quantities of benefits removed in the response.

With some additional steps, the WEM will be able to handle the difference in processing rules and present SPIRIT with what it expects. When the WEM receives a request to void benefits the WEM will:

  1. Issue a Get Benefit Balance Request for the specific benefit to be voided.
  2. Store the benefit list returned.
  3. Issue an Add/Update Benefits Request to void the remaining benefits.
  4. Return the stored benefits.

Workflow Diagram

Message Structure

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Action Code Action Code - 2 X "01” = Authorized Person Demographic Add/Update “05” = Proxy Demographic Add/Update Action codes indicate a complete overlay of the entire record. Records are added if they do not already exist based on processing rules. R
Profile Number Not Mapped - 9 X   R
Benefit Type Not Mapped - 6 X "WIC" - Left justified, space-filled R
Recipient Number WIC MIS Account ID - 15 X Requirement is a “W” as the last character of the Recipient number. The WIC EBT Middleware will add the “W” as the last character of the Recipient number. All at family level. R
Starting Date Date, begin benefit - 8 9 Can identify prior date, current date, or future date. format: DateType 1 R
Expiration Date Date, end benefit - 8 9 Can identify prior date, current date, or future date. format: DateType 1 R
Unique Benefit Issuance Number Benefit Issuance ID - 20 X Pos 1 = Requirement is a “W” as the first character of the Unique Benefit Issuance number, Pos 2-15 = WIC Authorization Number, Left–justified and Space filled Pos 16-20 spaces only; reserved. WIC Agency must add the “W” as the first character of the Unique Benefit Issuance number. R
WIC Clinic ID Clinic ID - 5 X Numeric left justify space fill WIC Clinic number - Correlates to the clinic ID in the header R
Number of Rx Items Not Mapped - 2 X Number of food benefit items, left padded zero, maximum value of 30 R
Food Benefit Items   - 300 9 Category/Sub-category/quantity of items prescribed to participant - Right-justified Zero-filled. For an issuance (credit), the values sent in Universal Interface message are a pass-through from the WIC_BENEFIT_REQUEST message. For a void (debit), the values in the Universal Interface message are determined based upon the results of the SWEM first doing a Get Benefit Balance Request for the given ISSUANCE_NUMBER. R
          Pos 1-2 Category  
          Pos 3-5 Sub-category  
          Pos 6-10 Quantity (999v99)  
Reserved Not Mapped - 25 X Not stored, space filled O
NIT Not Mapped - 6 X WIC Authority ID value as designated by FNS R
Not Mapped Card Number - 19 X Optional in WUMEI, do not use. O
Not Mapped Reason Code -   X Optional in WUMEI, do not use. O
Not Mapped Category Long Description (repeating) -   X Optional in WUMEI, do not use. O
Not Mapped Subcategory Long Description (repeating) -   X Optional in WUMEI, do not use. O

Note, while multiple month's benefits may be added/voided for each WIC MIS account ID and/or card number SPIRIT just sends one month at a time.

Admin Messages

Recipient Number

SPIRIT uses the CARD_RECIPIENT_REQUEST and CARD_RECIPIENT_REPLY messages to get household and card information from a card number that is presented to the system. Note that the Get EBA Using Card Number function in the Universal Interface only returns the household information and does not return information about the card. However, the Get Cardholders/Cards from the Universal Interface returns everything that is need for the CARD_RECIPIENT_REPLY.

Message Structure

Request
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Card Number Card Number - 19 X WIC Card Number 16 digits left justified space filled R
Response
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number   - 15 X Requirement is a “W” as the last character of the Recipient number. All at family level. R
Current Card Number   - 19 X WIC Card Number 16 digits R
Current Card Status change date   - 8 X Reports the date the current card status changed format: DateType 1 R
Current Card Status Code   - 2 X   R
Primary /Alternate indicator   - 2 X 01 Primary, 04 Proxy R

Card History

SPIRIT uses the CARD_HISTORY_REQUEST and CARD_HISTORY_REPLY messages to get cardholder history information by cardholder type (primary or alternate). The returned data set includes information on cards held by the cardholder type as well as card status changes for each card. The request message sends the RECIPIENT_NUMBER and PRI_ALT_IND but does not send the CARD_NUMBER. In the WUMEI, there is a Get History message that requires the Card number in the request. The WUMEI is not clear on whether or not all information is returned for prior cards (if the requested card was used as a replacement)

Message Structure

Request
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number   - 15 X Requirement is a “W” as the last character of the Recipient number. R
Primary/Alternate Indicator   - 2 X “01” = Authorized Person, “04” = Proxy (WIC) R
Start Date   - 8 9 Begin search date format: DateType 1 R
End Date   - 8 9 End search date, current date, or future date. format: DateType 1 R
Continuation Bit   - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Row   - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records   - 3 X Maximum number of history records that can be sent back in the return message R
Response
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number   - 15 X Requirement is a “W” as the last character of the Recipient number. R
Start Date   - 8 9 Begin search date format: DateType 1 R
End Date   - 8 9 End search date, current date, or future date. format: DateType 1 R
Continuation Bit   - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Record   - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records   - 3 X Maximum number of history records that can be sent back in the return message R
Primary/Alternate Indicator   - 2 X “01” = Authorized Person, “04” = Proxy (WIC) R
Card Number   - 19 X WIC Card Number 16 digits left (data field may repeat) O
Card Action #1 Change Date   - 8 X Reports the date the current card action (may repeat) format: DateType 1 O
Card Action Code #1   - 4 X Data field may repeat, can contain any of the following O
          0003 Initial Create - Over the counter  
          0009 Initial Create - Using IVR  
          0100 Activation - Using IVR  
          0201 New PIN - Using IVR  
          0202 New PIN - System Generated  
          0203 New PIN - Mailer  
          0301 PIN Change - Using IVR  
          0400 Changed Status - Card Maintenance  
          0401 Changed Status - Programmatically  
          0409 Changed Status - Using IVR  
          0503 Card Replacement - Over the counter  
          0509 Card Replacement - IVR  
          9900 Card Purged - Purge program  
          9901 Card Restored  
Card Status   - 2 X Data field may repeat, can contain any of the following O
          00 - Not Issued  
          01 - Active  
          02 - Lost  
          03 - Damaged  
          04 - Stolen  

WIC Account Balance

SPIRIT retrieves benefits maintained in the WIC EBT system using WIC_ACCT_BAL_REQUEST / WIC_ACCT_BAL_REPLY messages. These messages and the business rules correlate with the Get Benefit Balance message in the Universal Interface. There are, however, a few differences with respect to how SPIRIT expects benefits to be returned that requires some changes in the SPIRIT server in order to map between the SPIRIT Interface and the WUMEI.

In the Universal Interface, an aggregate household balance is returned unless the initiating MIS explicitly requests the remaining benefits based upon a specific Unique Benefit ID (which correlates to the ISSUANCE_NUMBER in the SPIRIT Interface). SPIRIT currently expects and requires that the benefits be returned in a manner that is broken down by ISSUANCE_NUMBER. So, SPIRIT will have to be modified to retrieve the list of issuance numbers that correlate to current and pending benefits that have been sent to the WIC EBT system. Then SPIRIT will have to request the remaining benefits for each issuance number individually. SPIRIT will aggregate the results internally in the service layer before returning to the clinic application.

Message Structure

Request
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number WIC MIS Account ID - 15 X Requirement is a “W” as the last character of the Recipient number. R
Unique Benefit Issuance Number Benefit Issuance Id - 15 X Requirement is a “W” as the first character of the unique benefit issuance number. Send W + zeros for all records, send actual for specific + remainder R
Category / Subcategory Not Mapped - 5 X zeros for all records, send actual for specific + remainder R
Available Quantity Not Mapped - 5 X zeros for all records, send actual for specific + remainder R
Continuation Bit Not Mapped - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Row Not Mapped - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records Not Mapped - 3 X Maximum number of history records that can be sent back in the return message R
Not Mapped Card Number - 19 X Optional in WUMEI, do not use. O
Not Mapped Date, Start Request - - - Optional in WUMEI, do not use. O
Not Mapped Date, End Request - - - Optional in WUMEI, do not use. O
Response
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number WIC MIS Account ID - 15 X Requirement is a “W” as the last character of the Recipient number. R
Continuation Bit Not Mapped - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Row Not Mapped - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records Not Mapped - 3 X Maximum number of history records that can be sent back in the return message R
Unique Benefit Issuance Number Benefit issuance ID - 15 X Requirement is a “W” as the first character of the unique benefit issuance number. Send W + zeros for all records, send actual for specific + remainder O
Category / Subcategory Category code + Subcategory code - 5 X zeros for all records, send actual for specific + remainder O
Available Quantity Benefit quantity, available - 5 9 Items available for redemption O
Manual Auth Hold Quantity Not Mapped - 5 9 Items on hold from a manual authorization O
Active Hold Quantity Benefit quantity, active hold - 5 9 All units are placed on hold at time of purchase O
Pending Indicator Not Mapped - 1 X 0 = no, 1 = yes, ignored - this is set based on date begin benefit in the EBT system O
Not Mapped Card Number - 19 X   O
Benefit Begin Date Date, Start Request - 8 9 Used to store the first date the benefit can be used. O
Benefit End Date Date, End Request - 8 9 Used to store the last date the benefit can be used. O

Benefit Detail History / Redemption Detail History

SPIRIT currently retrieves EBT transaction history from the EBT system in order to display information on benefit activities for a household. SPIRIT currently utilizes the WIC_BEN_HIST_REQUEST and WIC_BEN_HIST_REPLY messages to retrieve this information. The reply contains information on both SPIRIT initiated issuances and voids as well as redemption information. The reply contains information on the categories, subcategories, and quantities of benefits involved in the transaction. The current interface does not include detailed information on the actual products purchased in a redemption.

In the WUMEI, there are separate messages for retrieving MIS initiated transactions and for retrieving redemption information. The SWEM will have to call both functions and merge the results for SPIRIT. The SPIRIT Interface does contain a separate function for retrieving redemption information that provides detailed information on the actual items redeemed. However, this function is not currently implemented in SPIRIT. This function will be implemented as part of Phase B so that SPIRIT can display more detailed information on redemptions.

Note that the current interface allows for the possibility of retrieving information on declined transactions. The Universal Interface only specifies the return of approved transactions.

Benefit Detail History Message Structure

Request
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number WIC MIS Account ID - 15 X Requirement is a “W” as the last character of the Recipient number. R
Start Date Date, start request - 8 9 Begin search date format: DateType 1 R
End Date Date, end request - 8 9 End search date, current date, or future date. format: DateType 1 R
Continuation Bit Not Mapped - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Record Not Mapped - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records Not Mapped - 3 X Maximum number of history records that can be sent back in the return message R
Response
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number   - 15 X Requirement is a “W” as the last character of the Recipient number. R
Start Date Date, start request - 8 9 Begin search date format: DateType 1 R
End Date Date, end request - 8 9 End search date, current date, or future date. format: DateType 1 R
Continuation Bit Not Mapped - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Record Not Mapped - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records Not Mapped - 3 X Maximum number of history records that can be sent back in the return message R

Redemption Detail History Message Structure

Request
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number   - 15 X Requirement is a “W” as the last character of the Recipient number. R
Start Date   - 8 9 Begin search date format: DateType 1 R
End Date   - 8 9 End search date, current date, or future date. format: DateType 1 R
Continuation Bit   - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Record   - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records   - 3 X Maximum number of history records that can be sent back in the return message R
Response
MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Recipient number   - 15 X Requirement is a “W” as the last character of the Recipient number. R
Start Date   - 8 9 Begin search date format: DateType 1 R
End Date   - 8 9 End search date, current date, or future date. format: DateType 1 R
Continuation Bit   - 1 X 0 = No (no additional data), 1 = Yes (more data is available) O
Next Record   - 64 X Only contains value if Continuation Bit = 1. Return data O
Max Number of records   - 3 X Maximum number of history records that can be sent back in the return message R
Transaction Code   - 3 9 Mapped value  
Transaction Log Date   - 8 9 Host transaction date. format: DateType 1 R
Transaction Log Time   - 8 9 Host transaction time. format: DateType 1 R

Reset Bad PIN Count

Currently, a SPIRIT function RESET_BAD_PIN_CNT allows a PIN to be unlocked, if it has been locked due to too many invalid PIN attempts. There is not a corresponding function in the Universal Interface for this functionality. However, in some cases the Add or Update PIN message from the Universal Interface can be used to unlock a PIN with a minor modification.

There are three required parameters for Add or Update PIN: Action code, Card number, and PIN, encrypted. The modification referenced above is to make PIN, encrypted an optional parameter. With that change the following is how the current RESET_BAD_PIN_CNT_REQUEST maps to the Add or Update PIN:

Request

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Card Number Card Number - 19 X WIC Card Number 16 digits left justified space filled R
Not Mapped Action Code - 3 X Constant Value - '005' R
Not Mapped PIN, Encrypted -   X Not Sent O

The SPIRIT Interface currently defines a RESET_BAD_PIN_CNT_RESPONSE message that includes a single field, APPROVAL_CODE. There is no corresponding field defined in the Universal Interface. However, this field is not actually used by SPIRIT. Therefore, the WEM will return 0 for the APPROVAL_CODE as indicated below:

Response

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Approval Code   - 4 X 0000 if successful R

Account Inquiry

Request

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Action Code   - 2 X “06” = Demographic Inquiry. Record is accessed by Household ID and Primary/Alternate Indicator R
Profile Number   - 9 X   O
Household ID   - 15 X Left justified space filled 8 digit number, all at household level R
Primary/Alternate Indicator   - 2 X “01” = Authorized Person, “04” = Proxy (WIC) R

Response

MIS Element WUMEI Name Min Length Max Length Type Notes R/O
Action Code   - 2 X “06” = Demographic Inquiry. Record is accessed by Household ID and Primary/Alternate Indicator R
Profile Number   - 9 X   O
Household ID   - 15 X Left justified space filled 8 digit number, all at household level R
Primary/Alternate Indicator   - 2 X “01” = Authorized Person, “04” = Proxy (WIC) R
Cardholder Access   - 1 X "4" = Allow WIC Account Access, "5" = Disable WIC Account Access - If cardholder access value is changed to 5, this will prevent access to WIC benefits but will not status the card. R
Phone Number   - 10 9 Phone Number, zero filled R
First Name   - 20 X Authorized Person's or Proxy's first name - Space filled, Special characters are permitted, list provided in notes below. R
Middle Initial   - 1 X Authorized Person's or middle initial - Space filled, Special characters are permitted, list provided in notes below. R
Last Name   - 30 X Authorized Person's or last name - Space filled, Special characters are permitted, list provided in notes below. R
Optional Name   - 30 X Last, first, middle - space filled. O
Mail Address Line 1   - 30 X Left justified, space filled, special characters permitted, see list provided in notes below. R
Mail Address Line 2   - 30 X Left justified, space filled, special characters permitted, see list provided in notes below. O
City   - 25 X Left justified, space filled, no special characters permitted. R
State   - 2 X Left justified, space filled, no special characters permitted. R
Zip   - 9 9 Position 1-5 - 5 digit zip, position 6-9 zip qualifier or zeroes. R
Date of Birth   - 8 9 Date of birth of authorized person/proxy, zero filled if unknown. DateType 1 R
Language Indicator   - 1 X Space filled, 1 = English, 3 = Spanish THIS MAY NOT BE IN USE R
NIT   - 6 X WIC Authority ID as designated by the FNS R
Card Number   - 19 X Card number issued over the counter. Card number will only be included in transaction when WIC issues a card over the counter R
Special Case Handling Indicator   - 1 9 0 = Do not apply restriction, 1 = Do not allow replacement, but allow status change, 3 = do not allow replacement or status change R
Clinic   - 5 X 3 numeric, left justify, space fill, WIC Clinic number. R
Card Status   - 2 X See codes below Requires Mapping R
          00 = Not Issued  
          01 = Active  
          02 = Lost  
          03 = Damaged  
          04 = Stolen  
          97 = Unusable  
          98 = Placeholder Card  

Special Characters supported where indicated

Name Character
Period .
Comma ,
Hyphen -
Apostrophe '
Pound #
Forward Slash /