<?php//config.phpusePayum\Core\PayumBuilder;usePayum\Core\Payum;/** @varPayum $payum */$payum = (newPayumBuilder())->addGateway('paypalRest', ['factory'=>'paypal_rest','client_id'=>'REPLACE IT',// Your PayPal REST API cliend ID.'client_secret'=>'REPLACE IT',// Your PayPal REST API client secret.'config_path'=>'REPLACE IT',// Point to the directory where your skd_config.ini is located. ])->getPayum();
alternatively, set configuration via the config option. See PayPal's sdk_config.ini for available options.
<?php// prepare.phpinclude__DIR__.'/config.php';usePayum\Core\Model\Payment;$paymentClass =Payment::class;/** @var\Payum\Core\Payum $payum */$storage = $payum->getStorage($paymentClass);/** @varPayment $payment */$payment = $storage->create();$payment->setNumber(uniqid());$payment->setTotalAmount(200);$payment->setCurrencyCode('EUR');$payment->setDetails(array(// put here any fields in a gateway format.));$storage->update($payment);$captureToken = $payum->getTokenFactory()->createCaptureToken('paypalRest', $payment,'done.php');header('Location: '.$captureToken->getTargetUrl());
or if you want to have more control over the payment information sent to PayPal:
That's it. As you see we configured Paypal Rest config.php and set details prepare.php. capture.php and done.php scripts remain same.
Supporting Payum
Payum is an MIT-licensed open source project with its ongoing development made possible entirely by the support of community and our customers. If you'd like to join them, please consider: