We are starting to convert an existing CIM installation over to the Hosted CIM to help simplify the PCI certification process. The customer name and address information is already in the database. We're trying to avoid requiring the user to type the information in a second time. When we connect to the Hosted CIM page via the getHostedProfilePageRequest token, the user is required to type all the name and address info. These are existing customers who now decide to pay via credit card.
1. It doesn't look like we can send in Name & Address info with the createCustomerProfile unless we include Credit Card data (which we need to avoid).
2. The getHostedProfilePageRequest only allows you to pass in the CustomerProfileID.
Is there any way to pass in Name and Address info with including credit card data?
We really need to avoid enter data twice and/or taking advantage of existing data.
Thanks,
Bill Clarke
Thoroughbred Software Int'l
Solved! Go to Solution.
โ09-23-2011 07:49 AM
Thank you. I believe you just answered the question. Rather than creating a new Customer Profile with incomplete payment information, we're creating the new Customer with ShippingAdress info. This data is retained when using the Hosted CIM interface.
So the back-office legacy application can continue to work as is. When it is ready to enter Credit Card info, a browser window pops up (authorize.net site) with name and address already populated from the default shipping address.
Thanks for taking the time and listening.
Bill Clarke
Thoroughbred Software
โ09-27-2011 12:51 PM
So you've tried creating a customer profile without adding an AuthorizeNetPaymentProfile object to it, and it gave you an error? If so, sounds like you're doomed. The whole point of hosted CIM is to avoid having you collect and pass data yourself, so I doubt there's a way to initialize hosted CIM by passing a name and address.
โ09-23-2011 04:48 PM
This is a Legacy based application. Customers use to pay by check via an invoicing system. Now they allow customers to pay via Credit Card. So often they are adding credit card info for existing customers where all the billing information (except a credit card) is already on file. The application makes secure XML calls to:
1. create a customer profile id
2. getHostedProfile token
3. popup a browser so the service rep can collect the credit card info
They know they can get the info back with a getCustomerProfilePayments - but the reality is they already have the info (since these are existing customers). They are just trying to avoid entering twice.
If they include Name&Address info with the createCustomerProfile, it returns an error requesting a credit card.
โ09-26-2011 12:24 PM
The documentation says about the creditCard field:
This element is only required when the payment profile is credit card.
So apparently there's no way to create a profile without at least one billing method, unless I'm misreading this. Do you get the error if you submit without a name and address? Are you including the paymentProfiles tag and payment tag and not putting in any info? Might help to paste your XML here.
โ09-26-2011 02:34 PM
Thank you. I believe you just answered the question. Rather than creating a new Customer Profile with incomplete payment information, we're creating the new Customer with ShippingAdress info. This data is retained when using the Hosted CIM interface.
So the back-office legacy application can continue to work as is. When it is ready to enter Credit Card info, a browser window pops up (authorize.net site) with name and address already populated from the default shipping address.
Thanks for taking the time and listening.
Bill Clarke
Thoroughbred Software
โ09-27-2011 12:51 PM
I am creating a Customer Profile, then creating a Customer Shipping Address, but the popup is not defaulting the shipping address into the billing address fields. Help?
โ10-24-2011 10:47 AM
This behavior is unique to when the customer is on the "Manage Profiles" page. If you present them with only the "addPayment" page directly, no data will be prepopulated. If you populate a single shipping address and then send the customer to the "manage" page to add their own payment profile, then the shipping address will be prepopulated as the billing address.
โ10-26-2011 02:09 PM
Will Authorize.Net support this behavior for "addPayment" in a future release?
Thanks again Trevor!
โ11-02-2011 06:10 PM
I can certainly take this to our developers as a feature request, but it isn't something that is on an existing roadmap.
โ11-04-2011 03:35 PM
I'm not sure I am understanding the solution. Are we able to first create a Customer Profile, then pass information from our database to create a shipping profile, then use the shipping profile to pre-populate the payment profile on the hosted page so that all we enter on the hosted page is the payment information?
โ03-16-2012 02:08 PM