cancel
Showing results for 
Search instead for 
Did you mean: 

CIM API requires clientID?

After refreshing the definition for the SOAP web reference for https://api.authorize.net/soap/v1/Service.asmx?wsdl, I noticed that our previously-working code no longer compiles. In each instance, it looks the definition for the methods listed in the compile errors (CreateCustomerProfile, UpdateCustomerPaymentProfile, etc.) all have a string parameter of clientID that is expected (but wasn't in our earlier web reference definitions).

 

In looking at the CIM API docs (http://www.authorize.net/content/dam/authorize/documents/CIM_SOAP_guide.pdf) and the API reference (http://developer.authorize.net/api/reference/), neither mentions this field anywhere. Additionally, the sample code in the API reference matches our calls and doesn't seem to be passing in a clientID anywhere.

 

What is clientID and how should we be using it, now that it's required? Is that our userid, tran key, a unique id for that specific card, or what?

kevinfairchild
Contributor
34 REPLIES 34

Hi @ruchi_s,

 

If you get any response at all in production, then you have no problems relating to TLS. Your system is connecting just fine.

 

The E00027 error you're sending just means the card is declined or otherwise not accepted. If you're testing and looking to get the card approved, make sure you're using a valid card that the bank would approve.

Hi @Aaron @RichardH

 

Thanks for your response. Yes it worked for another credit card. That might be some issue with card provider.

 

 

Can you please help me to know how can I get billing date for all of the active subscriptions on authorizeNet? I tried "ARBGetSubscriptionListResponse" but it didn't provide billing dates.

 

I don't have correct billing dates in my database so i need to get those from authorizenet.

 

Thanks

Hi @ruchi_s,

 

There's not anything that spells it out exactly. The best you can do is to first query for the list of active subscriptions, then query each subscription for the start date and interval. You can calculate the actual dates of past or future transactions from there.

Hi @Aaron

 

Thanks for your feedback, I got it. I calculated invoicedate using start date of subscription but now i need to update billing date for subscription on AuthorizeNet. 

 

Accroding to API refernce change of date is possible if no payment is completed for that subscription. Is there any way to update billing date for active and completed payments subscription ?

Hi @Aaron

 

I tried to follow as you mentioned, Firstly get list of all active subscriptions and iterate for each subscription. 

 

But I noticed that API of "ARBGetSubscriptionResponse" returns wrong Interval for some of the subscription that's why I couldn't find out which one is monthly and which one is yearly.

 

For eg: For a subscription authrorizeNet says "Payments occur on day 14 of every 12 months.", that means it is yearly subscription but API "ARBGetSubscriptionResponse" returns interval as "1" .

 

 

Please let me know the way to identify yearly vs monthly.

Hello, the ARBGetSubscriptionResponse returns the elements length and unit which are children of interval. They work together to determine a unit of time ...

<paymentSchedule>
      <interval>
        <length>1</length>
        <unit>months</unit>
      </interval>

length is the measurement of time, in association with the Interval unit, that is used to define the frequency of the billing occurrences. If the Interval unit is "months", length can be any number between 1 and 12. If the Interval unit is "days", length can be any number between 7 and 365.

Powered by NexWebSites.com -
Certified Authorize.net developers

@NexusSoftware

 

Hi,

 

Yes I know that but that is returning wrong result, As I mentioned for yearly subscription it returns interval length=1 and unit=month while on authorizenet it clearly says "Payments occur on day 16 of every 12 month."

 

 

I'm getting the following for yearly subscriptions, with the text "Payments occur on day 30 of every 12 months." consistently.  

<interval>
        <length>
          12
        </length>
        <unit>
          months
        </unit>
      </interval>

The issue doesn't seem to be with the API. So it is likely something to do with your code. Are you sure you are using the the right subscriptionId?  Get a single subscription with ARBGetSubscriptionRequest  and see what the results are. 

Powered by NexWebSites.com -
Certified Authorize.net developers

Hi @Aaron @RichardH @NexusSoftware,

 

So all set up to get and differentiate the yearly and monthly subscription. But There is an urgent issue that i am facing right now.

 

Suppose i have a monthly subscription for date 14th of every month. Using the API i changed the amount of subscription at 1 AM before the subscription get charged. The amount got changed successfully but when I checked later on for the transaction for that susbcription, there was no subscription.

 

I went to subscription details and completed payments, it shows Trans ID="n/a" and Trans Status "General Error". I am not sure why it happend. My requirement is to change the subscription amount on the billing date before getting charged.

Hi @ruchi_s,

 

Are you saying the subscription's gone? If you query for that subscription ID, what's the status of the subscription?