Hi there @ConnorBo,
Welcome to the Community! Thank you for asking this great question!
While it may appear that something is misfiring, this is expected behavior with a virtual contact card. The Virtual Contact Card creates the initial message as an MMS and causes the number to come through as the unformatted number. Whereas the second message in the flow, a regular SMS, comes through formatted, creating the different threads.
Regarding the phone number showing up differently, the unfortunate thing is that different carriers and devices have different behaviors for how they display the sender number, not only based on the device/carrier, but also SMS and MMS. For example, on an iPhone, if you text a number without formatting or any hyphens, this technically isn't formatted correctly so when the response comes back, the iPhone automatically formats the number correctly to +1 (___) ___- ___ and creates a new thread. However, going forward, all messages should come from the correct number, formatted correctly, and stay within that single thread.
Our team is aware of this behavior and we are working to find a solution to make it so all messages would come through the one thread from the beginning of the customers first SMS/MMS to all future SMS/MMS. Hopefully we are able to create a solution for this in the near future to help resolve this!
Thanks for participating in the Community!
-Taylor