Payplans + Profiletype
Two scenarios are possible. And you want to mix both scenarios.
Plan + Registration + Profiletype : If you want to allow user to choose plan before registration then use PayPlans registration plugins. And make an Multi profile type app so that when a user select a plan profile type will be automatically assigned to that user. And in this case also not provide option to choose profile type in between registration. Because this will create confusion.
Another Option is : Use PayPlans registration plugin and allow user to select a plan and then can choose profile type whatever he wants. No multi profile type app is required in this case. And profile type will be assigned when plan will get activated.
If you don't want to include subscription within registration process that is user can directly register without selecting any plan then disable all registration plugins of PayPlans and use normal JomSocial registration process. And allow user to can choose profile type in between registration.
p>These are two different scenarios. And you can't mix both.