@customer maybe is nil