/** * Refund a capture transaction * * @param Varien_Object $payment * @param float $amount * @return $this * @throws Mage_Core_Exception */ public function refund(Varien_Object $payment, $amount) { $transactionId = $this->getParentTransactionId($payment); try { Stripe\Charge::retrieve($transactionId)->refund(); } catch (Exception $e) { $this->debugData($e->getMessage()); Mage::throwException(Mage::helper('boolfly_stripe')->__('Payment refunding error.')); } $payment->setTransactionId($transactionId . '-' . Mage_Sales_Model_Order_Payment_Transaction::TYPE_REFUND)->setParentTransactionId($transactionId)->setIsTransactionClosed(1)->setShouldCloseParentTransaction(1); return $this; }
$row['currency'] = $params['stg_currency']; } if (!empty($params['stg_surrate'])) { $row['surchargerate'] = $params['stg_surrate']; } $symbol = StripeGate\Utils::GetSymbol($row['currency']); $amount = StripeGate\Utils::GetPrivateAmount($params['stg_amount'], $row['amountformat'], $symbol); if ($row['surchargerate'] > 0.0 && empty($params['sgt_nosur'])) { $amount = ceil($amount * (1.0 + $row['surchargerate'])); } $card = array('number' => $params['stg_number'], 'exp_month' => $params['stg_month'], 'exp_year' => $params['stg_year'], 'cvc' => $params['stg_cvc']); $exdata = array('paywhat' => $params['stg_paywhat'], 'payfor' => $params['stg_payfor']); $data = array('amount' => $amount, 'currency' => $row['currency'], 'source' => $card, 'metadata' => $exdata); try { Stripe\Stripe::setApiKey($privkey); $charge = Stripe\Charge::create($data); //synchronous $params = array_merge($params, $charge->__toArray(TRUE)); $caller = NULL; $funcs = new StripeGate\Payer($caller, $this); $funcs->HandleResult($params); //redirects exit; } catch (Exception $e) { $message = $e->getMessage(); //all inputs resume foreach ($params as $key => $val) { if (strpos($key, 'stg_') === 0) { $t = substr($key, 4); ${$t} = $val; unset($params[$key]);
//// send the post values to USPS // curl_setopt($res, CURLOPT_POSTFIELDS, $uspsData); // $response = curl_exec($res); // $responseData = strstr($response, '<?') ; // $xmlParser = xml_parser_create(); // xml_parse_into_struct($xmlParser, $responseData, $responseValues, $index); // xml_parser_free($xmlParser); // // var_dump($responseValues); // // curl_close($res); // $shippingRate = $responseValues[11]['value']; // var_dump($shippingRate); // exit; $customerEmail = $data['email']; $charge = Stripe\Charge::create(array("amount" => $amount * 100 * $data['quantity'], "currency" => "usd", "source" => $token, "description" => $data['email'], 'receipt_email' => $data['email'])); if ($charge->paid == true) { $stmt = $app['db']->prepare(' INSERT INTO ismartbrowse_orders (email, firstName, lastName, gender, address1Billing, address2Billing, zipBilling, cityBilling, stateBilling, countryBilling, address1Shipping, address2Shipping, zipShipping, cityShipping, stateShipping, countryShipping, quantity, paymentChoice, sameAsShipping) VALUES (:email, :firstName, :lastName, :gender, :address1Billing, :address2Billing, :zipBilling, :cityBilling, :stateBilling, :countryBilling, :address1Shipping, :address2Shipping, :zipShipping, :cityShipping, :stateShipping, :countryShipping, :quantity, :payment, :sameAsShipping)'); $stmt->bindParam(':email', $data['email']); $stmt->bindParam(':firstName', $data['firstName']); $stmt->bindParam(':lastName', $data['lastName']); $stmt->bindParam(':gender', $data['gender']); $stmt->bindParam(':address1Billing', $data['address1Billing']); $stmt->bindParam(':address2Billing', $data['address2Billing']); $stmt->bindParam(':zipBilling', $data['zipBilling']); $stmt->bindParam(':cityBilling', $data['cityBilling']); $stmt->bindParam(':stateBilling', $data['stateBilling']); $stmt->bindParam(':countryBilling', $data['countryBilling']);
<?php require 'stripe-php-2.2.0/init.php'; if ($_POST) { Stripe\Stripe::setApiKey("sk_test_UYrpaLslRJJDQd0Wk3sDFePZ"); $error = ''; $success = ''; try { if (!isset($_POST['stripeToken'])) { throw new Exception("The Stripe Token was not generated correctly"); } Stripe\Charge::create(array("amount" => $_POST['amount'], "currency" => "cad", "card" => $_POST['stripeToken'])); $success = 'Your payment was successful.'; header("Location: ../public_html/success.php"); die; } catch (\Stripe\Error\Card $e) { $error = $e->getMessage(); } }