mollie / Sylius

Mollie payment gateway integration for Sylius
MIT License
4 stars 17 forks source link

Mollie Payments Plugin for Sylius


Table of Content


Overview


Screenshot showing payment methods show in shop

Screenshot showing payment methods show in admin

Screenshot showing payment method config in admin

Mollie is the most popular and advanced payment gateway integration with Sylius. This plugin is officially certified by Mollie. The integration currently supports the following payment methods:

  1. Credit Cards (Master Card, VISA, American Express)
  2. PayPal
  3. ApplePay
  4. Klarna
  5. iDEAL
  6. SEPA
  7. SOFORT
  8. EPS
  9. Giropay
  10. KBC/CBC Payment Button
  11. Przelewy24
  12. ING Home'Pay
  13. Belfius Pay Button
  14. Gift cards
  15. Apple Pay Direct

Few words from Mollie: Our mission is to create a greater playing field for everyone. By offering convenient, safe world-wide payment solutions we remove barriers so you could focus on growing your business. Being authentic is our baseline.

Mollie is one of Europe's fastest-growing fin-tech companies. We provide a simple payment API, that enables webshop and app builders to implement more than twenty different payment methods in one go. Our packages and plugins are completely open-source, freely available, and easy to integrate into your current project.

Mollie thrives on innovation. When we started we spearheaded the payments industry by introducing effortless payment products that were easier, cheaper, and more flexible than what the rigid, cumbersome banks could do. Now, more than a decade later, trusted by 70.000+ businesses, Mollie is still building innovative products and working hard to make payments better.

We are here to help

This open-source plugin was developed to help the Sylius community and make Mollie payments platform available to any Sylius store. If you have any additional questions, would like help with installing or configuring the plugin or need any assistance with your Sylius project - let us know by sending an email to support@mollie.com

Installation


Requirements

We work on stable, supported and up-to-date versions of packages. We recommend you to do the same.

Package Version
PHP ^7.2 || ^8.0
ext-json: *
mollie/mollie-api-php ^2.0
sylius/admin-order-creation-plugin ^0.12 || ^0.13 || v0.14
sylius/refund-plugin ^1.0
sylius/sylius ~1.9.0 || ~1.10.0 || ~1.11.0 || ~1.12.0

For the full installation guide please go to installation

Usage


During configuration first, save the keys to the database and then click "Load methods"

Rendering Mollie credit card form

You can use SyliusMolliePlugin:DirectDebit:_form.html.twig and @SyliusMolliePlugin/Grid/Action/cancelSubscriptionMollie.html.twig templates for adding the form to supplementing the direct debit card data from and cancel the subscription form the Twig UI.

For an example on how to do that, take a look at these source files.

Customization


You can decorate available services and extend current forms.

Run the below command to see what Symfony services are shared with this plugin:

$ bin/console debug:container sylius_mollie_plugin

Plugin Development


Instalation

$ composer install
$ cd tests/Application
$ yarn install
$ yarn encore dev
$ bin/console assets:install -e test
$ bin/console doctrine:database:create -e test
$ bin/console doctrine:schema:create -e test
$ symfony server:start
$ open http://localhost:8080 // or the port showed in your terminal while runing command with symfony server:start
webpack_encore:
    output_path: '%kernel.project_dir%/public/build/default'
    builds:
        mollie-admin: '%kernel.project_dir%/public/build/mollie-admin'
        mollie-shop: '%kernel.project_dir%/public/build/mollie-shop'
in: src/Resources/views/Shop/_javascripts.html.twig:
<script src="https://js.mollie.com/v1/mollie.js"></script>
{{ encore_entry_script_tags('shop-entry', null, 'mollie-shop') }}
{{ encore_entry_script_tags('plugin-shop-entry', null, 'mollie-shop') }}

in: src/Resources/views/Shop/_stylesheets.html.twig:
{{ encore_entry_link_tags('shop-entry', null, 'mollie-shop') }}
{{ encore_entry_link_tags('plugin-shop-entry', null, 'mollie-shop') }}
in: src/Resources/views/Admin/_javascripts.html.twig:
{{ encore_entry_script_tags('admin-entry', null, 'mollie-admin') }}
{{ encore_entry_script_tags('plugin-admin-entry', null, 'mollie-admin') }}

in: src/Resources/views/Admin/_stylesheets.html.twig:
{{ encore_entry_link_tags('admin-entry', null, 'mollie-admin') }}
{{ encore_entry_link_tags('plugin-admin-entry', null, 'mollie-admin') }}

Frontend

Starting server and building assets

Rebuilding assets in your root/SRC directory

CSS & JS files directory you can edit and work with:

Testing

$ bin/behat
$ bin/phpspec run

Community


For online communication, we invite you to chat with us & other users on Sylius Slack.

Additional resources for developers


To learn more about our contribution workflow and more, we encourage you to use the following resources:

License


This plugin's source code is completely free and released under the terms of the MIT license.

Contact


If you want to contact us, the best way is to fill the form on our website or send us an e-mail to support@mollie.com with your question(s). We guarantee that we answer as soon as we can!