I am newbie in the field of Magnetic-Stripe cards. But if I don't have any idea about the structure of these kind of cards, I can't develop software for them also.
Searching a lot, gave me this information only :
This cards have 3 different Tracks named Track-1, Track-2 and Track-3 in their black bar. And the density of data on each Track is different from the others.
The questions that I have :
Is there any difference between Mag-Stripe card reader and writer? Or like smart cards reader, the reader do the writing also?
Does all the readers[/writers] can read from[/write on] all the three tracks by default and we choose that which track is our target on the program? or some readers [/writers] are for Track-1, some other for Track-2 and some other for Track-3? In the other word, does the device need three different head(Is it a head?) for working with different Tracks or a single head are for all the three Tracks?
Are these three Tracks both readable and writable or some are only readable for example?
Does we need fresh cards to writing data on them or we can clear an already used card and rewrite new data on its Tracks?
There is a device named Encoder in the list of devices for Mag-Stripe card. What is this Encoder for? What's the difference between Encoder and Reader or Writer?
Why the density of data and the type of data (Alphabetic or Numeric) is different for different Tracks?
Any tool, document, specification, standard, library or tutorial for getting started?