Find the answer to your question
How can I track messages between the buyer and seller?
How to track and corolate email threads from the buyer and seller
Unfortunately there is no easy way to track messaging from a buyer and seller and know which messages belong to the same thread. Even though we do have MessageID and ExternalMessageID, they are often unique for each message. We also will not include the last reply made if it came from the seller. Here is an overall flow of how the messaging API's work and some tips to help track a thread (post transaction).
*NOTE - both MessageID and ExternalMessageID differ for every message if the messages are pre-transaction, so there is now unique value to track a thread.
There are 2 API you calls you can make, GetMemberMessages or GetMyMessages
a. GetMemberMessages - this will only show you the messages sent from the buyer. So if you send any messages back they will not be shown here. But there is a MessageStatus letting you know if it is answered or unanswered. To track these messages you want to use the ItemID. But if you have multiple sellers sending messages for the same item, it could get confusing.
b. GetMyMessages - this may be the better API to use. The issue here is you have to monitor your messages by using a DetailLevel of ReturnHeaders to return MessageID values and cache them for future use. Each time a buyer sends a message you get a different MessageID, even for the same thread. So you also want to store the ExternalMessageID which will be unique for each thread. You then need to make another call calling GetMyMessages with a DetailLevel of ReturnMessages, and MessageID. This call essentially sends back the exact HTML you see from within your inbox on ebay.com. Again another issue is you won't get back any messages you sent as the seller if you were the last to reply. You do get back the full thread up to your last reply though. Let me explain further,
- GetMyMessages returns the whole email thread as seen in your inbox from My eBay (in HTML format or text depending on what you set for your account settings). The setback though is it will not contain your last reply if you were the last to reply. It basically only updates when the buyer sends a message. For example, if Buyer sends message A, and Seller sends message B, it will only return message A. https://developer.ebay.com/DevZone/XML/docs/Reference/eBay/GetMyMessages.html#Response.Messages.Message.Text
Also please keep in mind that if you specify MessageID in the GetMyMessages, the response will return the message irrespective of the FolderID i.e. irrespective of where the message resides - Inbox or Trash etc, as long as MessageID is specified in the request, you will get the message with correct current FolderID.