From: ewl4323@acf5.NYU.EDU (Emery Lapinski)
Newsgroups: alt.hackers
Subject: Credit Card Authorization Machines
Date: 6 Apr 92 20:55:19 GMT
Distribution: usa
Organization: New York University

This post contains information pertaining to VeriFone Credit Card Authorization
machines.  I have not run across any files containing information on this
subject, but if anyone knows where I can find more information about these
little grey boxes I would appreciate e-mail/postings.

The VeriFone comes under different names. This file is from hacking a ZON Jr XL,
but I have also seen ones that look much similar under the name TRANZ.  If 
anoyone has any information on the similarities/differences of these machines
I would appreciate e-mail/postings.

These machines come with different Bank Names.  This one, has MichiganBankCard
stamped across the from in a light blue color.  If anyone has information
on the similarities/differences of the different companies, I would appreciate
e-mail/postings.

I have tried to give a rough idea of how these machines are used, along with
some of the information I have gathered.  It is by no means complete, as
the intricacies of the machine go way beyond the 2-3 page pamphlet they send
with it.  If anyone knows where, or how, to get complete manuals on these
machines, please send e-mail/postings.

If I am wasting your time, please send me e-mail (no postings) and flame
me personally (but not so as to embarrass me in public.)  If you find this
information useful, please send e-mail.



               THIS FILE IS FOR INFORMATIONAL PURPOSES ONLY.
   THIS FILE IS INTENDED FOR AUTHORIZED PERSONS IN UNDERSTANDING/OPTIMIZING
		                   THIER MACHINE.
        THE AUTHOR TAKES NO RESPONSIBILITY FOR THE ACTS OF OTHERS.

WARNING!  Please contact MichiganBankCard and all other applicible agencies
          before reading this file.



This is the basic layout the machine, and some information on how it works.

        VeriFone  ZON Jr XL 
        (Michigan Bankcard)
 
 |||||||||||||||||||||||||||||||||||
 |||||||16 CHARACTER DISPLAY||||||||
 |||||||||||||||||||||||||||||||||||

-sale--   -credit   -force-   -------
| QZ. |   | ABC |   | DEF |   |     | 
|  1  |   |  2  |   |  3  |   |CLEAR|
-------   -------   -------   -------

-------   -check-   -auth--   -------
| GHI |   | JKL |   | MNO |   |BACK-|
|  4  |   |  5  |   |  6  |   |SPACE|
-------   -------   -------   -------
           cash-            
-------   -mgmt--   balance-  -------
| PRS |   | TUV |   | WXY se  |     |
|  7  |   |  8  |   |  9  tt  |ALPHA|
-recall   -store-   ------le  -------

-------   -check-   -auth--   -------
| ,'" |   | -SP |   |     |   |FUNC |
|  *  |   |  0  |   |  #  |   |ENTER|
-------   -------   -------   -------

CLEAR:
Pressing CLEAR at any time brings the VeriFone back to the READY state.

BACKSPACE:
Used to erase previously enterd characters.

ALPHA:
Used to scroll through the letters on each key.  Pressing an 8 will display
8.  Pressing ALPHA will change this first to T, and successive presses will
change this to U, then V, then T again.

FUNC/ENTER:
Usually a blue key where all the other keys are grey.  Used to indicate
end of input when entering information, or to change the FUNCTIONS of
the keys to do alternate things.

(1)SALE:
Pressing 1(SALE) means you want to process a sale transaction.  The VeriFone
will ask for the credit card number.  The unit uses the CC number algorithm
to check this number and can display BAD CC NUMBER.  The expiration date
may be entered at this time at the end of the CC nunmber, or after pressing
ENTER it will ask for the expiration date which is of the form mmyy or myy.  
This information can be entered with the keypad or by sliding the credit card 
through the CC reader slot.
Then the amount of the transaction is entered (without a decimal point and
without rounding the cents) followed by ENTER.
The VeriFone calls in to get a 6-digit authorization number.  Usually this
is 6 numbers, but I have seen it composed of two letters followed by 4 digits
as well.  It usually begins with AP which indicates approval.
If the transaction in not approved it returns various messages depending on 
the reason.  This could be DECLINE, meaning there is not enough money left
in the account; CALL-HOLD meaning there is enough money but someone has
done an AUTHORIZATION (not a SALE) which reserves some of the accounts money
and will be released after 7-10 days if not DRAFT is recieved; or just
CALL, which usually means the card is stolen or cancelled.
This transaction is stored in the batch, if approved, and the approval number
is displayed.
Pressing CLEAR returns the unit to its READY state.

(2)CREDIT:
Pressing 2(CREDIT) is used for the processing of a CREDIT (as opposed to SALE)
draft.  Information same as above but the VeriFone does not call to get any
kind of authorization.  After all the information is enterd the unit
retunrs to the READY state.
This information is sotred in the batch with CI in place of MC, VI, etc. to
indicate a credit.

(3)FORCE:
Similar to a SALE except that the unit does not call to get an approval
number.  Used when an transaction is DENIED, or erased.  The unit does not 
call to get an approval number.  The information is stored in the batch.

(4)UNDEFINED:
Could be used for special services, like AMEX transactions or Collection
Services.

(5)CHECK:
Something to do with authorization of checks and check cashing but I'm 
unclear about this one.

(6)AUTH:
Like SALE, returns approval or decline code but is not stored in batch.
Places a HOLD on the card for the entered amount for 7-10 days.  A sales
draft can be sent in based on this, otherwise the HOLD will be removed.
Used to reserve money on the account or to check to see if the card is good.

(7)UNDEFINED:
Can be used for more special services.

(8)CASH-MGMT:
I have no idea.

(9)BALANCE & SETTLE FUNCTIONS:
At the end of day or whenever the batch is filled (about 100 transactions)
a batch number is obtained.  This is a nine digit number that is used to
reference the batch of transactions when dealing with credit corporations.
First one must BALANCE the batch.  Pressing 9 (to BALANCE) will ask for a
password (stored in location 053).  Enter this number and press ENTER.
The VeriFone will ask for the number of transactions which is simply a count
of the number of transactions followed by ENTER.  If this is correct then
it will ask for total amount, which is the total amount of all the
transactions  (the decimal point is not entered but the cents must not
be rounded so that if the total was $174.30 it would be 17430) followed by
ENTER.  If either the # of transactions of total amount is incorrect  
then the VeriFone diaplays the first entry of the batch which is the
last 5 digits of the credit card number followed by credit card type (VI, MC,
etc.) followed by the 6 digit authorization number, followed by the
amount of the transaction.  By entering digits at this time, followed by 
ENTER,the amount of the transaction can be changed.  The batch is scrolled
forward by pressing ENTER.
When the information is correctly entered, The VeriFone displays READY (or
whatever is stored in location 030.)  When the 9 is pressed again (to SETTLE)
it calls to process the batch.  It transmits its information (if any of the 
information has been changed, it sends it twice) and recieves the 9 digit 
batch number, which it displays.

(0)AUTO:
An auto-dialer of some sort.  Phone numbers can be stored in memory, and
pressing AUTO will dial it for you and tell yo to pick up the handset when
it is finished.  I'm not sure how to use it.

MEMORY FUNCTIONS:
To review the VeriFone's memory, press:
        FUNC,7
The screen will display 
        =
and will wait for you to enter three numbers or press ENTER which will start
at 000.  Pressing ENTER will increment the location displayed, ALPHA will
decrement.
To change the Verifone's memory, press:
        FUNC,8
You are asked for a password, but this is not the password stored at location
053 (this password is used for functions like getting batch numbers, clearing
the batch, changing the information in the batch, etc.)  On the two machines
I have checked this password is 166831, which I obtained to when the local
authorization phone number was changed.  It would call this number twice 
getting a "The number you have called has been changed . . ." message,
then would call the 1-800 number.

Valid Memory Locations of form ### are:
000-399, 400-412, 500-512, 600-612, 700-712, 800-812, 900-912

Loc#    Information     Meaning (?)
--------------------------------------------
000     12146808459     Phone number of some computer.
019     JXL0001         Type of machine
021     2-ART,VIDEO     Type of store
022-029 <EMPTY>         
030     READY           Message Displayed when machine is ready
053     123456          Some functions require password, this is it (?)
056,058 18002221455     More Computers
057,059 18005543363     More Computers
100     9299783         More Computers
108     SALE            Message display when 1(SALE) key is pressed
208     CREDIT          Message display when 2(CREDIT) key is pressed
#08                     Locations 108,208, . . . are messages displayed when
                                that key is pressed. Not true for 008.  Can
                                be changed to whatever you want.
311-399 <EMPTY>

Many of the other locations contain long strings of characters that are some
sort of password/id/information (up to 40 characters I think) that the
VeriFone passes when it calls in, others are empty or used to store new
information.  Chnaging these can upset the functionality of the unit.
Local numbers are called first, and if no successful connection, then the
1-800 number is called.

CLEARING THE BATCH:
Pressing
        FUNC,6(?)
followed by the password (location 053) followed by ENTER.  The VeriFone asks
"CLEAR BATCH?".  Pressing ENTER clears the BATCH, CLEAR cancels this.  To
restore the BATCH, FORCE would be used to restore this information insted of 
SALE as SALE would obtain a second transaction and approval number.

UNIT SEND & UNIT RECIEVE:
Pressing 
        FUNC,* 
or 
        FUNC,#(?) 
does UNIT SEND or UNIT RECIEVE which does some sort of UPLOAD/DOWNLOAD 
functions.  I'm not sure how this one works.
Useful if important memory locations of the VeriFone are chnaged and
upset some of the functions, then the central company can replace the
information easily.
Newsgroups: alt.hackers