Dynamic contact form by subject - Module PrestaShop

PrestaShop Dynamic Contact Form Module: Qualify Your Customer Support Requests with Conditional Logic

+32 downloads ★ ★ ★ ★ ★ 5 / 5 Version 2.0.0 1.7.8 8.0+ 9.0+ 5 languages 🇵🇱 PL 🇪🇸 ES 🇮🇹 IT 🇬🇧 EN 🇫🇷 FR

Dynamic Contact Form for PrestaShop lets you build one contact form per subject, with conditional fields, validation and GDPR consent. Each request creates a native customer service thread, reaches the right team (copy, blind copy, a recipient chosen by an answer) and is kept in a table that you can filter and export to CSV. Multi-store, multilingual, JSON export, anti-spam protection.

Compatible with PrestaShop 1.7.8, 8.0+ and 9.0+ (PHP 7.4 minimum).

Not sure yet? Try it free for 24 hours — no credit card required.
Features

Everything you need, nothing you don't.

Dynamic contact forms for PrestaShop 1.7.8, 8.0+ and 9.0+: conditional fields, routing by subject and by answer, requests you can export.

Fields that follow the answers

A field appears only when the answer to another one calls for it, in the browser and on the server.

Routing by subject and by answer

Each request reaches the right team, in copy or instead of the usual address.

GDPR consent built in

A consent box with your text, the date kept with the request, export and erasure with the GDPR module.

Checks on every field

E-mail, web address, phone, number or your own pattern, with a clear message next to the field.

Requests kept and exportable

Answers in a table with filters and files, a CSV export and a conversation in customer service.

One form per subject

A different form for each type of request, with nine field types and a file field that works.

Customer reviews

They use it every day.

5 out of 5 · 5 reviews

"Lo consiglio a tutti i merchant PrestaShop."

VC Valentina C.

"Module exceptionnel. Le drag & drop est ultra fluide."

RA Romain A.

"Support technique au top, réponse en moins de 2h."

LB Laurent B.

"Instalacja w 5 minut, działa bezbłędnie."

KD Krzysztof D.

"Fonctionne parfaitement en multilingue et multi-boutique."

GS Guillaume S.

"Lo consiglio a tutti i merchant PrestaShop."

LF Luca F.
description Full description expand_more

Revolutionize Your Customer Service: Smart and 100% Custom Contact Forms

The native PrestaShop contact form is often too rigid to meet the specific needs of your business. Dynamic Contact Form breaks these limitations by allowing you to create tailor-made forms for each contact subject (customer service, quotes, technical support, partnerships). Offer your customers a modern communication interface that qualifies their requests before they even reach your inbox, and get every message to the right team.

Contact page of a PrestaShop shop: the After-sales service subject is chosen, the Breakdown reason shows the order number and photo fields, and the invoice box shows the company field
One form per subject, with fields that appear as needed

Dynamic forms with conditional logic

No longer overwhelm your customers with unnecessary fields. Thanks to intelligent conditional logic, your form adapts in real time to the user's responses. A "Company" field only appears if the "I need an invoice" box is checked; the order number and the photo of the problem only appear for a breakdown. The browser and the server apply the same rules.

  • 9 versatile field types: one-line text, text area, drop-down list, radio buttons, several tick boxes, tick box, date, file and information block.
  • Display conditions: Show or hide fields based on previous choices (is one of, is none of, is ticked, equals, contains) for a smooth user experience (UX).
  • Advanced validations: Control input (e-mail, web address, phone, number or your own pattern) to receive clean and usable data, with a clear message next to the field and without losing what the customer typed.
  • A file field that works: you choose the file types, the size and the number of files; the files are kept outside the public folder of the shop.
  • Placeholder and help text under each field, in every language of the shop.
Contact page with the Quote request subject: company, billing e-mail, website, phone, quantity and deadline fields, then the message and the Send button
Another subject, another form

GDPR compliance and built-in automation

Security and compliance are at the core of the module. Each form can include a customizable GDPR checkbox to ensure user consent; the date of the consent is kept with the request, and the official GDPR module can export or erase it. Save time in your daily management: the module creates a discussion thread directly in your native PrestaShop customer service and sends the request to the right people.

  • Routing: the address of the subject, plus a copy and a blind copy for each form, and a recipient chosen by the answer to a list (a return goes to the returns team, a breakdown is also copied to the support).
  • Acknowledgement to the customer: a personalized e-mail with your own subject and text in each language, which never repeats the free message of the customer.
  • Reply in the same thread: a customer who answers from your e-mail continues the same conversation of the customer service.
Form editor in the back office: table of the fields with their type, key, required status and the condition written as a sentence, and the Add a field button
Every field and its condition at a glance

Requests you can follow and export

Every request is also kept in a table in the back office. Filter it by subject, date or e-mail, read the answers, download the files, and export everything to CSV (one column per field) for Excel, LibreOffice or Google Sheets. Requests can be deleted automatically after the number of days you choose.

Requests page: CSV export by subject and dates, then the list of requests with date, subject, e-mail, conversation and files
Requests kept in a table and exported to CSV

Total flexibility: Multi-store, Multilingual and JSON Export

Whether you manage a single store or an international network, this module adapts perfectly. Restrict form visibility by customer groups (a members-only subject, a "pro quote" form) and benefit from full multilingual support: labels, answers, help texts, consent and e-mails exist in every language of the shop. Each shop has its own forms. For agencies and developers, the JSON Export/Import feature allows you to deploy your form configurations from one store to another in a single click; an imported form arrives switched off, so you check it before it goes live.

Optimized security and performance

Rest easy with built-in anti-spam protection: a limit of requests per hour for each address and each e-mail, a shortest filling time, a limit of links in a message, a hidden trap field and a security token, plus an optional Cloudflare Turnstile or Google reCAPTCHA with your own keys. Uploaded files are inspected and never opened in the browser. Without slowing down your website, Dynamic Contact Form effectively replaces the native system to deliver a professional, secure experience fully optimized for your SEO: the forms of the contact page are loaded in a few grouped queries, whatever the number of fields.

Easy to install, wide compatibility

The module works with PrestaShop 1.7.8, 8.0+ and 9.0+ and needs PHP 7.4 or later; PrestaShop 1.7.7 and earlier are not supported. It overrides no class of the shop and works with the themes shipped with PrestaShop and their child themes.

  • Standard installation from the Module Manager, with an archive of about 340 KB.
  • The native contact form is switched off at installation and switched back on if you uninstall the module.
  • Subjects without a form show a simple form, and the contact page keeps a simple form if the license is not active.
  • Administration in French, English, Spanish, Italian and Polish.
  • Complete documentation and technical support according to your plan.

Ready to qualify your customer requests? Install Dynamic Contact Form, create the form of your first subject and let the answers drive the fields. Read the full documentation.

Comparaison

Why choose us?

See how we compare to the most common alternatives on the market.

Feature Addons
Transparent pricing
Lifetime updates included
Direct developer support
PS 1.7, 8 & 9 compatible
Standardized clean code
Multi-store ready
No hidden renewal fees
Included Not included Partial / Not guaranteed
Preview

Discover the module in images.

One contact form per subject: fields appear according to the answers

One contact form per subject: fields appear according to the answers

Another subject, another form: quote request with e-mail, web address, phone and number checks

Another subject, another form: quote request with e-mail, web address, phone and number checks

The same form on a phone: fields adapted to the subject, clear messages

The same form on a phone: fields adapted to the subject, clear messages

Form editor: every field with its type, its key and its condition written as a sentence

Form editor: every field with its type, its key and its condition written as a sentence

Edit a field: type, texts, check and condition

Edit a field: type, texts, check and condition

Send each request to the right team

Send each request to the right team

Requests kept in a table and exported to CSV

Requests kept in a table and exported to CSV

Anti-spam, retention and privacy settings

Anti-spam, retention and privacy settings

Support

FAQ

Find answers to frequently asked questions about this module

The native form is often too generic: the same fields for every subject, little qualification and many exchanges with customer service. The module replaces it with one form per subject (customer service, quote, technical support, partnership…), with fields that fit the request and appear only when they are useful, so that each message arrives complete and with the right team.

Yes. Choose a subject defined in Customer Service > Contact, create its form in the module (Forms) and add its fields: each subject has its own fields and options, its own recipients and its own acknowledgement. A subject without a form shows a simple form (e-mail, message, attachment), so no subject is left empty.

Nine types: one-line text, multi-line text, drop-down list, radio buttons, several tick boxes, single tick box, date, file and information block. A text field can be checked as an e-mail address, a web address, a phone number, a number or with your own pattern. Each field can be required, have a placeholder and a help text, and its label, answers and texts exist in every language of the shop.

A field is shown only if another field of the same form meets a condition: the answer to a list, radio buttons or tick boxes field is one of (or none of) the answers you pick, a tick box is ticked (or not), or a text field equals, differs from or contains a value. The rules are the same in the browser and on the server, and a hidden field is neither required nor stored. Conditions have one level: a conditional field cannot be the parent of another one.

Yes. Restrict a form to one or more customer groups: only their customers see the subject. This is useful for a “pro quote” form, a reseller form or a members-only subject, without creating several contact pages.

Each form can include a consent box with your own text (HTML allowed, for example a link to the privacy policy) or use the consent of the official GDPR module. The date of the consent is kept with the request. Requests can be deleted automatically after the number of days you choose, and exported or erased for a customer through the official GDPR module.

Yes, if you switch it on for the form: an acknowledgement e-mail is sent right after the request, with a subject and a text of your own in each language and variables such as {firstname}, {reference} or the answer to a field. It never repeats what the customer wrote. The request itself still creates a conversation in Customer Service > Customer Service, like the native form.

Yes: a limit of requests per hour for each address and each e-mail (kept in the database, so a robot without cookies cannot get around it), a shortest filling time, a limit of links, a hidden trap field and a security token. If you want more, an optional captcha (Cloudflare Turnstile or Google reCAPTCHA, with your own keys) can be switched on.

Each shop has its own forms. To reuse a form, export it to a JSON file (fields, conditions, answers and texts) and import it in another shop: the imported form arrives switched off, so you can check it before switching it on. This is useful for an agency (staging → production) and to back up your forms before an update.

PrestaShop 1.7.8, 8.0+ and 9.0+ with PHP 7.4 or later; HTTPS is recommended. PrestaShop 1.7.7 and earlier are not supported. The module switches the native contact form off when it is installed and switches it back on when it is uninstalled. Uninstalling deletes the forms, the requests and their files: export your forms (JSON) and your requests (CSV) first.

Yes. Besides the address of the subject (Customer Service > Contact), a form can send a copy and a blind copy to other addresses, and routes choose the recipients from the answer to a list: for example a “Return” request goes to the returns team instead of the usual address, and a “Breakdown” request is also copied to the support. The subject line of the e-mail accepts variables.

Every request creates a conversation in Customer Service and, if you keep requests in the back office, a line in the Requests tab of the module: filter by subject, date or e-mail, read the answers, download the files and export to CSV (one column per field) for Excel, LibreOffice or Google Sheets. You can also set an automatic deletion after a number of days.

The contact page never goes empty: it keeps a simple form (subject, e-mail, message, attachment) that still creates the conversation in customer service. Your forms and their data are kept and come back when the license is renewed: the module notices the renewal by itself (it asks the license server again at most once an hour) and each time you open its pages in the back office. A grace period of seven days avoids an interruption on the day of expiry.

Join +32 merchants using this module

5-minute installation · Full documentation included

inventory_2 Module 32.32 € 12.93 € one-time -60%
Choose your license
3 months of support for 0.99€ · then 1.99€/month
  • • Response within 24 business hours
  • 🔧 Installation & configuration assistance
  • 💬 Direct contact with the developer
No commitment · Cancel in 1 click from your account
Instead of --€/year if purchased separately
Loading...