When calling the CIM functions CreateCustomerPaymentProfile and UpdateCustomerPaymentProfile on a live account with validationMode set to liveMode CIM profiles are still accepted (no error returned) when Expiration Date, CCV, and/or BillingAddress are incorrect.
From the CIM_XML documentation it states that test transaction will be submitted to the merchant account when the validationMode is set to liveMode and in cases where the validation fails an error will be returned. However, as stated above, no error is returned and the profile is still accepted.Additionally, the validationDirectResponse field returned is empty/null.
It's almost as if validationMode is being ignored completely. Is there anything we need to do to our merchant account in order to avail CIM liveMode validation/test transactions? Are we perhaps forgetting something else besides setting validationMode to liveMode?
Edit: Language: C#
Thank you,
Robert Wearing
01-18-2012 01:56 PM - edited 01-18-2012 01:57 PM
Are you running CreateCustomerPaymentProfile() through in test mode (this is not the same thing as using a developer account or setting validationMode to test mode)? Because even if validationMode were set to testMode, it should still reject a bad expiration date. Billing address or a bad CCV could still be accepted depending on your AVS or CCV filter settings.
01-18-2012 05:02 PM
Profiles are being created and updated in our Live account which is set to LiveMode as well. All things would suggest livemode validation would work but it doesnt.
We only reject if ccv isn't matched (which it shouldn't) and avs just sets flags but still accepts a transaction to be processed on a case by case basis.
01-18-2012 05:09 PM - edited 01-18-2012 05:12 PM
Maybe it's not receiving the liveMode value. Try logging the XML just before it gets sent to Authorize.net, verify that the value is actually making it through.
01-18-2012 07:39 PM
Thank you. It appears that it's not being serialized out at all, so this looks very promising.
Thanks,
Robert Wearing
01-19-2012 09:25 AM
validationModeSpecified was never being set to true; I guess we missed it while reading through the API. Thanks for your help.
01-19-2012 10:38 AM
Nine times out of ten, the problem is human error :)
01-19-2012 11:18 AM