Custom registration form with different registration process based on what’s selected

For something like this, I would look to the Gravity Forms plugin. http://gravityforms.com

It allows you to have conditional logic, where a field only shows up if a certain field is selected. For this situation, I would make different gravity forms that only display if a checkbox is marked (reseller/partner…and so on). This way you can have different fields for each section and each form can send a different confirmation email. It’s also possible to filter the output email from Gravity Forms based on certain conditions with hooks. Same is true with the confirmation messages, you can add html to adjust the message to your needs.