Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Before installing make sure you have the proper server requirements
PHP >= 7.4+
MySQL 5.5+
BCMath PHP Extension
Ctype PHP Extension
Fileinfo PHP Extension
JSON PHP Extension
Mbstring PHP Extension
OpenSSL PHP Extension
PDO PHP Extension
Tokenizer PHP Extension
XML PHP Extension
curl enable
File and folder permissions
/bootstrap 777
/public 777
/storage 777
/public/uploads 777
.env 777
Before installing make sure you have the proper server requirements
PHP >= 7.4+
BCMath PHP Extension
Ctype PHP Extension
Fileinfo PHP Extension
JSON PHP Extension
Mbstring PHP Extension
OpenSSL PHP Extension
PDO PHP Extension
Tokenizer PHP Extension
XML PHP Extension
curl enable
File and folder permissions
/bootstrap 777
/public 777
/storage 777
/public/uploads 777
.env 777
As our product is a power pack with such huge numbers of highlights, here our installment goes with a simple process and gets finished in just 5 steps. Fill in all the pieces of information carefully. Here, you can check out the demo content of installation with detailed screenshots :
to run installation use: yourdomain.com/
All permissions are necessary. If any of the permissions are missing check your files on the server.
2. Database Setup
Note: Don't Give # in Database Password
Check your database username from phpMyadmin. If you have created any database user. Fill in that username and password at database username and database password. If you haven't any database user fill with cPanel or your server login credentials.
3.1 Fresh Data
After clicking fresh data the system will ask you to provide application information. Fill in all the required fields.
3.1.1 Organization Setup
3.1.2 Create a new admin user
After successfully all those steps the system will redirect to the Congratulations page and then let's start to use Maildoll.
3.2 Dummy Data
After clicking dummy data the system will create all the dummy contents.
After successfully dummy import the system will redirect to the Congratulations page and then let's start to use Maildoll.
Maildoll is an Email & SMS Marketing application for any kind of business marketing purpose. You can get rid of expensive email services like Mailchimp, ActiveCampaign. Maildoll is also built for saas business since Maildoll integrates easily with payment gateways like Paypal, Stripe and it offers all the needed tools to create pricing plans.
You can send an unlimited number of email campaigns (newsletters) to an unlimited number of lists containing an unlimited number of subscribers.
You can use multiple SMTP or PHP mail at the same time with Gmail, Yahoo, Mailgun, Zoho, Elasticmail. If you would like to send emails from your own SMTP server.
version: 1.0
created at: 10 February 2021
by: SoftTech IT
email: support@softtech-it.com
Thank you for purchasing this Script. For further questions please contact us through Codecanyon or leave a comment. We'd love to respond to you!
Email Marketing Tool (No coding skill needed)
Run your own business like Mailchimp
Get the payment from your customer by selling subscriptions
Payment gateway PayPal, Stripe integrated
Create Email Template with Email template Builder
Create SMS Template with the editor.
Send Unlimited Email with your Created Template.
Multiple SMTP & PHP Mail
Gmail, Zoho, ElasticEmail, Webmail, Mailgun SMTP Integrated
Twilio, Nexmo/Vonage, Plivo SMS gateway Integrated
Create Email Group/ list
Create SMS Group/List
Send tons mail in queue
Upload email list from CSV
Nice & clean email list / group management
Mobile compatible
Multi-language support
Beautiful Dashboard
Manage User
Validate email address with our own system for free
Create Unlimited Email or SMS campaign
Mail Logs
SMS logs
Campaign Logs
Subscription Plan
Limit Manager
Payment Setup
Email bounce checker
Important notes for users
Queue Tracker
Restart Queue
Retry failed Jobs Queue
Terminal Command Line (Dev tool)
Artisan GUI (Dev tool)
Server Status
Frontend Theme
Frontend SEO
Multi-currency support
Frontend Page Editor
Robust report panel
Email verification with the one-time password
User notification
Admin earning balance
Visit https://yourdomainname/login
for the login page.
Visithttps://yourdomainname/register
for the new user registration page.
Visithttps://yourdomainname/password/reset
for the recover password page.
Provide your email address then a new password will be sent to your email.
Please make sure you have configured SMTP settings from the dashboard.
Visithttps://yourdomainname/email/verification/user
for the new user verification page. A generated code will be sent to your email.
Please make sure you have configured SMTP settings from the dashboard.
Go to yourdomain.com/language
Click on the translate button
You will see translatable fields that can be translated. After translation click on translate now and then click on set as default.
At the Language Settings clicks on Setup Language > Add New Language button a modal will pop-up over the screen. Provide the information on the form.
How to use Termianl CLI?
Click on Terminal CLI and then a Command Line Interface window will open.
This is a developer tool. You must know the Laravel artisan command for this tool. For learning, artisan commands visit laravel.com
As a developer sometimes you need to modify something from the server. But the development cycle is complex on a live server. You may use the git version control or your own repository system. We tried to make it easier so that developer can execute artisan command without any version control tool on the live server.
This is a developer tool. You must know the Laravel artisan command for this tool. For learning, artisan commands visit laravel.com
Before installing, make sure mod_rewrite is enabled.
Unzip the source file
cd /home/user
unzip maildoll.zip
/home/user/maildoll
, you can configure Apache virtual host as follows (remember to point the DocumentRoot to the public folder of the source)
Change the director/file’s owner to Apache’s running user (www-data for example), to make sure it has proper permission on your source files
sudo chown www-data:www-data -R /home/user/maildoll
sudo chmod 775 -R /home/user/maildoll
Visit https://yourdomainname/login
for the login page.
Visithttps://yourdomainname/register
for the new user registration page.
Visithttps://yourdomainname/password/reset
for the recover password page.
Provide your email address then a new password will be sent to your email.
Please make sure you have configured SMTP settings from the dashboard.
Visithttps://yourdomainname/email/verification/user
for the new user verification page. A generated code will be sent to your email.
Please make sure you have configured SMTP settings from the dashboard.
Log in to your PayPal Developer account.
Click Dashboard.
Click Accounts under Sandbox.
Click the email address of the business account whose credentials you're checking.
Click Profile.
Click API credentials on the Account details screen.
If for some reason your API credentials aren't displayed there, you can also find them in your Sandbox account. Click Close on the Account details screen and continue with the rest of this procedure.
Check the box next to the business account whose credentials you are checking, and then click Enter Sandbox site.
Log in to that Sandbox business account.
Select Profile > My Selling Tools under the My Account tab.
Click Update next to API access on the My Profile screen.
Click View API Signature under Option 2 on the API Access screen. (If Request API Credentials appears under Option 2, it may be because you haven't requested your API credentials.)
PAYPAL_CLIENT_ID="client_id"
PAYPAL_SECRET="secret_key"
Stripe authenticates your API requests using your account’s API keys. If you do not include your key when making an API request or use one that is incorrect or outdated, Stripe returns an error.
Every account is provided with separate keys for testing and for running live transactions. All API requests exist in either test or live mode, and objects—customers, plans, coupons, and so forth—in one mode cannot be manipulated by objects in the other.
There are also two types of API keys: publishable and secret.
Publishable API keys are meant solely to identify your account with Stripe, they aren’t secret. In other words, they can safely be published in places like your Stripe.js JavaScript code, or in an Android or iPhone app.
Secret API keys should be kept confidential and only stored on your own servers. Your account’s secret API key can perform any API request to Stripe without restriction.
Each account has a total of four keys: a publishable and secret key pair for test mode and live mode.
Your API keys are always available in the Dashboard. For your convenience, your test API keys for your account are:
Key
Value
Publishable
pk_test_TYooMQauvdEDq54NiTphI7jx
Secret
sk_test_4eC39HqLyjWDarjtT1zdp7dc
The test and live modes function almost identically, with a few necessary differences:
In test mode, payments are not processed by card networks or payment providers, and only our test payment information can be used.
Some payment methods using Sources have a more nuanced flow in live mode, with more steps required than those in test mode.
Disputes also have a more nuanced flow in live mode and a simpler testing process.
Webhooks that were not successfully acknowledged are retried three times over a few hours (as opposed to 72 hours for live mode).
If an API key is compromised, roll the key in the Dashboard to block it and generate a new one.
STRIPE_KEY="app_key"
STRIPE_SECRET="app_secret"
Consider that this is the webroot folder for your Maildoll website: /home/myusername/public_html/
Put all the main folder’s files on your Maildoll website at /home/myusername/public_html/
Create MySQL database, add a user to it with full permissions.
Watch cPanel Installation Video
Watch Localhost Installation Video
Go to yourdomain.com/cpanel
& login with credentials.
Find the public_html folder as the root directory of your domain
Inside the public_html upload the Maildoll zip file and extract it.
Go to cPanel and find MySQL® Databases then create database name.
Go to the MySQL Users sections and create a new MySQL user.
Select User from the dropdown list with the Database.
Remember the Database name, Database Username , and Database password. These credentials are neccessary for installation.
Go to yourdomain.com/contacts/list
then Add New Contact
If you input an email the contacts will store as email type contact.
If you input the phone number the contacts will store as phone type contact.
For both, the contact will store as email and number type.
Click on the Export icon to get CSV format contacts data.
Go to yourdomain.com/campaign/type/email
If you have no email template please create at least one email template
Select Add New Campaign > CREATE EMAIL CAMPAIGN
Campaign Name
Select Email Template
Select a specific email or group
After successfully Mailer Engine Start the system will check bounce emails. If the queue is stopped please restart the queue.
Each email campaign will cost emails from the number of available emails.
Go to Mail logs for sent emails from the campaign.
Go to Mail Activities for email Message-ID
Message-ID (also known as Internet Message-ID or Client ID) is an identifier of emails. It is generated by the sending mail system. This identifier is not always unique - there might be multiple copies of the same Message In more than one folder (or mailbox), and all of them might have the same Message-ID.
Go to yourdomain.com/campaign/type/sms
If you have no SMS template please create at least one SMS template
Select Add New Campaign > CREATE SMS CAMPAIGN
Campaign Name
Select SMS Template
Select a specific phone number or group
Select SMS Service provider
Each SMS campaign will cost SMS from the number of available SMS.
Go to SMS logs for sent SMS from the campaign.
Message-ID (also known as Internet Message-ID or Client ID) is an identifier of sms. It is generated by the sending SMS system.
Go to yourdomain.com/campaign/type/email
If you have no email template please create at least one email template
Select Add New Campaign > CREATE EMAIL CAMPAIGN
Campaign Name
Select Email Template
Select a specific email or group
After successfully mailer engine start the system will check bounce emails. If the queue is stopped please restart the queue.
Go to yourdomain.com/campaign/type/sms
If you have no SMS template please create at least one SMS template
Select Add New Campaign > CREATE SMS CAMPAIGN
Campaign Name
Select SMS Template
Select a specific phone number or group
Select SMS Service provider
Upload your company logo. If you have no logo provide the company name the system will generate an image based on the company name.
Test Connection Email & Test Connection Sms Number is necessary for SMTP and SMS testing purposes.
If the developer option has checked the admin can view developer options like Queue Tracker, Terminal CLI, Artisan GUI, Server Status
Change dashboard primary color at any time. You can choose Hexacode Ex: #fafafafa
Or
you can write solid color Ex: green
A meta description (sometimes called a meta description attribute or tag) is an HTML element that describes and summarizes the contents of your page for the benefit of users and search engines.
Meta Keywords are a specific type of meta tag that appears in the HTML code of a Web page and help tell search engines what the topic of the page is.
Go to login into your account.
Click Account Tab
3. Security Tab > App passwords
4. Generate a new app password
5. Copy the app password
6. Go to Maildoll dashboard panel > SMTP Settings > Configure Email > Gmail > Configure Now
7. Configure
MAIL_MAILER="smtp"
MAIL_HOST="smtp.gmail.com"
MAIL_PORT="587"
MAIL_USERNAME="app_password email"
MAIL_PASSWORD="app_password"
MAIL_ENCRYPTION="tls"
MAIL_FROM_ADDRESS="admin@maildoll.com"
MAIL_FROM_NAME="Maildoll"
Sending > Domains > Create a domain
3. Domain > SMTP
4. SMTP credentials
5. Configure
MAIL_MAILER="smtp"
MAIL_HOST="smtp.gmail.com"
MAIL_PORT="587"
MAIL_USERNAME="app_password email"
MAIL_PASSWORD="app_password"
MAIL_ENCRYPTION="tls"
MAIL_FROM_ADDRESS="admin@maildoll.com"
MAIL_FROM_NAME="Maildoll"
2. Click on the Security tab
3. Security > App Passwords
4. Generate New Password
5. Copy the password
6. Configure
MAIL_MAILER="smtp"
MAIL_HOST="smtp.zoho.com"
MAIL_PORT="587"
MAIL_USERNAME="youremail@zohomail.com"
MAIL_PASSWORD="app_password"
MAIL_ENCRYPTION="tls"
MAIL_FROM_ADDRESS="youremail@zohomail.com""
MAIL_FROM_NAME="Maildoll"
Click on the Settings tab
3. Settings > SMTP > Create SMTP credentials
4. Provide your user email address
5. After creating a user name you will get SMTP credentials
6. Configure
MAIL_MAILER="smtp"
MAIL_HOST="smtp.elasticemail.com"
MAIL_PORT="2525"
MAIL_USERNAME="user_name"
MAIL_PASSWORD="password"
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="your_email"
MAIL_FROM_NAME="maildoll"
Account Security > Manage app passwords
4. Create a new app password
5. Copy the app password
6. Configure
MAIL_MAILER="smtp"
MAIL_HOST="smtp.mail.yahoo.com"
MAIL_PORT="587"
MAIL_USERNAME="user_email"
MAIL_PASSWORD="app_password"
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="your_email"
MAIL_FROM_NAME="maildoll"
Login to your cPanel
Find Email Accounts
3. Create a new email account
4. After creating an email account go to Connect Devices
5. Get mail client manual settings
6. Configure
MAIL_MAILER="smtp"
MAIL_HOST="outgoing_server"
MAIL_PORT="outgoing_smtp_port"
MAIL_USERNAME="user_name"
MAIL_PASSWORD="Use_your_cPanel_password"
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="your_email"
MAIL_FROM_NAME="maildoll"
Go to login to your account
Go to login to your account
Go to and login to your account
Go to and login to your account
Then go to
Go to https://www.twilio.com and login to your account
Copy ACCOUNT SID & AUTH TOKEN
4. Get a phone number
5. Configure
TWILIO_SID="account_sid"
TWILIO_TOKEN="auth_token"
TWILIO_FROM="Maildoll"
Go to https://developer.nexmo.com and login to your account
Visit https://dashboard.nexmo.com and get API key, API Secret
3. Configure
NEXMO_KEY="api_key"
NEXMO_SECRET="api_secret"
NEXMO_FROM="your_number"
Go to https://console.plivo.com/dashboard/ and login to your account
Copy Auth ID & Auth Token
3. Configure
PLIVO_KEY="auth_id"
PLIVO_TOKEN="auth_token"
PLIVO_FROM="Maildoll"
PLIVO_NUMBER="plivo_number"
Admin can alert some important messages through notes where customers can get news.
It will highlight on the dashboard right side menu.
Go to yourdomain.com/notes/create
and create a new note.
Each user has emails & SMS limit with a specific date-time. Admin can manage users limit at any time.
Go to yourdomain.com/user/rate/limit
Click on Limit Manager.
Provide email and SMS limit with duration month.
You can also create a new user from the Limit manager by clicking on Add New Subscription Plan & Limit.