item shop core functionality