public function submitPayment() { $dir = $this->getMethodDirectory(); //require_once $dir.'anet_php_sdk/AuthorizeNet.php'; $METHOD_TO_USE = "AIM"; define("AUTHORIZENET_API_LOGIN_ID", Config::get('vividstore.authnetLoginID')); // Add your API LOGIN ID define("AUTHORIZENET_TRANSACTION_KEY", Config::get('vividstore.authnetTransactionKey')); // Add your API transaction key define("AUTHORIZENET_SANDBOX", Config::get('vividstore.authnetTestmode')); // Set to false to test against production define("TEST_REQUEST", "FALSE"); // You may want to set to true if testing against production //define("AUTHORIZENET_MD5_SETTING",""); // Add your MD5 Setting. //$site_root = ""; // Add the URL to your site if (AUTHORIZENET_API_LOGIN_ID == "") { die('Enter your merchant credentials'); } $transaction = new AuthorizeNetAIM(); $transaction->setSandbox(AUTHORIZENET_SANDBOX); $transaction->setFields(array('amount' => VividCart::getTotal(), 'card_num' => $_POST['authnet-checkout-credit-card'], 'exp_date' => $_POST['authnet-checkout-exp-month'] . $_POST['authnet-checkout-exp-year'])); $response = $transaction->authorizeAndCapture(); if ($response->approved) { return true; } else { return array('error' => 1, 'errorMessage' => $response->error_message . " Error Code: " . $response->response_code . ". Message: " . $response->response_reason_text); } }
public function testGetUnsettledTransactionList() { $sale = new AimRequest(); $amount = rand(1, 100); $response = $sale->authorizeAndCapture($amount, '4012888818888', '04/17'); $this->assertTrue($response->approved); $request = new Request(); $response = $request->getUnsettledTransactionList(); $this->assertTrue($response->isOk()); $this->assertTrue($response->xml->transactions->count() >= 1); }
public function testInvalidCredentials() { if (MERCHANT_LIVE_API_LOGIN_ID) { // Post a response to live server using invalid credentials. $sale = new Request('a', 'a'); $sale->setSandbox(false); $sale->setFields(array('amount' => rand(1, 1000), 'card_num' => '6011000000000012', 'exp_date' => '0415')); $response = $sale->authorizeAndCapture(); $this->assertTrue($response->error); $this->assertEquals("13", $response->response_reason_code); } }
public function testUpdateSplitTenderGroup() { // Create a partial auth test transaction $amount = 4.92; $sale = new AimRequest(); $sale->amount = $amount; $sale->card_num = '4222222222222'; $sale->zip = "46225"; $sale->exp_date = '04/24'; $sale->allow_partial_auth = true; $response = $sale->authorizeAndCapture(); $this->assertTrue($response->held); $this->assertEquals("1.23", $response->amount); $this->assertEquals($amount, $response->requested_amount); $split_tender_id = $response->split_tender_id; // Charge a bit more $sale = new AimRequest(); $sale->amount = 1.23; $sale->card_num = '6011000000000012'; $sale->exp_date = '04/26'; $sale->split_tender_id = $split_tender_id; $sale->allow_partial_auth = true; $response = $sale->authorizeAndCapture(); $this->assertTrue($response->approved); // Void the group of partial auths. $request = new Request(); $response = $request->updateSplitTenderGroup($split_tender_id, "voided"); $this->assertTrue($response->isOk()); }
public function testSetBadField() { try { $amount = rand(1, 1000); $zipcode = "02301"; $sale = new Request(); $sale->setFields(array('amount' => $amount, 'card_num' => '6011000000000012', 'exp_date' => '0415', 'zipcode' => $zipcode)); $result = $sale->authorizeAndCapture(); $this->assertTrue($result->approved); // should have thrown an exception by now $this->assertFalse(true); } catch (AuthorizeNetException $e) { $this->assertTrue(true); } }