Have one trigger per shop and map the shop to the trigger using a hashtable (then you can load it with GetTriggeringTrigger()).
Or you can make rects around each shop and then check which rect the unit is in, and map the rect to the shop (with a hashtable).
By "map", I mean to save the shop under the handle ID of the object. e.g.
call SaveUnit(hash, 0, GetHandleId(<trigger>), <shop>)