There is a shield, but it’s literally just a bunch of standardized connectors to route signals to Arduino pins. I’m not using it. I just take the cable and cut off one end then strip the wires and splice them with Dupont style jumper wires to plug them directly into the Arduino pins I want to use.
In order to use the Wiegand code I alluded to before (without modification), you have to connect the wires to the Arduino as follows:
RED = 5V from Arduino
BLACK = GND from Arduino
WHITE = DIG2 on Arduino
YELLOW = DIG3 on Arduino
I think any two INT pins (i.e. compatible with attachInterrupt) would work instead of DIG2 and DIG3 if you are using an Arduino variant with more INT pins and you make the associated changes to the code, but those are the only two on an Uno. And if you don’t care about the code matching what’s etched into the tag, then any two pins will serve using SoftwareSerial to talk to it at 9600 baud.
A few years ago, I had done some work with the ID-12 module and wrote an Arduino library for it on the IG Github here. I suspect the code would work for the ID-20 as well given they share a datasheet. If I read the datasheet correctly the ID-12 is good for 12cm and the ID-20 is good for 18cm is the fundamental difference. Whereas the Grove reader is good to about 7cm.
I would be pretty surprised if the range was not dependent on orientation because this technology (regardless of device used) is all based on magnetic coupling of the coils, which together form what amounts to a transformer (tuned to 125kHz in this case). That is generally strongly influenced by geometry. You get the best coupling performance when the magnetic field lines / flux are aligned with each other, and the worst performance when they are perpendicular to each other.