Authorize.net Sandbox Account Marketpress

I am trying to utilize our Sandbox Authorize.net account to test credit card transaction within the marketpress plugin. I keep getting an error that states "There was a problem finalizing your purchase. (TESTMODE). Should the mode be switched to "Live" in order to use a full developer Sandbox account? I am trying to set it up so transaction are sent to our Sandbox Developer account so we can test the entire process.

  • Matt

    What if you are using a Sandbox developer account. I think people get confused with Test Mode and Sandbox Account. On authorize.net in the developer Sandbox account, you can turn "Test Mode" on. I have that setting turned off, however, the receipt that I am getting from Authorize.net is showing that the transaction was completed in "*****Test Mode*****". Which means the transaction never gets to authorize.net. I am not sure why they even have this setting on the sandbox developer accounts because the developer accounts themselves are never going to hit the Merchants.

    Is something in the Marketpress plugin code sending the x_test_request=true option? If so, can this be controlled from the settings within the Marketpress plugin page on the wordpress Admin portal?

    I found this in the authorize.net developer forums that might explain my issue a bit further:

    Our test environment does not communicate with any external entity during transaction processing, meaning authorization requests are not sent to the issuing bank. For this reason there is no need to enable Test Mode within a test environment account and, if you want to be able to view the transactions you are submitting during testing, you must disable Test Mode within the account as well as remove x_test_request=true from your POST or change the value to equal false.

  • Jonathan

    Hey @Matt,

    I'll get this fixed up in the next version of MarketPress. In the mean time you can open up wp-content/plugins/marketpress/marketpress-includes/plugins-gateway/authorizenet-aim.php and go to line 541 - looks like this:

    if ($settings['gateways']['authorizenet-aim']['mode'] == 'sandbox') {
        $payment->setParameter("x_test_request", true);
    } else {
        $payment->setParameter("x_test_request", false);
    }

    simply change to:

    $payment->setParameter("x_test_request", false);

    Let me know if that works for you.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.