Hello all ,
           I added two plugins [Google and Facebook] for external authentication. Both are working fine. The only issue that i am facing is that when user first time logs in from facebook ,new registration is done for that user. now user orders something and logs out. now same user again logs in , this time through google using SAME EMAIL ID.
Now what happens is that nop commerce first validates new customer email

if (_customerService.GetCustomerByEmail(request.Email) != null)
            {
                result.AddError(_localizationService.GetResource("Account.Register.Errors.EmailAlreadyExists"));
                return result;
            }

This email already exists so it throws error. I can not remove this validation as it is a very important validation. Also if i somehow hide this piece of code in case of external authentication then a new user will be registered for the same email id.

So i user added some item in cart from facebook account and now log's in from google he won't be able to see them as the account is different now.