I want do display a form based on what product / option is chosen, when a user wants to buy this product he has to fill in that extra form so a contract can be printed from that data. I have 2 ways in mind to do this but i wonder what would be the most efficient.
The first i tought off was just catching the add to cart observer and check for the presence of the element there, if its there redirect the form, if it's not there, don't redirect. Off course that would require me to do another check on the cart page itself, otherwise users could just go straight to the url if I am not mistaken.
A second one would be to add an extra form to the checkout, this would make the checkout longer and could cause users to abandon sooner.
I was wondering if you guys had any better ideas or some pointers on wich one is the best.
I am not asking for code (as i want to do it myself), I just want to know if there is any "correct/standard" approach for this.