PHPackages                             novalnet/payum - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. novalnet/payum

ActiveProject[Payment Processing](/categories/payments)

novalnet/payum
==============

The Payum extension. Rapid extensino development

1.1.0(4y ago)050MITPHP

Since Apr 1Pushed 2y agoCompare

[ Source](https://github.com/Novalnet-AG/payum-payment-integration-novalnet)[ Packagist](https://packagist.org/packages/novalnet/payum)[ Docs](https://www.novalnet.de/)[ RSS](/packages/novalnet-payum/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (2)Dependencies (3)Versions (4)Used By (0)

Payum Payment Integration by Novalnet
=====================================

[](#payum-payment-integration-by-novalnet)

Payum is one of the most popular bug-free solution that was downloaded by one million users. It is compatible with all top PHP frameworks and used by wide range of developers worldwide. Faster integration and deployment of over 50 payment services can be done simultaneously.

Advantages
----------

[](#advantages)

- Easy configuration for all payment methods
- One platform for all relevant payment types and related services
- Complete automation of all payment processes
- More than 50 fraud prevention modules integrated to prevent risk in real-time
- No PCI DSS certification required when using our payment module
- Real-time monitoring of the transaction flow from the checkout to the receivables
- Multilevel claims management with integrated handover to collection and various export functions for the accounting
- Automated e-mail notification function concerning payment status reports
- Clear real-time overview and monitoring of payment status
- Automated bookkeeping report in XML, SOAP, CSV, MT940

Supported payment methods
-------------------------

[](#supported-payment-methods)

- Direct Debit SEPA
- Credit Card (3DSecure and non 3DSecure)
- Invoice
- Prepayment
- Barzahlen
- Instant Bank Transfer
- PayPal
- iDEAL
- eps
- giropay
- Przelewy24
- Postfinance
- Postfinance card
- Bancontact
- Multibanco
- Apple Pay

Key features
------------

[](#key-features)

- Secure SSL-encoded gateways
- Seamless and fast integration of the payment module
- Credit Card with 3D Secure
- On-hold transaction configuration in the shop admin panel
- Easy way of confirmation and cancellation of on-hold transactions (Cancel &amp; Capture option) for Direct Debit SEPA, Direct Debit SEPA with payment guarantee, Credit Card, Invoice, Invoice with payment guarantee, Prepayment &amp; PayPal.
- Refund option for Credit Card, Direct Debit SEPA, Direct Debit SEPA with payment guarantee, Invoice, Invoice with payment guarantee, Prepayment, Barzahlen, Instant Bank Transfer, iDEAL, eps, giropay, PayPal &amp; Przelewy24.
- Responsive templates

Installation
------------

[](#installation)

The preferred way to install the library is using a [composer](http://getcomposer.org/). Run the composer required to add dependencies to *composer.json*:

```
composer require novalnet/payum php-http/guzzle6-adapter
```

Configuration
-------------

[](#configuration)

Add to the default app/Providers/AppServiceProvider.php register method:

```
...
public function register()
{
    $this->app->resolving('payum.builder', function(\Payum\Core\PayumBuilder $payumBuilder) {
        $payumBuilder
        ->addDefaultStorages()
        ->addGatewayFactory('novalnet', function(array $config, GatewayFactoryInterface $coreGatewayFactory) {
            return new \Payum\Novalnet\NovalnetGatewayFactory($config, $coreGatewayFactory);
        })
        ->addGateway('novalnet', [
            'factory' => 'novalnet',
            'payment_access_key' => '###YOUR_PAYMENT_ACCESS_KEY###',
            'signature' => '###YOUR_API_SIGNATURE###',
            'tariff' => '###YOUR_TARIFF_ID###'
        ]);
    });

    $this->app->resolving('payum.builder', function(\Payum\Core\PayumBuilder $payumBuilder) {
        $payumBuilder
        ->addDefaultStorages()
        ->addGatewayFactory('novalnet_creditcard', function(array $config, GatewayFactoryInterface $coreGatewayFactory) {
            return new \Payum\Novalnet\NovalnetCreditCardGatewayFactory($config, $coreGatewayFactory);
        })
        ->addGateway('novalnet_creditcard', [
            'factory' => 'novalnet_creditcard',
            'payment_access_key' => '###YOUR_PAYMENT_ACCESS_KEY###',
            'signature' => '###YOUR_API_SIGNATURE###',
            'tariff' => '###YOUR_TARIFF_ID###'
            'sandbox' => false, // (true/false) true = The payment will be processed in the test mode therefore amount for this transaction will not be charged, false = The payment will be processed in the live mode.
            'callback_debug_mode' => false, // (true/false) Please disable this option before setting your shop to LIVE mode, to avoid unauthorized calls from external parties (excl. Novalnet). For LIVE, set the value as false.
            'payment_data' => [
                'action' => 'capture', // (authorize/capture) Capture completes the transaction by transferring the funds from buyer account to merchant account. Authorize verifies payment details and reserves funds to capture it later, giving time for the merchant to decide on the order
                'client_key' => '###YOUR_CLIENT_KEY###', // A public unique key needs linked to your account. It is needed to do the client-side authentication. You can find this credential by logging into your Novalnet Admin Portal
                'enforce_3d' => false, // (true/false) By enabling this option, all payments from cards issued outside the EU will be authenticated via 3DS 2.0 SCA.
                'inline' => true, // (true/false) true = Show Inline Credit card form form, false = Show Credit Card form in multi lines.
                'container' => '', // Customize styles of the Credit Card iframe.
                'input' => '', // Customize styles of the Credit Card iframe input element.
                'label' => '', // Customize styles of the Credit Card iframe label element.
            ],
        ]);
    });
}
...
```

Prepare payment
---------------

[](#prepare-payment)

Lets create a controller where we prepare the payment details.

```
