Custom Product Option in Cart Not Transferred to Checkout

Hello. I'm trying to add a custom product field called "aid" to the products on our website (woodsmithplans.com, v. 0.7.2). I can add them to the cart just fine, but they don't get transferred from the cart to the checkout. For instance, if you look on the example page http://www.woodsmithplans.com/plan/fireplace-surround/?aid=2 and open the web inspector to see the form connected to the Add to Cart button, you'll see the aid value there, and if you add the product to your cart, it works. But, when you continue to the checkout page, the aid value is no longer there, nor in the json, and it does not show up in the datafeed after the transaction is submitted either, as far as I can tell. This does not seem to be an issue of the value simply being hidden in the checkout, because it shows up in the checkout on our other sites that do similar things. I thought that it might be due to the version, but I looked at the documentation for 0.7.2, and it shows that custom product attributes are supported (https://wiki.foxycart.com/v/0.7.2/products#standard_product_options). I also thought this might be due to an incorrect hashed value that does not match the stated value of the input tag, so I tried explicitly entering values that did not match, but it gave me an error, not this result, so that is not the problem either. I also thought that maybe the string "aid" was conflicting with some unseen FoxyCart variable, so I tried a few other variable names instead, to no avail. Any ideas?

Something else that I noticed that is a bit off with this is that, if you try adding a product multiple times, the aid value will only be attributed one of the products in the cart. In this case, that does not matter, but it maybe related to the problem somehow, as this is not how I imagine it should work.

That is very strange! For some reason the aid custom attribute is not correctly being saved against the product. That initial add to cart is loading it correctly from the URL - but when loading it from the server on subsequent page loads, it's not there. We'll dig into what's causing that and get back to you as soon as we can.

We just found out that if you add the product to the cart and then exit out of the colorbox and click View Cart in the upper right-hand corner, you can see that the product is no longer in the cart, so it looks like it is being displayed initially but is never actually being added to the cart for some reason.

Are you still experiencing the whole product disappearing? I'm not seeing that happen with the product you linked to in my testing - just the aid attribute disappears.

After some further digging, I realised that your category is set up for downloadable files. In FoxyCart version 1.0 and older (you're on 0.7.2) we didn't support specifying custom product options on downloadable files. While it looked like it worked on initial add to cart (as the product loads from the URL), on subsequent load of the cart or the checkout, it would pull the product from the server, which was just the details set in the admin for that downloadable product.

Beginning in version 1.1, we do support setting custom product options on downloadable products. In order to make use of it, you'll need to update your store to at least version 1.1. You can see details on upgrading your store here: http://wiki.foxycart.com/static/upgrading. Our current stable version is 2.0, and if you're able to upgrade all the way to that, we'd definitely recommend it as it would give you access to all the great features and fixes we've added over the years since 0.7.2 was released.

Okay, that solves it then. No, the whole product never disappears, just the aid disappears. Sorry, I misspoke in my previous post. Thank you very much for checking into this. I'll upgrade the store, hopefully to 2.0.

No problems! If you'd like - feel free to reach out to our helpdesk and we can look over your store and let you know any aspects that might need specific attention when upgrading to 2.0, to give you a better idea of what would be involved.