Please help me.
I'm trying to integrate omnipay/paypal to process payments. Everythings works great until i need to verify my payment. How i register payment:
$gateway = Omnipay::create('PayPal_Rest');
$gateway->initialize(array(
'clientId' => $config['paypal_client_id'],
'secret' => $config['paypal_secret'],
'testMode' => true, // Or false when you are ready for live transactions
));
$response = $gateway->purchase(array(
'amount' => $data['price_sum'],
'currency' => 'PLN',
'description' => 'NNŻ: ' . $description . $data['order_id'],
'transactionId' => $data['order_id'],
'returnUrl' => $app_url . 'basket/pay?token=' . $data['token'],
'cancelUrl' => $app_url . 'basket/pay?token=' . $data['token'],
'notifyUrl' => $app_url . 'payment/verify-basket-paypal'
))->send();
//print_r( get_class_methods( $response ) );
// Process response
if ($response->isSuccessful()) {
$transaction_id = $response->getTransactionReference();
Kernel::log('paypal.log' , $transaction_id);
return ['url' => $response->getRedirectUrl(), 'paypal' => true ];
} elseif ($response->isRedirect()) {
// Redirect to offsite payment gateway
$response->redirect();
} else {
// Payment failed
echo $response->getMessage();
}
On html page i've added button with url ($response->getRedirectUrl()) after that, i'm redirected to same page, where i want to verify, if payment is booked right.
Url has additional GET params:
/payment/verify-basket-paypal?paymentId=PAYID-L37QMOY42K85628E4550351P&token=EC-3SM080895T541133U&PayerID=Y3DZ53CGGL47N
I've try something like this:
$gateway = Omnipay::create('PayPal_Rest');
$gateway->initialize(array(
'clientId' => $config['paypal_client_id'],
'secret' => $config['paypal_secret'],
'testMode' => true, // Or false when you are ready for live transactions
));
$transaction = $gateway->fetchTransaction([
'paymentId' => $request->get['paymentId'],
'token' => $request->get['token'],
'PayerID' => $request->get['PayerID']
]);
but it isn't working. Please help, how can i verify payment. There are no additional documentation on their page. Thanks a lot.