cancel
Showing results for 
Search instead for 
Did you mean: 

Customer profiles created automatically by subscriptions

I've been using Payment Transactions and Recurring Billing for a while now but I'd like to start making use of Customer Profiles. When I log into my Authorize.Net account, I can see that customer profiles have been created automatically by the subscriptions my system creates using the 

ARBCreateSubscriptionRequest

 API. I didn't expect any customer profiles to exist yet since I've never used the customer profiile APIs but I'm glad they got automatically created so that I don't have to create them myself for all existing subscriptions. When I look at the subscriptions in my Authorize.Net account I don't see any link to the associated customer profile that was created automatically. My question is, is there any way to find out which customer profile an existing subscription is associated with? Currently I store the subscription ID in my system so I'm hoping I can determine the link programmatically using the APIs. Going forward I will start creating customer profiles via the API before creating subscriptions, but I'd like to write a program that iterates over each existing subscription, determines the associated customer profile that was created automatically, and then stores a reference to the customer profile in my system so that I can use that going forward in new API calls.

blackwood821
Contributor
1 ACCEPTED SOLUTION

Accepted Solutions

The UI does not show the link explicitly but the there are two APIs that return the linked customer profiles: ARBGetSubscription and ARBGetSubscriptionList.

 

https://developer.authorize.net/api/reference/#recurring-billing-get-a-list-of-subscriptions
https://developer.authorize.net/api/reference/#recurring-billing-get-subscription

View solution in original post

mmcguire
Administrator Administrator
Administrator
3 REPLIES 3

The UI does not show the link explicitly but the there are two APIs that return the linked customer profiles: ARBGetSubscription and ARBGetSubscriptionList.

 

https://developer.authorize.net/api/reference/#recurring-billing-get-a-list-of-subscriptions
https://developer.authorize.net/api/reference/#recurring-billing-get-subscription

mmcguire
Administrator Administrator
Administrator

Thanks for the quick reply and for the clarification. A couple more questions for you...

 

I didn't see anywhere in ARBCreateSubscriptionRequest API documentation that it automatically creates a customer profile. Is that documented? How does it work? Does it always create a new customer profile even if the customer profile-related info already exists in an existing customer profile or customer payment profile? Or does it detect that a customer profile and/or customer payment profile for that card already exists, NOT create a new customer profile, and return the existing customer profile id and customer payment profile id?

When the subscription is created a check is done for a matching profile, then payment profile and shipping address profile.

 

These are the fields that are checked for the customer profile match:

     <merchantCustomerId>Merchant_Customer_ID</merchantCustomerId>
     <description>Profile description here</description>
     <email>customer-profile-email@here.com</email>

 

Note: profiles automatically created via subscriptions will have a description like this: "Profile created by Subscription: 123456"