cancel
Showing results for 
Search instead for 
Did you mean: 

Get Accept Customer Profile Page

Hi All

 

       In my vb.net application am using the Get Accept Customer Profile Page for managing my customers.

       But when there are multiple payment profile details shown, how to enable the user to set one as default from the same?

       And am trying to get rid of the Shipping section. Even though am passing hostedProfileManageOptions as showPayment, still am able to see the shipping section.

Kindly help.

Thanks,

 

Devashis Satapathy

devashis1993
Member
6 REPLIES 6

Hi @devashis1993,

 

There is no way for the customer to indicate on the form which profile they would like as the default. However, you can accomplish this by using the API to do a getCustomerPaymentProfileListRequest to retrieve the information about each of the payment profiles, and then presenting that list to the customer in a way that the customer can indicate to you which one should be the default. Then, you'd do an updateCustomerPaymentProfileRequest to set the chosen profile as the default.

 

With regards to the hostedProfileManageOptions, could you post a sample of the form that you're submitting to call the form so that we can see all the options being sent?

Aaron
All Star

And am trying to get rid of the Shipping section. Even though am passing hostedProfileManageOptions as showPayment, still am able to see the shipping section.

 

Yes that is correct.

 

https://developer.authorize.net/api/reference/index.html#customer-profiles-get-accept-customer-profi...

 

> Either showAll, showPayment, or showShipping. Default is showAll.

Applicable to Manage pages. When set to showAll, both Payment and Shipping sections will be shown. When set to showPayment, only Manage Payment section will be shown. When set to showShipping, only Manage Shipping section will be shown.

 

 

 

    setting6 = SettingType.new
    setting6.settingName = SettingNameEnum::HostedProfileManageOptions
    setting6.settingValue = 'showPayment'
    
    settings = Settings.new([setting1, setting2, setting3, setting4, setting5, setting6])
    
    request = GetHostedProfilePageRequest.new
    request.customerProfileId = @subscription.authorizenet.customer_profile_id
    request.hostedProfileSettings = settings
    
    response = transaction.get_hosted_profile_page(request)

 

starrychloe
Member

Aaron,

 

Can you explain how to retrieve all the payment profiles stored for a customer using getCustomerPaymentProfileListRequest? The API states that a searchType and month are require. Since I'm not looking for a list of expiring Cards, how do I see them all?

I think that bozo Aaron must have mistyped something upthread. The actual answer should be to do a getCustomerProfileRequest to get a list of the payment profiles associated with that customer's profile.

Sorry for any confusion.

Hi All,

 

I have a couple of questions:

 

How we can get the profiles? The only way is to know the credit card expiration?

 

"searchType": "cardsExpiringInMonth", "month": "2020-12",

 

There is no other way to serch the profiles?

 

Then about the update of the profile: There is an object called payment where you need to send the credit card information.

 

But we dont have that information becuase we want to handle all on the hosted solution.

 

So my question is if that object is required:

 

 "payment": { "creditCard": { "cardNumber": "", "expirationDate": "" } },

 

I try with sending a request with out the object and get an error and also sending empty data and also get an error.

 

{ "updateCustomerPaymentProfileRequest": { "merchantAuthentication": { "name": "3P29HjuvbF", "transactionKey": "84Z5Rrd8m77FWs5J" }, "customerProfileId": "1920374390", "paymentProfile": { "billTo": { "firstName": "John", "lastName": "Doe", "company": "", "address": "123 Main St.", "city": "Bellevue", "state": "WA", "zip": "98004", "country": "USA", "phoneNumber": "000-000-0000", "faxNumber": "" }, "payment": { "creditCard": { "cardNumber": "", "expirationDate": "" } }, "defaultPaymentProfile": true, "customerPaymentProfileId": "1920374390" }, "validationMode": "liveMode" } }

 

Could any one help me on this and explain how to do the correct requests? We want to our users can have the profles.

 

Thanks!

 

 

I feel that bozo Aaron must have mistyped something upthread. The genuine answer ought to be to do a to get a rundown of the installment profiles related with that client's profile.

 

Samual
Member