PTS - Payment Adjustments

Complete documentation to install, configure and use the PTS - Payment Adjustments module in your PrestaShop store.

What is PTS - Payment Adjustments?

PTS - Payment Adjustments is a module for PrestaShop that lets you add surcharges or discounts based on the payment method the customer chooses at checkout. Each rule is configured per currency, so you decide which adjustment applies depending on the order currency.

As soon as the customer chooses the payment method, the surcharge or discount is added to the cart total, before payment. This way, the payment gateway charges the final amount directly. In the cart summary the surcharge appears as a "Payment fee" line and the discount as "Payment discount", translated into the customer's language. The "Payment fee" line has its own image, does not show the buttons to remove it or change its quantity and, on PrestaShop 8 and 9, does not count as one more item in the cart.

  • If the customer changes the cart after choosing the payment method (adds or removes products, changes quantities), the adjustment is recalculated automatically.
  • If the cart goes more than one hour without changes, the adjustment expires and is removed; it is applied again when the customer chooses the payment method again.
  • The pay button waits until the adjustment has been applied. If something fails, the customer sees a notice with a link to try again.
5.0.1
Version
PS 1.7.6+
PS 8.x
PS 9.x
Multistore
Multi-language

Main Features

Adjustments per Payment Method

Configure surcharges or discounts based on the payment method the customer chooses. The adjustment is added to the cart total before payment, so the gateway charges the final amount.

Configuration per Currency

Each currency has its own amount. If you leave it empty, the rule does not apply in that currency (empty is not the same as zero).

Calculation Modes

Choose between fixed amount or percentage to calculate the payment adjustment.

Advanced Conditions

Optionally limit each rule to certain customer groups and certain delivery countries.

Compatibility with other Modules

  • PrestaShop native checkout and One Page Checkout PS v5: the adjustment is applied as soon as the customer chooses the payment method, and the pay button waits until it has been applied.
  • PTS Stripe v5.1.2: the surcharge or discount is included in the amount Stripe charges.
  • PTS Redsys: the surcharge or discount is included in the amount Redsys charges.
  • Payment modules with several options: the rule is created per payment module and applies to all the options that module shows at checkout.

System Requirements

Requirement Minimum Recommended
PrestaShop 1.7.6 9.x
PHP 7.2 8.1+

Installation

There are two methods to install the module in your PrestaShop store, depending on your server characteristics.

Method 1: Installation from Back Office

1
Access the Back Office

Log in to your PrestaShop store administration panel.

2
Navigate to Modules

Go to Modules → Module Manager in the side menu.

3
Upload the module

Click on "Upload a module" and select the downloaded ZIP file.

4
Install and activate

Once uploaded, the module will be installed automatically. Click "Configure" to get started.

Method 2: Installation via FTP

1
Decompress the ZIP file

Extract the ZIP file contents on your local computer.

2
Connect via FTP

Use an FTP client (such as FileZilla) to connect to your server.

3
Upload the module folder

Upload the module folder to /modules/ in your PrestaShop installation.

4
Install from Back Office

Go to Modules → Module Manager, search for the module and click "Install".

Possible Installation Issues

If you experience override errors when installing or activating the module, do not try to resolve it on your own if you do not have technical experience. Contact our support team to receive personalized assistance and safely resolve the conflict.

Contact Support

Configuration

Configure the general module options to control its behavior in your store.

General Options

These options are in the module's "General" tab.

Payment discount name

Name the customer sees for the payment method discount in the cart, the email and the invoice. There is one field per language: choose the language with the selector next to it. If you leave it empty, the default name is used: "Descuento de pago" in Spanish and "Payment discount" in any other language. The change applies to the discounts created from that moment on.

Debug mode

Lets you test the module before your customers see it. While it is active, payment adjustments only apply to the IP addresses entered in the "IP" field.

IP

Appears when debug mode is enabled. Enter the IP addresses that will see the payment adjustments; you can add several, separated by commas.

There is no general switch to turn the module on or off: each adjustment is enabled or disabled with its own switch in the list of the "Adjustments" tab (see Enable or disable an adjustment).

Since version 5.0.1 the panel no longer shows the "Enable module", "Show in checkout", "Show in order detail", "Show in invoice" or "Show in email" options. The adjustment is already one more order line and always appears in the cart summary, the confirmation email, the invoice, the customer's order detail and the order in the back office. "Enable module" is replaced by each adjustment's own switch.

Adjustments Management

In the "Adjustments" tab you create and manage payment adjustment rules: surcharges or discounts based on the payment method the customer chooses. For each rule, the list shows the "Payment Module", the "Adjustment Type", the "Calculation Mode", the "Status" and the "Actions".

Create an Adjustment

To create a new payment adjustment, follow these steps:

1
Access the Adjustments section

From the module panel, click on the "Adjustments" tab.

2
Click "Add Adjustment"

The button is in the top right corner of the list.

3
Configure basic data

Complete the following fields:

  • Payment Module: the payment module this adjustment applies to. If the module offers several payment options (for example, card and other methods within the same module), the rule applies to all of them.
  • Adjustment Type: "Fee" (a surcharge added to the total) or "Discount" (subtracted from the total).
  • Calculation Mode: "Fixed" (a fixed amount) or "Percentage" (a percentage of the cart total; see How the adjustment is chosen and calculated).
  • Active: enables or disables the adjustment.
4
Define amounts per currency

In the "Amounts by Currency" block, enter the amount or percentage for each active currency in your store. If you leave a field empty, the rule does not apply in that currency: empty is not the same as zero.

5
Set conditions (optional)

In the "Conditions" block you can choose:

  • Customer Groups: the groups the adjustment applies to. The customer's default group is taken into account. Leave it empty to apply it to everyone.
  • Countries: the countries where the adjustment applies. The country of the delivery address is taken into account. Leave it empty to apply it to all.
6
Save the adjustment

Click "Save".

Edit an Adjustment

To edit an existing adjustment:

  1. Open the module's "Adjustments" tab.
  2. Find the adjustment you want to edit in the list.
  3. Click the pencil icon in the "Actions" column.
  4. Make the necessary changes in the "Edit Adjustment" form.
  5. Click "Save".

Enable or disable an Adjustment

Each rule has a switch in the "Status" column of the list. It is the way to turn an adjustment on or off without deleting it: a disabled rule is no longer applied to the cart, and you can enable it again whenever you want. The same switch appears as "Active" inside the rule form.

Delete an Adjustment

To delete an adjustment:

  1. Open the module's "Adjustments" tab.
  2. Find the adjustment you want to delete in the list.
  3. Click the trash icon in the "Actions" column.
  4. Confirm the action in the dialog that appears.

How the Adjustment is chosen and calculated

Which rule counts if there are several

For each payment method only one rule counts: the oldest active one, that is, the first one created among those that are active. The panel does not let you change that order.

If that rule does not apply to the cart (because it has no amount in the cart currency or because the customer does not meet its conditions), no adjustment is applied: the module does not move on to the next rule for that method. That is why the most practical setup is a single active rule per payment method.

How the amount is calculated

  • Fixed: the amount entered for the cart currency is added or subtracted.
  • Percentage: calculated on the cart total including tax, after discounts and without shipping costs.
  • If the amount for a currency is empty, the rule does not apply in that currency. Empty is not the same as zero.
  • The surcharge includes tax: the module splits it among the tax rates of the products in the cart, in proportion to each one's share of the total. If you have questions about how the surcharge should be taxed in your country, check with your tax advisor.

How the conditions are checked

  • Customer Groups: the customer's default group counts.
  • Countries: the country of the delivery address counts. While the customer has no delivery address yet, the country condition is not checked.

Employee Permissions

The "Adjustments" tab follows each employee's profile permissions on the module's tab:

  • Viewing the list of adjustments requires view permission.
  • Creating an adjustment requires add permission.
  • Editing it, or enabling and disabling it, requires edit permission.
  • Deleting it requires delete permission.

This way, an employee with a read-only profile can view the rules but cannot create, change or delete them.

Translations

The module includes an integrated translation editor that allows you to customize all visible texts in the frontend in any active language in your store.

Edit Translations

1
Access the translation editor

From the module panel, click on the "Translation" tab.

2
Select the language

Select the language you want to edit from the dropdown selector.

3
Edit the translations

Modify the texts you want to customize. Texts are grouped by translation file.

4
Save the changes

Click "Save" to save the changes in the selected language.

Available Actions

The translation editor offers the following actions:

Save

Saves the changes in the selected language

Save and download

Saves and downloads the translation file

Share with Us

Send your translation to the PresTeamShop team

Code Editors

The module includes code editors to customize the CSS styles and JavaScript applied in the frontend. This allows you to adjust the appearance and behavior of the module without directly modifying the module files.

CSS Editor

The CSS editor allows you to override or add custom styles that will be loaded in the frontend. Changes are stored in the module configuration and applied automatically.

To edit CSS styles:

  1. Access the "Code Editors" tab in the module panel.
  2. Modify the CSS code in the corresponding editor.
  3. Click "Save" to save the changes.
  4. Styles will be applied immediately in the frontend.

JavaScript Editor

The JavaScript editor allows you to add custom JavaScript code that will be executed in the frontend. Useful for adding additional functionalities or modifying the module's behavior.

To edit JavaScript code:

  1. Access the "Code Editors" tab in the module panel.
  2. Modify the JavaScript code in the corresponding editor.
  3. Click "Save" to save the changes.
  4. The code will be executed automatically in the frontend.

Backups

The integrated backup system allows you to save and restore the complete module configuration, including:

  • Configuration: All module configuration options.
  • Database: All tables related to the module (adjustments, conditions, amounts).
  • Files: Translation files and custom code (CSS/JS).

Generate Backup

To create a module backup:

  1. Access the "Backups" tab in the module panel.
  2. Click the "Generate new backup" button.
  3. The system will create a ZIP file with all module configuration and data.
  4. The backup will appear in the "Backups available" list.

Upload Backup

You can upload a previously downloaded backup to restore it in another installation:

  1. Access the "Backups" tab of the module.
  2. Click "Upload backup".
  3. Select the backup ZIP file.
  4. The system will upload the file and add it to the list of available backups.

Available Backups

In the "Backups available" section you will see all available backups with the following information:

  • Date: Date and time the backup was created.
  • MD5: MD5 hash of the file to verify its integrity.
  • Filename: ZIP file name.
  • Size: File size.
  • Actions: Available actions (restore, download, delete).

Manage Backups

For each available backup, you can perform the following actions:

Restore backup

Restores the configuration and data

Download backup

Downloads the ZIP file

Delete backup

Deletes the backup

To restore, click the "Restore Backup" button for the backup you want to recover and confirm the action in the dialog.

Troubleshooting

Common Issues

Verify that the module is correctly installed and activated. If the module has a debug mode option and it is active, make sure your IP is in the list of allowed IPs. Also clear the PrestaShop cache from Advanced Parameters → Performance.

Verify that your PHP version is compatible (7.2 or higher). Check the PHP and PrestaShop error logs. If the problem persists, contact technical support providing the error messages.

If you receive an override error during installation, it means another module is already using the same files. Do not try to resolve it manually. Contact our support team to receive personalized assistance.

Check, in this order: that the rule has an amount in the cart currency (an empty field means it does not apply in that currency); that the customer meets its "Conditions" (the customer's default group and the country of the delivery address); and that there is no other, older active rule for the same payment module, because only the oldest one counts and, if it does not apply, the next one is not tried. If "Debug mode" is enabled, adjustments only apply to the IP addresses entered.

The pay button waits until the adjustment has been applied. If something fails while applying it, the customer sees this notice next to a "Try again" link to retry. If the notice keeps appearing, contact our support team.

This happens with the express payment buttons of a module other than PTS Stripe and PTS Redsys: the adjustment is only applied in those two. The order does not add it afterwards: a private note is left on the order warning that it was created without the adjustment. If you use the express payment of another module and want it to carry the adjustment, write to us and we will review the compatibility.

Frequently Asked Questions

Licenses and Purchase

The license includes updates and technical support for a specified period (6, 12 or 24 months depending on the plan chosen). Once finished, you can optionally renew to continue receiving updates and support.
The license includes installation on one production domain, access to all updates and technical support during the active license period.
You can see the live demo available on our website to learn about all the module's functionalities. We do not offer trial versions to install on your site.
The module will continue to work normally, but you will not receive new updates nor have access to technical support.

Installation and Compatibility

The module is designed to work with any theme that follows PrestaShop standards. If you experience any conflict with your theme, contact our support team.
Yes, your license includes installation in two environments: production and development/staging. This allows you to test updates and changes before applying them to your live store.
Yes, the module is designed to be compatible with other modules. In case of conflict with a specific module, our support team can help you resolve it.
No, the installation is very simple and is done from the PrestaShop Back Office. If you have any problems during installation, our support team is available to help you.

Updates

No, updates preserve all your configuration and data. You would only lose the configuration if you uninstall and reinstall the module, which is not necessary to update.
You can check for new versions by visiting our website or by accessing your account in our store. We will soon add the option to check for updates directly from the module panel.
It is not mandatory, but it is recommended to update to enjoy the latest improvements, new functionalities and security fixes.

Technical Support

We normally respond within 24-48 business hours.
Yes, as long as you have active support within your license period, you have full access to technical support.
You can request help with installation, configuration, error resolution and general questions about the module's operation.
Yes, our support team serves in both Spanish and English.

Refunds and Warranty

We only apply refunds in case the module fails to work in your store after receiving technical support. Keep in mind that before purchase you have a demo to test the module.
We guarantee that the module works as described in the documentation. If you find any bug, we fix it at no additional cost.

Customization

Yes, we offer custom development services. Contact our support team to request a personalized quote.
It is not recommended to modify the module code on your own, as you would lose technical support and when updating the module you would lose the changes made. If you need additional functionalities, we recommend requesting a custom development quote so that the changes are included in the module and maintained in future versions.

Support

If you need additional help or have any questions about the module, we are here to help you.

Email Support

Send us an email and we will respond as soon as possible.

support@presteamshop.com

Help Center

Visit our help center for more resources.

Visit Help Center