Settings
This main section groups module configurations, organized into subsections that control different aspects of the checkout process.
General
In this configuration section you will find the parameterization options that will define the general behavior of the module.
Sandbox
Enable this option to test the module in your store before opening it to customers. While it is active, the module's checkout is only shown to the IP addresses you enter in the "IP" field, and the rest of your visitors keep buying through the PrestaShop checkout. The IP is matched exactly, so if your connection changes address you will stop seeing the module.
IP
Lists the IP addresses from which the module will be visible when Sandbox mode is activated. Only visitors accessing from these IPs will see and be able to use the module's checkout. You can automatically add your current IP by clicking the "+" button next to the field.
If you leave this field empty while Sandbox is enabled, nobody will see the module's checkout, not even you. Add at least your own IP before turning it on.
It is recommended to enable this option to test the module in your store before enabling it for customers.
Customer ID
This is the internal customer the module uses to calculate prices for a visitor who has not identified themselves yet, applying the taxes and rules that would apply by default. The amount can be refined later, once the customer enters an address or logs in, because their group and destination are known by then. The field is filled in automatically when the module is installed and cannot be edited, which is why you will see it locked. It is shown only in case you ever need to pass it on to technical support.
Enable persistent debug logs
When this option is enabled, the module stores a history of checkout actions and values. This information is useful for the development team to analyse and resolve any issue that may have occurred in your store.
Enable guest checkout
Lets visitors buy without creating an account, completing the checkout as guests. Keep in mind that this is not a module setting of its own: it is the same one PrestaShop has under Customers, Settings, so whatever you change here you change for the whole store. If you disable it, every customer will have to register in order to buy.
Require sign in when the email already has an account
This sub-option sits inside "Enable guest checkout" and only has an effect while guest checkout is on. When you enable it, a visitor typing the email of a registered customer has to sign in instead of ordering as a guest: they are asked for their password and the checkout removes the "Continue as guest" way out. The order then belongs to their account and shows up in their order history, instead of creating a separate customer record with the same email.
It arrives disabled when you update the module, so the buying flow of a store that already sells to guests does not change on its own. Turn it on yourself if you want it.
Confirm delivery address before checkout
Shows a checkbox in the payment step with the chosen delivery address, so the customer confirms it before placing the order. It works well to reduce failed deliveries caused by old addresses saved in the account. It does not appear when the cart only contains virtual products, since there is no delivery to confirm in that case.
Choose the carrier you use for store pickup
When the "Confirm delivery address before checkout" option is activated, this option allows you to select the carriers you use for in-store pickup service (Click & Collect, Local Pickup, etc.). Customers who select one of these carriers in the checkout process will not see the delivery address confirmation checkbox in the payment step, allowing a faster checkout for this type of shipping.
Redirect directly to page checkout
With this option active, any visit to the cart page goes straight to the checkout, so the customer skips that intermediate step. The redirect does not apply if the cart is empty, if a product has run out of stock or if the order does not reach the minimum purchase amount: in those cases the customer sees the cart with the corresponding notice.
Hide the tax label when no tax applies (0%)
Enable this option so the "tax included" label disappears when the tax actually applied is 0%. PrestaShop only checks whether taxes are enabled in the store, without looking at the province's tax rule, so it shows that label on exempt destinations too, such as the Canary Islands, Ceuta or Melilla. The correction applies both on the product page and in the cart.
Replace the registration and login form with the checkout form
When activated, this option replaces the native PrestaShop authentication form (login and registration) with the module's custom form.
Separate login and registration pages
This sub-option appears when "Replace the registration and login form with the checkout form" is enabled, and it only takes effect while that option stays on. When activated, the login page shows only the login form and the registration page shows only the registration form. If you disable it, both forms are shown together. Inside the checkout both forms are always shown, whichever choice you make here.
This option is only available on PrestaShop 8 or higher, where a separate registration page exists.
Show checkout registration form at: My addresses
When activated, this option replaces PrestaShop's "My Addresses" section with the module's custom address form, allowing customers to manage their shipping and billing addresses with the checkout style.
Show checkout registration form at: My personal information
When activated, this option replaces the customer account personal data form with the module's custom form.
Registration
In this configuration section you will find options related to the customer registration and authentication process.
Force customer registration or login
When this option is enabled, customers who are not logged in are sent to the authentication page before they can reach the checkout. It also cancels out guest checkout, even if you have "Enable guest checkout" turned on in the General tab. Only enable it if you really want to sell exclusively to customers with an account.
Enable privacy policies
Adds a mandatory privacy policy acceptance checkbox to the checkout registration form. Only customers who have not logged in yet see it, since an identified customer is not asked again. It requires you to pick the content page in the dropdown that appears right below: if you leave it unselected, the checkbox is never shown.
Privacy policy page
Inside "Enable privacy policies", this dropdown picks which content page of your store the checkbox link points to. On screen it appears with no title above it, it is the only dropdown in the section. Always select one, because with no page chosen the acceptance checkbox is never shown to the customer.
Enable registration without email
Lets customers finish the purchase without being asked for an email address: the module generates a temporary one for the account. It works on the checkout page only, so the registration and login pages still ask for the email. Bear in mind that this email is not real: you will not be able to send those customers their order confirmation, and they will not be able to recover their password or log in with a one-time code either, because there is no mailbox to send it to.
Allows customers to complete the purchase without providing their email address.
Check account creation by default
Within the guest checkout flow, this option leaves the checkbox the customer uses to request an account ticked by default. It only has an effect if "Enable guest checkout" (General tab) is on and "Force customer registration or login" is off: without guest checkout that checkbox does not exist, because the account is always created. It raises your number of registered accounts without forcing anyone, since the customer can untick it.
This configuration only applies on the checkout page.
If the customer accesses the login or registration pages directly (authentication), creating an account will be mandatory and guest registration is not allowed.
Show password policy recommendations
Shows the customer a strength bar and specific tips while they type their password, so it meets the policy you have configured in PrestaShop. It needs PrestaShop 8.0 or higher, because it relies on PrestaShop's own strength meter. It comes enabled out of the box; only disable it if you prefer a plainer form.
Request password confirmation
Controls whether the registration form includes the password confirmation field. Disable this option to ask for the password only once and shorten the form.
OTP Login
In this configuration section you will find options to enable and configure the One-Time Password (OTP) authentication system, including expiration time, allowed attempts, and expired code management.
Configure CRON task
This section displays a URL that you can copy to configure a scheduled task (CRON) on your server. The CRON task will automatically execute the deletion of expired OTP codes periodically. It is recommended to configure this task to run every hour, thus keeping the database clean without manual intervention.
This is an informative functionality that provides the necessary URL to configure the CRON on your server. It includes buttons to copy the URL to the clipboard or open it in a new tab and execute it from the browser.
Enable login with OTP
Lets your registered customers log in with a one-time code they receive by email, instead of their password. It comes enabled out of the box and the button appears in the module's login form, that is, in the checkout and, if you have enabled the form replacements, on the account pages too. It is not available for guests or for disabled accounts, and customers have to wait one minute between one code and the next.
OTP expiration time (minutes)
Defines how many minutes the code stays valid from the moment it is sent; after that time the customer has to request a new one. The default value is 5 minutes, a reasonable balance between security and enough margin for the email to arrive. If you leave it empty or at zero, the module falls back to 5 minutes.
Maximum verification attempts
Defines the maximum number of failed attempts allowed when entering the OTP code.
Once this limit is reached, the code is blocked and the customer must request a new one to continue.
Delete expired OTP codes now
This button executes the immediate deletion of all expired OTP codes. Use it when you need to manually clean expired codes without waiting for the scheduled task (cron) to run. When clicked, all expired codes will be removed from the database.
OTP Statistics
This section displays a panel with metrics of OTP system usage in the last 30 days, including:
- Total Requests (30 days): Total number of OTP codes generated and sent to customers in the last 30 days
- Successful Logins: Number of OTP verifications completed successfully
- Failed Attempts: Number of failed OTP code verification attempts
- Success Rate: Calculated percentage of successful verifications relative to total requests
These statistics help you monitor the effectiveness of the OTP authentication system among your customers.
Addresses
In this section you will find options to manage shipping and billing addresses, including validations, automatic autocomplete, phone mask, and other advanced functionalities that optimize the customer experience when entering their address data.
Configure CRON task
This section displays a URL that you can copy to configure a scheduled task (CRON) on your server. The CRON task will automatically execute the deletion of empty addresses created by the module during the checkout process. This helps keep the database clean of incomplete addresses that customers did not finish.
This is an informative functionality that provides the necessary URL to configure the CRON on your server. It includes buttons to copy the URL to the clipboard or open it in a new tab and execute it from the browser.
Request invoice address
When you enable this option, a checkbox is shown in the checkout address step with which the customer decides whether they want to enter an invoice address different from the delivery one. When they tick it, the form to fill it in appears. That checkbox is not shown, and the invoice address is requested directly, when the cart only contains virtual products or when you have enabled the "Required" sub-option.
Invoice address position
This sub-option appears when "Request invoice address" is enabled and defines the order in which addresses are requested during checkout. With "After delivery address" you get the usual behaviour. With "Before delivery address" the roles are completely reversed: the invoice address is always requested and it is the checkbox that opens the delivery address, not the other way round. Useful in stores where the invoice details are the starting point of the purchase.
The "Inside payment step" option is listed as a coming soon feature and is not available yet.
Required
This sub-option only makes sense when the invoice address is requested after the delivery one. When you enable it, the customer will have to complete the invoice address before they can finish the order. If you change the order to "Before delivery address", the module ignores it, because in that mode the invoice address is always requested anyway.
When the cart only contains virtual products and you have "Request invoice address" enabled, the invoice address is required. If you disable that option, from version 5.3.2 the checkout stops asking for an address in that kind of cart.
Request invoice
When this option is enabled, an "Individual / Company" selector is added to the address form, requesting the tax details for each case. Individuals are asked for their identification. Companies are asked for the company name and at least one of the two tax numbers, the identification or the VAT number, they do not have to fill in both. Italy does work differently: companies have to give the VAT number (Partita IVA) and, on top of that, an SDI code or a PEC email, and the Codice Fiscale is left as an optional field.
Show request invoice in
This sub-option determines which form displays the invoice selector. You can show it in the invoice address form, in the delivery address form, or in both forms.
Invoice block placement
Decide which part of the address form the invoice block appears in: at the beginning, before the address details, or at the end, after them. The tax fields are always grouped inside the block, wherever it is. Place it at the beginning if most of your customers are companies and the first thing they want to enter are their tax details; at the end if the invoice is the exception and you prefer not to interrupt the normal flow.
Default invoice type
Choose which type the block is set to when the customer turns on the invoice request, "Company" or "Individual". If the address already has a type saved from a previous purchase, that one is kept and this preference is not applied. It also has no effect if you have enabled "Only allow company invoices", because company is then the only possible type.
Only allow company invoices
Enabling this option hides the "Individual" tab, so the customer can only request the invoice as a company. It is intended for stores that do not issue invoices to private individuals.
Do not request identification from companies
When you enable this option, the identification field (DNI) disappears when the customer invoices as a company and the VAT number becomes the only tax detail, now required. It is intended for countries where a company has a single tax number, such as the CUIT in Argentina, the RFC in Mexico or the CIF in Spain, where asking for an identification on top of that confuses customers and invites them to repeat the same value. The option decides what data the checkout asks for, not what data your invoicing needs: check first what the regulations of the countries you sell to require.
It does not apply in Italy. There the Codice Fiscale can be different from the Partita IVA (for example in a ditta individuale), so the checkout keeps showing both fields even if you enable this option.
Mandatory (request invoice)
Inside "Request invoice", enabling it removes the switch with which the customer can opt out of the invoice: the type selector and its fields are always shown and required. Use it in stores that issue an invoice for every order. Do not confuse it with the "Required" option of "Request invoice address", which is about the address and not about the tax details.
Show list of cities using Geonames.org
Enables a dropdown list of cities based on the free Geonames.org database.
When this option is active, cities are automatically displayed according to the selected province, facilitating correct selection by the customer.
This option does not work when the "Shipping Configurator Pro" module is installed and active in your store.
Use Geonames.org autocomplete from postal code
When enabling this option, the postal code is used as a basis to show automatic city suggestions while the customer is entering it, using the free Geonames.org service.
By selecting one of the suggested options, the postal code and city fields are automatically completed.
Being a free service, not all postal codes guarantee the availability of suggestions.
Use address autocomplete from Google
When enabling this option, the Google API is integrated to show address suggestions in the address field while the customer types.
By selecting a suggestion, the address, city, and postal code fields are automatically completed, provided the information is available.
This functionality applies to both the delivery address and the invoice address, improving data accuracy. Suggestions are loaded the moment the customer opens an address form, not when they enter the checkout: if you test it on an address that is already saved, without opening the form, you will not see any suggestions and nothing is broken. If you have another module that also uses Google Maps, from version 5.3.2 ours stops loading them unless they are needed, which was the cause of the clash on our side; we have checked it with Correos Oficial.
Google API KEY
This field is displayed when enabling the "Use address autocomplete from Google" option.
Here you must enter the Google API Key necessary to activate the address autocomplete functionality.
The key must be generated from the Google Cloud Console, so it is necessary to have a Google account and log in.
For autocomplete to work, you must enable the Places API (New) in your Google Cloud project. Only with that API enabled does the functionality operate correctly. Bear in mind that Google also requires a billing account linked to the project: without it the key is still created, but the requests are rejected and the autocomplete never gets to suggest anything.
For security and to control usage, it is recommended to apply a restriction to the key:
restrict its use by domain (application restriction using "HTTP referrers" with your store's domain)
and limit the key to the Places API (New) only (API restriction).
You can consult the API Key creation process and its configuration at the following official Google links:
Validate unique DNI
When checking this option, the system will validate that the entered ID number is not already registered in addresses of other customers, avoiding duplicates.
The validation is performed when attempting to save the address, showing an error message if the ID number already exists.
Validate identification of Spain, Chile, Italy and Portugal
Activate this option to enable automatic format validation of identification for customers from these countries. The system will verify that the ID number or identity document complies with the correct format for each country.
Show phone mask
When activating this option, the mask functionality is enabled in phone fields, allowing you to select the country and automatically add its international prefix when entering the landline or mobile phone number.
Automatically show international prefix when selecting country
This sub-option is enabled when "Show phone mask" is active.
When checked, the international prefix of the selected country (for example, +34 for Spain) is automatically displayed in the phone fields.
Enable phone number format validation
This sub-option also depends on "Show phone mask". When activated, the system validates that the phone number has the correct length and format for the selected country.
If you need to allow more flexible input without strict validation, leave this option disabled.
Show delivery address for virtual product purchases
Enable this option if you want a delivery address to be requested even when the cart only contains virtual products (downloads, services, bookings). With it disabled, the checkout stops asking for one in those carts and the customer reaches payment sooner.
Virtual product purchases without an address (new in 5.3.2).
The address step disappears completely when you have
both options disabled at the same time, this one and "Request invoice address", in carts that only contain virtual products: the customer identifies themselves and pays, nothing else. The order is closed with an address that the module builds from the default value of the Country, State and City fields of the invoice object, which you define in
Fields: review them before enabling this mode. The remaining fields, such as the postal code or the phone number, are left empty even if you gave them a default value. A single physical product in the cart is enough for the step to be requested again, and the address page in the customer's account does not change.
Delete empty addresses
This button executes the immediate deletion of all empty addresses created by the module. Use it when you need to manually clean incomplete addresses without waiting for the scheduled task (CRON) to run. When clicked, all empty addresses will be removed from the database.
Shipping
This section allows you to configure options related to shipping methods.
Progressive shipping cost display
When you enable this option, the shipping cost is shown as the customer moves forward. Outside the checkout, the cart always shows "To be calculated" and does not add shipping to the total, because there is still no address to calculate it with. The real amount appears inside the checkout, once the customer has identified themselves and their shipping address is complete.
This functionality improves the customer experience by avoiding showing incorrect shipping costs when the address is not yet complete, and then shows the precise cost once all necessary information is available.
This option is only available for Vertical and Steps layouts, and requires PrestaShop 1.7.8 or higher. Progressive calculation also works correctly with AJAX requests.
Show description of carriers
When activating this option, the description of each carrier is displayed in the shipping step of the checkout, providing additional information that can help the customer choose the most suitable shipping method.
Show image of carriers
Enable this option to display the image or logo of each carrier in the shipping step. Images help visually identify available shipping options.
Choose a default carrier
Allows you to select which carrier will appear preselected by default when the customer accesses the shipping step. You can choose a specific carrier, or use the automatic options "Best price" (selects the cheapest) or "Best rating" (selects the best rated).
Show text box for order message
If you activate this option, a text field will be displayed in the shipping step where customers can leave a message or comment related to their order (for example, delivery instructions, time preferences, etc.).
Required
This sub-option appears when "Show text box for order message" is activated. When enabled, the customer must write a message before being able to continue with the purchase process.
Force state/province requirement
When you enable this option, the state or province becomes required in order to show the shipping options. If you disable it, the state is no longer required even in countries that have states configured, which is practical for stores where the state does not affect carrier rates or taxes. Careful, though: disabling it does not cancel the exceptions, because the carrier modules you list in the next option make it required again whenever they are active.
Carrier modules that require state/province
This field appears when "Force state/province requirement" is disabled. Here you can list, separated by commas, the technical names of the carrier modules that do need a state or province. When any of them is active, the state becomes required again.
The technical name is not the commercial name you see in the module list: it is the name of its folder inside your store's /modules/ directory (for example seur or packlink). If you type it wrong you get no error, it simply has no effect, so check it beforehand. The three fields in this section (state, postal code and city) work the same way.
Force postal code requirement
When you enable this option, the postal code is required in every country. If it stays disabled, the requirement is determined by each country's configuration in PrestaShop or by the carrier modules that need it.
Carrier modules that require postal code
This field appears when "Force postal code requirement" is disabled. List, separated by commas, the technical names of the carrier modules that need a postal code (for example: envialacarrier, packlink). With any of them active, the postal code becomes required.
Force city requirement
Enable this option so the city is required in every country. With the option disabled, the requirement is determined only by the carrier modules that need it.
Carrier modules that require city
This field appears when "Force city requirement" is disabled. List, separated by commas, the technical names of the carrier modules that need a city (for example: shippingconfiguratorpro, chilexpress_oficial, seur). With any of them active, the city becomes required.
Ask for missing details after the order
When enabled, the order confirmation page shows a block so the customer can fill in the required details their address was missing. It is aimed at express payments (Apple Pay, Google Pay, PayPal…): the wallet hands over the postal address but never the ID number or the company, so those orders arrived incomplete and the detail had to be chased by email. The block is the checkout form itself, with its masks and its validations.
What the customer can complete there: first and last name, company, street and complement, landline and mobile phone, ID number, VAT number and the "Other" field.
Country, state, city and postcode stay locked, and that is not a limitation of the form: changing them would recalculate the shipping costs and the taxes of an order that is already charged. If one of those four is what is missing, the customer sees a notice asking them to contact you, and you fix it from the order.
Payment - General
In this section you will find the general configuration options related to payment methods in the checkout process.
Show images of payment methods
Activate this option to show the logos or images of each available payment method, facilitating visual identification of payment options by the customer.
Show detailed description of payment methods
When enabling this option, detailed information about each payment method is displayed. This helps customers better understand how each option works before selecting it.
After disabling this option, payment methods that contain forms to request information may be affected.
Require acceptance of terms and conditions before buying
When you activate this option, a mandatory checkbox will appear that the customer must check to accept the terms and conditions before completing the purchase.
Terms and conditions CMS ID
This sub-option appears when "Require acceptance of terms and conditions before purchase" is activated. Here you select the CMS page of your store that contains the terms and conditions that customers must accept.
The checkbox is shown above the list of payment methods, not under the buy button. It matters with gateways that embed their own form and their own button (Redsys InSite, Comercia and the like): there the module button is never used, so a checkbox placed at the very bottom fell out of sight and the customer read "accept the terms" without seeing where to accept them.
Show the delivery message in the payment step
If you activate this option, the order comments box moves from the shipping step to the payment step, so the customer writes their instructions right before confirming the purchase. It is not duplicated: it stops being shown in Shipping.
This option only works if the "Show text box for order message" option is activated in the Shipping > Show text box for order message section. Without that option enabled, the message field will not be displayed in the payment step.
Show discount box in the mobile payment step
Enable this option so that the discount box (coupons) is displayed in the payment step when customers access from mobile devices, facilitating the use of promotional codes on small screens.
Payment methods that require a deferred page
Some payment gateways need to display their own form or load their SDK on an extra page after the customer clicks "Buy now" (for example Stripe, PayPal or Redsys). In this field you can list, separated by commas, the technical names of those payment modules. All other methods will process the order directly with one click.
Payment - Configuration
This section allows you to customize in an advanced way each payment method installed in your store, including titles, descriptions, logos, among others.
Select payment module
On screen this dropdown is called "Select installed module", and what you pick is a payment module, not a single payment method. When you select it, one card appears for each payment method that module publishes, each with its own customization options. If a module you have installed does not show up on the list, simulate a purchase up to the payment step and reload this screen.
Customization options
| Option |
Description |
| Debug mode |
Keeps the payment module visible only to the IP addresses you enter, so you can test it before opening it to customers. It affects the whole module, that is, every payment method it publishes, not just one. Careful: if you enable it with an empty IP list, that module disappears from the checkout for everybody. |
| IP restrictions |
This field appears when "Debug mode" is activated for a payment method. Here you can list the IP addresses from which the payment method will be visible during testing. You can add your current IP by clicking the "+" button. |
| Active |
This switch allows you to enable the customizations that are applied and displayed on each payment method. When disabled, the payment method is displayed with its default configuration and behavior, without applying the customizations defined in the module. |
| Title |
Multi-language text field where you can customize the name that will be displayed to the customer for the payment method. You can set the title for each language available in your store. |
| Description |
Multi-language text field where you can customize the description that will be displayed to the customer for the payment method. You can set the description for each language available in your store. |
| Additional information |
Multi-language text field to add complementary information about the payment method, such as special conditions, processing times, commissions, etc. |
| Default |
When you enable this option, that payment method comes up already selected when the customer reaches the payment step, which speeds up the purchase. There can only be one default in the whole store: ticking it here unticks whichever one you had in any other module. The official Stripe module does not support it and you will see its switch locked with the corresponding notice. |
| Logo |
Allows you to upload a custom image (logo) for the payment method. You can upload files in GIF, PNG, JPG, JPEG or SVG format. It also includes the option to delete the existing logo. |
| Delete payment method |
The trash button on each card deletes the customization of that payment method and removes it from this screen. It does not uninstall or disable anything: the payment method keeps charging in your store, and it shows up here again as soon as somebody reaches the payment step. |
| Reset payment method configuration |
Each card has its own button, and it resets to their original values only that payment method (title, description, logo and the other options), without touching the others from the same module. The payment method stays active after being reset. |
Reset all configuration
Button located at the top of the section, allows you to reset the configuration of all payment methods simultaneously to their default values.
After resetting all configuration, the "Select payment module" list will be temporarily empty. Payment methods will be displayed again automatically when accessing the checkout from the store frontend.
Cart
This section groups all options related to the display and behavior of the shopping cart within the checkout, including product information, totals, discounts and additional functionalities.
Show voucher box
When activating this option, a field is displayed where customers can enter discount coupon codes during the checkout process.
For the discount box to appear in the cart, there must be active and valid discount coupons available in the store.
Show amount remaining to qualify for free shipping
Enable this option to show the customer how much money they need to add to the cart to qualify for free shipping, encouraging the purchase of additional products.
Show the cart expanded on mobile devices
When activating this option, the cart summary will be displayed expanded by default on mobile devices, allowing the customer to see all products without needing an additional click.
This option only applies to the Shopify design.
Enable hook shopping cart
This option controls the execution of hooks from other modules in the shopping cart.
When disabling the field, modules that are displayed or executed on the PrestaShop cart page will stop executing.
Allow to edit products in the cart
Enable this option so customers can modify product quantities directly from the cart during the checkout process, without needing to go back.
The gift product is always shown with its fixed quantity: it has no quantity selector and no remove button, so nobody can take extra free units.
Show weight
Activate this option to show the weight of each product in the cart listing, useful information for shipments that depend on total weight.
Show availability
When enabling this option, the availability status of each product (in stock, available, etc.) is displayed in the cart.
This option only works when the "Stock management" option is active in "Shop Parameters - Product Settings".
Show reference
Activate this option to show the reference or SKU code of each product in the checkout cart listing.
Show unit price
When enabling this option, the unit price of the product is displayed when the quantity is greater than 1.
This makes it easier for the customer to clearly understand the total price calculation based on the selected quantity.
Show empty cart button
When activating this option, a button appears that allows the customer to remove all products from the cart at once.
Show zoom on image product
Enable this option so that when hovering over a product image in the cart, an enlarged version of it is displayed.
Show delivery time of the product
Activate this option to show the estimated delivery time for each product in the cart.
Remove the link from the products
When enabling this option, product images and names in the cart stop being clickable links to product pages, preventing the customer from leaving the checkout.
Show subtotal of products
Activate this option to show the product subtotal in the cart summary.
Show total discount
Enable this option to show the total discount applied in the cart summary.
Show shipping total
When activating this option, the cost of the selected shipping is displayed in the cart totals summary.
Show gift wrapping total
Activate this option to show the cost of gift wrapping (if available and the customer has selected it) in the cart summary.
Show total
Enable this option to show the final total amount in the cart summary.
Show total excluding tax
When activating this option, the order total excluding taxes is displayed in the cart summary.
The display of the total without taxes depends on the "Price display method" configuration defined in the BackOffice in "Shop Parameters > Customer Settings > Groups".
Show total tax
Activate this option to show the total taxes applied in the cart summary.
You must enable the 'Show taxes in the cart' option in the BackOffice in "International > Taxes > Tax Options".
Orders that arrive in several deliveries
When the order is split between several carriers, the cart summary adds a "Shipped by" label under each product with the carrier bringing it. It is not an option and there is nothing to enable: it only shows when it is needed, because with a single carrier the information is already in the shipping step. Without that label the customer saw a flat list of products and a single shipping line with the names joined together, with no way to tell what arrives from where.
Theme
This section allows you to customize the visual appearance of the checkout, including theme, styles, font sizes and design elements such as header and footer.
General
Select the theme of the checkout design
Choose the checkout color palette from the four included in the module: Prestashop Classic, Prestashop Hummingbird, Shopify Indigo and Custom. It is a palette of the checkout itself, independent from your store's theme, so you can combine it with any of the layouts above. If none of them fits your brand, start from Custom and adjust its colors one by one in "Theme Configuration".
Select the style of the checkout design
Dropdown that allows you to select the layout or structure of the checkout in desktop version.
The different available styles (Vertical, Steps, 3 Columns, Shopify) define the arrangement and organization of elements within the checkout.
Select the style of the mobile checkout design
Dropdown that allows you to select the specific layout or structure for mobile devices.
The different available styles (Vertical, Steps, 3 Columns, Shopify) define the arrangement and organization of elements within the checkout.
Shopify style variant
This dropdown appears when you have chosen the Shopify style for desktop or for mobile, and lets you pick its visual variant. The Classic option keeps the original look, while V2 presents a more modern version with rounded cards, floating label fields and a collapsible cart summary.
Three columns style variant
This dropdown appears when you have chosen the 3 Columns style for desktop or for mobile. As with the Shopify style, you can select between the Classic variant and the V2 variant, which refreshes the visual presentation of the layout.
Show floating label on the form fields
When activated, this option displays form field labels as floating labels, providing a more modern and compact interface. Labels appear floating above the field when the user interacts with it.
Font size (rem)
Text field that allows you to define the base font size, expressed in rem units (for example: 1, 1.2, 0.9).
This value will be applied in different sections of the checkout, as well as on the login, registration, personal data and addresses pages.
Use checkout layout
When you enable this option, the checkout is rendered inside your theme's checkout template, instead of on the module's own full page. Enable it if you want the purchase process to inherit the header and footer that your theme reserves for the checkout.
Some themes have a checkout template that leaves no room for the module's content, and the most common case is Hummingbird, the default theme of PrestaShop 9. In those themes the option is ignored and the checkout is still displayed with the module's own layout, instead of coming up blank. The check is made against the active theme's template, so it may go undetected in a child theme or in an unusual file structure: if you use one of those, test the checkout with the option enabled before leaving it on in your production store.
Show native header
Enable this option to display the native header of your PrestaShop theme on the checkout page.
Activating this option may cause design conflicts. It has no effect on the Shopify design, which always replaces the theme header with its own: that layout is meant to stay as clean and simple as Shopify's.
Show "Continue shopping" link
This sub-option appears when "Show native header" is disabled. When enabled, it displays a link that allows the customer to return to the store's homepage so they can continue shopping.
Custom URL for the "Continue shopping" button
This sub-option appears when 'Show "Continue Shopping" link' is activated. It allows you to specify a custom URL to which the customer will be redirected when clicking the "Continue shopping" icon.
Show native footer
Enable this option to display the native footer of your PrestaShop theme on the checkout page.
Activating this option may cause design conflicts. It has no effect on the Shopify design, which always replaces the theme footer with its own: that layout is meant to stay as clean and simple as Shopify's.
Show personal information form directly
When this option is enabled, visitors see the full registration form from the start. If you disable it, they must first enter their email address and the rest of the form appears afterwards. Enable it if you prefer the customer to see everything you are going to ask for at once; leave it disabled if you want a lighter entry point, with the advantage that if they abandon the checkout you already have their email address.
Theme Configuration
This subsection provides a visual editor to customize in detail the design variables of each available theme, allowing you to fully adapt the checkout appearance to your store's visual identity.
Theme selection
The left panel holds the four color palettes that come with the module (Prestashop Classic, Prestashop Hummingbird, Shopify Indigo and Custom). The star marks which one is applied to the checkout right now, that is, the one you picked in "Theme > General". Click any of them to edit its colors: you can prepare one at your own pace without customers seeing the changes, because it is not applied to the store until you select it as the checkout theme.
Variables panel
The right panel shows all editable variables of the selected theme, organized in individual cards. Each variable includes:
- Description: Descriptive name of the variable
- Technical name: Variable identifier
- Color picker: For color variables, a visual picker is displayed that allows you to easily choose colors
- Text field: Allows you to manually enter the color value in hexadecimal format
- Color preview: Preview of the selected color
- RGB value: Shows the equivalent in RGB format
Value validation
The system automatically validates entered values. If a value is not valid (for example, a malformed hexadecimal color), a red border will be displayed.
Action buttons
- Reset: Click the button with the icon (↻) to undo unsaved changes and return to previous values in case of selecting incorrect colors. This action only affects unsaved changes and resets all modified variables, so if you want to adjust only a specific variable, it is recommended to make the change manually to avoid losing other pending customizations.
- Save: Saves the modifications made to the selected theme.
Login
Dresses the module access pages as a split screen: your image with your texts on one side, the form on the other, without the shop header and footer. On mobile it takes the full screen. Colours are not chosen here: they come from the theme you have in "Theme Configuration".
It needs the login form to be the module one, that is, the "Replace the registration and login form with the checkout form" option in Settings › General. Without it those pages are still served by PrestaShop and there is nothing to dress.
Sign-in page
This is where you turn the design on with "Use this design on the sign-in page" and write its three texts, each one per language:
- Headline: the large sentence over the image.
- First short line and Second short line: two small lines under it, such as "4.8 out of 5 from 1,200 reviews" or "Delivered in 24 h".
The three come prefilled, in the languages the module ships translated, so right after installing there is already something for the customer to read. Replace them with your own whenever you like, or clear them: a field left empty is not shown, and with all three empty the panel keeps your logo over the background. The title and subtitle above the form also have their own wording, but they are not written here: change them under Translations. There are three pairs and the module picks the right one depending on whether the screen serves the login, the registration or both at once.
Registration page
The same three texts, for when the registration has a page of its own. Only the texts change: the design, the colours and the images are the ones above, there is no second set.
They come prefilled too. Clear one and the sign-in one is used, so you do not have to write the same thing twice. And if the registration does not have a page of its own —which is how the module comes, and the only possibility on PrestaShop 1.7.6— both forms share the sign-in screen and these texts are never used: what you wrote above is what shows. The separate page is enabled with "Separate login and registration pages", in Settings › General.
Password recovery
It has its own switch, "Use this design on the password recovery pages", so you can dress the sign-in page and leave recovery exactly as PrestaShop serves it. It covers the three screens: the one asking for the email, the one saying it has been sent, and the one where the new password is written.
Its three texts go underneath, also prefilled and with the same rule: empty uses the sign-in one. It needs the sign-in design to be on.
The panel background
The panel is painted with a gradient of the colour you have in "Login panel background color", inside "Theme Configuration". It starts as the primary colour of the palette you use, so without touching anything the panel already carries your brand colour. If you upload an image, it goes on top of that background.
The logo and the texts get a gradient shade behind them when there is an image, so they read on top of it. With no image it is not needed: you pick the colour yourself and the text uses the one the palette declares readable over the primary.
Images
You can upload one image per screen size: Desktop, Tablet and Mobile. Each one is uploaded, replaced or removed on its own. Accepted formats: JPG, PNG and WEBP, up to 4 MB.
They are the same for the three pages: what changes per screen is the texts, not the image. And you do not have to upload all three: a size with no image of its own uses the next wider one, and if you have uploaded none the panel keeps the background colour, with no image.
Show and hide password button
The module password fields carry an eye icon to reveal what is being typed. There is nothing to configure and it is not exclusive to this screen: it also shows in the checkout login form.
Fields
In this section you can manage the fields that are displayed in the module and that allow collecting customer information.
From here it is possible to create and configure custom fields at different points in the checkout process, adapting the information collection to your business needs.
Fields
This subsection groups the options to manage checkout form fields.
Notice: "PrestaShop requires fields that your checkout does not ask for"
If PrestaShop marks an address field as required and your checkout does not ask for it —or asks without making it mandatory— this screen warns you at the top and lists the fields involved. While that is the case no customer can save an address: the shop rejects every attempt with no visible message, so the symptom reads as "the checkout does not save" rather than as a settings problem.
It usually comes from stores upgraded from PrestaShop 1.6 or 1.7: the back-office screen that managed those required fields no longer exists, so the setting stays active and invisible. The "Remove these requirements" button clears it. If you do want to demand one of those fields, add it to the checkout and mark it as required here instead of removing it.
Fields table
The main interface displays a table with all fields registered in your checkout. Fields are displayed with different background colors depending on the object they belong to, facilitating quick identification:
| Color |
Description |
| Light blue |
Customer fields (customer) |
| Light green |
Shipping address fields (delivery) |
| Medium green |
Fields before/after shipping address content (checkoutAddressDeliveryBeforeContent / checkoutAddressDeliveryAfterContent) |
| Light yellow |
Billing address fields (invoice) |
| Medium yellow |
Fields after billing address content (checkoutAddressInvoiceAfterContent) |
| Cyan |
Fields before/after shipping content (checkoutShippingBeforeContent / checkoutShippingAfterContent) |
| Light purple |
Fields before payment methods list (checkoutPaymentBeforePaymentList) |
| Dark purple |
Fields after payment methods list (checkoutPaymentAfterPaymentList) |
These colors are the ones used on
this screen. The
Position screen uses a different code, and they do not match: there, green is the customer and blue is the shipping address, exactly the other way round. When you move from one screen to the other, go by the title of each panel and not by the color.
The payment fields (before and after the methods list) appear on the Position screen inside extra panels with no title, together with the other objects that are not customer, shipping or billing.
On each row you can enable or disable the field, mark it as required and open it for editing. The delete button only appears on the fields you created yourself: PrestaShop's own fields cannot be deleted, only disabled. There are two fixed exceptions: on the identification field (DNI) the Required switch is locked, because the module decides it from the country and the billing settings, and the invoice_type field is managed entirely by the module and accepts no changes.
Create custom field
Click the "+" button to open the form to create a new custom field. The available fields are:
| Field |
Description |
| Object |
Select in which checkout section the field will appear. Available options are:
- customer: Customer information (registration)
- delivery: Shipping address
- invoice: Billing address
- checkoutAddressDeliveryBeforeContent: Custom field that will appear before the shipping address form
- checkoutAddressDeliveryAfterContent: Custom field that will appear after the shipping address form
- checkoutAddressInvoiceAfterContent: Custom field that will appear after the billing address form
- checkoutShippingBeforeContent: Custom field that will appear before the shipping method selection
- checkoutShippingAfterContent: Custom field that will appear after the shipping method selection
- checkoutPaymentBeforePaymentList: Custom field that will appear before the payment methods list
- checkoutPaymentAfterPaymentList: Custom field that will appear after the payment methods list (e.g.: invoice information, debit authorization, etc.)
Each payment field option allows customizing the payment experience by adding additional information or confirmations at the most relevant moment of the process.
|
| Name |
Technical field identifier. Only alphanumeric characters, hyphens and underscores are allowed.
Special characters and spaces are not allowed, separate words with hyphens (-) or underscores (_) instead of spaces.
|
| Description |
Descriptive text of the field, visible to the customer. This field is multi-language, so you must provide a description in all active languages of your store. |
| Label |
Text that will be displayed to the customer below the field. This field is multi-language and optional. |
| Type |
Defines the type of validation that will be applied to the field. Available options:
- isAddress: Address validation
- isBirthDate: Birth date validation
- isDate: Generic date validation
- isBool: Boolean value (true/false)
- isCityName: City name validation
- isDniLite: Identity document validation (light)
- isEmail: Email validation
- isGenericName: Generic name validation
- isMessage: Message or long text validation
- isName: Name validation
- isCustomerName: Customer name validation
- isPasswd: Password validation
- isPostCode: Postal code validation
- isPhoneNumber: Phone number validation
- isVatNumber: VAT number validation
- number: Numeric validation
- url: URL validation
- isValidRUTChile: Chilean RUT validation
- isValidRUCEcuador: Ecuadorian RUC validation
- isValidNIFSpain: Spanish NIF validation (CIF, NIE or NIF)
- isValidNIFSpainOnly: Strict Spanish NIF validation
- confirmation: Confirmation field
|
| Size |
Maximum allowed length for the field value (number of characters). |
| Type control |
Select which type of HTML element will be used to display the field:
- List: Single selection dropdown menu (select)
- Text field: Single-line text field (textbox)
- Text area: Multi-line text field (textarea)
- Radio button: Single selection options with circular buttons (radio)
- Checkbox: Multiple selection options (checkbox)
If you choose List or Radio button, you have to define the options in "Manage Field Options" before the field is of any use: with no options it shows up empty in the checkout. The Checkbox is not configured there and you will not find it in that dialog: it is a single yes or no switch, and what the customer reads next to it is the field Description.
|
| Default value |
Initial value that the field will have when displayed in the checkout (optional). As of version 5.3.2 this value has one more use: if you sell only virtual products and you turn off "Show delivery address for virtual product purchases" and "Request invoice address", the checkout stops asking for an address and the module generates one on its own so the order can be completed, taking the default value of the Country, State and City fields of the invoice object. Review them before enabling that mode; the postal code and the phone are not used in that case even if you give them a value.
This field is not available when the "Type control" is List or Radio button, because on those controls the initial value is set from "Manage Field Options".
|
| Required |
Activate this switch to make the field mandatory to fill. Customers will not be able to continue with checkout without completing this field. |
| Active |
Controls whether the field is visible and functional in checkout. Deactivate this switch to temporarily hide the field without deleting it. |
Manage field options
This button opens a special dialog that allows configuring the available options for "List" or "Radio button" type fields. The functionality includes:
Field selection
First you must select:
- Object: The context where the field is located (customer, delivery, invoice, etc.)
- Field: The specific field to which you want to add options
Once the field is selected, existing options will be loaded into an editable table.
Options table
The table displays all configured options for the selected field:
- Def.: Radio button to mark which option will be the default (initially selected)
- Value: Technical value of the option that will be saved in the database
- Description: Text that the customer will see. This field is multi-language, use the language selector to provide translations
- Action: Delete button (trash icon) to remove the option
Add new option
Click the "+ Add" button to create a new row in the options table. Complete the value and descriptions in all languages before saving.
Save options
You have two options to save:
- Save and stay: Saves changes and keeps the dialog open for continued editing
- Save: Saves changes and closes the dialog
The system automatically validates that all mandatory fields are completed before allowing save.
Position
This subsection lets you order the checkout fields by dragging them. Each panel corresponds to one form: Customer, Shipping address and Billing address. If you have created fields on any of the other objects (the ones shown before or after shipping, or around the payment methods list), they appear in extra panels with no title, and you will recognize them by the fields they contain.
Group panels
Fields are organized into independent panels, identified by colors:
The colors on this screen
are not the same as the ones in the
Fields table: there the customer is blue and shipping is green, and here it is the other way round. Look at the panel title, which is what does not change.
Customer Panel (Green)
Groups fields related to customer information during registration or login. Here fields such as name, surname, email, password and any custom field associated with the "customer" object are ordered.
Shipping Address Panel (Blue)
Contains the shipping address form fields. Includes standard fields such as address, city, postal code, phone, and all custom fields associated with "delivery" or shipping address hooks.
Billing Address Panel (Orange)
Shows the billing address form fields, including the same types of fields as the shipping address but applied to the billing context ("invoice" object).
The fields shown around shipping or around the payment methods list do not have a titled panel of their own: they come out in extra panels, also painted orange, and you will recognize them by the fields they contain.
Reorganize fields
Within each panel the fields are grouped into rows, and here you decide both the order and which fields share a line in the form:
- Put them on the same line: drag the tag of one field on top of another one and the two will show up side by side
- Create a new row: drop the tag on one of the dashed strips and a row will open at that position
- Move a whole row: use the handle with the arrows on its left, and it takes its contents with it
- Save: every change is saved when you drop it and you will see a confirmation message
Rows that end up empty disappear on their own.
Field information
Each field card displays:
- Description: Descriptive name of the field
- Visual indicator: Background color according to the group it belongs to
Behavior
- Fields can only be reordered within their own panel (they cannot be moved between panels)
- The established order determines how fields will appear in the frontend checkout
- Changes are immediate and reflected in checkout once saved
- Each panel works independently
The order of fields affects the user experience in checkout. It is recommended to place the most important or frequently used fields first.
Side cart
This section configures the side cart: a slide-out panel the customer can open from any page of the store, except the module checkout. From that panel they can review the products they have added, change quantities, apply coupons and continue to payment without leaving the page they were on.
Activation and access
Enable the side cart
Enable this option to show the slide-out cart panel on every store page, except the module checkout. While it stays disabled, the rest of the options in this section have no effect.
Open automatically when a product is added
When this option is active, the panel opens by itself as soon as the customer adds a product to the cart, visually confirming that the action was completed.
Show a floating cart button
When enabled, a permanent floating button appears that opens the side cart from anywhere on the page.
Floating button position
Defines which corner or side of the screen the floating button sits on. You can choose bottom right, bottom left, middle right or middle left.
Suppress other floating carts
Many themes and third-party modules include their own cart drawer. Enabling this option neutralizes that panel so the customer never sees two carts at once. It covers the most common themes and it also intercepts the click on the cart icon, but a theme or a module that opens its own panel in an unusual way may slip through: check on your store that pressing the cart opens only one.
Panel content
Show express checkout
Reserves a space in the panel for the express payment buttons, so the customer can complete the purchase from the side cart itself without going through the checkout. The buttons come from the compatible payment modules you have installed and set up to appear there: if there are none, the space never shows up and enabling the option changes nothing.
Show the free shipping progress bar
Displays a bar inside the panel showing how much the customer still needs to spend to reach free shipping, encouraging them to add more products.
The bar shows from the start, without waiting for the customer to pick a carrier, and the amount left is worked out the same way as in the checkout: both places say the same thing.
Show the voucher form
When enabled, the customer can enter discount codes without leaving the cart panel.
Show the product counter
Shows the number of items in the cart in the panel header.
Show the subtotal
Includes the subtotal line with the amount of the added products.
Show the shipping row
Adds a line with the shipping cost under the subtotal. It does not appear in carts that only contain virtual products, because there is nothing to ship. If you have enabled "Progressive shipping cost display" in Settings › Shipping, here you will also see "To calculate" instead of an amount, which is exactly what that option is for.
At this point the customer has not entered an address yet, so the amount shown is the cart estimate (often "Free").
Surcharges from other modules
If you have a module that adds a surcharge to the order —the payment-method fee being the most common— its line also appears in the panel totals, with the same name and amount as in the checkout. There is nothing to enable: the panel picks up whatever the modules you have installed contribute.
Show the taxes note
Displays an explanatory note about taxes under the totals, with wording that adapts to whether your store shows prices with tax included or excluded. If you fill in "Custom subtotal note", your own note replaces this one and the automatic one stops appearing.
Show the continue shopping link
Adds a link that closes the panel and returns the customer to browsing the store.
Show the "view cart" button
Adds access to the full cart page next to the continue shopping link.
Allow editing quantities
Lets the customer increase or decrease the units of each product directly from the panel. The change goes through the same checks as the regular cart, so it respects the available stock and the quantity rules other modules impose, such as buying in pairs or from a minimum onwards, as long as that module applies them in the cart and not only on its own screen. The gift product is shown with its fixed quantity and no selector.
Allow removing products
Adds a button on each line to remove the product from the cart. The gift product does not have one, so nobody can remove it and add it again looking for extra free units.
Show product image
Includes the thumbnail of each product in the panel listing.
Show product reference
Shows the product reference or code on each line of the side cart.
Show product attributes
Shows the selected combinations (size, color, etc.) below the name of each product. If you use the megaproduct module, each configuration of the custom product appears as its own line, with its measurement, its customization, its price and its quantity.
Show product unit price
Adds the price per unit on each line, which helps the customer understand the calculation when they have several units of the same item.
Custom texts
The following fields are multi-language and let you replace the panel texts with your own. If you leave any of them empty, the module uses its default translated text.
Custom title
Text shown as the heading of the side cart panel.
Custom free shipping remaining text
Message indicating how much the customer still needs to spend for free shipping. You can use {amount} as a placeholder so the module inserts the remaining amount there.
Custom free shipping reached text
Message shown once the customer has reached the amount required for free shipping.
Custom checkout button text
Text of the button that takes the customer from the panel to the payment process.
Custom empty cart text
Message displayed in the panel when the customer has not added any product yet.
Custom subtotal note
Explanatory text accompanying the subtotal, useful for example to clarify which amounts are calculated later on. Keep in mind that it replaces the automatic tax note: if you write something here, the one generated by the module stops being displayed.
Appearance and behaviour
Drawer position
Defines which side of the screen the side cart slides out from: right or left.
Drawer width (px)
Sets the width of the panel in pixels, so you can adapt it to your store design.
Full screen on mobile
When this option is enabled, the panel takes up the whole screen on mobile devices instead of being shown as a narrow side panel.
Show background overlay
Dims the rest of the page while the panel is open, focusing the customer's attention on the cart.
Opening animation
Select how the panel appears: Slide makes it slide in from the side, while Fade shows it with a fade-in effect.