Hi,
Apparently, you've set the "force canonical URLs on listings" setting of the HikaShop configuration to "Use canonical URL and generate it if missing".
In that case, if the "canonical URL" of a product is empty, it will fill it automatically with a dynamically generated URL.
And on listings instead of generating dynamically the products URL, it will use the canonical URL.
So, if after the canonical URL is set for a product, you change either the SEF settings of HikaShop, the SEF settings of Joomla, the structure of your Joomla menu items or the alias of the product, they will be out of synch with the canonical URL and thus the canonical URL will be invalid.
I can see on your link that you have one product with the URL jom/shop/books/product/songs-of-a-seeker and one with the URL jom/index.php/bookshop/product/beyond-christianity
So I can conclude that after the canonical URL was generated for the "beyond christianity" product, you changed the Joomla SEF settings to remove the index.php from the SEF URLs. And that's why its canonical URL doesn't work anymore and you get that 404 error.
If you're in the middle of setting up your shop, or restructuring things around, you should turn off that setting of the HikaShop configuration so that the canonical URLs are not generated and that the URL to the products is generated dynamically all the time until you settle on your setup.