I have the Square card reader and all it is, essentially is a tape head coupled to the microphone input on the headphone jack. It reads the binary encoded number on the magnetic strip that's on the back of a credit card and transcodes the blips into 1's and 0's, which are then decoded into the decimal equivalent. So the reader essentially "hears" the beeps or silences between beeps which represent the 0's and 1's and then based on the timing between them determines how many 0's and 1's there are. When you swipe the card through the gap and across the tape head, the signal is converted into a modulated voltage of 0's and 1's which is sent into the phone through the microphone connection. if you listened to the signal slowly, it would sound like a series of intermittent clicks, blips or beeps.
Once in the phone, the Square software converts the binary number into a decimal number with the A to D converter, which then represents the card's number, just like 11000000111001 is binary for 12345, along with any other pertinent info contained in the strip. It is ONLY the microphone connection that can accept data input in this form, whereas the Left and Right audio channels can only produce output of audio and can not accept any input of signal.
And yes, I did speak to the technicians at Square when this first came out to understand the technology and I got mine about a year ago.