cancel
Showing results for 
Search instead for 
Did you mean: 

Issue with CreateCustomerPaymentProfile

Good day all,

 

I'm having an issue with using the createcustomerpaymentprofile.php.  Even though the documentation (and developer.authorize.net web page) doesn't require a billing address when creating a new payment profile, it appears that when calling from code and even on the Authorize.net API documentation page itself, if you leave out the billing address you get a failure, "E00027  There is one or more missing or invalid required field."

 

Yet, I can call createcustomerprofile.php and NOT use the billing address and it creates the customer profile AND the credit card without having to provide a billing address.

 

Any solutions?

SilkySully
Contributor
1 ACCEPTED SOLUTION

Accepted Solutions

Hi Robert,

 

While creating the CustomerProfile the request is not sent with validation mode set as liveMode, hence the CustomerProfile creation happens successfully with a Customer payment profile.

 

In case of customerPaymentProfile creation you will also need to do the same either set the validationMode as testMode or don't set the validationMode with the request, as it takes testMode as default.

 

In the php sample code remove the validation mode set line

 

$paymentprofilerequest->setValidationMode("liveMode");

This would make it work !

 

Hope this Helps!

View solution in original post

kikmak42
Authorize.Net Expert Authorize.Net Expert
Authorize.Net Expert
4 REPLIES 4

Hi SilkySully,

 

The address is not a mandatory field is an conditional statement.

As mentioned in developer.authorize.net : <address> & <zip> are Required if merchant would like to use the Address Verification Service security feature.

 

So if the createcustomerpaymentprofile request is being sent in validationMode->liveMode

it will require the above 2 values but if you want to skip that feature, you will have to go in Merchant Interface and switch-off AVS(Address verification System) inside AFDS (Advance Fraud Detection Suite) or sent the request in validationMode->liveMode so that the profile is not tested with a live transaction.

 

Hope this Helps!

 

Kaushik

kikmak42
Authorize.Net Expert Authorize.Net Expert
Authorize.Net Expert

Hello Kaushik,

 

So, I went in and disabled the AVS and guess what?  It still doesn't work.   I get the same exact error message.  I have even waited 24 hours, just in case it was a timing issue.

 

Here's the thing, it works just fine (whether I had the AVS disabled or not) when I'm creating a new Customer Profile and including a credit card (without the billing information), but when I'm creating a new Customer Payment Profile (adding a credit card to an existing customer profile), it will fail every time without the billing information, even on the https://developer.authorize.net/api/reference/index.html#customer-profiles page, it fails if you remove the billing information.

 

If I am doing something wrong, please steer me in the right direction.

 

Thank you for your prompt response,

 

Robert 

Hi Robert,

 

While creating the CustomerProfile the request is not sent with validation mode set as liveMode, hence the CustomerProfile creation happens successfully with a Customer payment profile.

 

In case of customerPaymentProfile creation you will also need to do the same either set the validationMode as testMode or don't set the validationMode with the request, as it takes testMode as default.

 

In the php sample code remove the validation mode set line

 

$paymentprofilerequest->setValidationMode("liveMode");

This would make it work !

 

Hope this Helps!

kikmak42
Authorize.Net Expert Authorize.Net Expert
Authorize.Net Expert

I removed the line of code and it worked.

 

Thank you.