0

After the recent upgrade to 4.6.9, I am getting this error when processing secure Authorize.net payments:

Payment Processor Error message 9003: MD5 Verification failed

My payment processor settings appear to be correct, including API Login, Payment Key, MD5 Hash and Site URL. I am using the Drupal 7 CMS and both settings.php and civicrm.settings.php are correct.

No other issues exist after the upgrade.

*Edit:

I suspect the MD5 Hash value is wrong here, which has always been recorded as my store_id. Should this be a transaction key, or does the hash value come from Authorize.net? Here's a snip from my log file:

    Nov 03 09:27:04  [info] $Fatal Error Details = Array
(
    [message] => Invalid value passed to getPayment function
    [code] =>
)

Nov 03 09:27:04  [info] $backTrace = #0 /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/Error.php(364): CRM_Core_Error::backtrace("backTrace", TRUE)

1. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Financial/BAO/PaymentProcessor.php(188): CRM_Core_Error::fatal("Invalid value passed to getPayment function")
2. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Contribute/Form/ContributionBase.php(349): CRM_Financial_BAO_PaymentProcessor::getPayment("", "live")
3. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Contribute/Form/Contribution/Main.php(73): CRM_Contribute_Form_ContributionBase->preProcess()
4. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/Form.php(455): CRM_Contribute_Form_Contribution_Main->preProcess()
5. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/QuickForm/Action/Display.php(94): CRM_Core_Form->buildForm()
6. /home/example.com/public_html/sites/all/modules/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Display->perform(Object(CRM_Contribute_Form_Contribution_Main), "display")
7. /home/example.com/public_html/sites/all/modules/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Contribute_Form_Contribution_Main), "display")
8. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/Controller.php(353): HTML_QuickForm_Page->handle("display")
9. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/Invoke.php(312): CRM_Core_Controller->run((Array:3), NULL)
10. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/Invoke.php(86): CRM_Core_Invoke::runItem((Array:15))
11. /home/example.com/public_html/sites/all/modules/civicrm/CRM/Core/Invoke.php(54): CRM_Core_Invoke::_invoke((Array:3))
12. /home/example.com/public_html/sites/all/modules/civicrm/drupal/civicrm.module(489): CRM_Core_Invoke::invoke((Array:3))
13. [internal function](): civicrm_invoke("contribute", "transact")
14. /home/example.com/public_html/includes/menu.inc(527): call_user_func_array("civicrm_invoke", (Array:2))
15. /home/example.com/public_html/index.php(21): menu_execute_active_handler()
16. {main}
1

I found the issue. The ca.civicrm.moneris extension folder was deleted during the drush civicrm-upgrade process.

As a result, my "Moneris Credit Card" Payment Processor Type disappeared and defaulted to Authorize.net (which uses an MD5 hash algorithm) after the upgrade. After restoring this, I entered my API token as opposed to the store admin password in the Payment Processor Edit form and my transactions are now working again. I have renamed this field label to "API Token."

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.