make sure activation is stored outside of purchasing, error handling