StayGo

StayGo - Multitenant SaaS for Hotel Booking & Tour Packages (White Label)

Updated on: 5th Nov, 2025

By: KreativDev


Support:
Please visit this page https://kreativdev.freshdesk.com & click on 'New Support Ticket' to create a support ticket.
You can also login & then create a 'New Support Ticket'.
We will respond to your ticket once we are available for support.


Feature Suggestions:
If you have any Feature Suggestions, then please feel free to mail us at kreativdev.envato@gmail.com. We will be very happy to note your feature

About

“StayGo” is a Multitenant SaaS for Hotel Booking & Tour Packages (White Label) which provides 5 attractive themes for tenants

Tenant can use StayGo to create hotel / tour package booking websites within minutes.
Admin can create monthly / yearly / lifetime packages, control features for those packages. Admin can make a package Free, Trial, Premium The Admin's website is Fully Multi-lingual & also RTL supported (Frontend & Dashboard)

Tenants can purchase these packages & have a dashboard to manage his hotel / tour package booking website. They can add rooms, tour packages, receive bookings, manage bookings / customers

StayGo provides 9 automated payment gateways & unlimited offline gateways for both Admin & Tenant.

Tenant's hotel / tour package booking website is fully Multilingual & RTL Supported (frontend + dashboard)

StayGo provides vast amount of features for tenants like - 5 Themes, custom doamin, automaric subdomain, rooms, tour packages, 9 automated payment methods, unlimited offline payment gateways, room bookings, manual room booking from dashboard, edit room booking, rooms search with advanced search filters, no pageload search, room bookings report, room bookings export as CSV, invoice via mail, tour package bookings, tour packages search with advanced search filters, no pageload search, tour package bookings report, tour package bookings export as CSV, fully multilingual + RTL (frontend + dashboard of Admin + Tenant), subscription plans (monthly / yearly / lifetime / free / trial / premium), support tickets between Admin + Tenant, advanced QR builder, drag & drop menu builder, mail templates, announcement popups with 7 different layouts option, Tenant listings page in Admin website with search option, Admin role permission, Admin's staffs, Advertisements, maintenance mode, cookie alert, google login, tenanats management, tenant's customers management & a lot more

Installation

This item is built with Laravel Framework (Version - 11.x)

Server Requirements:

  • PHP 8.2
  • Ctype PHP Extension
  • cURL PHP Extension
  • DOM PHP Extension
  • Fileinfo PHP Extension
  • Filter PHP Extension
  • Hash PHP Extension
  • Mbstring PHP Extension
  • OpenSSL PHP Extension
  • PCRE PHP Extensio
  • PDO PHP Extension
  • Session PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension
  • Imagick PHP Extension

Installation Steps:


  • Step 1 (Collect Installable File):

  • After you purchase StayGo, you will get a zip file.
    After Extracting the zip file you will get an installable.zip file.

  • Step 2 (Upload Installable File):

  • Upload installable.zip in your server & extract it.

    Once extraction is completed , delete the installable.zip file from server.

  • Step 3 (Welcome Page):



  • After you enter your website URL in your browser you will see a welcome page of StayGo Installer. Then click on Check Requirements Button.

  • Step 4 (Server Requirements):



  • Next, you will be shown a list of extensions required to run this software. If all the extensions have green check icon, then click on Check Permissions button. If any extension has red cross icon, then you need to enable / install the extension in your server first. You might need to contact hosting support for that.

  • Step 5 (Folder Permissions):



  • In this step, you will be shown a list of folder locations & their required permissions. If all the folder has green check icon, then click on Verify License button. If any folder has red exclamation icon (like the above image), then you need to change the permission of the folder first.
    Let us show you how to change folder permission of 'storage/framework/' as an example
    • First, navigate to storage folder in your server
    • Right click on the framework folder & choose Change Permissions from the dropdown
    • Then, you will be shown a popup, change the permission to 775 in the popup
    • Thats it, you have changed the permission to 775 for 'storage/framework/'. Now repeat the same procedures for the other folders of the list shown in Permissions Step in StayGo Installation Wizard
    • Then, go back to installation wizard & refresh the page.You will see all the folders are checked with green icon


  • Step 6 (License Verifications):



  • In this step, you have to put your primary (which you use all the time) email address, Envato Username & Item purchase code. Now click on Verify button.
    How to get item purchase code: Click here to see a short guide
    NB: You must turn on your internet connection for this step if is off.

  • Step 7 (Environment & Database Setup):



  • In this step, you have to give some of your environment & Database info.
    • App Name: You app name
    • App Debug:
      True - If you want to see the error message if any error occurs in the website & False - if you dont want to show the error mesage. I would recommend you to keep it false, as database credentials will also be shown if you keep it true
    • App URL: Enter your website URL here.
    • Website Host: This will automatically be detected & prefilled by the installer. But if the website host is detected wrong by installer, then please correct it. If the website host is incorrect , then you will see 404 Page thoughout the website after installation.
      How to get website host:
      • if your website URL is https://example.com/ , then host will be emaple.com
      How to change website host after installation (skip this step while installing for the first time):
      • Go to '.env' file
      • search for WEBSITE_HOST & change the red marked part (shown in screenshot)
      • Screenshot:
    • Then put all your database information - Database Host, Database Name, Database Username, Database Password
    Now, click on Install button.

  • Step 8 (Installation Success):



  • In this step, you will be shown an installation success message. Then click on Click here to exit button at the very bottom of this page & You will be redirected to the installed website.
  • Step 9 (Delete Installer Folder):



  • Now you can delete the installer folder from the public folder of the project

Update From 1.0 to 2.0:

Read Before Proceed:

  • You must be at Blogaaso version - 1.0 to use this updater
  • Please keep backup of your version - 1.0 project files & database sql file of previous version
  • If you didn't keep a backup, then we won't be able to take the responsibility for loosing data
  • All your customized code will be lost, as it is impossible for us to track what has been customized on your end

Video Guide:

Cron Job:

Cron Job is needed to send mails to customers when their subscription / membership is about to expire / expired.
Please follow these below steps to add the cron job

1. Login to your hosting & go to 'Cron Jobs' menu
2. Go to 'Add New Cron Job' section
3. Select 'Once Per Day(0 0 * * *)' option from the dropdown of 'Common Settings' [Follow red marked part of the above image]
4. Add
wget {your_website_url}/subcheck
- this command in 'Command' input field [Follow red marked part of the above image]. {your_website_url} will be replace with your website url .
5. Now click on 'Add New Cron Job' to add your cron job.

Admin Login Details:

You can manage each and everything of this system from this Admin panel such as Mail settings, Contents, Pages, Packages, Payment Logs, Payment Gateways, Roles / Permissions, Registered Users, Website Color etc...
Admin URL: your_website_url/admin
Username: admin
Password: admin

Admin Profile:

Admin can change username & some details from here (screenshot):

Admin Password:

Admin can also change password from here (screenshot):

Automatic Subdomain Setup:

video guide: https://youtu.be/tTQNkMDzxMY?si=WpmU0BNhWy3_KMKe

Written Guide:
  • Let us first understand What is Automatic Subdomain?. Automatic subdoamins means users / tenans will be able to show their website on the subdomain ({username}.your_domain_name) just after registering with a pricing plan (which has Subdomain feature)
  • For automatic subdomain support , you need to add a wildcard subdomain (*.your_domain_name) in hosting so that user gets a subdomain ({username}.your_domain_name) for his website just after registering with a subscription package which has subdomain support.
  • To create a wildcard subdomain, login to your hosting account. Search for domains in your hosting (follow screenshot). Click on domains option
    Screenshot:
  • You will see a form to create wildcard subdomain.
    • Enter *.your_domain_name in Domain input field (follow below screenshot)
    • Enter the folder location where you have put the installable project files (follow below screenshot)
    • Now, click on Submit button

    • Screenshot:
  • Now you will have to wait for sometimes till the DNS propagation is completed. It is said that DNS propagation takes upto 72 hours but mostly it is completed within few hours.
  • For testing, Create a trial package with Subdomain feature & register a user with that package.
  • Lets assume you have registered an user with username: User1, then the subdomain for this user will be user1.your_domain_name
  • For testing, clear the cache in the browser & enter the subdomain user1.your_domain_name. You may not see the user's website yet due to DNS propagation time. Repeat the process of clearing cache & entering subdomain in browser again & again, until the DNS propagation is completed and the user's website shows up in the subdomain (user1.your_domain_name)
  • From this point, whenever a user registers, he / she will get a subdomain instantly. No more waiting.
  • Now, you will see the the subdomain is loaded on http (http://user1.your_domain_name). It will not support https yet. Problem is, AutoSSL in hosting cannot assign SSL on Wildcard Subdomains, but we need Wildcard Subdomains for automatic subdomain support.
  • There are 2 ways to make the subdomains support https (https://user1.your_domain_name). You can implement any one of them.
    1. Way 1: By adding each subdomain for each registered user (who has purchased package with subdomain feature) explicitly in your hosting [this way is free]
      Steps:
      • After a user registers in your website with a package (which has subdomain feature), you will be able to see the subdomain of that user in Subdomains > All Subdomains or in Subdomains > Pending Subdomains of Admin dashboard (follow below Screenshot)
      • Screenshot:
      • Lets assume, a user with username user1 has registered with a subdomain supported package & got a subdomain user1.your_domain_name
      • Now, go to Subdomains > All Subdomains or Subdomains > Pending Subdomains in Admin dashboard
      • There, You will find user1.your_domain_name with Pending status
      • Copy the subdomain user1.your_domain_name
      • Now, login to your hosting & Search for domains (follow below Screenshot). Click on Domains option
        Screenshot:
      • There, You will see a form to create subdomain.
        • Enter user1.your_domain_name in Domain input field (follow below screenshot)
        • Enter the folder location where you have put the installable project files (follow below screenshot)
        • Now, click on Create button

        • Screenshot:
      • Now go to Subdomains > All Subdomains or in Subdomains > Pending Subdomains of Admin dashboard & change the status from Pending to Connected of the subdomain user1.your_domain_name. If you want, you can send a mail to the user from there.
      • For testing, clear the cache in the browser & enter the subdomain with https (https://user1.your_domain_name). You may not see the user's website yet. It usually takes few minutes (arround 15 mins) to assign SSL certificate to the added subdomain. Repeat the process of clearing cache & entering the subdomain with https (https://user1.your_domain_name) in browser again & again, until the hosting AutoSSL assigns the SSL certificate to the added subdomain (user1.your_domain_name). Once assigned, the user's website will show up on https://user1.your_domain_name
    2. Way 2: By purchasing a Wildcard SSL & adding the SSL with your Wildcard Subdomain (*.your_domain_name) [this way is not free].
      In this case, you don't need to add subdomain for any user in your hosting. You only need to add the Wildcard SSL with Wildcard Subdomain (*.your_domain_name)
      You can purchase Wildcard SSL from any provider (Namecheap, godaddy etc..)
      After purchase, please contact with your hosting support. They will show you the procedure of connecting Wildcard SSL with your Wildcard Subdomain. The SSL connecting procedure is different for each hosting provider.
    3. ** You can either choose Way 1 (which is free) or Way 2 (which is not free) to support https in the registered user's subdomain

Custom Domain Setup:

Tenant / User Part:
Video Guide for Tenant Part: https://youtu.be/g2gYzkY0sTc


Written Guide for Tenant Part:
  • If a user wants to load his website in a custom domain, he will need to purchase a package which has custom domain feature
  • Let's assume, the user has purchased a domain named manti.cc & he wants to load his website under manti.cc
  • Once the user purchased the package (which has custom domain feature), he will get a Custom Domain menu in Site Settings > Domains & URLs (follow below Screenshot) in User Dashboard
    Screenshot:
  • There, he will get a option to send request for his custom domain manti.cc
  • Before submitting a custom domain request (manti.cc), User must first point his custom domain to your business domain.
    To point custom domain to your business domain, user need to add the necessary DNS records in his custom domain form his domain registrar’s control panel (e.g., Namecheap, GoDaddy, Bluehost, etc.).
    Click here to see Necessary DNS Record Tables for Popular Domain Registrars
    If he purchased the custom domain (manti.cc) from some other domain registrar than above mentioned domain registrars (in the popup), then he needs to contact his domain registrar to find the DNS records which will point his custom domain (manti.cc) to your business domain.
  • After adding DNS record, it will take some time to complete DNS propagation of the custom domain manti.cc. It is said that it takes upto 72 hours to complete DNS propagation. But, generally the propagation is completed much quicker than that (few hours)
    Users can visit this website (https://www.whatsmydns.net/) to check if the DNS propagation of the custom domain manti.cc is completed all over the world or not
  • Once the DNS propagation is completed, the user can finally send request for the custom domain manti.cc from Site Settings > Domains & URLs > Custom Domain
    Screenshot:
Admin Part:
Video Guide for Tenant Part: https://youtu.be/CSHr0XmOXaQ?si=be_-W9LQKSEmpAKV


Written Guide for Tenant Part:
  • After that, You can see the requested custom domain manti.cc in Custom Domains > All Requests or Custom Domains > Pending Requests in Admin Dashboard

  • Now, you need to add this requested custom domain manti.cc as an domain in your hosting
    Steps to do that:
    • login to your hosting & search for Domains
      Screenshot:
    • After clicking on Domains, you will see a form to add domain
      • Enter the user's requested custom domain manti.cc in Domain input field (follow below screenshot)
      • After entering Domain, the Subdomain field will be prefilled automatically. You don't need to do anything for this field
      • Enter the folder location where you have put the installable project files (follow below screenshot)
      • Now, click on Submit button

      • Screenshot:
    • After that, please don't forget to change the status of manti.cc from Pending to Connected in Custom Domains > All Requests or Custom Domains > Pending Requests of Admin Dashboard
    • The DNS propagation of manti.cc is completed on your user's / tenant's location, Thats why he had been able to send request for the custom domain manti.cc. But it might be the case that the DNS propagation is not completed on your location yet. In that case, you might not be able to see anything after visiting the custom domain manti.cc yet. But no worries, As the DNS propagation is already completed on the user's end, the user will be able to see his website after visiting manti.cc, just after you add manti.cc in your hosting & change the status of the custom domain to Connected from Admin Dashboard. You will also be to see the user's website visiting manti.cc, once the DNS propagation for manti.cc is completed at your location
    • If anyday, the user wants to change his current custom domain & request for a new custom domain, he can do that. In that case, he will need to add DNS record for his new custom domain & send request again for the new custom domain.
      You can see his new request in Custom Domains > All Requests or Custom Domains > Pending Requests of Admin Dashboard
      There, You will need to change the status of his current custom domain manti.cc to Removed
      Screenshot:


      Also remove the current custom domain manti.cc from your hosting addon domains list




      Then, add the new requested custom domain as domain in your hosting (steps are already mentioned above)
      & after that, change the status of the new requested custom domain to Connected from Custom Domains > All Requests or Custom Domains > Pending Requests of Admin Dashboard

    • Additionally, You can update text of this page (Site Settings > Domains & URLs > Custom Domains (page of User / Tenant Dashboard) from Custom Domains > Request Page Texts of Admin Dashboard

      Those updated texts will be shown in Domains & URLs > Custom Domain of User Dashboard
      screenshot:

      Do not forget to replace the domain names here with your domain name
      screenshot:

Website Color:

Admin can change website's base color from 'Settings > General Settings' of Admin Dashboard:

Additional Pages:

Admin can create pages from 'Pages > Additional Pages > Add Page' of Admin Dashboard & add them in website menu using Drag & Drop Menu Builder

Email Settings:

Mail From Admin:

Admin can setup SMTP to set a mail from which all the mails will be sent to customers via this website. Admin can setup SMTP details in Settings > Email Settings > Mail From Admin
Some Important Notes regarding SMTP
  • Sometimes SSL encryption has some issues in some server as PHP is very strict now a days to check SSL. In that case, please choose TLS
  • If you choose TLS, then dont forget to change the SMTP Port accordingly (in most cases, it is 587. But on your server it could be different)
  • If you still face issues , then please contact hosting support & show them the SMTP details you are using in Admin Panel's SMTP form. It mostly depends on server so SMTP issue can only be solved by hosting support.

Mail to Admin:

Admin can setup this mail from which will be used to recieve mails from this website. Admin can this mail in Settings > Email Settings > Mail To Admin
Some Important Notes:
  • If you face any issue (like - mail not coming from contact form to the setup mail), then please create a ticket here: https://kreativdev.freshdesk.com/
    We will replace the PHPMailer code with mail()
  • If it still does not work, then you will need to contact hosting support & tell them PHP mail() function not working. They will be able to solve it. Mail mostly depends on server.

Currency Settings:

Admin can set currency in Settings > General Settings
Admin must set the currency rate based on USD

Payment Gateway Settings:

Online Gateways

All the online payment gateway's credentials can be set in Settings > Payment Gateways > Online Gateways

Admin can also set the payment gateways in test / live mode

Offline Gateways

Admin can create offline gateways to receive booking payments

Admin can setup instructions & description (optional) which will be shown to customers in checkout page

Admin can also enable / disable attachement status

  • If attachement enabled, then customer will have to upload the image of their transaction during checkout
  • If attachement disabled, then customer the attachement field wont be shown to customers during checkout

Language Management:

Admin can create unlimited language & translate the website for that language from Settings > Languages of Admin Panel

After a adding a language, Admin need to click on Edit Keyword button of that language to translate all the keywords of the websites & dashboards to that language

Admin can even change the keywords of English Language too


The Admin has also full control over translating all keywords used in both the Tenant Dashboard and the Tenant’s frontend website. Once a tenant registers, their dashboard and website automatically inherit all languages and translations previously added by the Admin. These translations are immediately available for use in the tenant's environment. After registration, the tenant has the ability to modify the Admin-provided translations, but only for their own website—translations used in the Tenant Dashboard remain under the Admin’s control and cannot be changed by the tenant. Additionally, tenants can choose to delete any inherited language if they no longer wish to use it on their website.

Announcement Popup:

StayGo provides 7 types of popups during creating a popup

Admin also active / deactive any popup.

Multiple popups can be shown in website. Popups will be visible accroding to serial number (set by Admin)

Maintenance Mode:

Admin can set the website under Maintenance Mode from Settings > Maintenance Mode

In maintenance mode Admin can always access the Admin Panel

To access the frontend Admin can setup a secret path (avoid using any special characters in it, use plain letter & number combination)

Anyone who knows the secret path can access the website by typing {website_url}/{secret_path} in browser

Admin / Roles & Permissions:

Owner can create roles from Admins Management > Roles & Permissions & can assign permission clicking on manage button of that role

Owner can create a Admin & assign a role to that Admin

Changing Domain:

If you want to run this website in another domain along side your current domain, then you have to purchase this item again & install the product in that new domain with your new purchase code

But, if you want to move your project files from current domain to another new domain, then please contact support (https://kreativdev.freshdesk.com/) with your item purchase code, new domain & old domain. You will also need to change the website host, Click Here to see how to change website host

Developer Support

If you need support
Please visit this page https://kreativdev.freshdesk.com & click on 'New Support Ticket' to create a support ticket.
You can also login & then create a 'New Support Ticket'.
We will respond to your ticket once we are available for support.

KreativDev