So, I was having this same issue for the longest time and none of the posts I could find on here were of any help. Last night, I received 36 (!!!) duplicates of the same order and decided I had enough of this nonsense. About 5 minutes after the orders were duplicated, I also received a very nasty message (sent through my zen cart contact form) from the customer who had thought she was charged a whole bunch of times (she wasn't, just once but she got 36 order confirmation emails as well so was alarmed). ANYWAYS I finally figured out what the issue was because it just so happened that her contact form message was also sent to me NUMEROUS times. It then crossed my mind that this could be an email issue.
I did a bunch of test orders and noticed that after clicking my "confirm order" button, the site was SOOOOOOO slow. I'm pretty sure that either:
a) the customers just get fed up and press the button a bunch of times if it's taking too long to connect to the mail server as it looks like the website isn't doing anything.
b) there is an issue with my mail server and it continuously loops or something while trying to submit the order, causing it to go through too many times.
I decided to change the email settings from PHP to sendmail and voila! My checkout was much faster which resulted in only having to press the Confirm Order button once, which resulted in no more duplicate orders.
So long story short, try changing your email settings.
Bookmarks