Building a Recurring Billing System Part 3: Updating the Credit Card
As we saw in our previous posts Building a Recurring Billing System and Building a Recurring Billing System Part 2: Storing Information we can combine the Authorize.Net ARB API to build a powerful subscription system. In part two we discussed what information we needed to store to make our system work effectively. Now we will begin to use that information to drive our system.
One issue our system will need to address is the need to change the credit card used in a customer’s subscription. Credit cards expire, are closed, reach their limit or find other reasons where they can not be used either temporarily or permanently. In these cases the customer will want to update the credit card used in the their subscription so it doesn’t go into default.
The concept of how this is pretty straight forward and is a good place for us to start our system. If you remember from part one of Building a Recurring Billing System the Authorize.Net ARB API does offer the ability to change the credit card associated with a subscription. So all we need to do is tell Authorize.Net what subscription to change and what information to replace it with.
So what do we need from our system to make this happen? We will need a web page that will do the following:
- Display the current information associated with the subscription
- Offer the customer an opportunity to provide a new credit card
- Validate the new credit card
- Change the information in the ARB system
- Update our database to reflect this new information
This really is pretty straight forward:
- The customer’s information is easily retrieved from our database
- A basic form will capture the new credit card information
- The code we used when we originally validated the credit card can be used again here
- The ARB system provides a specific API for changing this information so we don’t need to come up with a strategy to complete this task like we will for other tasks our system will offer
Now that we have a system in place for changing a customer’s credit card information, we can expand our system to put this to good use.
Technorati Tags: Authorize.Net, payment gateway, recurring billing
May 7th, 2023 at 7:45 pm
I believe most of the credit card companies provide services like the following where you don’t have to supply the expiry date for cards using in a properly identified recurring billing transaction:
http://www.visa.ca/en/merchant/acceptingvisa/recurring_expiry.cfm
I don’t know if Authorize.NET’s system works with this approach though.