Payment processing microservice. Written in Symfony4
Clone or download
Latest commit f8e5ecc Nov 6, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin migration: travis: restored build-docker-image file Feb 2, 2018
config migration: routes: removed / at the end of paths Feb 5, 2018
public migration: demo.html and payum.js moved to symfony public folder from… Jan 25, 2018
src migration: removed deprecated code Feb 5, 2018
templates migration: refactor Jan 30, 2018
tests migration: removed trailing slash in tests Feb 5, 2018
translations symfony: v.4.0.3 installed with some bundles Jan 22, 2018
.dockerignore Encrypt gateway config sensitive info in database. Mar 24, 2017
.env.dist migration: cors: added host for payum ui Feb 5, 2018
.gitignore migration: docker: restoring old docker setup in progress, downgrade … Feb 2, 2018
.test.env.dist migration: travis: fix for mongo Feb 2, 2018
.travis.yml migration: downgrade php from 7.2 to 7.1 to support previous docker b… Feb 5, 2018
Dockerfile migration: docker: downgrade to php7.1, return back old docker setup,… Feb 5, 2018
LICENSE Update license's copyright year Oct 30, 2018 Update Nov 6, 2018
composer.json migration: composer: added nelmio/cors-bundle Feb 5, 2018
composer.lock migration: composer: added nelmio/cors-bundle Feb 5, 2018
docker-compose.yml.dist migration: docker: using latest payum server image version Feb 5, 2018
phpunit.xml.dist migration: tests: env variable moved from phpunit.xml.dist to .test.e… Jan 31, 2018
symfony.lock migration: composer: added nelmio/cors-bundle Feb 5, 2018

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:


Join the chat at Build Status Total Downloads Latest Stable Version

PHP 7.1+ Payment processing server. Setup once and rule them all. Here you can find a good introduction to what it does and what problems it solves.

Try it online:

Run local server

Create docker-compose.yml file:

version: '2'
    image: payum/server
      - PAYUM_MONGO_URI=mongodb://mongo:27017/payum_server
      - PAYUM_DEBUG=1
      - mongo
      - "8080:80"

    image: mongo

and run docker-compose up. You server will be at localhost:8080 port.

Test local server

  1. Copy .test.env.dist to .test.env
  2. Run bin/phpunit

Docker registry

The payum/server image and payum/server-ui are built automatically on success push to the master branch.

Setup & Run

$ php composer.phar create-project payum/payum-server --stability=dev
$ cd payum-server
$ php -S web/app.php

An example on javascript:

  // do new payment
  var payum = new Payum('http://localhost:8000');
  var payment = {totalAmount: 100, currencyCode: 'USD'};

  payum.payment.create(payment, function(payment) {
    var token = {
        type: 'capture',
        afterUrl: 'http://afterPaymentIsDoneUrl'

    payum.token.create(token, function(token) {
      // do redirect to token.targetUrl or process at the same page like this:
      payum.execute(token.targetUrl, '#payum-container');

Note: You might need a web client to manage payments gateways or you can use REST API.


Developed by Forma-Pro

Forma-Pro is a full stack development company which interests also spread to open source development. Being a team of strong professionals we have an aim an ability to help community by developing cutting edge solutions in the areas of e-commerce, docker & microservice oriented architecture where we have accumulated a huge many-years experience. Our main specialization is Symfony framework based solution, but we are always looking to the technologies that allow us to do our job the best way. We are committed to creating solutions that revolutionize the way how things are developed in aspects of architecture & scalability.

If you have any questions and inquires about our open source development, this product particularly or any other matter feel free to contact at


Code MIT licensed.