Я хочу интегрировать Omnipay paypal в laravel 4
. Я прошел, но я не мог понять, как это сделать. Я не нашел никакой документации. Я прошел через это , это и это . Я установил его с помощью Composer. Теперь я смущен в следующих вопросах.
$gateway = Omnipay::create('PayPal_Express'); $gateway->setUsername('XXXXX'); $gateway->setPassword('XXXX'); $gateway->setSignature('XXXXX');
Чьи полномочия будут указаны здесь? Тот, кто покупает, или тот, кому будут переданы деньги. В любом случае, когда будут предоставлены другие полномочия?
Как пользователь будет выполнять транзакции? Я видел его функции покупки и покупки, но не мог понять. В обычной интеграции Paypal мы обычно перенаправляем пользователей в Paypal, где он или она завершает транзакцию, а затем возвращается. Как я могу это сделать здесь?
Может ли кто-нибудь направить мне полную документацию, где я могу прочитать весь ее поток?
По вашим пунктам
1-) Здесь вы дадите верительные грамоты того, кому будут переданы деньги. И покупатель предоставит свои полномочия на сайте PayPal, он будет перенаправлен.
2-) После того, как объект шлюза и установка учетных данных вы вызовете метод purchase()
для всенародного
$response = $gateway->purchase( array( 'cancelUrl' => 'www.xyz.com/cancelurl', 'returnUrl' => 'www.xyz.com/returnurl', 'amount' => 25, 'currency' => 'USD' ) )->send(); $response->redirect();
Это перенаправит пользователя на сайт paypal, где он предоставит свои учетные данные и совершит транзакцию. После успешной транзакции у пользователя paypal будет перенаправлен URL-адрес, указанный вами в returnurl
. И при возврате вы создадите тот же объект gateway
что и выше, как указано ниже.
$gateway = Omnipay::create('PayPal_Express'); $gateway->setUsername('XXXXX'); $gateway->setPassword('XXXX'); $gateway->setSignature('XXXXX'); $response = $gateway->completePurchase( array( 'cancelUrl' => 'www.xyz.com/cancelurl', 'cancelUrl' => 'www.xyz.com/cancelurl', 'returnUrl' => 'www.xyz.com/returnurl', 'amount' => 25, 'currency' => 'USD' ) )->send(); $data = $response->getData(); // this is the raw response object echo '<pre>'; print_r($data);
Метод completePurchase
завершит транзакцию, и вы получите ответ в массиве.
ПРИМЕЧАНИЕ, когда пользователь перенаправляется по URL-адресу возврата, URL-адрес также содержит транзакционные_ид и payer_id. 🙂 Надеюсь, это довольно просто.