I've done all that for my site. Took a lot of hacking though as we use a payment gateway.
User registers as per normal.
If they want to join the club they have to fill in certain custom fields in their profile (real name, address etc.)
Join script takes them to the payment gateway to process credit card.
Payment gateway passes them back to our site
If payment OK they're moved in the club members secondary group.
Hmmm.. sounds simple like that but it took me a lot work. Had to handle family members attached to the main member at a reduced fee, etc etc.
If you can use one of the default vBulletin payment gateways (PayPal etc.) you should be able to achieve what you want without much modification. You just need to create custom fields for their profile and only allow them access to your "join club" page if they're filled in their details.
Nice I'll try and get something done on my site tonight...