cancel
Showing results for 
Search instead for 
Did you mean: 

ARB payment node and testing

I have 2 questions regarding the ARB xml interface.

 

First, the PDF doc says that there must be a payment node in the xml:

 

<?xml version="1.0" encoding="utf-8"?>
<ARBCreateSubscriptionRequest xmlns="AnetApi/xml/v1/schema/
AnetApiSchema.xsd">
<merchantAuthentication>
<name>mytestacct</name>
<transactionKey>112223344</transactionKey>
</merchantAuthentication>
<refId>Sample</refId>
<subscription>
<name>Sample subscription</name>
<paymentSchedule>
<interval>
<length>1</length>
<unit>months</unit>
</interval>
<startDate>2007-03-15</startDate>
<totalOccurrences>12</totalOccurrences>
<trialOccurrences>1</trialOccurrences>
</paymentSchedule>
<amount>10.29</amount>
<trialAmount>0.00</trialAmount>
<payment>
<creditCard>
<cardNumber>4111111111111111</cardNumber>
<expirationDate>2008-08</expirationDate>
</creditCard>
</payment>
<billTo>
<firstName>John</firstName>
<lastName>Smith</lastName>
</billTo>
</subscription>
</ARBCreateSubscriptionRequest>

 

However, when I include that node, I get an error saying that this was not expected inside a <subscription>. How do I pass the payment data in? Also, can I pass in a payment id from a customer stored in CIM? Meaning, I create a customer and payment in CIM and then I pass the CIM id to ARB?

 

Also, ARB does not support test mode, so whats the best way to test ARB without using live money?

rezan
Member
1 REPLY 1
Usually when you get an error like that, it's because the XML elements aren't in the correct order. Authorize.net is funny that way. Did you copy this directly from the ARB XML documentation?
http://www.authorize.net/support/ARB_guide.pdf#page13

No, CIM and ARB do not interact. CIM is more flexible anyway, and you don't have to use AIM with it, so if you have CIM, why switch?

For testing, I just initiate an actual subscription that starts the next day, then log the Silent Post output to a file. From then on. I just pass that exact same info to my Silent Post page via an HTML form, and modify various values to test different things. Don't know if there's a better way, but it works for me.
TJPride
Expert