Someone has created an app that asks users if it can have access to their contacts from their smartphone. If the user grants this access the app uploads the email addresses and telephone numbers of their contacts to a function on the server to work out which of their contacts also use the app and display those users only to this user in the app.
The same approach is taken by WhatsApp and Signal. The contacts are not stored, they are simply checked against known users of the app to provide the user with a list of their own contacts that also use the app only.
However, what this business intends to do is show the username of the user's contacts as it appears with the app rather than the name the user has stored in their phone's contacts.
If a user has a John Smith stored in their contacts on their phone with a telephone number of 888-888 then when they allow the app to access their contacts, the phone number 888-888 is uploaded. This number is a user of the app but under the name of Joan Smithe. Rather than show John Smith, the client wants to instead show the name as recorded in the app's servers - so Joan Smithe would be that contact's name in the app to the user that uploaded their contacts.
Is that legal? Is that GDPR legal?