Process Contact Form Submissions with Validation and MongoDB Storage

This n8n workflow securely processes contact form submissions by validating user input, formatting the data, and storing it in a MongoDB database. The flow ensures data consistency, prevents unsafe entries, and provides a confirmation response back to the user.

Workflow

  1. Form Submission Node

Purpose: Serves as the workflow’s entry point.

Functionality: Captures user input from the contact form, which typically includes:

name last name email phone number

  1. Code Node (Validation Layer)

Purpose: Ensures that collected data is valid and secure.

Validations performed:

Removes suspicious characters to mitigate risks like SQL injection or script injection.

Validates the phone_number field format (numeric, correct length, etc.).

If any field fails validation, the entry is marked as “is_not_valid” to block it from database insertion.

  1. Edit Fields Node (Data Formatting)

Purpose: Normalizes data before database insertion.

Transformations applied:

Converts field names to snake_case (first_name, last_name, phone_number).

Standardizes field naming convention for consistency in MongoDB storage.

  1. MongoDB Node (Insert Documents)

Purpose: Persists validated data in MongoDB Atlas.

Process:

Inserts documents into the target collection with the cleaned and formatted fields.

Connection is established securely using a MongoDB Atlas connection string (URI).

🔧 How to Set Up MongoDB Atlas Connection URL

a. Create a Cluster

b. Log in to MongoDB Atlas and create a new cluster.

c. Configure Database Access: Add a database user with a secure username and password, Assign appropriate roles (e.g., Atlas Admin for full access or Read/Write for limited).

d. Obtain Connection String (URI)

From Atlas, go to Clusters → Connect → Drivers.

Copy the provided connection string, which looks like:

mongodb+srv://<username>:<password>@cluster0.abcd123.mongodb.net/myDatabase?retryWrites=true&w=majority

Configure in n8n In the MongoDB node, paste the URI.

Replace <username>, <password>, and myDatabase with your actual credentials and database name.

Test the connection to ensure it is successful.

  1. Form Ending Node

Purpose: Provides closure to the workflow.

Functionality: Sends a confirmation response back to the user, indicating that their contact details were successfully submitted and stored.

✅ Result: With this workflow, all contact form submissions are safely validated, normalized, and stored in MongoDB Atlas, ensuring both data integrity and security basic.

0
Downloads
1
Views
7.18
Quality Score
beginner
Complexity
Author:Samuel Heredia(View Original →)
Created:9/10/2025
Updated:11/17/2025

🔒 Please log in to import templates to n8n and favorite templates

Workflow Visualization

Loading...

Preparing workflow renderer

Comments (0)

Login to post comments