Posting data to a server securely via http

theoretically there could be the same ciphertext for a different key meaning that a valid message will not get correctly read.

If the message ID, and IV are included in the data hash, then the hash value will never be the same.

If a packet is resent, the IV will produce a different cyphertext.
If a new packet is sent the ID will be different as well as the IV.

So you will never receive two hash values which are equal, regardless of the cyphertext. If you do receive an ID, hash or ID/IV combo that has repeated, you know something is wrong.

This is all assuming you are using AES-CBC and a hashing algorithm which produces unique signatures for all permutations of data.