customer - might be a registered entity or unauthenticated visitor .
If a customer shops without being logged-in, despite of being registered this field holds still reference to UnauthenticatedEmail.

However if a customer makes an order for a company that has been registered before, this field holds reference to that Company, whether the customer shopped logged-in or not. Resolution of this field may change during time, if the company becomes registered afterwards.

If customer makes an order on behalf of an unregistered company, this field holds a Company object having the e-mail address identical to the creator's one or a different one (company specific), depending on data filled into the order form.

link GraphQL Schema definition