We have developed a payment module for Magento, that allows you to accept payments in your Magento store via our API. Magento is an open-source e-commerce platform written in PHP and owned by Adobe.
You can always e-mail us at help@scanpay.dk or chat with us on IRC at libera.chat #scanpay (webchat).
You need PHP version >= 5.6 with php-curl enabled. The module is available at Packagist. You can install the module with Composer or by manually uploading the files. Magento recommends that you use Composer. You can find a guide on how to install Composer here.
-
Navigate to your Magento folder and download the module with Composer:
composer require scanpay/magento2
-
Enable the module and clear the static view files:
php bin/magento module:enable Scanpay_PaymentModule --clear-static-content
-
Register the extension:
php bin/magento setup:upgrade
-
Recompile your Magento store with the new module:
php bin/magento setup:di:compile
-
Verify that the extension is enabled:
php bin/magento module:status
Before you begin, you need to generate an API key in our dashboard (here). Always keep your API key private and secure.
- Enter your Magento admin and navigate to
Stores > Configuration > Sales > Payment Methods
. - Find the payment method called "Scanpay" and enable it.
- Insert your API key in the "API-key" field.
- Copy the contents of the "Ping URL" field, and insert into the "Ping URL" field in our dashboard (here).
The /view
folder defines the layout and javascript of the module.
The actual HTML form presented for the customer can be found at /view/frontend/web/template/payment/form.html
.
/view/frontend/web/js/view/payment/method-renderer/scanpaypaymentmodule.js
defines the javascript which is run when the customer places an order.
This javascript creates the order and makes an AJAX request to the /Controller/Payment/GetPaymentURL.php
containing the order id.
The /Controller
folder defines the publically served PHP pages.
It's served at an URL defined by /etc/frontend/routes.xml
.
/Controller/Payment/GetPaymentURL.php
gathers order parameters from Magento and uses /Model/ScanpayClient.php
to send an request to the Scanpay API.
Upon success it will return a payment url which the webshop customer should be redirected to.
The /Model
folder defines utility classes used by other PHP files.
For instance it containts ScanpayClient.php
which does the actual http request to the Scanpay API using PHP-curl.
The /etc
folder defines module dependencies, module configuration, module naming and the layout of the admin panel module configuration.