3 ms·
I used to work in an arcade that migrated from coins to mag-stripe cards. Since it's scummy to be left with 0.4 points on a series of cards when games cost 1.1-
by jstarfish 3y ago
I used to work in an arcade that migrated from coins to mag-stripe cards. Since it's scummy to be left with 0.4 points on a series of cards when games cost 1.1-5.9 points per play, the POS system facilitated a transfer of points across cards.
The workflow for it was predictable-- hit transfer, insert and remove source card, insert and remove target card, confirm transfer.
I never saw the code, but surmise the logic was implemented as: inserting the first card calculated what the end balance should be post-deduction (n=c1_points; c1_points=0). Inserting the second card calculated what the end balance of that card should be post-transfer (c2_points=c2_points+n). Hitting confirm executed the transaction and updated the point balance on both cards.
Now, what happens when you insert the same card for the first and second pass? An enterprising employee thought to ask, and ran a lucrative side business selling cloned cards with thousands of dollars of points for $100 a pop. (IIRC, he got caught when one of his customers had a problem with their card and asked a legit employee for help. The high balance invited scrutiny.)