PS PrestaShop Beginner

Heavy Items Delivery Form — Installation and Configuration Guide

Install and configure the heavy items delivery form module: triggering, field builder, conditional fields, notification and order tracking.

Updated Module version 1.0.0

The Heavy & Bulky Items Delivery Form module shows, at the checkout carrier step, an access-conditions questionnaire (floor, elevator, stairs, narrow passages, obstacles) for heavy or bulky products: furniture, appliances, large TVs, professional or medical furniture. Fields are fully configurable in the back office, without writing a single line of code.

This module targets PrestaShop 8.0 to 9.x, works in multistore and is fully multilingual. It uses no external dependency: vanilla JavaScript, no jQuery, no Composer.

Installation

  1. In the back office, open Modules > Module Manager and click Upload a module.
  2. Select the dfdeliveryform.zip file and run the installation.
  3. When installation finishes, click Configure to open the settings.

On installation, the module automatically creates its tables, registers its hooks and pre-installs a set of 17 ready-to-use fields (presence hours, heavy-truck access, parking distance, floor, elevator, stairs, narrow passages, obstacles, accuracy confirmation). Keep them, adapt them or start from scratch.

General settings

The configuration page has two areas: the settings (top) and the field builder (bottom).

  • Enable module — shows or hides the form on the storefront.
  • Block checkout until completed — if enabled, the customer cannot confirm the delivery step before submitting the form. If disabled, the form stays optional.
  • Trigger mode — determines when the form is displayed (see the next section).
  • Notification email — address that receives the completed form when the order is validated. Leave empty to use the shop email.
  • Form title and Introduction text — customizable per language.

Trigger modes

The form should only appear for the orders that need it. Four modes are available:

  • Every order — the form always shows.
  • Product weight threshold — the form shows as soon as a cart product reaches the defined weight (30 kg by default). Ideal for appliances and furniture. The weight used is the product’s unit weight set in its data sheet.
  • Specific products — enter a comma-separated list of product IDs (e.g. 12,45,102).
  • Specific categories — enter a comma-separated list of category IDs. Any product belonging to one of these categories triggers the form.

The form shows the customer which cart products are affected, so they understand why these questions are being asked.

Field builder

The builder, located below the settings, lists every form field. For each field you can reorder it (up/down arrows), enable/disable it, edit it or delete it.

Add or edit a field

Click Add a field or the pencil icon of an existing field. The editor offers:

  • Type — 7 available types: section title, text, number, long text, switch, Yes/No, dropdown list.
  • Label and help text — entered per language. The label in the default language is required; languages left empty fall back to that label.
  • Options (dropdown type only) — one option per line, independently for each language.
  • Show only if — display condition (see below).
  • Required and Active.

A field’s technical code is generated automatically from the label at creation and stays stable afterwards, even if you rename the label.

Field types

  • Section title — visual separator, no input.
  • Text — single-line input field.
  • Number — numeric input (distance, width, number of steps…).
  • Long text — multiline text area for descriptions.
  • Switch — styled on/off toggle, ideal for a confirmation.
  • Yes / No — two exclusive pills, often used as the parent of a conditional field.
  • Dropdown list — choice among options defined per language.

Conditional fields

A field can be shown only depending on the answer to a parent field of type Yes/No or switch.

  1. In the child field editor, open the Show only if list and choose the parent field.
  2. Select the expected value: = Yes / checked or = No / unchecked.

Example: the “Elevator door width” field only appears if the “Elevator / goods lift” question is enabled; the “Number of steps” field only appears if “Stairs” is enabled. A field hidden by its condition is never required, even if marked required.

Customer side

At the carrier step, the customer sees a card showing the form status (To complete / Completed) and a button to open it. The form opens in a modern modal: choice cards, switches, Yes/No pills, live validation of required fields.

  • Answers are saved per cart: a returning customer finds their answers pre-filled.
  • In blocking mode, the delivery step confirmation button automatically reopens the form until it is completed.

Tracking answers

Customer answers are usable in three places:

  • Notification email — when the order is validated, an HTML email summarizing all answers is sent to the configured address (logistics team, carrier or warehouse). FR and EN templates are included.
  • Order page — a dedicated panel displays the question/answer recap on the order, in the back office.
  • Database — answers are stored, attached to the cart and then to the validated order.

Uninstall

Uninstalling from the Module Manager cleanly removes the module’s tables (fields, responses) and its configuration.

FAQ

The form does not show

Check that the module is enabled, that the trigger mode matches the test cart (for example, that a product actually reaches the weight threshold), and that at least one field is active.

Can I translate the labels?

Yes. Every label, help text and list option is entered per language directly in the field builder. The form title and introduction are multilingual too.

Is the module compatible with PrestaShop 9 and multistore?

Yes, the module targets PrestaShop 8.0 to 9.x and works in a multistore context.

Was this page helpful?

Still stuck? Contact support