FusionAuth provides a feature called Identity Provider (IdP) Linking Strategies that allows you to link social login accounts to existing FusionAuth accounts. This feature is available since version 1.28.0.
There are several strategies you can use to link accounts:
Link On Email: This strategy will create a new user if they donโt exist. However, if the user has an email address at their social provider which differs from the email address that was used to sign up for your application and which you imported to FusionAuth, then two accounts will be created.
Link On Username: Similar to the Link On Email strategy, this will also create a new user if they donโt exist. But it has a greater risk of account takeover and should be used with caution. In most cases, you would never want to enable more than one identity provider to link by username because there could be a username collision.
Pending: This strategy will prompt the end user to sign into FusionAuth after they sign into the social provider, authoritatively linking the two accounts.
To implement this, you'd have to get the user to login via their social account and get their unique user Id. Then you'd take that user Id and create a link using the APIs. After the link is created, the next time the user went to login, they could use either their old email/password credentials or the linked social login.
Here's more information about IdP Linking Strategies.
Sources:
FusionAuth 1.28 Announcement
FusionAuth Community Forum
FusionAuth Documentation