cancel
Showing results for 
Search instead for 
Did you mean: 

SIM: Subscriptions Guide

With the SIM API - We are trying to do Subscriptions - Recurring Billing Transactions - Can somebody point me to some documentation for this ? 

 

Is Subscriptions supported through SIM API ? 

 

-Kunaal

kpatodia
Contributor
14 REPLIES 14

To use ARB, CC info have to be on your server. so since you don't want that, you can't use it.

 

Same question for CIM  ? Can it be used in addition to SIM ?

You can use any combo of API.

 

Product APIs?Payment APIs?

All API are different, while you are use each and every one separately, you canNOT combine them to make a SIMARB API.

 

So, it seems CIM API might work. So , after reading through the API - this is what i understand i need to :

 

1. For new customers (i would need to check this on my website to check , if the customer has a Auth.Net Profile Id stored on his profile, if not then new customer) - call the "Create Customer Profile" API  

 

1.  Call "Create Customer Profile" API - This would return me a Auth.Net Profile Id for the customer. 

 

2. Call "Get Hosted Profile Page" API for the Profile Id returned in step 1 - This would return me a Token (valid for 15 mins) 

 

3. Submit a Form with token retrieved in step 2 to "https://test.authorize.net/profile/addPayment" , to display Hosted Payment Form. (From the example , i see that this form contains Billing Information Fields also - Is there a way to hide those field and send those as parameters of this Form ? During Checkout Flow , we have already captured Billing Info of customer and dont want customer to enter this info again)

 

4. Hosted Payment Page will display , where the user would enter his Credit Card Details .

 

5. On Submit , CC Details will be validated and on success - Payment Profile will be added to the Auth.Net Profile - At this point , can i do a transaction on the Payment Profile also ? Or would i need to make a separate API Call to do a Transaction on the Payment Profile ?

 

Thank you for your patience and answering my questions 

 

1. For new customers (i would need to check this on my website to check , if the customer has a Auth.Net Profile Id stored on his profile, if not then new customer) - call the "Create Customer Profile" API  

  Yes

1.  Call "Create Customer Profile" API - This would return me a Auth.Net Profile Id for the customer. 

 Yes

2. Call "Get Hosted Profile Page" API for the Profile Id returned in step 1 - This would return me a Token (valid for 15 mins) 

 Yes

3. Submit a Form with token retrieved in step 2 to "https://test.authorize.net/profile/addPayment" , to display Hosted Payment Form. (From the example , i see that this form contains Billing Information Fields also - Is there a way to hide those field and send those as parameters of this Form ? During Checkout Flow , we have already captured Billing Info of customer and dont want customer to enter this info again)

 If I remember it correctly you can add the ship to address when you do the "create customer proifle" and then the customer can copy it.

4. Hosted Payment Page will display , where the user would enter his Credit Card Details .

 Yup

5. On Submit , CC Details will be validated and on success - Payment Profile will be added to the Auth.Net Profile - At this point , can i do a transaction on the Payment Profile also ? Or would i need to make a separate API Call to do a Transaction on the Payment Profile ?

 once the customer enter their CC detail, it will return to your site, then you can get their payment profile ID to make a transactions.

For No. 3 & 5 - i am not clear from your answer.

 

For No. 3 - For Billing & Shipping Info , i already have them captured during the checkout flow and dont want user to enter them again on Auth.Net screen. Shipping is already on the Add Payment Form or Edit Payment, so that is Ok. However , for Add Payment - Billing fields are shown and they are all empty , so user has to enter them again - can i pre-populated those fields or hide them and send those fields behind the scenes to Auth.Net ?

 

For No. 5 - Once i submit the Payment Form , i get a Default Auth.Net Page , with a Button on it. I get Information Saved Message and that button displays the text , i had sent during the request to generate a token. I dont want to see this page , instead - i want to get handle to the response from Auth.Net - so , i can figure out , if there was a success or failure - if , Success , what was the payment profile Id - so, i could use it to make an API call to charge that Payment Profile. I dont have handle to that response from Auth.Net after submitting the payment Info - how do i achieve this ?

For this , seems like there are 2 URLs that i need to send to Auth.Net - hostedProfileReturnUrl - (i am already sending this and when i click on that button , it calls this URL- but i dont have the Payment Profile Id just created in context and no handle to error or success during the form submission ),  & hostedProfileIFrameCommunicatorUrl ( not understanding what needs to be setup here) 

billing address is part of credit card info, so no, you can't prepopulate it. Can you instead of asking billing address on your site, get the billing address once your customer create the payment profile?

 

in the Hosted section on the CIM doc there is a

iFrameCommunicator, not sure how that works, but it sound like is might be what you are looking for.