SeoPro Documentation

Complete guide for installing and configuring the SeoPro platform

Welcome to SeoPro

SeoPro is a professional SEO reporting and web tools platform built with Laravel. It enables webmasters, agencies, and businesses to generate detailed SEO reports, manage projects, and use a diverse toolbox of web utilities — all from a powerful admin panel.

SEO Reports

Generate in-depth reports analyzing SEO, performance, and security with actionable suggestions.

Web Tools

Over 50 utilities — from DNS lookup and SSL checkers to password generators and converters.

Projects

Automatically organize your reports into projects for more efficient management.

Multi-Language Support

Full multi-language support with translations for a global audience.

Documentation Purpose

This guide covers system requirements, installation procedures, and configuration steps for the SeoPro platform.

Server Requirements

Before installing the software, please make sure your server meets the requirements below. These are essential for the application to run correctly.

Software Requirements

Software Modules
PHP 8.4+ BCMath, Ctype, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML, GD, cURL
Apache 2+ mod_rewrite
MySQL 5.7.7+
MariaDB 10.3.17+

Recommended Hardware

Shared Hosting Notice

Some shared hosting plans may not support the required PHP extensions or SSH access. We recommend verifying with your hosting provider before purchasing.

Creating the Database

Create a New MySQL Database

Log in to your hosting control panel (cPanel, Plesk, etc.) and create a new MySQL database.

Create a Database User

Create a new MySQL username and password dedicated to this database.

Assign Privileges

Assign full privileges to your database username. Save the credentials for later — you will need them for the installation.

Uploading the Files

Show Hidden Files

Before starting to upload the files, please make sure your file explorer has the option to view hidden files turned on. On some operating systems, the dotfiles are hidden by default.

Upload what's inside the Software folder to the web root folder of your domain. This folder is generally called public_html, html, or example.com, but depending on your server's configuration, it might be named differently.

# Typical directory structure on a cPanel server
~/public_html
    .env.example
    app/
    config/
    public/
    storage/
    ...

Configuring the Files

Set the access permissions (CHMOD) to 775 for the following files and folders:

Files

Folders

# Via SSH terminal
chmod -R 775 bootstrap/cache/
chmod -R 775 lang/
chmod -R 775 public/uploads/brand/
chmod -R 775 storage/

Changing the Public Directory

Configure your web server's document / web root to point to the public directory of the software. For example, if you've uploaded the software into the example.com folder, your web directory should be changed to the example.com/public folder.

# Before
DocumentRoot /home/user/public_html

# After
DocumentRoot /home/user/public_html/public
Why Is This Required?

Pointing the document root to the public directory prevents sensitive files (such as .env) from being accessed directly through the browser.

Finishing the Installation

Configure the Environment

Copy .env.example to .env and fill in your database credentials:

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_database_user
DB_PASSWORD=your_database_password

Run the Installer

Open your browser and go to https://yourdomain.com/install. The installer will verify the server requirements, check file permissions, validate the database credentials, and create the default admin account.

Log In

After the installation completes, log in at /login with the admin credentials you created during the installation.

Security

Use a strong admin password. Never share your .env file and make sure the public directory is the only publicly accessible document root.

Demo Accounts

You can test the platform using the demo accounts below:

Admin Demo

Demo-URL: https://seopro.ooguy.com/login
E-Mail: admin@demo.com
Passwort: 12345678

Client Demo

Demo-URL: https://seopro.ooguy.com/login
E-Mail: user@demo.com
Passwort: 12345678

Cron Job

The software requires a cron job task to be set up on your server in order to automate some of its functions.

Open the Cron Job Settings

Go to Admin → Settings → Cron job in the admin panel.

Copy the Command

Copy the Command field value.

Set Up the Cron Job

Create a cron job on your server that runs every minute using the copied command.

# Runs the SeoPro scheduler every minute
* * * * * php /home/user/public_html/artisan schedule:run

Emails

Open Email Settings

Go to Admin → Settings → Email.

Set the Driver

Change the Driver field value to SMTP.

Enter SMTP Credentials

Fill in the rest of the fields with the SMTP credentials from your email or SMTP provider.

Send a Test Email

Save the settings and send a test email to confirm the configuration works correctly.

Tip

Some providers restrict the MAIL_FROM_ADDRESS to a verified address. Make sure the from-address matches a mailbox that exists on your domain.

Captcha

The Captcha system relies on Google reCAPTCHA's API.

Log In to reCAPTCHA

Log in to your Google reCAPTCHA account.

Create a New Site

Create a new reCAPTCHA v2 Invisible Badge and fill all the requested information.

Copy the Keys

Copy the Site key and the Secret key into Admin → Settings → Captcha.

Enable Captcha

Enable Captcha for the registration and/or contact forms and save the settings.

Payment Processors

PayPal

  1. Log in to your PayPal account.
  2. Go to the My apps & credentials section, click the Live button and then Create app.
  3. Copy the Client ID and Secret into Admin → Settings → Payment processors → PayPal.
  4. Go to My apps & credentials and select your app. Scroll down to Live Webhooks and click Add webhook.
  5. On the Webhook URL field paste your webhook URL, which can be found under Admin → Settings → Payment processors → PayPal.
  6. Under Events types select All events and save your changes.
  7. Copy the Webhook ID into Admin → Settings → Payment processors → PayPal and save.

Stripe

  1. Log in to your Stripe account.
  2. From the menu bar, go to Developers and click on API Keys.
  3. Copy the Publishable key and Secret key into Admin → Settings → Payment processors → Stripe.
  4. Go to Webhooks and click Add endpoint.
  5. Paste your webhook URL (found under Admin → Settings → Payment processors → Stripe) and under Events to listen to select All events.
  6. Click Add endpoint and copy the Signing secret into Admin → Settings → Payment processors → Stripe.

Razorpay

  1. Log in to your Razorpay account.
  2. Go to Settings → API Keys and click Generate key.
  3. Copy the Key ID and Key secret into Admin → Settings → Payment processors → Razorpay.
  4. Go to Webhooks and click Add new webhook.
  5. Paste your webhook URL (found under Admin → Settings → Payment processors → Razorpay).
  6. On the Secret field add your own secret passcode and select all the Payment events and Subscription events.
  7. Click Create webhook and copy the Secret passcode into Admin → Settings → Payment processors → Razorpay.

Paystack

  1. Log in to your Paystack account.
  2. Go to Settings → API Keys & Webhooks.
  3. Copy the Public key and Secret key into Admin → Settings → Payment processors → Paystack.
  4. On the Webhook URL field paste your webhook URL, which can be found under Admin → Settings → Payment processors → Paystack.
  5. Save your changes in the Paystack dashboard as well as in the admin panel.

Mollie

  1. Log in to your Mollie account.
  2. Go to Developers → API keys and copy the Live API key.
  3. Paste the API key into Admin → Settings → Payment processors → Mollie and save.
  4. The webhook URL is configured automatically by the software — no additional setup is required on the Mollie side.

Paddle

  1. Log in to your Paddle account.
  2. Go to Developer tools → Authentication and copy the API key.
  3. Go to Developer tools → Alerts / Webhooks and create a new webhook.
  4. Paste your webhook URL, which can be found under Admin → Settings → Payment processors → Paddle, and select the Subscription and Transaction alert types.
  5. Copy the webhook secret and paste it, along with the API key, into Admin → Settings → Payment processors → Paddle.

Coinbase

  1. Log in to your Coinbase Commerce account.
  2. Go to Settings → API keys and create a new API key.
  3. Copy the API key into Admin → Settings → Payment processors → Coinbase.
  4. In the Webhook subscriptions section, create a new subscription with your webhook URL (found under Admin → Settings → Payment processors → Coinbase).
  5. Copy the webhook Shared secret into Admin → Settings → Payment processors → Coinbase and save.

Crypto.com

  1. Log in to your Crypto.com Pay merchant dashboard.
  2. Go to the API settings and create a new API Secret key.
  3. Copy the Secret key into Admin → Settings → Payment processors → Crypto.com.
  4. Set up a webhook with your webhook URL, which can be found under Admin → Settings → Payment processors → Crypto.com.
  5. Copy the webhook secret into Admin → Settings → Payment processors → Crypto.com and save.

Bank Transfer

  1. Enable the Bank payment processor from Admin → Settings → Payment processors and save.
  2. The user selects Bank transfer at checkout and enters their payment / reference ID.
  3. The payment is stored with a pending status and the user is redirected to a pending confirmation page.
  4. Once the transfer is received, approve the payment from Admin → Payments to activate the user's plan.

Advanced

The Advanced settings allow you to fine-tune the application:

Note

Changes in the Advanced settings may affect application behavior. Apply them carefully.

Frequently Asked Questions

I get a blank page after installing. What should I do?

Check that the document root points to the public directory, that the .env file exists with the correct database credentials, and that the storage & bootstrap/cache folders are writable (CHMOD 775).

How do I configure email sending?

Go to Admin → Settings → Email, set the driver to SMTP, and fill in the credentials from your SMTP provider.

How can I protect my site from unauthorized access?

Always point the web root to the public directory, use strong credentials, keep your software up to date, and never expose the .env file.

Need Help?

If you're not familiar with the instructions on this page, we offer installation services for an additional fee.

Contact Support