Maybe this also happens in WordPress with WooCommerce or other platforms that uses an SEO plugin with Canonical redirect.
I resolved this problem by disabling the canonical redirect in the product page. My client’s site is using a module called Creare SEO, and one of the General Settings of this plugin is Enable Canonical Product redirect. This is an important SEO setting, as this prevent duplicate product pages from being indexed in the search results.
The problem with this is that if you’re using Google Tag Manager, and you want to add parameters in the url to track things that the GTM can track, you can’t. As it will be redirected to the base permalink of the product.
Anyway, if you encountered this problem. Just go to System > Configuration > Creare SEO > General Settings > SEO Settings > Set Enable Canonical Product Redirecting to NO, and you’re done! That’s it! As shown in the screenshot below: