System Requirement

  1. Server – Apache/Nginx
  2. PHP Version >= 7.0
  3. OpenSSL PHP Extension
  4. PDO PHP Extension
  5. Mbstring PHP Extension
  6. Tokenizer PHP Extension
  7. XML PHP Extension
  8. Mod Rewrite Enabled
  9. You must install SMM Panel on main domain or sub domain, not in sub folder

Recommended Shared Hosting?
Any hosting will work fine with above system requirement.
We have been asked for recommendation, so adding here for future clients.
Namecheap.com cheapest shared hosting plan will work fine.

How to install

Installation on VPS/Dedicated Server

  1. Extract the file in same folder.
  2. Set config/database.php file, /storage and /public/images folder writable.
  3. Point your virtual host to /public directory.
  4. Access your domain an Installation wizard will appear, follow the steps.

Installation on Shared hosting

  1. Show Hidden files in FileManager settings.
  2. Move all contents folder & files from public to public_html folder.
  3. Edit index.php file, located in public_html folder.
  4. Replace following lines of code with given lines.
    Replace:
    require __DIR__.'/../bootstrap/autoload.php';
    $app = require_once __DIR__.'/../bootstrap/app.php'; 
    With:
    require __DIR__.'/../smm/bootstrap/autoload.php';
    $app = require_once __DIR__.'/../smm/bootstrap/app.php';
  5. Change permission 775 (group writable) to images folder located in public_html.
  6. Navigate to smm folder and change permission of storage folder to 775.
  7. Change config/database.php file permission to 664(group writable).
  8. Edit config/filesystems.php and replace following line with given lines.
    Replace:
    'public' => [
        'driver' => 'local',
        'root' => public_path(),
        'visibility' => 'public',
    ], 

    With:
    'public' => [
        'driver' => 'local',
        'root' => base_path('../public_html'),
        'visibility' => 'public',
    ],
  9. Edit .env file and update
    APP_NAME=Your site name without http or https
    APP_URL=Your domain full url with http or https
    MAIL_FROM_ADDRESS=your domain email like [email protected]
    MAIL_FROM_NAME=your site name without http or https 
    Note There should not be space between words. If there is space put in double quote like
    MAIL_FROM_NAME=”SMM Panel”
  10. Select PHP Version 7+ from cpanel. if it is not php7 already.
  11. Hit your domain url in browser there is installation wizard. Add your db name and other details and proceed.

Add CRON jobs

  • Cron Job for sending orders to other reseller Panels.
  • Point command at smm folder and put this cron with time span of minimum 20 minutes to:
    php artisan orders:send 
    This command will send All orders of specific packages in which Reseller API is selected. 
    Point command at smm folder and put this cron with time span of minimum 15 minutes to: 
    php artisan status:check 
    This command will update order status from reseller panel(s).
  • CRON job for sending Status Report to Admin
  • Point command at with time span twice per day. 
    php artisan send-status-report

NOTE: in case of shared hostingAdd CRON jobs like follow

cd $HOME/smm && /opt/alt/php71/usr/bin/php artisan orders:send >/dev/null 2>&1
cd $HOME/smm && /opt/alt/php71/usr/bin/php artisan status:check >/dev/null 2>&1
cd $HOME/smm && /opt/alt/php71/usr/bin/php artisan send-status-report >/dev/null 2>&1

Steps to do if cron job is not working.

  1. Create a new file info.php in public_html directory and put following content in it
    <?php
    phpinfo();
  2. Visit yourdomain.com/info.php
  3. Press CTRL+F (find) “bindir” and find the location of bin directory on your server, you might find something like:
    /opt/alt/php70/usr/bin/
  4. Copy that location and add php in its end like
    /opt/alt/php70/usr/bin/php
  5. Replace that location in all above cron like:
    cd $HOME/smm && /opt/alt/php70/usr/bin/php artisan orders:send >/dev/null 2>&1

Configure System

Login to Admin panel, click Settings -> System.

  1. Application Name – Name of your website
  2. Logo
  3. Banner – That will be shown on homepage.
  4. Description – That will be shown on homepage.
  5. Admin Email for receiving notifications, For new support ticket, messages and stats report.
  6. Front Page, which page should be front? Login or homepage.
  7. Show Service List Menu without logged or with logged in only.
  8. Set System Timezone (For Admin, User can set their own timezone in their account settings).
  9. Currency Code – Three digit ISO Currency Code. i.e USD/EUR
  10. Currency Symbol
  11. Currency Separator (Comma or point) useful for EU customers who use comma as a decimal point separator.
  12. Date format – All dates will be displayed with that format.
  13. Google reCAPTCHA Public Key
  14. Google reCAPTCHA Private Key
  15. HTTP Referrer Anonmizer
  16. Minimum funds deposit amount
  17. Enable or disable API functionality
  18. Enable or disable Support functionality
  19. Language of the system (Multi language)
  20. Full Width 100% wide layout for Admin or User
  21. Simple or default theme
  22. Theme Color (color scheme of the application)

Add Static Pages Content

Update content of FAQs, About US, Contact Us and other static pages. Update content on different pages like New order, login register etc

  1. Log into admin, Go to settings -> pages
  2. Click edit on page entry and update its content.
  3. Rich text editor is available to update content.

Add Services

Admin Panel is completely dynamic, so you can add/update categories.

  1. Log into admin, Go to settings -> Services
  2. Click create new.
  3. Write Name of service, description and Status which is active by default.
  4. If it is Subscription/Autolikes service select Yes otherwise NO
  5. When you want to deactivate Service, just make status inactive.

Add Packages

  1. Log into to admin, Go to settings -> Packages
  2. Click create new.
  3. Select Service in which you want to create package. i.e Facebook, Instagram or Twitter
  4. Is service custom Data Yes/No – Custom data can be used for custom comments, custom mentions , custom keywords and so on.
  5. Name of Package. i.e Likes, Shares, Retweets
  6. Price Per Single item. i.e price for 1 Like = 0.01 etc
  7. System will automatically calculate total price for order. (Per item * Per item Price = total)
  8. Minimum quantity – i.e 20
  9. Maximum quantity – i.e 2000
  10. Description of service
  11. API – Select API to auto send order. (Add APIs in Automate -> Api List Menu)

Payment Methods Settings

To configure payment method settings

  1. Login to admin, Go to settings -> Payment methods
  2. Click to edit
  3. Change status active or inactive
  4. For Bitcoin, You have to get merchant_id & secret key for Coinpayments
  5. For Paypal Add your paypal Email. Make sure you have enabled IPN Handler in your profile. Being logged in to your paypal account, visit: https://www.paypal.com/in/cgi-bin/?cmd=_profile-ipn-notify&fli=true
    Paypal Mode live for production and sandbox for testing.
  6. For Stripe, get Stripe Secret and Key.
  7. For Payza add your payza business account email. Paypal Mode live for production and sandbox for testing.
  8. For InstaMojo, Get your API key, API Token And API Salt from your Instamojo account.
  9. To set up Skrill will need to sign up for a merchant account with Skrill. After verifying your account you will need to find your secret word from “Settings > Developer Settings” in your Skrill account.
  10. For Paytm, Add :
    1. Download this file, rename to “check.php” put it in public_html. And hit yourdomain.com/check.php. If you see “success” it will work. Otherwise follow instructions.
    2. Add Imap Full URL to your Paytm Email Inbox. 
      Note: To avoid any hassle use gmail. Which is added and works perfect. You don’t need to change this.
    3. Add Your Email Address
    4. Add Your Email Password (not Paytm password)
    5. Allow less secure app access, by going here and enabling checkbox:
      https://myaccount.google.com/lesssecureapps
    6. Note: Please move all your prior Transaction emails from Inbox, or sign up Paytm wih a fresh gmail for your panel.
  11. For Paywant
    • Get Your API Secret And API Key
    • Add below notify URL

IPN URLS

GatewayIPN
Paypalhttp://domain.com/payment/add-funds/paypal/status
Pazyahttp://domain.com/payment/add-funds/payza/status
Coinpaymentshttp://domain.com/payment/add-funds/bitcoin/bit-ipn
InstaMojohttp://domain.com/payment/add-funds/instamojo/webhook
Skrillhttp://domain.com/payment/add-funds/skrill/ipn
Paywanthttp://domain.com/payment/add-funds/paywant/status

Manage users

Add new users, activate or deactivate users etc.

  1. Login to admin, Go to Users
  2. Click create new to create new users, Add details, you can add funds of user from backend too.
  3. Click to edit to update
  4. User Funds can be added in this page
  5. User Special Price can be set here, by default all standard prices will be used.
  6. Change status active or inactive

Manage Orders

Change status of orders, remove theme etc. Following are details in order.

  1. Login to admin -> Orders
  2. Perform available actions.
  3. Bulk Edit option is available to manage orders quickly.

Manage support tickets

Your customer can post support queries through admin panel and you can manage it.

  • Login to admin, Click Support
  • Click on Edit A message time line is built so your customer can message you and you can message them too.
  • Dashboard and listing have new message count available.
  • When new ticket will be submitted or new message will be sent by user, Admin will receive information of ticket in email added in system settings.

Funds Load History.

It will show history logs of funds loaded by customers.

Add funds

User will be able to load funds in panel.

  1. Login to User -> Add funds
  2. Select payment methods and proceed

Order History

User can view his orders history.

  1. Login to User -> Order History

Place Mass Order

User can place orders in bulk (Mass Orders).

  1. Login to User -> my orders
  2. Write order in each new line with the given format: package_id|quantity|link
  3. Package Ids are given below the mass order form.

SMM Panel API for customers

Panel have built in REST API for users, so that can place order by API directly without logging into panel.

  1. User login -> Settings
  2. Generate token by click Generate button
  3. All the other API details are available by accessing yourdomain.com/api-documentation

Add New SMM Reseller Panel API

  1. Admin login -> Automate -> API List
  2. Click on Add New.
  3. Insert Api Name.
  4. Order Place API
    1. Add API Endpoint
    2. Select HTTP method
    3. Add Request Body
      • There are three columns in request body
        1. Key – Which is parameter key.
        2. ValueType – Which is Either custom value or a column from order row.
        3. Value – if custom add value else select order row.
      • Example:
        API EndPoint: https://demo.yourdomain.com/api/order
         HTTP Method: POST
         Required Parameters
         api_token
         package_id
         quantity
         link

        ParameterParameter TypeValueapi_tokenCustom123sd45e65466package_idTable Columnpackage_idquantityTable ColumnquantitylinkTable Columnlink
    4. Add API Success Response which must be in JSON format.
    5. Add Response Key Name equivalent to orderID. Which can be order, order_id, OrderID, ID etc.
  5. Order Status API
    1. Add API Endpoint
    2. Select HTTP method
    3. Add Request Body
      • There are three columns in request body
        1. Key – Which is parameter key.
        2. ValueType – Which is Either custom value or a column from order row.
        3. Value – if custom add value else select order row.
      • Example:
        API EndPoint: https://demo.indusrabbit.com/api/status
         HTTP Method: GET
         Required Parameters
         api_token
         order

        ParameterParameter TypeValueapi_tokenCustom123sd45e65466Notice, order parameter is fetched automatically by system. Which you added in
        Response Key Name equivalent to orderID.
    4. Add API Success Response which must be in JSON format.
    5. Add Response Key Name equal start_counter. may be start_counterstart_countcountetc.
    6. Add Response Key Name equal Response key Name equal status. may be statusorder_status etc.
    7. Add Response Key Name equal Response key Name equal remains. may be remainscount_remains etc.
    8. Select Process All orders Auto Yes/No.

Add Mapping

between your panel’s packageIDs and reseller panel’s Service/PackageIDs

  1. Admin login -> Automate -> API List
  2. Edit added API.
  3. Add reseller panel service/package id equal to panel package_id

Send Orders to Reseller SMM Panel

  1. Admin login -> Automate -> Send Orders
  2. All orders which are in “PENDING” state and not sent to API whill be shown in listing.
  3. On Select API, select the API where you want to send Order, Here all API will be shown which are added in previous div.
  4. Click Send, following thing can be happened.
  5. If Order is successfully placed to API, there will be a success message.
  6. If Order is Failed to placed, there will be a failed message.
  7. If Mapping is not found there will be message that please add API mapping ids.
  8. In both Case Success And Failure, there will be response log from API call. Which is helpful for errors and other information.

Check Order Status From Reseller SMM Panel

  1. Admin login -> Automate -> Get Order Status
  2. All orders which are not in “CANCEL, REFUNDED, COMPLETED, PARTIAL” state and sent to API will be shown in listing.
  3. Click Get Status, following thing can be happened.
  4. If Order status is completed, system will automatically mark order complete and show success message.
  5. If Order status is partial, system will automatically mark order partial, refund remains quantity amount and show success message.

In Some case you want to send order to another reseller if not order fulfilled from current reseller, then you can “Change Reseller”
By clicking on “Change Reseller” button in Get Status Order Listing. Order then will be read to be send to another reseller (By Manually) in Automate -> Order Send Menu.

API Response Logs

  1. Admin login -> Automate -> Response Logs
  2. In both case of Success and Failure there will be a response log which will give information
    about API call.

Subscriptions / Autolikes

To Enable or Disable subscription module, go to Settings -> System -> Select Yes or No on “Subscriptions functionality enabled?” select box.Most importantly, script doesn’t do anything automate in subscription, every thing have to be done manually by admin. From sending subscription order to reseller to adding individual order in each subscription.By default when a user place an order in subscription, its Status will be PENDING and all the amount of order will be deducted from user’s account in advance.Admin can cancel and stop subscription, the remaining amount will be calculated and returned to user account.When admin place’s an order in subscription, by going to Subscription menu -> in listing of subscription -> View order button, there will be form to add order. After adding order, system will update order automatically to active. After all the posts in subscription are done, system will automatically update status to completed

Create service

Create a normal service as regular one and select “YES” from is subscription service? select box.

Create Packages

Create packages as regular one just select the appropriate service for subscription.

Manage

While in admin menu, click on Subscriptions menu to see all list of subscriptions. To edit Subscription:

  1. Go to subscription menu
  2. Click on on edit button in action to edit subscription.

To Cancel Subscription:

  1. Go to subscription menu
  2. Click on on cancel button in action to cancel subscription.

To Add orders in Subscription:

  1. Go to subscription menu
  2. Click on on View Orders button in action column.
  3. There will be complete detail of subscription along with list of orders
  4. In the Add order form, add a new regular order
  5. quantity, and other data will be used from subscription details
  6. Just add link of the post, start_count and remains
  7. By default order will be mark completed when you add it.

Customization of Theme and Javascript

Sometimes you need to customize some CSS and JS, With each update that might change and your customization lost.
We have added two files one for CSS and one for JS so your customized styles and script won’t loss with each update.
You can files these files here:

  1. public_html/css/my-style.css
  2. public_html/js/my-script.js

Scan the code