<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to validate createCustomerPaymentProfileRequest without writing data to CIM if successful in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20156#M11062</link>
    <description>&lt;P&gt;Hmmm, all I'm really looking for is an AuthNet API method designed to simply validate submitted credit card information. I'm looking for something that will take as input:&lt;BR /&gt;&lt;BR /&gt;&amp;lt;billTo&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;firstName&amp;gt;&amp;lt;/firstName&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;lastName&amp;gt;&amp;lt;/lastName&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;address&amp;gt;&amp;lt;/address&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;city&amp;gt;&amp;lt;/city&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;state&amp;gt;&amp;lt;/state&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;zip&amp;gt;&amp;lt;/zip&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;country&amp;gt;&amp;lt;/country&amp;gt;&lt;BR /&gt;&amp;lt;/billTo&amp;gt;&lt;BR /&gt;&amp;lt;payment&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;creditCard&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;cardNumber&amp;gt;&amp;lt;/cardNumber&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;expirationDate&amp;gt;&amp;lt;/expirationDate&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;cardCode&amp;gt;&amp;lt;/cardCode&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;/creditCard&amp;gt;&lt;BR /&gt;&amp;lt;/payment&amp;gt;&lt;BR /&gt;&lt;BR /&gt;and produce as output either a list of errors - OR - return "true" to indicate that the submitted credit card information was valid.&lt;BR /&gt;&lt;BR /&gt;Do you know of an AuthNet API method that has these characteristics? If so, LMK. Thanks.&lt;/P&gt;</description>
    <pubDate>Fri, 16 Dec 2011 14:52:15 GMT</pubDate>
    <dc:creator>johnerck</dc:creator>
    <dc:date>2011-12-16T14:52:15Z</dc:date>
    <item>
      <title>How to validate createCustomerPaymentProfileRequest without writing data to CIM if successful</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20070#M11020</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm having trouble figuring out how to validate a customer payment profile &lt;STRONG&gt;&lt;EM&gt;prior&lt;/EM&gt;&lt;/STRONG&gt; to submitting the data for storage within CIM.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Today, I am using the "createCustomerPaymentProfileRequest" method. My process is to look and see if the&amp;nbsp;parsedResponse-&amp;gt;messages-&amp;gt;resultCode != 'Ok'. If the response resultCode does not equal 'Ok', then I map the errors back into the UI and have the user try again after changing their input (fix their CC number or whatever).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If the user inputs all the data correctly, I want to know that WITHOUT having submitted the data to CIM for storage, yet.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The thing is, my payment profile HTML inputs are part of a larger form and just because they get their payment profile data right, it doesn't mean they filled out the entire form correclty... I don't want to be creating the customer payment profile within CIM unless they've filled out the entire form correctly, not just the payment profile portion.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a validate payment profile method of some sort that I can use, rather than trying to write the data to CIM and only knowing that their data was correct if it writes successfully? If anybody knows, please let me know.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The only other thing I can think of is to work outside of the CIM functions and simply submit their CC info as an "authorize" transaction (as opposed to an "authorize and capture" transaction) as a method of validation.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any ideas, suggestions, etc. are welcome. Thanks.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best,&lt;/P&gt;&lt;P&gt;-jre&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;erck0006@gmail.com&lt;/P&gt;</description>
      <pubDate>Thu, 15 Dec 2011 16:02:11 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20070#M11020</guid>
      <dc:creator>johnerck</dc:creator>
      <dc:date>2011-12-15T16:02:11Z</dc:date>
    </item>
    <item>
      <title>Re: How to validate createCustomerPaymentProfileRequest without writing data to CIM if successful</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20090#M11030</link>
      <description>&lt;P&gt;I'm not understanding the problem. It sounds like you're using regular CIM, not hosted CIM, which means you process the transaction internally and can choose whether to do the profile first or second. Why not just do a basic check to see if all the fields have something in them, enter the non-CIM part of the transaction in your database with a "completed" flag set to false, do the CIM part, then go back and update the transaction to set completed to true and add the profile ID? Assuming of course it worked - if it didn't, you either delete the transaction on your side or have some automated process clean out the uncompleted transactions every so often.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Why do you need more than a success/fail on the CIM end of things?&lt;/P&gt;</description>
      <pubDate>Thu, 15 Dec 2011 16:49:00 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20090#M11030</guid>
      <dc:creator>TJPride</dc:creator>
      <dc:date>2011-12-15T16:49:00Z</dc:date>
    </item>
    <item>
      <title>Re: How to validate createCustomerPaymentProfileRequest without writing data to CIM if successful</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20156#M11062</link>
      <description>&lt;P&gt;Hmmm, all I'm really looking for is an AuthNet API method designed to simply validate submitted credit card information. I'm looking for something that will take as input:&lt;BR /&gt;&lt;BR /&gt;&amp;lt;billTo&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;firstName&amp;gt;&amp;lt;/firstName&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;lastName&amp;gt;&amp;lt;/lastName&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;address&amp;gt;&amp;lt;/address&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;city&amp;gt;&amp;lt;/city&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;state&amp;gt;&amp;lt;/state&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;zip&amp;gt;&amp;lt;/zip&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;country&amp;gt;&amp;lt;/country&amp;gt;&lt;BR /&gt;&amp;lt;/billTo&amp;gt;&lt;BR /&gt;&amp;lt;payment&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;creditCard&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;cardNumber&amp;gt;&amp;lt;/cardNumber&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;expirationDate&amp;gt;&amp;lt;/expirationDate&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;cardCode&amp;gt;&amp;lt;/cardCode&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;lt;/creditCard&amp;gt;&lt;BR /&gt;&amp;lt;/payment&amp;gt;&lt;BR /&gt;&lt;BR /&gt;and produce as output either a list of errors - OR - return "true" to indicate that the submitted credit card information was valid.&lt;BR /&gt;&lt;BR /&gt;Do you know of an AuthNet API method that has these characteristics? If so, LMK. Thanks.&lt;/P&gt;</description>
      <pubDate>Fri, 16 Dec 2011 14:52:15 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20156#M11062</guid>
      <dc:creator>johnerck</dc:creator>
      <dc:date>2011-12-16T14:52:15Z</dc:date>
    </item>
    <item>
      <title>Re: How to validate createCustomerPaymentProfileRequest without writing data to CIM if successful</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20158#M11063</link>
      <description>&lt;P&gt;You can use AIM and do an AUTH_ONLY for $0 or 1¢ depending on what your processor supports (then VOID that transaction). You'll find out if the card is good and get AVS and CVV results.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Dec 2011 14:58:41 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20158#M11063</guid>
      <dc:creator>stymiee</dc:creator>
      <dc:date>2011-12-16T14:58:41Z</dc:date>
    </item>
    <item>
      <title>Re: How to validate createCustomerPaymentProfileRequest without writing data to CIM if successful</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20170#M11069</link>
      <description>&lt;P&gt;stymiee's solution will work, though if there's any chance you might want to charge the card at some future point, CIM would probably still be a good idea. From the documentation:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Input Elements for validateCustomerPaymentProfileRequest&lt;/STRONG&gt;&lt;BR /&gt;This function is used to verify an existing customer payment profile by generating a test transaction. No customer receipt emails are sent when calling validateCustomerPaymentProfileRequest.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt; 
&amp;lt;validateCustomerPaymentProfileRequest 
xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd"&amp;gt; 
  &amp;lt;merchantAuthentication&amp;gt; 
    &amp;lt;name&amp;gt;YourUserLogin&amp;lt;/name&amp;gt; 
    &amp;lt;transactionKey&amp;gt;YourTranKey&amp;lt;/transactionKey&amp;gt; 
  &amp;lt;/merchantAuthentication&amp;gt; 
  &amp;lt;customerProfileId&amp;gt;10000&amp;lt;/customerProfileId&amp;gt; 
  &amp;lt;customerPaymentProfileId&amp;gt;20000&amp;lt;/customerPaymentProfileId&amp;gt; 
  &amp;lt;customerShippingAddressId&amp;gt;30000&amp;lt;/customerShippingAddressId&amp;gt; 
  &amp;lt;validationMode&amp;gt;liveMode&amp;lt;/validationMode&amp;gt; 
&amp;lt;/validateCustomerPaymentProfileRequest&amp;gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;Also from the documentation:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The &lt;STRONG&gt;validationMode&lt;/STRONG&gt; parameter allows you to generate a test transaction at the time you create or&amp;nbsp; update a customer profile. The functions &lt;STRONG&gt;createCustomerProfileRequest,&amp;nbsp; createCustomerPaymentProfileRequest, updateCustomerPaymentProfileRequest&lt;/STRONG&gt; and&amp;nbsp; &lt;STRONG&gt;validateCustomerPaymentProfileRequest&lt;/STRONG&gt; all include a validationMode element, which can have&amp;nbsp; one of the following values:&lt;BR /&gt;&lt;BR /&gt;• &lt;STRONG&gt;testMode&lt;/STRONG&gt; - performs field validation only. During field validation, all fields are checked.&amp;nbsp; However, fields with unrestricted field definitions (such as telephone number) do not&amp;nbsp; generate errors.&amp;nbsp; If you select testMode, a $1.00 test&amp;nbsp; transaction is submitted to verify that the credit card&amp;nbsp; number is in a valid format using the Luhn MOD 10 algorithm. This test transaction does&amp;nbsp; not appear on the customer's credit card statement, but it will generate a transaction receipt&amp;nbsp; e-mail to the merchant.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;• &lt;STRONG&gt;liveMode&lt;/STRONG&gt; - generates a transaction to the processor in the amount of $0.01 or $0.00. If&amp;nbsp; successful, the transaction is immediately voided. Visa authorization transactions are being&amp;nbsp; switched from $0.01 to $0.00 for all processors. All other credit card types use $0.01. We&amp;nbsp; recommend you consult your Merchant Account Provider before switcAuthorizations for Visa, because you may be subject to fees.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For Visa transactions using $0.00, the billTo address and billTo zip fields are required.&lt;/P&gt;</description>
      <pubDate>Fri, 16 Dec 2011 15:35:23 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/How-to-validate-createCustomerPaymentProfileRequest-without/m-p/20170#M11069</guid>
      <dc:creator>TJPride</dc:creator>
      <dc:date>2011-12-16T15:35:23Z</dc:date>
    </item>
  </channel>
</rss>

