Hi,
This means that the menu item with the id 1024 is not set to "public" access.
What is that menu item ?
And which payment method are you using ?
Normally, the confirmed email notification is generated after the order status is changed to confirmed, when the payment gateway sends a payment notification request to the website. And normally, the URL of that payment notification includes that same Itemid parameter which is then used to generate the link in the email.
And normally again, the payment plugin sends to the payment gateway that payment notification URL at the end of the checkout using the menu item on the checkout.
So if your checkout is accessible without a user account, then the link in the email should be accessible without a user account.
So before I could give a solution, I would first to better understand how your checkout and payment method is configured and what menu item is used on the checkout. If you're using a third party payment method, it's possible that the payment plugin doesn't set the Itemid properly in the payment notification URL. So it you would actually have to check with the developer of the payment plugin what's up with the Itemid for the payment notification URL.