Faction shops don't account for the player's influence with that faction. Hated players get just as much chance as allied players for rare finds. Research ways to tie influence with a faction to what you retrieve from player shops.
We can update the client to send the faction information directly. Could we also infer faction allegiance based upon battle history?