Showing results for 
Search instead for 
Did you mean: 

The validationMode, Cardcode Verification when creating a custom profile and the CIM.

Hi Support,


We've integrated using the SDK and recently one of our clients reported a problem that there are lots of $.00 voided transactions created before the real transactions are processed.  And we've been told that this was caused by the ValidationMode =LIVE when creating the customer profile.



So I've got some questions about the validation mode, see below:


1. What is the difference between the live mode and the test mode? Does this mode make any difference on how the processes the card code verification? More importantly, if we change the validation mode from Live to Test, and process the transaction based on the customer profile generated on test mode. Will a higher-than-normal processing fee rate be applied because some of the validations were not applied in Test mode?


2. I've seen the Cardcode parameter is available on both the createCustomerProfileRequest and the createTransactionRequest. If the card code is provided when creating the customer profile, do we still need to provide the card code in the createTransactionRequest when using the customer profile?


3. It seems like the custom profile can only be used when the CIM is enabled on the merchant account, but some of our clients don't have that feature enabled. Is there an easy way to get the feature enabled? or is there an alternative solution to process the recurring transactions without creating the customer profiles? can we use the GUEST profile if the CIM is not enabled?


Please have a look, thanks in advance!



Xiao Ma


1.  Validation mode - the request results in a $0 authorization request being through the processor to the card issuer. If the request is successful then it is voided. The benefit of sending this parameter is that you know that the card can successfully generate an authorization at the time of profile generation. A card code is sent with this request to the processor and should result in a valid cvvResultCode or cavvResultCode. The cardCode is never stored with the Customer Payment Profile.


Test mode - the request does not leave Authorize.Net but basic validations are performed on the card, expiration date, and cardCode. This mode will not tell you if the card or cardCode will generate an authorization when sent with a transaction. Test mode does not result in a request being sent to the processor and should result in no processor fees.


2. Authorize.Net never stores the cardCode, so it should be reentered with a createTransactionRequest.


3. Accounts by default have CIM enabled. However, it can be disabled by the merchant in their settings. There isn't an API for it, the merchant will need to enable it manually by:

1. Logging into

2. Select "Customer Information Manager"

3. Click link that says "Sign Up for Customer Information Manager (CIM) Now"

4. Accept the agreement.


Recurring Billing will always generate customer profiles, there is not an alternative. However, CIM does not need to be enabled for Recurring Billing to utilize profiles.


Guest profiles are not available if CIM is disabled.


I hope that helps!





Administrator Administrator

Thank you!

We've changed the Validation Mode toTest mode, but one of our clients is now receiving $1 authorization charges. It suppose to be no authorization transaction in test mode, do you know why this is happening?


Part of the email our client received:


========= ORDER INFORMATION ========= 
Invoice : none 
Description : Test transaction for ValidateCustomerPaymentProfile. 
Amount : 1.00 (USD) 
Payment Method: Visa xxxx1878 
Transaction Type: Authorization Only


Thanks for your help.

Xiao Ma

Hi Support,


Can we disable the credit card validations completely by setting the validation mode to None ?I've found the None option in the Java SDK .