У меня есть корзина для покупок, которая в настоящее время перенаправляет пользователей на PayPal напрямую для оплаты. Я хочу, чтобы клиенты могли ввести свою кредитную карту на сайт и PayPal для ее обработки. У меня есть аккаунт Paypal Pro, но у меня возникают проблемы с его использованием. Я не уверен, как я могу использовать пакет Paypal Pro через Omnipay. В моем vendors
папка у меня есть ExpressGateway.php
и Progateway.php
но не уверен, как позвонить Progateway.php
стр. Единственный способ установить его — использовать Omnipay::getway('paypal')
который я сейчас делаю для экспресс. Какой процесс мне нужно использовать, чтобы использовать Paypal Pro?
$gateway = Omnipay::gateway('paypal');
if(Auth::user() != NULL && Auth::user()->super_user == 1) {
//sandbox
$gateway->setUsername('#######');
$gateway->setPassword('#######');
$gateway->setSignature('#######');
$gateway->setTestMode('true');
} else {
//production
$gateway->setUsername('#######');
$gateway->setPassword('#######');
$gateway->setSignature('######');
}
$cardInput = array(
'firstName' => $info['first_name_bill'],
'lastName' => $info['last_name_bill'],
'billingAddress1' => $info['street_address_1_bill'],
'billingAddress2' => $info['street_address_2_bill'],
'billingPhone' => $info['phone_bill'],
'billingCity' => $info['city_bill'],
'billingState' => $info['state_bill'],
'billingPostCode' => $info['zip_bill'],
'shippingAddress1' => $info['street_address_1_ship'],
'shippingAddress2' => $info['street_address_2_ship'],
'shippingPhone' => $info['phone_ship'],
'shippingCity' => $info['city_ship'],
'shippingState' => $info['state_ship'],
'shippingPostCode' => $info['zip_ship'],
);
$card = Omnipay::creditCard($cardInput);
$response = Omnipay::purchase(
array(
'cancelUrl' => URL::to('cart'),
'returnUrl' => URL::action('CartController@getSuccessPayment', array('id' =>$invoice->id)),
'amount' => Input::get('total'),
'currency' => 'USD',
'card' => $card,
'description' => '#####'
)
)->send();`
Установите шлюз следующим образом:
$gateway = Omnipay::gateway('Paypal_Pro');
Других решений пока нет …