Table of Contents
Toweringmedia Custom Form Extension User Guide
Extension context
Toweringmedia Custom Form Extension user guide for Magento 2.
Product page
Overview
Toweringmedia Custom Form Extension lets you build forms in Magento admin and add them to your store. Customers can send enquiries, request quotes, leave feedback, or attach files. You can read their responses in admin, receive email notifications, and send replies.
Key Features
- Admin form builder: Create forms with pages, fields, required inputs, and selectable options.
- Inline and popup display: Add forms to your storefront using CMS shortcodes, widgets, or layout XML.
- Submission management: View and manage customer responses from Magento admin.
- Email notifications and replies: Notify your team of new submissions, send automatic customer responses, and reply from admin.
- File uploads: Let customers attach files, with download links that expire based on your settings.
- Customer account access: Allow logged-in customers to view their submitted forms and, when enabled, edit or delete their submissions.
- Per-form settings: Override notification, autoresponder, Mailchimp, and customer account settings for individual forms.
- Store and customer group visibility: Control form access by store and customer group.
- Mailchimp integration: Configure list synchronisation through the extension settings.
- Form analytics: Review form reporting in the admin analytics dashboard.
- reCAPTCHA support: Configure reCAPTCHA through the Advanced settings.
- Optional integrations: Add Hyvä storefront support, GA4 or GTM form events, GraphQL access, and PDF exports with the corresponding packages or dependencies.
Installation
Please refer to the installation guide in the following article:
Admin features
Custom Forms
Go to Towering Media → Contents → Forms to see all your forms. From here, you can add a form, open an existing one, or check its submissions.
- Add New Form: Click this button to create a form.
- Form details: See each form’s ID, title, code, store view, creation date, and status.
- Results: Click View All, Answered, or Pending to see that form’s submissions in the relevant group.
- Grid controls: Search or filter the list to find a form. You can also choose the columns and page size.
General Form Settings
Start with the General tab. Give the form a name and code, then choose when and where it should appear.
- Enable Form: Switch the form on or off.
- Title and Code: Give the form a name and a code. The code is used in the embedding snippet.
- Scheduled From and Scheduled To: Enter start and end dates if the form should only appear during a particular period.
- Success Url: Enter a page to redirect customers to after submission. Leave this empty or use / for AJAX submission without a reload. Forms with file uploads still require a page reload.
- Store View and Customer Group: Choose the store views and customer groups that can access the form.
- Save: Click Save when you are finished, or Save and Continue Edit to save without leaving the form.
Form Analytics Settings
The Analytics tab lets you choose the GA4 tracking setting for this form.
- GA4 Tracking: Choose Use Global Default to follow the global GA4 setting, or use an override for this form. GA4 tracking needs the optional GA4 add-on.
Form Notification Settings
Use the Notifications tab to choose who receives submission emails and whether customers get an automatic reply.
- Send Notification to Email: Leave this switched off to use the global Custom Forms notification setting.
- Enable Admin Notification: Choose whether this form should send admin notification emails.
- Recipients Email: Enter the addresses that should receive notifications. Separate them with commas and do not add spaces.
- Email Template: Enter the admin notification template identifier. The default is toweringmedia_customforms_submission.
- Email Address Field: Enter the code of the form’s email field so the extension knows which address to use. After adding fields in Creator, save the form before setting this.
- Hide Email Address Field: Turn this on to hide the email field for logged-in customers and use their account email instead.
- Enable Auto Response: Turn this on to send an automatic reply. Set Email Address Field so the extension knows where to send it.
- Autoresponder Email Template: Enter the template identifier for automatic replies. The default is toweringmedia_customforms_autoresponder.
Form Mailchimp Settings
Use the Mailchimp tab if you want to add email addresses from this form to a Mailchimp list.
- Enable Mailchimp Sync: Turn this on to sync the form with Mailchimp. First configure the API key in the global Mailchimp settings.
- Mailchimp List: Enter the target list ID. For guest submissions, the Email Address Field supplies the email address.
- Enable Double Opt-In: Turn this on if customers should confirm their subscription through a Mailchimp email before joining the list.
Form Content Settings
In the Content tab, choose the form design, button text, and message shown after submission.
- Form Design: Choose a design for the form. Default is selected in this example.
- Submit Button: Enter the text customers will see on the submit button, such as Send Message.
- Success Message: Write the message customers should see once their response has been submitted.
- Show on Button Click: Display the form in a popup when the button is clicked.
- Button Text: Enter the text for the button that opens the popup. Leave it blank to use the Submit Button text.
- Add Subscription Checkbox: Turn this on to add a subscription checkbox. Create an email field first and enter its code in Email Address Field.
Form Customer Account Settings
Use the Customer Account tab to decide whether customers can see, edit, or delete their submissions for this form.
- Show Submitted Forms in Customer Account: Let customers see their submissions for this form. If you leave the setting unchanged, the general configuration applies.
- Allow Customers to Edit or Delete Submitted Data: Choose whether customers can change or remove their submissions.
- Notify When Customer Edits or Removes Data: Turn these options on if you want notifications when a customer changes or removes a submission.
- Form Contains Sensitive Data: If this is enabled, deleting a submission from the customer account also permanently removes it from the backend.
Form Creator
Build your form in the Creator tab. Add the fields you need, put them in order, and split them into pages if needed.
- Pages: Click Add Page to create another step, or Delete Page to remove one. Enter a Page Title for each page.
- Field Types: Click a field type or drag it onto the canvas. This example shows Text, Textarea, Email, Number, Date, Time, Dropdown, List Box, and Checkbox.
- Form Canvas: Use the drag handles to reorder fields. Click Edit to change a field or Delete to remove it.
- Edit Field: Select a field and click Edit to change its properties. In this example, Name, Email, and Message are required; Phone is optional.
Form Embedding
Once the form is ready, open Embedding and copy the snippet for the page or layout where you want to show it.
- Cms Embedding Code: Copy the shortcode into your CMS page content. For this form, it is {{customform code="contact"}}.
- Template Embedding Code: This snippet identifies the form block and wrapper template. Give it to your developer for the template where you want to display the form.
- Layout Embedding Code: Give this snippet to your developer to add the form through Magento layout XML.
Submitted Data
Go to Towering Media → Contents → Submitted Data to find customer responses from all your forms.
- Submission details: See the submission ID, form, form ID, email, survey flag, status, and the created and updated dates.
- Search and filters: Search by keyword or use filters to find a response. Use Columns to change what the list shows.
- Action: Open the row action to view a submission. New responses in this example have the status new.
View and Reply to a Submission
Open a submission to read the customer’s answers, download the data, or write a reply.
- Submission information: Check which form was submitted, the guest email, status, creation date, and referrer URL.
- Field Values: Read the customer’s answers next to their field codes.
- Export CSV: Download the submission data as a CSV file.
- Reply to Customer: Write your reply in Message and check the recipient shown below it. The sender, template, and BCC addresses come from the global Reply settings.
Form Analytics
Go to Towering Media → Contents → Form Analytics to see how many responses each form has received and when the last one arrived.
- Form summary: See the form name and ID, total submissions, and the date of its latest response.
- Grid controls: Filter the list, choose the columns, or move between pages. This report is separate from GA4 tracking.
Admin configuration
Global Notification Settings
Go to Stores → Configuration → Towering Media → Custom Forms. Choose the scope you want to update, open Notifications, and click Save Config when you have finished.
- Enable Admin Notification: Turn this on to receive an email when a new response arrives.
- Send Emails To: Enter the notification recipients, separated by commas.
- Email Sender: Choose the Magento email sender you want to use. General Contact is selected here.
- Email Template: Choose the notification template. This example uses Custom Forms — New Submission Notification (Default).
- Form overrides: If a form needs different notification settings, set them in that form’s Notifications tab.
Global Reply Settings
The Reply section sets the sender, template, and BCC addresses for replies you send from admin.
- Reply Email Sender: Choose the sender for replies sent from admin.
- Reply Email Template: Choose the reply template. This example uses Custom Forms — Admin Reply (Default).
- Blind Copy (BCC): Enter any addresses that should receive a blind copy of your replies, separated by commas.
Global Autoresponder Settings
Use Autoresponder to turn automatic customer replies on or off for the selected scope.
- Enable Auto Response: Choose Yes to send automatic customer replies, or No to turn them off.
- Form-specific setup: Check the form’s Notifications tab for its auto response setting, email field code, and response template.
Global Customer Account Settings
Use Customer Account to decide what customers can do with their submissions. These are the default settings; individual forms also have account options.
- Show Submitted Forms in Customer Account: Turn this on to show customers their submitted forms in their account.
- Disable for Customer Groups: Select the groups that should not see submitted forms in their accounts.
- Allow Customers to Edit Submitted Data: Turn this on to let customers update their responses.
- Allow Customers to Delete Submitted Data: Turn this on to let customers remove their responses.
- Enable Privacy Policy Consent Message: Turn this on to enable the privacy policy consent message.
- Form-specific permissions: Check each form’s Customer Account tab if it needs different permissions or notifications.
Global Mailchimp Settings
Use this Mailchimp setting to turn list synchronisation on or off for the selected scope.
- Enable Mailchimp Sync: Choose Yes to turn on Mailchimp sync, or No to leave it off.
- Complete the integration: Set up the Mailchimp API key before using sync. Then choose the list ID and double opt-in setting in the form’s Mailchimp tab.
Advanced Settings
Advanced contains the settings for maps, date formats, uploaded files, reCAPTCHA, and privacy consent.
- Google Maps API Key: Enter the key needed for map fields and static map images in PDF exports.
- Add Google Map Address/Image to PDF Exports: Choose whether to include map addresses or images in PDF exports.
- Date Format: Enter the format for displaying and entering dates, such as MM/dd/yyyy.
- Allowed File Extensions: List the permitted file extensions, separated by commas. File extensions set on individual fields are merged with this global list.
- File Upload Link Lifetime (Days): Enter how many days download links should work. This example uses 30 days. Use 0 if links should not expire.
- Enable reCAPTCHA on Form Submit: Configure Custom Forms under Stores → Configuration → Security → Google reCAPTCHA Storefront, then turn this on.
- Enable Privacy Consent Checkbox: Turn this on to enable the privacy consent checkbox.
Global Analytics Settings
In Analytics, choose the number of days used to compare form activity.
- Trend Comparison Period (Days): Enter the number of days used to calculate trend percentages in Form Analytics. This example uses 30.
- GA4 form option: Forms have a separate GA4 tracking option in their Analytics tab. For the tracking setup, check the GA4 add-on configuration.
Frontend features
The following examples show how customers use the forms on your store. You can change the fields, choices, required inputs, and button labels in admin.
Forms Embedded in Storefront Pages
You can add a form to a storefront page with a heading and a short introduction. Here, the Contact Us form sits directly in the demo page.
- Inline display: Customers can complete the form without opening a separate popup.
- Form headings: The form title and page heading tell customers what the form is for.
- Reusable forms: This Contact Us form is used on both the demo page and the contact page.
Contact Us Form
Customers can use this form to ask a question or send your team a message.
- Contact details: Customers enter their name and email. The phone number is optional.
- Message field: Customers can explain their enquiry in the larger Message box.
- Required fields: Name, Email, and Message are marked with a red asterisk because they are required.
- Helpful placeholders: Short examples inside the fields show customers what to enter.
- Submit button: Click Send Message after filling in the form.
Product Inquiry Form
This form asks what product the customer is interested in, how much they need, and any details your team should know.
- Customer information: Customers enter their full name, work email, and company.
- Product selection: Customers choose a Product Interest from the dropdown.
- Estimated Quantity: Customers can enter how many items they need.
- Requirements: The Details box gives customers room to explain sizes, colours, timing, or other requirements. Required fields have an asterisk.
Customer Feedback Step One
The feedback form has two steps. Customers first enter their details, then answer questions about their experience.
- Step indicator: The numbered circles show the current step and the number of steps in the form.
- About you: Step one asks for the customer’s name and email.
- Single choice: Customers select whether they are a new customer, returning customer, or guest visitor.
- Next button: Click Next to continue to the experience questions.
Support Request Form
Customers can describe a problem and include an order reference, priority, and category to help your team handle it.
- Customer details: Name and Email are required so your team knows who to contact.
- Order reference: Customers can enter an order number if their request relates to an order.
- Priority: Customers choose a priority from the dropdown.
- Category: Customers choose the type of issue, such as orders and shipping, returns and refunds, account and login, or a technical issue.
- Issue details: Subject gives a short summary; Description lets customers explain the problem.
Newsletter Signup Form
Customers can sign up for your newsletter and choose the topics they want to hear about.
- Subscriber details: The form asks for First Name and Email.
- Interest checkboxes: Customers can choose new arrivals, sales and promotions, training tips, or more than one topic.
- Subscription checkbox: Customers can tick Subscribe to our newsletter to indicate that they want to subscribe.
- Subscribe button: Click Subscribe to send the form. Set up Mailchimp separately if you want these submissions added to a Mailchimp list.
Request a Quote Form
Use a quote request form to collect business and contact details from customers asking about bulk or business pricing.
- Grouped content: The Business details heading introduces the first part of the form.
- Business contact: Customers enter their company name, contact name, email, and phone number.
- Address fields: The address section asks for Street, City, State/Province, and Zip/Postal Code.
- Side by side inputs: Address fields sit beside each other in two columns.
- Required information: Asterisks mark the business details customers need to provide.
Customer Feedback Step Two
In step two, customers rate their experience, select what they liked, and add any comments before submitting.
- Overall satisfaction: Customers select a rating from the dropdown.
- Multiple choices: Customers can tick the things they liked: product quality, shipping speed, customer support, or website experience.
- Additional comments: Customers can leave more feedback in the comments box.
- Previous button: Click Previous to go back to step one.
- Submit Feedback: Click Submit Feedback to send the completed form. Step two is highlighted above the fields.
Form Presentation
The form sits in a centred panel. Labels, required field markers, and example text help customers fill it in.
- Clear structure: The title, page heading, labels, and fields run down a single column.
- Required field markers: Asterisks show which fields need an answer.
- Input guidance: Example text helps customers enter their name, email, phone number, and message.
- Page integration: The form sits within the page content, above the footer.
Validation checklist
- Open the form in each intended store view and check access for the selected customer groups.
- Try leaving required fields empty and entering an invalid email. Check that dropdowns and checkboxes work.
- For forms with multiple steps, test the Next and Previous buttons.
- Send a test response, then find it under Submitted Data in admin.
- Check that admin notifications, automatic customer replies, and replies sent from admin arrive.
- Test file uploads and download links, if used.
- Check customer account permissions and Mailchimp sync, if enabled.
- Open the form on desktop and mobile and check that every field and button is easy to use.
Troubleshooting
- Form not showing: Check Enable Form, scheduled dates, store view, customer groups, and embedding code.
- Submission failing: Check required fields, email format, and reCAPTCHA configuration.
- Emails not arriving: Review recipient addresses, Email Address Field, templates, and Magento email delivery.
- Upload failing: Check allowed file extensions and upload limits.
- Download link expired: Review File Upload Link Lifetime in Advanced settings.
- Mailchimp not syncing: Check the API key, list ID, sync settings, and double opt-in confirmation.
- Customer cannot view or edit submissions: Review global and per-form Customer Account settings.




























