The KakaoTalk BizMessage functionality allows businesses to send outbound messages (AlimTalk and FriendTalk) using their KakaoTalk phone number. Both types of messages can be sent using the KakaoTalk channel of the Conversation API, and doing so creates a contact with a specific channel identity.
Businesses can also receive messages (ConsultationTalk) from a KakaoTalk user. When using the KakaoTalk channel of the Conversation API, KakaoTalk sends the user's message and an ID to the Conversation API. The ID is unique to the channel, and is used to create a new contact. Even if the user sending the ConsultationTalk message is responding to an AlimTalk or FriendTalk message, the unique ID created by the ConsultationTalk message is neither the existing user's original channel identity, nor the existing user's phone number. Essentially, an entirely new contact is created when you receive the ConsultationTalk message.
Therefore, the Conversation API does not automatically merge these two contacts together, as they have separate (and unrelated) channel identities. In order to merge the contacts to get a full conversation history (or to configure the contact to send AlimTalk or FriendTalk messages to later), businesses must request the KakaoTalk user directly for their phone number and verify it independently. Then, they can use that information to merge the two contacts.
The Sinch Developer Documentation site contains comprehensive documentation that illustrates how Sinch supports KakaoTalk through the Conversation API.