OpenCart
Introduction
Our OpenCart plug-in comes with regular updates and full integration support, offering a versatile out-of-the-box solution to accept online payments easily:
- Supports Hosted Checkout Page integration method
- Offers the following payment methods on our platform:
Alipay+
American Express
Apple Pay
Bancontact
Bank Transfer by Worldline
Bizum
Blik
Cartes Bancaires
Diners Club
Discover
iDEAL | Wero
Intersolve
JCB
Klarna
Google Pay
Maestro
MasterCard
Oney 3x-4x
PayPal
PostFinance Pay
Przelewy24
Twint
Visa
WeChatPay
Wero
- Accepts payment operations (Refunds, authorisations, captures, etc.) directly from your OpenCart Back Office.
Keep an eye on our Release Notes to stay informed about updates and new features (i.e. payment methods, features, integration methods) 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!
Download from GitHub repository Download from Marketplace repository
Account Creation
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!
Plugin code modifications void technical support
For security and stability, does not support plugins whose code has been modified by the merchant or a third party. Plugins are provided as-is (official version). Any unauthorised modification voids support and warranty and may cause malfunctions, security gaps, or incompatibilities with PSP updates.
Installation
Configuration
After the installation, you need to configure the plugin to link your store to our platform.
Basic settings
- Login to the osCommerce Back Office.
- Go to Modules > Payment > Online.
- Click on Worldline GoPay > Click on Edit in the right column.
- Configure the following settings:
| Property | Description |
|---|---|
| Environment |
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
|
| PSPID | Enter your test/live PSPID from our platform that you want to use for transaction processing |
| API key | Enter the API Key of your test/live PSPID. Read our dedicated guide to learn how to generate one. |
| API secret | Enter the API Secret of your test/live PSPID. Read our dedicated guide to learn how to generate one. |
| Webhooks key | Enter the webhooks Key of your test/live PSPID from the Merchant Portal as described in our dedicated guide. |
| Webhooks secret | Enter the webhooks Secret of your test/live PSPID from the Merchant Portal as described in our dedicated guide. |
| Webhooks URL | Copy this URL into the Endpoint URLs fields in your account as described in our dedicated guide. |
Click on "Connect" to confirm your settings.
Test connection
Once you have filled in the data from the table, a built-in connection validation between the plugin and our platform will take place.
If the API Key/Secret throws an error, the plugin will not save the data. Contact your system administrator for troubleshooting and verify:
- You are using the correct credentials.
- Whether your PSPID is active.
- You are sending the request to the correct PSPID/environment (Test vs Production).
If the API Key/Secret are correct, the plugin will save the data.
Payment methods
Once you have configured the basic settings, you can configure the global settings of your osCommerce application.
- Go to the "Payment” tab to configure the different payment methods available on the checkout page of your osCommerce website.
- Enable/disable payment methods to show/hide them from the checkout page.
- Click on the three dots "..." and click on "Settings".
We have preserved the settings that are natively available for specific gateways. Refer to the osCommerce specific documentation to learn more.
If you enable a payment method that is not active in your account, all payment requests will be declined.
The plugin offers three options:
- Credit Cards: Your customers stay on your checkout page while entering their card details in an iframe hosted on our server. Alternatively, the checkout pages renders a button that will redirect your customer to a dedicated card form on our payment page.
- Hosted Checkout (Redirect to Worldline): Your customers confirm the order in your webshop checkout page. The plugin then redirects your customers to our Hosted Checkout Page to allow them selecting their preferred payment method.
- Single payment button: Your customers select their preferred payment method in your webshop and confirm the order. The plugin then redirects your customers either:
- To a version of our Hosted Checkout Page that is branded according to the selected payment method.
- The third party provider offering the selected payment method.
General settings
| Property | Description |
|---|---|
| Enable on checkout |
Enables or disables the payment method on the checkout page. |
| Checkout name |
Define the payment method name that will be displayed on the checkout page. Translation are available in all supported storefront languages. |
| Template name |
Enter the file name of your template to adapt our payment page to the look and feel of your shop. To learn how to create templates, see our dedicated chapters in the Hosted Checkout Page guide. |
| Payment action (Only available if the payment method supports authorisation) |
Define whether to process the transactions as authorisation mode or as direct sale. Select one of the following options:
If you select "Authorized", also configure the following:
If transaction type is set to "Authorized", beware of the following:
|
| Automatic capture |
Define when to automatically capture authorised transactions. You can schedule the capture up to 5 days after authorisation. |
| Number of payment attempts |
Define the number of retry attempts for unsuccessful payments on the Hosted Checkout Page. You can configure up to 10 allowed attempts. Any attempt of payment after that will automatically be refused. |
| Apply surcharge |
In some regions, you may apply a surcharge on credit card transactions. If enabled, our platform will automatically apply a surcharge. If your account is not configured to accept surcharging, all your transactions will be blocked. |
| Status mapping |
You can also configure different statuses for your order depending of the payment status:
Modify this mapping only if you are completely aware of how the order status flow works in your shop. |
| Debug mode |
Enable this feature to log all outgoing API calls and all incoming responses from the API. |
| Logging records lifetime |
Defines how long your systems retain logs (default value: 10 days). We recommend keeping this value when you expect high traffic to ensure stable performance. |
| Enable Pay By Link |
Create payment links via our PaymentLinks API which you can share via SMS or e-mail. You can use payment links to
|
| Pay by Link title |
Define the name of the Pay By Link payment method in the shop Back Office. |
| Default expiration |
Define how long a payment link remains active (default value: 7 days). Allowed range: 24hrs to 6 months. |
| Disconnect |
Removes all plugin settings and redirects you to the user authorisation page, allowing you to connect a different account. |
3-D Secure settings
Only available for Credit cards, Hosted Checkout and Google Pay.
| Property | Description |
|---|---|
| Enable 3-D secure authentication |
Define whether to enforce Strong Customer Authentication. We strongly recommend enabling, as 3-D Secure is mandatory in some markets. This will also ensure liability shifts for transactions with successful 3-D Secure authentication. If you disable this option, you may not benefit from liability shifts and may be held liable. |
| Enforce strong customer authentication for every payment |
Define whether to enforce Strong Customer Authentication, regardless of any possible applicable exemptions. |
| Enable 3DS exemption |
Some markets allow you to potentially exempt your customers from a 3-D Secure check. Define whether to request exemptions when the criteria are met. A customer can receive up to five consecutive exemptions, with a cumulative total of EUR 150. The next transaction that exceeds these criteria will require Strong Customer Authentication (SCA). |
Credit card specific settings
| Property | Description |
|---|---|
| Vault title |
Customise the radio button text displayed on the checkout page when a customer is presented a card that has previously been saved. |
| Type |
Defines the payment flow for credit card payments.
|
| Group credit cards (available for Hosted Checkout and Credit cards) |
Enable/Disable the Hosted Checkout Page "Group cards" feature.
If you configure this in the "Credit cards" payment method, we advise to enable grouping the cards. |
Hosted Checkout specific settings
| Property | Description |
|---|---|
| Upload an image |
Your company logo appearing in the header of the Hosted Checkout Page. Allowed formats: png |
Other payment methods specific settings
| Property | Description |
|---|---|
| Session Timeout |
Define the session timeout duration on the Hosted Checkout Page in minutes. |
| Product ID |
Define the specific brand for the Intersolve payment method. Find all possible values in the "Integration" chapter in the Intersolve guide. If undefined, the default value is 5700. |
| Instant payment only |
Define whether to accept only instant transfers for Bank Transfer by Worldline payments. |
Click on "Save" to confirm your settings.
Monitoring
Our plugin includes a built in logging system. When debug mode is enabled, you can view logs for all transactions. The logs appear on two screens:
- Webhooks: Logs all incoming webhooks received from our platform, informing you about transaction status changes. Each webhook is a separate line in the grid.
- Logs: All requests/responses sent/receive from the plugin to/from the API, grouped per transaction.
Installation
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 | |
| credentials |
|
| OpenCart | See "Compatibility" on the Marketplace repository |
| PCI compliancy |
SAQ A |
Once done, follow these steps:
- Login to the OpenCart Back Office. Go to Extensions > Installer.
- Click on the “Upload” button to add the file.
- In the "Payments" table, look for "Worldline" and click on the "Install" button in the column "Action".
Configuration
After the installation, you need to configure the plugin to link your store to our platform.
- Login to the OpenCart Back Office. Go to Extensions > Extensions. Select "Payments" from the dropdown list "Choose the extension type".
- The plugin will load a list matching the "Payments" extension type. In the "Payments" table, look for "Worldline" and click on the "Edit" button in the "Action" column. The plugin configuration screen will appear with different tabs.
Account settings
| Property | Description |
|---|---|
| Status | Enable/Disable the plugin. |
| Environment | Select "Test"/"Live" to link your shop to the respective environment and to configure the respective test/live credentials. Depending on your selection, the shop module will send the transaction requests to the test or production environment. |
| (Test) Merchant ID (PSPID) | Enter your test/live PSPID from our platform that you want to use for transaction processing |
| (Test) API Key | Enter the API Key of your test/live PSPID. Read our dedicated guide to learn how to generate one. |
| (Test) API Secret | Enter the API Secret of your test/live PSPID. Read our dedicated guide to learn how to generate one. |
| (Test) API Endpoint | Prefilled by default, but can be changed at will. |
| (Test) Webhooks Key | Enter the webhooks Key of your test/live PSPID from the Merchant Portal as described in our dedicated guide. |
| (Test) Webhooks Secret | Enter the webhooks Secret of your test/live PSPID from the Merchant Portal as described in our dedicated guide. |
| Webhooks URL | Copy this URL to the Merchant Portal as described in our dedicated guide. Beware that the plugin provides only one value for both the test/live environment. |
| Cron URL |
Set up a cron job to make sure the plugin synchronises the transaction status with our platform. This is a fallback mechanism if the plugin does not retrieve the status correctly once a transaction is finalised. |
Click on "Save" to confirm your settings and validate your settings by establishing a test connection between the plugin and our platform. Check that the screen displays "Success: You have modified Worldline!". If the text does not appear, 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)
Advanced settings
| Property | Description |
|---|---|
| Authorization Mode |
Define whether to process the transactions in authorisation mode or as direct sale. Select one of the following options:
If you select"Pre Authorization" or "Final Authorization", make sure you capture authorized transaction later. Only then will the transaction have statusOutput.statusCode=9/status "captured" in the module. |
| Capture Configuration |
Configure the duration for auto capture. You can choose to capture manually or set a duration for auto capture. Mind that you need to setup a cronjob for this purpose on the respective environment as well. |
| Forced Tokenization |
Define whether to store your customers' card data for future Card On File payments:
|
| Surcharging Status |
Confirm choices on whether you want to apply surcharge to your transactions. |
| 3DS Status |
(De)activate the 3-D Secure check. We strongly recommend selecting "Enabled" as 3-D Secure is mandatory in some markets. This will also ensure liability shift for transactions with successful 3-D Secure authentication. If you select "Disabled" and choose to process non 3-D Secure transactions, you may not benefit from liability shift and may be held liable. |
| 3DS Challenge Indicator |
Define whether to conceal or skip 3-D Secure authentication whenever possible by default:
|
| 3DS Exemption Request |
Some markets allow you to potentially exempt your customers from a 3-D Secure check:
|
| Debug Logging |
When debug logging is activated, additional details such as purchase amount, customer address, incoming webhook data, and HTTP requests/responses from the API are recorded. |
| Total |
Define a minimum amount of the basket to make payments for this extension possible. |
|
Geo Zone |
Choose a specific geographical zone to make this extension available on your webshop checkout page |
|
Sort Order |
Specify the order in which the available payment methods are displayed in the "Payment Method" step on your webshop checkout page. |
Click on "Save" to confirm your settings.
Hosted Checkout settings
| Property | Description |
|---|---|
| Status | Enable/Disable non-card payment methods via the Hosted Checkout Page. If you disable this setting, make sure to set Hosted Tokenization Settings > Status to "Enable" to ensure at least card payment methods are possible. |
| Payment Title | Customise the payment button text on your webshop checkout page. |
| Payment Button Title |
Customise the submit button text on your webshop checkout page. Default value: "Place Order". |
| Grouped cards | Enable/Disable grouping all cards payment methods under one single button on the Hosted Checkout Page. |
| Template file name | Enter the file name of your template to adapt our payment page to the look and feel of your shop. To learn how to create templates, see our dedicated chapter in the Hosted Checkout Page guide. |
| Wero Capture Trigger | If you work in two steps (authorisation and capture), this field will be shown to your customers in their Wero portal during the payment flow. |
Click on "Save" to confirm your settings.
Hosted Tokenization Settings
| Property | Description |
|---|---|
| Status | Enable/Disable card payment methods via the Hosted Tokenization Page. If you disable this setting, both card and non-card payment methods will be processed via the Hosted Checkout Page (see setting Hosted Checkout Settings > Status). |
| Payment Title | Customise the name of the payment method on your webshop checkout page. |
| Payment Button Title |
Customise the submit button text on your webshop checkout page. Default value: "Place Order". |
| Template file name | Enter the file name of your template to adapt our payment page to the look and feel of your shop. To learn how to create templates, see our dedicated chapters in the Hosted Tokenization Page guide. |
Click on "Save" to confirm your settings.
You can also configure different order statuses through the "Order Status" tab.
Manage payments
We have designed the plugin to follow-up on your orders easily, freeing you from the administration involved. Learn here how to use our plugin effectively which could help your business to thrive!
Perform maintenance operations
Captures, refunds and cancellations of authorisations are standard processes (maintenance operations) in your everyday business logic. Learn here how to perform these operations directly in the OpenCart Back Office:
- Login to the OpenCart Back Office. Go to Extensions > Extensions. Select "Payments" from the dropdown list "Choose the extension type".
- The plugin will load a list matching the "Payments" extension type. In the "Payments" table, look for "Worldline" and click on the "Edit" button in the "Action" column.
- Go to the "Transactions" tab. In the overview, depending on the order’s status (column "Transaction Status"), the following buttons are available in column "Action":
/
OpenCart order statusAvailable buttons statusOutput.statusCode=5 /
"pending_capture"- "Capture": Capture the authorised amount to receive the funds for the order. Use only for full captures.
For Partial captures, go to Order details > Order History > Worldline (Tab) and configure the amount to be captured. - "Cancel": Cancel the authorised amount.
statusOutput.statusCode=9 /
"captured"- "Refund": Reimburse the funds for the order. Use only for full refunds.
For Partial refunds, go to Order details > Order History > Worldline (Tab) and configure the amount to be refunded.
statusOutput.statusCode=2 /
"rejected""Cancel": Cancel the authorised amount. - "Capture": Capture the authorised amount to receive the funds for the order. Use only for full captures.
Make sure to switch to the LIVE environment as soon as you have finalised your tests.