本文整理汇总了PHP中PayPal\Api\Payment::getLinks方法的典型用法代码示例。如果您正苦于以下问题:PHP Payment::getLinks方法的具体用法?PHP Payment::getLinks怎么用?PHP Payment::getLinks使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PayPal\Api\Payment
的用法示例。
在下文中一共展示了Payment::getLinks方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: postPayment
public function postPayment()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$item_1 = new Item();
$item_1->setName('Item 1')->setCurrency('USD')->setQuantity(2)->setPrice('150');
// unit price
$item_2 = new Item();
$item_2->setName('Item 2')->setCurrency('USD')->setQuantity(4)->setPrice('70');
$item_3 = new Item();
$item_3->setName('Item 3')->setCurrency('USD')->setQuantity(1)->setPrice('20');
// add item to list
$item_list = new ItemList();
$item_list->setItems(array($item_1, $item_2, $item_3));
$amount = new Amount();
$amount->setCurrency('USD')->setTotal(580);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Your transaction description');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(URL::route('payment.status'))->setCancelUrl(URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
// echo'hello';
// print_r($test);die;
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Some error occur, sorry for inconvenient');
}
}
if (is_array($payment->getLinks()) || is_object($payment->getLinks())) {
foreach ($payment->getLinks() as $link) {
echo 'reached';
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
dd(Session::all());
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return Redirect::route('original.route')->with('error', 'Unknown error occurred');
}
示例2: postPayment
public function postPayment($producto_id)
{
$producto = Producto::find($producto_id);
if (is_null($producto)) {
App::abort(404);
}
$productoYaComprado = User::find(Auth::user()->id)->Productos()->whereProducto_id($producto->id)->first();
if (!is_null($productoYaComprado)) {
App::abort(404);
}
\Session::put('producto_id', $producto_id);
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$items = array();
$subtotal = 0;
$currency = 'MXN';
$item = new Item();
$item->setName($producto->nombre)->setCurrency($currency)->setDescription($producto->nombre)->setQuantity(1)->setPrice($producto->precio);
$items[] = $item;
$subtotal += $producto->precio;
$item_list = new ItemList();
$item_list->setItems($items);
$details = new Details();
$details->setSubtotal($subtotal);
//->setShipping(100);
//$total = $subtotal + 100;
$total = $subtotal;
$amount = new Amount();
$amount->setCurrency($currency)->setTotal($total)->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(\URL::route('payment.status'))->setCancelUrl(\URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
return \Redirect::route('home')->with('message', 'Algo salió mal, inténtalo de nuevo más tarde.');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
\Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return \Redirect::away($redirect_url);
}
return \Redirect::route('home')->with('message', 'Ups! Error desconocido. Inténtalo de nuevo más tarde.');
}
示例3: postPayment
public function postPayment()
{
$data = array();
if (is_array(Input::get('room_id'))) {
foreach (Input::get('room_id') as $key => $val) {
$data[$key] = array('am_id' => Input::get('am_id.' . $key), 'rooms' => $val);
}
}
$data2 = array();
if (is_array(Input::get('add_Am'))) {
foreach (Input::get('add_Am') as $key => $val) {
$data2[$key] = array('am_id' => Input::get('am_id.' . $key), 'rooms' => $val);
}
}
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$name = Input::get('packname');
$price = Input::get('amount');
$input_dFrom = Input::get('package_datefrom');
$input_dTo = Input::get('package_dateto');
$input_nPax = Input::get('num_pax');
$input_fName = Input::get('fullN');
$postData = new Reservation();
$postData->dataInsertPost($name, $price, $input_dFrom, $input_dTo, $input_nPax, $input_fName, json_encode($data), 'PayPal', json_encode($data2));
$item_1 = new Item();
$item_1->setName($name)->setCurrency('PHP')->setQuantity('1')->setPrice(intval($price));
// unit price
// add item to list
$item_list = new ItemList();
$item_list->setItems(array($item_1));
$amount = new Amount();
$amount->setCurrency('PHP')->setTotal(intval($price));
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Your transaction description');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(URL::route('payment.status'))->setCancelUrl(URL::route('payment.status'));
// $redirect_urls->setReturnUrl(URL::to('/dashboard/accommodation'))
// ->setCancelUrl(URL::to('/dashboard/accommodation'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (PayPal\Exception\PayPalConnectionException $e) {
echo $e->getData();
// This will print a JSON which has specific details about the error.
exit;
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
return json_encode(['url' => $redirect_url]);
}
return Redirect::route('dashboard.packages.accommodation')->with('error', 'Unknown error occurred');
}
示例4: postPayment
public function postPayment()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
// $item_1 = new Item();
// $item_1->setName('Item 1') // item name
// ->setCurrency('PHP')
// ->setQuantity('1')
// ->setPrice('0.01'); // unit price
$package1 = Input::get('packname');
$amount1 = Input::get('amount');
$item_1 = new Item();
$item_1->setName($package1)->setCurrency('PHP')->setQuantity('1')->setPrice($amount1);
// unit price
// add item to list
$item_list = new ItemList();
$item_list->setItems(array($item_1));
$amount = new Amount();
$amount->setCurrency('PHP')->setTotal($package1);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Your transaction description');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(URL::route('payment.status'))->setCancelUrl(URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
// try {
// $payment->create($this->_api_context);
// } catch (\PayPal\Exception\PPConnectionException $ex) {
//
// if (\Config::get('app.debug')) {
// echo "Exception: " . $ex->getMessage() . PHP_EOL;
// $err_data = json_decode($ex->getData(), true);
// exit;
// } else {
// die('Some error occur, sorry for inconvenient');
// }
// }
try {
$payment->create($this->_api_context);
} catch (PayPal\Exception\PayPalConnectionException $e) {
echo $e->getData();
// This will print a JSON which has specific details about the error.
exit;
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return Redirect::route('original.route')->with('error', 'Unknown error occurred');
}
示例5: postPayment
public function postPayment()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$items = [];
$num = 1;
$total = 0;
foreach (Auth::user()->cart as $item) {
${"item_" . $num} = new Item();
${"item_" . $num}->setName($item->product->name)->setCurrency('USD')->setQuantity($item->amount)->setPrice($item->product->price);
$items[] = ${"item_" . $num};
$num++;
$total += $item->product->price * $item->amount;
}
if (Session::has('coupon')) {
$discount = $total * Session::get('coupon.discount') / 100;
$total = $total - $discount;
${"item_" . $num} = new Item();
${"item_" . $num}->setName('discount')->setCurrency('USD')->setQuantity(1)->setPrice(-$discount);
$items[] = ${"item_" . $num};
}
// add item to list
$item_list = new ItemList();
$item_list->setItems($items);
$amount = new Amount();
$amount->setCurrency('USD')->setTotal($total);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription(Auth::user()->email);
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(route('payment.status'))->setCancelUrl(route('home'));
// ->setCancelUrl(route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Some error occur, sorry for inconvenient');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return Redirect('/')->with('error', 'Unknown error occurred');
}
示例6: pay
public function pay()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
//agregar items de base de datos
$items = array();
$subtotal = 0;
$productos = DB::table('carrito')->Join('producto', 'carrito.ItemCode', '=', 'producto.ItemCode')->where('carrito.user_id', Auth::user()->id)->get();
//dd(Auth::user()->id);
$currency = 'MXN';
foreach ($productos as $key => $p) {
$pIva = $p->precio * 0.16;
$precioIva = $p->precio + $pIva;
$item = new Item();
$item->setName($p->ItemName)->setCurrency($currency)->setDescription($p->tipo)->setQuantity($p->cantidad)->setPrice($precioIva);
$items[$key] = $item;
$subtotal += $p->cantidad * $precioIva;
}
// add item to list
$item_list = new ItemList();
$item_list->setItems($items);
$details = new Details();
$details->setSubtotal($subtotal)->setShipping(100);
$total = $subtotal + 100;
$amount = new Amount();
$amount->setCurrency($currency)->setTotal($total)->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Your transaction description');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(URL::route('payment.status'))->setCancelUrl(URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
return Redirect::route('carrito.failed');
exit;
} else {
return Redirect::route('carrito.failed');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return Redirect::route('carrito.failed');
}
示例7: postPayment
public function postPayment()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$items = array();
$subtotal = 0;
$cart = \Session::get('cart');
$currency = 'MXN';
foreach ($cart as $producto) {
$item = new Item();
$item->setName($producto->name)->setCurrency($currency)->setDescription($producto->extract)->setQuantity($producto->quantity)->setPrice($producto->price);
$items[] = $item;
$subtotal += $producto->quantity * $producto->price;
}
$item_list = new ItemList();
$item_list->setItems($items);
//costo de envio de la compra
$details = new Details();
$details->setSubtotal($subtotal)->setShipping(100);
//total de envio sumando el subtotal mas el envio
$total = $subtotal + 100;
$amount = new Amount();
$amount->setCurrency($currency)->setTotal($total)->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Pedido de prueba con laravel para La Central Mueblera');
//la ruta para direccionar si se cancela o se envia conrectamente el pedido
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(\URL::route('payment.status'))->setCancelUrl(\URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Ups! Algo salió mal');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
\Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return \Redirect::away($redirect_url);
}
return \Redirect::route('cart-show')->with('error', 'Ups! Error desconocido.');
}
示例8: postPayment
public function postPayment()
{
$name = 'Transaction';
/*$mmnumber = Input::get('number');
$amounttosend = Input::get('amount');
$currency = Input::get('currency');*/
$mmnumber = Input::get('number');
$amounttosend = Input::get('amount');
$currency = Input::get('currency');
$charges = new PlatformCharges($amounttosend, $currency);
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$item_1 = new Item();
$item_1->setName('Transaction')->setCurrency('USD')->setQuantity(1)->setPrice((int) $charges->getDueAmountForPayPalToMobileMoney());
// unit price
// add item to list
$item_list = new ItemList();
$item_list->setItems(array($item_1));
$amount = new Amount();
$amount->setCurrency('USD')->setTotal((int) $charges->getDueAmountForPayPalToMobileMoney());
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Send money To a Mobile Money User');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(URL::route('payment-status'))->setCancelUrl(URL::route('payment-status'));
$payment = new Payment();
$payment->setIntent('sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Some error occurred, sorry for inconvenient');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return "Error!!!!";
/*Redirect::route('original.route')
->with('error', 'Unknown error occurred'); */
}
示例9: postBuy
public function postBuy(Request $request)
{
$data = $request->all();
$customer = $this->customer->getByToken();
$shopping_cart = $this->cart->getByToken();
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$paypal_items = [];
$total = 0;
foreach ($shopping_cart->shopping_cart_products as $shopping_cart_product) {
$item = new Item();
$item->setName($shopping_cart_product->product_collection_name . " // " . $shopping_cart_product->product_variant_name . " // " . $shopping_cart_product->product_color_name)->setCurrency(config('shop.default_currency'))->setQuantity($shopping_cart_product->quantity)->setPrice($shopping_cart_product->price_brut / 100);
array_push($paypal_items, $item);
$total += $shopping_cart_product->price_brut / 100 * $shopping_cart_product->quantity;
}
$subtotal = $total;
$total += config('shop.default_shipping_cost') / 100;
$item_list = new ItemList();
$item_list->setItems($paypal_items);
$details = new Details();
$details->setShipping(config('shop.default_shipping_cost') / 100)->setSubtotal($subtotal);
$amount = new Amount();
$amount->setCurrency(config('shop.default_currency'))->setTotal($total)->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Einkauf bei ZWEI :: Taschen');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(url(config('app.locale') . '/paypal/thankyou'))->setCancelUrl(url(config('app.locale') . '/paypal/cancellation'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (config('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die(trans('shop.some_error_occurred'));
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
$this->cart->update(['id' => $shopping_cart->id, 'paypal_payment_id' => $payment->getId(), 'remarks' => $data['remarks'], 'customer_id' => $customer->id]);
if (isset($redirect_url)) {
return redirect($redirect_url);
}
return redirect()->route(config('app.locale') . '/feedback/paypal-error')->with('error', trans('shop.some_error_occurred'));
}
示例10: pay
public function pay()
{
#dd(Input::all());
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$counter = 0;
$items = [];
foreach (Input::all() as $input) {
if (Input::has('item_name' . $counter)) {
$item = new Item();
$item->setName(Input::get('item_name' . $counter))->setCurrency('EUR')->setQuantity(Input::get('item_qtt' . $counter))->setPrice(Input::get('item_price' . $counter));
$items[] = $item;
}
$counter++;
}
$item_list = new ItemList();
$item_list->setItems($items);
$amount = new Amount();
$amount->setCurrency('EUR')->setTotal(Input::get('total'));
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('This is just a demo transaction');
$redirect_url = new RedirectUrls();
$redirect_url->setReturnUrl(URL::route('paymentStatus'))->setCancelUrl(URL::route('paymentStatus'));
$payment = new Payment();
$payment->setIntent('sale')->setPayer($payer)->setRedirectUrls($redirect_url)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Some error occur, sorry for inconvenient');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return Redirect::route('original.route')->with('error', 'Unknown error occurred');
}
示例11: postPayment
public function postPayment()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$items = array();
$subtotal = 0;
$cart = \Session::get('cart');
$currency = 'USD';
foreach ($cart as $producto) {
$item = new Item();
$item->setName($producto->tipograno)->setCurrency($currency)->setDescription($producto->descripcion)->setQuantity($producto->cantidad)->setPrice($producto->precio);
$items[] = $item;
$subtotal += $producto->cantidad * $producto->precio;
}
$item_list = new ItemList();
$item_list->setItems($items);
$total = $subtotal;
$amount = new Amount();
$amount->setCurrency($currency)->setTotal($total);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Pedido de prueba en Agricola Grain App');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(\URL::route('payment.status'))->setCancelUrl(\URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Ups! Algo salió mal');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
\Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return \Redirect::away($redirect_url);
}
return \Redirect::route('cart-show')->with('error', 'Ups! Error desconocido.');
}
示例12: postPayment
public function postPayment()
{
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$items = array();
$subtotal = 0;
$cart = \Session::get('product');
$currency = 'USD';
$item = new Item();
$item->setName($cart->name)->setCurrency($currency)->setDescription($cart->description)->setQuantity(1)->setPrice($cart->price);
$items[] = $item;
$subtotal += $cart->price;
$item_list = new ItemList();
$item_list->setItems($items);
$details = new Details();
$details->setSubtotal($subtotal)->setShipping(0);
$total = $subtotal + 0;
$amount = new Amount();
$amount->setCurrency($currency)->setTotal($total)->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Order plan in hdsports.in');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(\URL::route('payment.status'))->setCancelUrl(\URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Ups! something went wrong');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
\Session::put('paypal_payment_id', $payment->getId());
if (isset($redirect_url)) {
// redirect to paypal
return \Redirect::away($redirect_url);
}
return \Redirect::to('/')->with('message', 'Ups! Unknown mistake.');
}
示例13: postPayment
public function postPayment()
{
// echo '123123';exit;
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$total = Input::get('total');
$qty = Input::get('qty');
$price = Input::get('price');
$bill_id = Input::get('bill_id');
$item_1 = new Item();
$item_1->setName(Input::get('service_name'))->setCurrency('USD')->setQuantity($qty)->setPrice($price);
// unit price
// add item to list
$item_list = new ItemList();
$item_list->setItems(array($item_1));
$amount = new Amount();
$amount->setCurrency('USD')->setTotal($total);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Your transaction description');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(URL::route('payment.status'))->setCancelUrl(URL::route('payment.status'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Some error occur, sorry for inconvenient');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
Session::put('paypal_payment_id', $payment->getId());
Session::put('bill_id', $bill_id);
if (isset($redirect_url)) {
// redirect to paypal
return Redirect::away($redirect_url);
}
return Redirect::route('original.route')->with('error', 'Unknown error occurred');
}
示例14: create_payment
/**
* Cria o pagamento Paypal: passos 2/3
*
* @access public
* @param
* @return error string
*/
public function create_payment($items_array, $details_array)
{
$payer = new Payer();
$payer->setPaymentMethod("paypal");
// define os items
$i = 0;
foreach ($items_array as $item) {
$items[$i] = new Item();
$items[$i]->setName($item['name'])->setCurrency(PAYPAL_CURRENCY)->setQuantity($item['quantity'])->setPrice($item['price']);
$i++;
}
$itemList = new ItemList();
$itemList->setItems($items);
// Define os totais
$details = new Details();
$details->setShipping($details_array['shipping'])->setTax($details_array['tax'])->setSubtotal($details_array['subtotal']);
// Define a quantidade
$amount = new Amount();
$amount->setCurrency(PAYPAL_CURRENCY)->setTotal($details_array['total'])->setDetails($details);
// cria a transação
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($itemList)->setDescription("");
// cria o URL
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl(SITE_PATH . "success.php")->setCancelUrl(SITE_PATH . "cart.php");
// cria o pagamento
$payment = new Payment();
$payment->setIntent("sale")->setPayer($payer)->setRedirectUrls($redirectUrls)->setTransactions(array($transaction));
try {
$payment->create($this->api_context);
} catch (PayPal\Exception\PPConnectionException $ex) {
return $ex->getMessage();
}
// busca o URL de redirecionamento
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirectUrl = $link->getHref();
break;
}
}
// redireciona
$_SESSION['payment_id'] = $payment->getId();
if (isset($redirectUrl)) {
header("Location: {$redirectUrl}");
exit;
}
}
示例15: postPayment
public function postPayment()
{
$input_amount = \Input::get('amount');
$input_user_id = \Input::get('user_id');
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$item_1 = new Item();
$item_1->setName('Υπηρεσίες freelancing')->setCurrency('EUR')->setQuantity(1)->setPrice($input_amount);
// unit price
// add item to list
$item_list = new ItemList();
$item_list->setItems(array($item_1));
$amount = new Amount();
$amount->setCurrency('EUR')->setTotal($input_amount);
$transaction = new Transaction();
$transaction->setAmount($amount)->setItemList($item_list)->setDescription('Ειμαι η περιγραφή');
$redirect_urls = new RedirectUrls();
$redirect_urls->setReturnUrl(\URL::route('payment.status'))->setCancelUrl(\URL::route('payment'));
$payment = new Payment();
$payment->setIntent('Sale')->setPayer($payer)->setRedirectUrls($redirect_urls)->setId("2014031400023")->setTransactions(array($transaction));
try {
$payment->create($this->_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
if (\Config::get('app.debug')) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
$err_data = json_decode($ex->getData(), true);
exit;
} else {
die('Some error occur, sorry for inconvenient');
}
}
foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
// add payment ID to session
\Session::put('paypal_payment_id', $payment->getId());
\Session::put('user_id', $input_user_id);
\Session::put('amount', $input_amount);
if (isset($redirect_url)) {
// redirect to paypal
return \Redirect::away($redirect_url);
}
return \Redirect::route('original.route')->with('error', 'Unknown error occurred');
}