OK here's my process
1. Checkout form on a heavily modified ecommerce module user fills out form, whose action is set to controller processPayment method.
2. Among other things, this method does this ($data being the submitted form data):
If I output this right after this call with Session::get('orderForm.'.$cart->ID);, all is fine and as expected.
3. User is redirected to 3rd party secure credit card processing. On success, they are sent back to another page where the response is handled by the processOrder controller method.
It is at this point where Session::get('orderForm.'.$cart->ID); returns nothing. Yes I have outputted $cart->ID to check that holds the correct value.
I have also outputted the entire $_SESSION and the item I set in 2. is not present.
Any ideas? What is the scope of these Session objects? Has the '.' after orderForm got anything to do with it?