customer is optional (?)