TapIn

Guide

Barcode or QR code: what is on your membership card?

Every membership card carries its number in one of a dozen codes. The scanner does not care which, as long as it gets the same characters back. Wallets do care, because each can only draw some of them.

One-dimensional barcodes: the stripe

A stripe of thin and thick bars is a one-dimensional barcode. The number is usually printed underneath. Gym key tags are most often Code 39 (letters, digits and a few symbols, with an asterisk at each end that is not part of the number) or Code 128 (any ASCII character, denser). Retail-style cards use EAN-13 or UPC-A, which are digits only and always 13 or 12 long. Codabar shows up on older library and blood-bank cards, ITF on shipping labels, Code 93 rarely.

You cannot tell Code 39 from Code 128 by eye with any confidence. A scanner can, in a fraction of a second, which is why the TapIn builder reads the card rather than asking.

Two-dimensional codes: the square

A square of black modules with three big corner squares is a QR code. One with a bullseye in the middle is Aztec, common on train and airline tickets. A dense rectangle of small bars stacked in rows is PDF417, used on driver's licences and boarding passes. A square with a solid L-shaped border on two sides is Data Matrix, found on small parts and some newer club cards.

Two-dimensional codes can hold more than a number: a QR on a club card often carries a web address with the member id inside it. That is fine. The pass carries whatever the card carried, character for character.

What Apple Wallet draws

Apple Wallet draws exactly four formats: QR, PDF417, Aztec and Code 128. A card in any other one-dimensional code is re-encoded as Code 128 carrying the same characters. Camera scanners read Code 128 as readily as Code 39, and the check-in software receives an identical string, so the front desk sees no difference. Data Matrix cannot be re-encoded without changing what a 2D scanner would read, so an Apple pass is refused for it.

What Google Wallet draws

Google Wallet draws nearly everything natively: Code 39, Code 128, EAN-8, EAN-13, UPC-A, ITF, Codabar, QR, PDF417, Aztec and Data Matrix. Code 93 and UPC-E are re-encoded as Code 128.

Laser wands versus camera scanners

A red-line laser scanner reads reflected light off paper and struggles with a glowing screen, especially a dim one. A camera scanner, the kind that looks like a small black window, photographs the code and reads a screen fine. Most gyms replaced wands with cameras when phone apps arrived. If yours still has a wand, turn the brightness to maximum and hold the phone flat and still; if it will not read, the desk can type the number.

Make a pass

Sponsored

Good to know

Can a wallet pass hold the asterisks printed on a Code 39 tag?
They are not part of the number. The asterisks are start and stop marks the scanner strips off, so they never reach the check-in software and the pass does not need them.
My card has both a barcode and a QR code. Which do I use?
Whichever the desk scans. If you are not sure, the barcode is the safer choice for a card that predates the gym's app; the QR usually belongs to the app.