Magento
1. Introduction
Our Magento plug-in comes with regular updates and full integration support, guaranteeing a versatile out-of-the-box solution to accept online payments easily:
- Supports Hosted Checkout Page and Hosted Tokenization Page integration modes
- Offers the following payment methods on our platform:
Alipay American Express Apple Pay Bancontact Bizum Carte Bancaire Cpay Diners Club Google Pay iDEAL Illicado Intersolve JCB Maestro MasterCard Multibanco PayPal Visa WeChatPay
Keep an eye on our Release Notes to stay informed about updates and new features (i.e. payment methods, services, integration modes) we have added to this plugin!
Check out our documentation to learn how to link your store with our platform to profit from all these features!
2. Create account
To process transactions with this plugin, you need an account on our platform.
This plugin works with both our test and live environment. A test account is a great way to get familiar with both the plugin and our platform. Once you want to go live, create a production account or contact us!
3. Install plugin
The first step to use the plugin is the installation process. Before you proceed, make sure your infrastructure meets these system requirements:
Item | Description |
---|---|
Plugin package | |
Direct credentials |
|
Magento |
This plugin supports versions:
|
PHP |
PHP version 8+ |
PCI compliancy |
SAQ A (14) |
Once done, follow these steps:
- Log in to your server (e.g. via SSH)
- Navigate to the root folder of your Adobe Commerce/Magento installation
- Create a folder in the root directory of your Adobe Commerce/Magento installation ( i.e. "local_packages")
- Download the plugin. Upload the zip package into the folder. Do not unzip the archive!
- Execute the following command. The given path is a full server path of the folder containing the package with the extension:
composer config repositories.worldline artifact /full/server/path/to/local_packages/ composer require worldline/module-magento-payment
- Execute the following commands
php bin/magento setup:upgrade php bin/magento cache:clean php bin/magento setup:di:compile php bin/magento setup:static-content:deploy
- Backup your existing project before installing new extensions
- Test your new project in the Magento staging environment before you roll out new code to the production environment
4. Configure Plugin
After the installation, you need to configure the plugin to link your store to our platform.
Configure connection
- Login to the Adobe commerce/Magento Back Office. Go to Stores > WORLDLINE ONLINE PAYMENTS > Connection
- In Connection, configure the following settings:
Property Description/Actions Environment mode Select between "Test" or "Production" to link your shop to the respective environment. Depending on your selection, the shop module will send the transaction requests to the test or production environment
Make sure to- Not to mix up credential from "Test" with Production" and vice versa when configuring fields Merchant ID (PSPID)/API Key/API Secret and webhooks credentials
- To switch to "Production" as soon as you have finalised your tests
API Key Enter the API Key of your test or live PSPID. Read our dedicated guide to learn how to generate one
API Secret Enter the API Secret of your test or live PSPID. Read our dedicated guide to learn how to generate one
Merchant ID (PSPID) Enter your PSPID from our platform that you want to use for transaction processing
For some properties, Magento allows you to use the default value defined on the system level. If you want to do this, flag “Use system value” accordingly - Click on "Save Config" to confirm your configuration
The image shows where to find the "Connection" module in the Magento Back Office
Once you have filled in the table, verify the configuration by establishing a test connection between the plugin and our platform. Click on the "Test Connection" button. Check that the button text changes to "Successful! Test again". If the button text changes to “Connection failed! Test again?”, contact your system administrator for troubleshooting to check
- You are using the correct credentials
- Whether your PSPID is active
- You send the request to the correct PSPID/environment (Test vs Production)
Configure connection
- Login to the Adobe commerce/Magento Back Office. Go to Stores > WORLDLINE ONLINE PAYMENTS > Connection
- In Webhooks, configure the following settings:
Property Description/Actions Allow Receiving Webhooks Select "Yes" to receive webhooks in the Magento server Webhook URL Copy this URL into the Endpoint URLs fields in the Direct Merchant Portal as described in our dedicated guide Key Enter the API key of your test or live PSPID. Read our dedicated guide to learn how to generate one Secret Key Enter the API secret of your test or live PSPID. Read our dedicated guide to learn how to generate one For some properties, Magento allows you to use the default value defined on the system level. If you want to do this, flag “Use system value” accordingly - Click on "Save Config" to confirm and clean your cache
The image shows where to find the “Webhooks” module in the Magento Back Office
Configure payment methods
- Login to the Adobe commerce/Magento Back Office. Go to Stores > WORLDLINE ONLINE PAYMENTS > Payment methods
- As the plugin supports both Hosted Checkout Page (Hosted Checkout) and Hosted Tokenization Page (Credit Card), you can customise you customers’ payment experience by selecting payment methods for either mode and even use both flows together
- Mind that card payments are available for both modes, whereas alternative payment methods are available only for Hosted Checkout Page
- In "Credit Card", configure the following settings for transactions processed via our Hosted Tokenization Page
Property Description/Actions Enable Module Select one of the options to for processing credit card payments
- "Yes": The module processes card payments via Hosted Tokenization Page integration mode. Any non-card payments go via Hosted Checkout Page as configured in "Hosted Checkout"
- "No": Instead of using Hosted Tokenization Page for card payments, all payment methods are offered via Hosted Checkout Page as configured in "Hosted Checkout"
Title Customise the payment button text in the iframe on the Magento checkout page HTML Template ID Enter the file name of your template to adapt our payment page to the look and feel of your shop. Learn here how to create templates
You can use this sample as your default templatePayment Action Define whether to process the transactions as authorisation mode or as direct sale. Select one of the following options:
- "Authorize & Capture": The amount has been ordered to be paid out in one go. Use this mode to receive the money before shipping the order There are no further actions required to capture the transaction. Successful transactions will have status="CAPTURED" / statusOutput.statusCategory="COMPLETED" / statusOutput.statusCode=9
- "Authorized (Authorization Only)": The amount is only blocked on your customer's card. Successful transactions will have status="PENDING_CAPTURE" / statusOutput.statusCategory="PENDING_MERCHANT" / statusOutput.statusCode=5 (Use this mode when you wish to capture a transaction only after shipping the order)
If transaction type is set to "Authorized (Authorization Only)", beware of the following:- Make sure that you capture authorised transaction later. Only then will the transaction have status="CAPTURED" / statusOutput.statusCategory="COMPLETED" / statusOutput.statusCode=9, for which you receive the actual payment for the transaction
- Capture transaction in the Magento Back Office via the "Order" module
Skip 3DSecure Authentication Select "Yes" or "No" to deactivate the 3-D Secure authentication process for payments
We strongly recommend selecting "Yes" if your customers are based in Europe, as 3-D Secure has become mandatory with the introduction of the PSD2 guideline. Deactivate this option only if your customers are located elsewhere - "Yes": The module processes card payments via Hosted Tokenization Page integration mode. Any non-card payments go via Hosted Checkout Page as configured in "Hosted Checkout"
- In "Hosted Checkout", configure the following settings for transactions processed via our Hosted Checkout Page
Property Description/Actions Enable Module Select one of the options to for processing all payments
- "Yes": The module processes both card and non-card payment methods via Hosted Checkout Page mode
- "No": The module processes only card payments via Hosted Tokenization Page integration mode
If you select "No", make sure "Enable Module" in the "Credit Card" module is set to "Yes" to ensure at least card payment methods are possibleTitle Customise the heading on the Hosted Checkout Page HTML Template ID Enter the file name of your template to adapt our payment page to the look and feel of your shop. Learn here how to create templates Payment Action Define whether to process the transactions as authorisation mode or as direct sale. Select one of the following options:
- "Authorize & Capture": The amount has been ordered to be paid out in one go. Use this mode to receive the money before shipping the order There are no further actions required to capture the transaction. Successful transactions will have status="CAPTURED" / statusOutput.statusCategory="COMPLETED" / statusOutput.statusCode=9
- "Authorized (Authorization Only)": The amount is only blocked on your customer's card. Successful transactions will have status="PENDING_CAPTURE" / statusOutput.statusCategory="PENDING_MERCHANT" / statusOutput.statusCode=5 (Use this mode when you wish to capture a transaction only after shipping the order)
If transaction type is set to "Authorized (Authorization Only)", beware of the following:- Make sure that you capture authorised transaction later. Only then will the transaction have status="CAPTURED" / statusOutput.statusCategory="COMPLETED" / statusOutput.statusCode=9, for which you receive the actual payment for the transaction
- Capture transaction in the Magento Back Office via the "Order" module
For some properties, Magento allows you to use the default value defined on the system level. If you want to do this, flag “Use system value” accordingly - "Yes": The module processes both card and non-card payment methods via Hosted Checkout Page mode
- Click on "Save Config" to confirm
5. Manage payments
We have designed the plugin to follow-up on your orders automatically and autonomously, freeing you from the administration involved. Learn here how to use our plugin effectively to make your business thrive!
Update order status
The module relies on two different mechanisms to ensure your database mirrors the status of the transactions on our platform:
- Webhooks: Our platform sends notifications to the module for any transaction status update. Read the "Configure connection" chapter to configure webhooks
- GET calls: Magento proactively sends requests to our platform to receive the transaction’s status if the webhooks fail
To configure the GET calls, follow these steps:
-
Login to the Adobe commerce/Magento Back Office. Go to Stores > WORLDLINE ONLINE PAYMENTS > Order status updater
- In General, configure the following settings:
Property Description/Actions Fallback Timeout Defines the period (in minutes) after the module sends GET calls if webhooks fail. After this period, the module will send calls once every minute Fallback Timeout Limit Defines the period (in hours) during which the module sends GET calls. The default period (3 hours) corresponds to the session validity of a CreateHostedCheckout / CreateHostedTokenizationSession Schedule (Cron Syntax) Synthax to use to run the process - In Abandoned Orders, configure the following settings:
Property Description/Actions Waiting time Defines the period (in minutes) after the module automatically cancels an abandoned order (status.StatusOutput=0 or 1) and puts back the item(s) back into the inventory. The default period (3 hours / 180 minutes) corresponds to the session validity of a CreateHostedCheckout / CreateHostedTokenizationSession Schedule (Cron Syntax) Synthax to use to run the process For some properties, Magento allows you to use the default value defined on the system level. If you want to do this, flag “Use system value” accordingly - Click on "Save Config" to confirm your configuration