Question

In our upcoming application we will be conducting email correspondence with our customers. the emails are being sent \ received from within our application UI. (we have a back office admin GUI , you can see incoming emails and reply through that admin GUI)

A problem we encounter is:

When we send an email to our customer we are keeping the metadata of the correspondence in our database.

what we want is to identify the replies from the customer as a continuation email of that original correspondence (so we can query the correspondence metadata from the DB for further processing)

how can we identify these emails as part of the root correspondence? we thought about injecting a unique id for each email that is being sent to the client with the correspondence id but if the customer will feel like changing it or even deleting its a problem. is there any other alternative?

p.s originally we thought about keeping the MESSAGE_ID of the email we're sending as the correspondence id. that works great since the reply-email's header contains the reply to MESSAGE_ID.

the reason this wont work is that we are using a 3rd party company to manage our email sending (silverpop) and their API wont allow us to get the MESSAGE_ID for each mail we send.

any info will help. thanks!

Was it helpful?

Solution

A common technique is to put an identifier in the Subject "[Contact:foo]" like you say, with a note in the body telling the customer not to change the Subject so the email will be routed correctly.

"Please reply to this email without changing the subject, so your matter can be promptly attended to".

Obviously you'll have to ignore things like "Re:", "Fwd:" etc when parsing inbound subjects.

This is safer than putting something in the body and requiring the customer to include the original content in his/her reply.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top