I wanted to share with you a Free Component that I have found called Account Expiration Control. AEC is used to charge agents for subscriptions via paypal. There are a few other options out there that do the same sort of thing but i found most to either lack what I was looking for or can be overlycomplex.
Here is a link to the Account Expiration Control Component.
http://forge.joomla.org/sf/projects/accountexp
Helder Garcia, the developer of this component has been a really great help to me through out the process of getting this to work. If you decide to go this route, I ask that you please donate to Helder.
I am going to cover how to use AEC to charge Agents but not the regular registered user. This way you dont have to charge members that are not listing.
Remember to back up all your files before making any changes. I am making this tutorial a few months after completing this process so i'm hoping i havent left anything out.
Install HotProperty and AEC.
After these are installed, you need to apply the Auto Assign Agent hack to the acctexp.php file. (This file is located in components>com_acctexp>) This file is very simular to the file you would normally apply the hack to.
Find
Add this on the line after it.
Find
Add this on the line after it.
If you do not want to have 2 seperate user registrations, follow the instructions in the hacks section of the AEC component to complete the installation of AEC.
If you want to have 2 user registrations, one paid and one free. DO NOT follow the hacks section in AEC, instead, continue on.
The Next step is to create a static page.
In the joomla admin select
Content>Static Content Manager
Create a new page, list your description of your two seperate accounts and then include a link to each of them.
Now you will need to link this page to your login module.
Open /modules/mod_login.php
Find
Replace
index.php?option=com_registration&task=register
With the URL to the static page you have just created.
Edit the file joomla.php (includes/joomla.php)
Find
Add this on the line after it.
Next find
Add this on the line after it.
Ok that should do it. I'll be checking this thread regularly so if something doesnt work right, ask away. depending on the situation/what files you need, i might can send them.