cancel
Showing results for 
Search instead for 
Did you mean: 

ARB Setup

I'm considering setting up ARB on my website.  I have a few questions on steps I should take:

 

1)  I would need to sign up for ARB first ($10.00 per month), correct?

2)  Which variables do I need to send on the AIM API to make this automatic each month.  The documentation I read said that x_recurring_billing is not affiliated with ARB.  Is there another piece of documentation I need to refer to.  I want to create a checkbox that says, "Bill me recurringly or repeat this bill".  I'm unclear on what API variables to attach to this checkbox.

3)  When billing recurs, is there a way for authorize.net to send me some sort of api request back to my site to let me know to update a user's account?  What I'm getting at is when Authorize.net recur bills, can I have them send a request to a script of my choice notifying me of this?

 

mathceleb1
Contributor
8 REPLIES 8

1) Yes.

 

2) AIM has nothing to do with recurring billing. However, since ARB does not do the first charge immediately, and since a charge is necessary for verifying that the credit card info is good, most people use AIM to do the first charge and then use ARB for processing all the charges after that. Both would be called from the same page and at the same time.

 

Look at the ARB.markdown file in your SDK (assuming you're using PHP) for sample code. Also see the ARB documentation PDF:

http://www.authorize.net/support/AIM_guide.pdf

 

3) Yes, it's called silent post. If you turn this on, Authorize.net sends a post to a URL on your site with all the subscription and transaction info. Have this page log the post variables to a file (use print_r() if using PHP), then set up a dummy subscription so you can see what comes through. Note that silent post pages receive ALL transactions, even ones you run manually through your control panel, so you'll need to check for the subscription ID field.

TJPride
Expert

Thanks for the detailed response.  I looked at the AIM_Guide and it only says that the variables are not associated with the subscription for ARB.  I did not see any variables in that .pdf file that can be incorporated with the ARB. 

 

However, I downloaded the ARB php package.  It seems like the course of action I should take is to "tack on" the files included in the php_arb_xml package and use those with the current files I have for Authorize.net  By that, I mean if somebody selects to have a subscription on my form, I would send an additional request to Authorize.net with the subscription info after I send the payment information?  Or should I just be sending one request regardless of if they want a recurring billing or not?

 

For example. here is my current checkout_form which has been working for non-subscriptions:

http://mathcelebrity.com/checkout_form.php

 

I'm wondering if I just add a checkbox indicating that the user wants a subscription as well as some fields related to the subscription from the arbtool.html file in the ARB package?  If I do that, I'm confused as to how I would treat a regular one time purchase.   Would I set the $totalOccurrences =1?

Additional Note:  The AuthorizeNetARB.php from the AIM package was not part of the php_arb_xml package, and this is where I'm confused on the disconnect.

I'm following up on this to see if I can integrate the ARB portion with the AIM I already have setup.

I am having the same problem. We have a donation page and we want to have a choice for the donate to make their contribution a recurring one. I cannot find any transaction data field that would convey that the credit card charge should be made every x months.  It seems like another whole system is needed. CRAZY.????

Hey there,

 

Yes, you can use ARB with AIM, it's just a matter of integrating the appropriate calls for an ARB subscription. You can check out the ARB guide for more information. If you have a donation page and want to give your customers the option of making a recurring donation, you will also need to use the ARB API.

 

Hope that helps.

 

Thanks,

 

Michelle

Developer Community Manager

After reading through the guides, theoretically, after I send my AIM request for the initial purchase which already works on my website, could I include this code right after $response->success:

 

I already have the items below from the AIM request as well as what the user entered.

 

$content =
        "<?xml version=\"1.0\" encoding=\"utf-8\"?>" .
        "<ARBCreateSubscriptionRequest xmlns=\"AnetApi/xml/v1/schema/AnetApiSchema.xsd\">" .
        "<merchantAuthentication>".
        "<name>" . $loginname . "</name>".
        "<transactionKey>" . $transactionkey . "</transactionKey>".
        "</merchantAuthentication>".
        "<refId>" . $refId . "</refId>".
        "<subscription>".
        "<name>" . $name . "</name>".
        "<paymentSchedule>".
        "<interval>".
        "<length>". $length ."</length>".
        "<unit>". $unit ."</unit>".
        "</interval>".
        "<startDate>" . $startDate . "</startDate>".
        "<totalOccurrences>". $totalOccurrences . "</totalOccurrences>".
        "<trialOccurrences>". $trialOccurrences . "</trialOccurrences>".
        "</paymentSchedule>".
        "<amount>". $amount ."</amount>".
        "<trialAmount>" . $trialAmount . "</trialAmount>".
        "<payment>".
        "<creditCard>".
        "<cardNumber>" . $cardNumber . "</cardNumber>".
        "<expirationDate>" . $expirationDate . "</expirationDate>".
        "</creditCard>".
        "</payment>".
        "<billTo>".
        "<firstName>". $firstName . "</firstName>".
        "<lastName>" . $lastName . "</lastName>".
        "</billTo>".
        "</subscription>".
        "</ARBCreateSubscriptionRequest>";


//send the xml via curl
$response = send_request_via_curl($host,$path,$content);

Yes, creating the ARB subscription while you still have the card deals in active memory is a fairly common practice. This is a much better option than collecting the details again or placing them into any kind of database.