<?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: Hosted Payment md5 hash error 99 in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55759#M30599</link>
    <description>&lt;P&gt;I've been fighting against failed MD5 checksums for awhile now with payment profiles, although they work fine for non-payment-profile transactions.&amp;nbsp;&amp;nbsp; Are you saying you got it working by prefixing your amount with a $ (or locale-equivalent)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I had noticed that authorize.net stated somewhere that they would soon be providing some new transaction checksum down the road and I had assumed that md5 checksums was unfixably broken for payment profiles.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.developer.authorize.net/t5/Integration-and-Testing/MD5-Hash-fails-for-CIM-profile-payment-method-but-works-for/m-p/53589#M28695" target="_blank"&gt;https://community.developer.authorize.net/t5/Integration-and-Testing/MD5-Hash-fails-for-CIM-profile-payment-method-but-works-for/m-p/53589#M28695&lt;/A&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 16 Sep 2016 00:12:33 GMT</pubDate>
    <dc:creator>mkienenb</dc:creator>
    <dc:date>2016-09-16T00:12:33Z</dc:date>
    <item>
      <title>Hosted Payment md5 hash error 99</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55752#M30593</link>
      <description>&lt;P&gt;No matter what I do, I cannot make my fingerprint match that generated by &lt;A href="https://developer.authorize.net/api/reference/responseCode99.html" target="_blank"&gt;https://developer.authorize.net/api/reference/responseCode99.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My PHP is below, and it used the hmac function from the SDK. I'm using fixed values for testing purposes. Despite beign obfuscated, I know for a fact my transaction_key is correct as is my x_login.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;function hmac ($key, $data) {
	return (bin2hex (mhash(MHASH_MD5, $data, $key)));
} 
 
$transaction_key = "xxxxxxxxxxxxxxxxx";
$x_login = "yyyyyyyy";
$x_amount = "50";
$x_fp_sequence = "159383";
$x_fp_timestamp = "1473967216";

$hmac_data = $x_login . "^" . $x_fp_sequence . "^" . $x_fp_timestamp . "^" . $x_amount;

$x_fp_hash = hmac ($transaction_key,$hmac_data);&lt;/PRE&gt;&lt;P&gt;The result of the code 636fb8386946440d945390989aca6234.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When I feed those same numbers to &lt;A href="https://developer.authorize.net/api/reference/responseCode99.html" target="_blank"&gt;https://developer.authorize.net/api/reference/responseCode99.html&lt;/A&gt; I get 0FCDB7701BE1FAE7B0CEF727344EF658.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What is going on here?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;How do I generate a proper MD5 hash for a hosted payment form?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What's even more confusing is this link (&lt;A href="https://support.authorize.net/authkb/index?page=content&amp;amp;id=A1706&amp;amp;actp=LIST_RECENT" target="_blank"&gt;https://support.authorize.net/authkb/index?page=content&amp;amp;id=A1706&amp;amp;actp=LIST_RECENT&lt;/A&gt;) says that the encryption method has been changed from MD5 to HMAC-SHA512 but nowhere in the downloadable guides does it mention this.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;So is it MD5 ort SHA512?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 15 Sep 2016 20:45:23 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55752#M30593</guid>
      <dc:creator>cdrugly</dc:creator>
      <dc:date>2016-09-15T20:45:23Z</dc:date>
    </item>
    <item>
      <title>Re: Hosted Payment md5 hash error 99</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55756#M30596</link>
      <description>&lt;P&gt;I was finally able to get the fingerprints to match by including the (optional) currency code.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I've found that it's not optional at all. If you do not include it in your fingerprint hash as well as your form data, it will results in an error 99.&lt;BR /&gt;&lt;BR /&gt;I hope this helps someone else who has beating their head against the wall like I have.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 15 Sep 2016 21:40:24 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55756#M30596</guid>
      <dc:creator>cdrugly</dc:creator>
      <dc:date>2016-09-15T21:40:24Z</dc:date>
    </item>
    <item>
      <title>Re: Hosted Payment md5 hash error 99</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55759#M30599</link>
      <description>&lt;P&gt;I've been fighting against failed MD5 checksums for awhile now with payment profiles, although they work fine for non-payment-profile transactions.&amp;nbsp;&amp;nbsp; Are you saying you got it working by prefixing your amount with a $ (or locale-equivalent)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I had noticed that authorize.net stated somewhere that they would soon be providing some new transaction checksum down the road and I had assumed that md5 checksums was unfixably broken for payment profiles.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.developer.authorize.net/t5/Integration-and-Testing/MD5-Hash-fails-for-CIM-profile-payment-method-but-works-for/m-p/53589#M28695" target="_blank"&gt;https://community.developer.authorize.net/t5/Integration-and-Testing/MD5-Hash-fails-for-CIM-profile-payment-method-but-works-for/m-p/53589#M28695&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Sep 2016 00:12:33 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Hosted-Payment-md5-hash-error-99/m-p/55759#M30599</guid>
      <dc:creator>mkienenb</dc:creator>
      <dc:date>2016-09-16T00:12:33Z</dc:date>
    </item>
  </channel>
</rss>

