Multiple encoders and maximising pins

I am attempting to have 3 optical encoders (https://www.sparkfun.com/products/10982)

I using a Sparkfun Fio board that has 5 interrupt pins. Encoders take 2 interrupt and I'm wondering if I can put two encoder on two interrupt pins each and for the third encoder use the final interrupt pin and a digital pin.

I have tested code that just reads the encoder on digital pins and it is not accurate at all. With the same setup I have tested the encoder with the interrupt pins and it works great.

Wondering how you would program.

Encoders take 2 interrupt

No.
Just use one interrupt per encoder, and use a normal I/O pin for the other. In the ISR simply read the other pin for the direction.

I am attempting to have 3 optical encoders (https://www.sparkfun.com/products/10982)

The data sheet linked to this product on the SparkFun website indicates that this switch requires debouncing and recommends hardware debounce with capacitors. This would indicate that the encoder is probably mechanical and not optical.

Instead of using interrupts it is better to read this encoder using polling and software debounce.

As I read the comments on the Sparkfun website, there is one detent per pulse, and four quadrature changes between detents.

You can read both A and B pins and pick up all four quadrature changes, but i doubt you will have much control between detents, and it won't matter if you increment/decrement by one or four counts.