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:
The bundle integrate payum into symfony framework. It already supports +35 gateways. Provide nice configuration layer, secured capture controller, storages integration and lots of more features.
Sylius, an open source headless eCommerce platform, base its payment solutions on top of the bundle.
payum:
storages:
Payum\Core\Model\Payment:
filesystem:
storage_dir: '%kernel.root_dir%/Resources/payments'
id_property: number
security:
token_storage:
Payum\Core\Model\Token:
filesystem:
storage_dir: '%kernel.root_dir%/Resources/gateways'
id_property: hash
gateways:
offline:
factory: offline
note if you're using Symfony 4+ then create config/packages/payum.yaml
file with contents described above.
<?php
use Payum\Core\Model\Payment;
use Payum\Core\Reply\HttpRedirect;
use Payum\Core\Reply\HttpResponse;
use Payum\Core\Request\Capture;
$payment = new Payment;
$payment->setNumber(uniqid());
$payment->setCurrencyCode('EUR');
$payment->setTotalAmount(123); // 1.23 EUR
$payment->setDescription('A description');
$payment->setClientId('anId');
$payment->setClientEmail('foo@example.com');
$gateway = $this->get('payum')->getGateway('offline');
$gateway->execute(new Capture($payment));
<?php
use Payum\Core\Request\GetHumanStatus;
$gateway->execute($status = new GetHumanStatus($payment));
echo $status->getValue();
<?php
use Payum\Core\Request\Authorize;
use Payum\Core\Request\Cancel;
use Payum\Core\Request\Refund;
$gateway->execute(new Authorize($payment));
$gateway->execute(new Refund($payment));
$gateway->execute(new Cancel($payment));
PayumBundle is an open source, community-driven project. Pull requests are very welcome.
Star PayumBundle on GitHub or packagist.
The bundle is released under the MIT License.