I would avoid custom GUIs. Although they are very nice, they're annoying to some users. For example: I can't join this server because I don't have the client! Or alternatively: I need a client to perform actions? Boo!
If you can find a way to make a clean and efficient shop without the use of client-sided material, that would be grand. A while ago I was working on a GameMode and a concept I created was to create cameras far away that would show items, so if you type /shop and press the light key, it would cycle cameras and show different items or bots, giving a sample of the product. You could easily type /exit or something related and leave the shop.
It may be complicated, but it'll keep more players around and default-y things have more appeal.