cancel
Showing results for 
Search instead for 
Did you mean: 

Membership Site (Recurring Payments) - AIM & ARB?

Hi,

 

I currently have an ecommerce shopping site using Authorize.Net with AIM.  Using AIM with an ecommerce site is simple because I just "authorize" and then "settle/capture" the amount when the item ships.

 

However; I'm working on a new site which involves recurring monthly/yearly membership fees as well as still using an order type checkout process like an ecommerce shopping site.  The ecommerce checkout proces would be simple because I can just use the same AIM type method to process orders that I currently use on my live ecommerce site.

 

But I'm at a loss, on what the best method would be to process the recurring monthly/yearly membership fees. 

 

One method I was thinking of using, but don't know if it makes sense, is when the customer signs up for an account that would be the "billing date" I will use for the next payment due.  For example,  at the time of signup I would charge a "one-time setup fee" along with the "1st month payment".  So if the customer signed up on 2/15/12, in the admin part of my site under a "Recurring Payments" page I create; I would list all recurring payments with the "amount due" and the "next bill date".  So when 3/15/12 comes around I was thinking I could use a "cron job" that runs daily on my site to send and charge any payments that are due on 3/15/12 to Authorize.Net using AIM.

 

Would this make any sense at all to use this method?  Or would I be able to handle this process better using ARB?

 

I never used ARB so I'm not sure how or where I would fit using ARB into my website to handle recurring payments.  Would I still need to create a "Recurring Payments" page in admin like I described above?

 

Thank you,

 

olimits7

 

olimits7
Contributor
12 REPLIES 12

Isn't that a repeat of your previous question?

Yes, sorry...I didn't realize before that your "Correct." response was towards this question I asked.

 

I'm using the CIM, storing a future billing date in our database, then I setup a cron job to bill someone when that date is smaller then current date..

I store customerprofileID and customerbillingID that is created by the CIM, then i just post a customertransaction for amounts every month..

 

easy to figure out a month after they signed up using:

 

function renewDate($start_date = FALSE) {
	 if ($start_date) {
	    $now = $start_date; // Use supplied start date.
	  } else {
	    $now = time(); // Use current time.
	  }
	
	// Get the current month (as integer).
	  $current_month = date('n', $now);
	
	 
	// If the we're in Dec (12), set current month to Jan (1), add 1 to year.
	  if ($current_month == 12) {
	    $next_month = 1;
	    $plus_one_month = mktime(0, 0, 0, 1, date('d', $now), date('Y', $now) + 1);
	  }
	  // Otherwise, add a month to the next month and calculate the date.
	  else {
	    $next_month = $current_month + 1;
	    $plus_one_month = mktime(0, 0, 0, date('m', $now) + 1, date('d', $now), date('Y', $now));
	  }
	
	 
	$i = 1;
	  // Go back a day at a time until we get the last day next month.
	  while (date('n', $plus_one_month) != $next_month) {
	    $plus_one_month = mktime(0, 0, 0, date('m', $now) + 1, date('d', $now) - $i, date('Y', $now));
	    $i++;
	  }
	
	 return $plus_one_month;
}	

 

If you need more code or details on how I do all this let me know.

GregTampa
Contributor