handle wallet messages the way it should be done