# Guide
Invoices-SaaS : Manage multiple invoices at once place.
# Technologies Used
This system uses multiple technologies to give the best possible experience.
- PHP with Laravel Framework
- MySQL 5.7+
- PHP 7.4+
- jQuery
- Ajax
# Installation Guide
We tried our best to make the installation of the system as easy as possible. System Requirements It is assumed that you have primary knowledge Laravel installation knowledge since this application is built on Laravel.
# System Requirement
It is assumed that you have primary knowledge Laravel and JS application installation knowledge since this application is built on Laravel with JS.
You can read about laravel Requirements here (opens new window)
(Optional) You need update below variables in php.ini file if you want to send bigger files.
upload_max_filesize = 50M
max_file_uploads = 50
post_max_size = 100M
# Setup InfyInvoices-SaaS into Local Environment
You can setup InfyInvoices-SaaS into your local by using both zip files, but we recommend to use dist file, so you have to perform minimal steps.
Here are some steps to setup InfyInvoices-SaaS into your local environment :
# 1. Install xampp/wamp (if you don't have it).
# 2. Create folder InfyInvoices-SaaS
- if you are using wamp then create InfyInvoices-SaaS folder under you_path_to_wamp/www/
- if you are using xamp then create InfyInvoices-SaaS folder under you_path_to_xamp/htdocs/
# 3. Unzip dist zip to InfyInvoices-SaaS folder
# 4. Point the domain to the uploaded folder
You need to create virtual host first to setup InfyInvoices-SaaS. You can find steps here to create virtual host.
- You can find steps here (opens new window) to create virtual host on
XAMPP
. - You can find steps here (opens new window) to create virtual host on
WAMP
.
Point your domain or subdomain to the InfyInvoices-SaaS folder.
Please note that, InfyInvoices-SaaS must be installed on a primary domain or subdomain. Installing on a sub-folder will not work, for example:
example.com/InfyInvoices-SaaS (Invalid)
localhost/InfyInvoices-SaaS (Invalid) if you are putting it in sub folder or root website)
example.com (Valid)
local.InfyInvoices-SaaS.com (Valid)
InfyInvoices-SaaS.test (Valid)
# 5. Setup the project's details
Please Click Here to follow the next steps for project setup.
# Setup InfyInvoices-SaaS System
If you have purchased the InfyInvoices-SaaS system then you will be able to find the zip named dist.zip
.
If you want to setup InfyInvoices-SaaS
into your local environment then you can take
help from here here.
Now if you want to setup InfyInvoices-SaaS on your server then you can directly copy the dist.zip
folder to your web root directory on a server and the following steps:
# 1. Copy files to web server
Upload dist.zip
to your web server's root (public_html) and extract it there.
# 2. Setup Default DB
- Open PHPMyAdmin on your server and do a login.
- Click on the Databases tab.
- Create a new database and specify a Database name of your choice and Click Create button.
Now on the left, select the database (infy_invoices) OR the one that you have created.
Click Import in the top menu
- Under Import, choose the default sql file from
dist/database/infy_invoices.sql
and click button Go.
# 3. Setup environment .env file
- Open .env file from your server's root folder.
- Update your .env file
You need to change the following information into your environment (.env) file.
- APP_NAME - Name of your Application
- APP_URL - Change this URL with your server URL (including trailing path if you are putting it in sub folder or root website)
- DB_HOST - Put your database hostname here
- DB_PORT - Put your database port here if it does not default to 3306
- DB_DATABASE - Change it to your database name
- DB_USERNAME - Name of your database user
- DB_PASSWORD - Password of your database user
You will also need to set up mail configuration, you can read more about here for that setup based on mail service that you use.
- MAIL_MAILER
- MAIL_HOST
- MAIL_PORT
- MAIL_USERNAME
- MAIL_PASSWORD
- MAIL_ENCRYPTION
- ADMIN_EMAIL
- MAIL_FROM_ADDRESS=${ADMIN_EMAIL}
- MAIL_FROM_NAME="${APP_NAME}"
If you want to store your files to direct your s3
bucket then you have to use following
.env
variables.
You need to change FILESYSTEM_DRIVER
and MEDIA_DISK
value to
s3
when you are using AWS file storage.
- AWS_ACCESS_KEY_ID=
- AWS_SECRET_ACCESS_KEY=
- AWS_DEFAULT_REGION=us-east-1
- AWS_BUCKET=
- AWS_ENDPOINT=
- AWS_URL=
Or you can use your choice of storage driver to store your media assets if you want. All of your attachments will be placed into that.
# Setup Payment Credentials Settings
Login to the panel and go to settings for updating payment gateway credentials.
# Cron jobs Setup
Enable recurring invoices in cPanel. Here is the link by using it you will get an idea about how to set the cron for the recurring invoices.
# 4. Login
You can do super admin or admin login by accessing given URL.
YOUR_APP_URL/login
super admin email: superadmin@infy-invoices.com
admin email: admin@infy-invoices.com
client email: client@infy-invoices.com
password: 123456
# Key Features and Concepts
Here are some Key Features and Concepts that InfyInvoices-SaaS provides.
# Multi languages Support
We are supporting multiple languages in each panel (Super Admin | Admin | Client)
# Landing Page
Beautiful landing page with attractive interface, And yes its totally mobile friendly.
In Landing page you can add your business information, its comes up with Pricing Plans, FAQs, Testimonials and contact us page, that's all users need 😃
Users can register for their invoice system via landing page and also check the pricing plans.
# Super Admin Panel
# Users
You can create an admin from the Super-admin panel, and yes of course admin will get their separate panel, where they can manage their clients, products, invoices, and payments and perform related actions.
# Subscription Plan
Here you can add your plans as per your needs. you can create trial plans, free plans, and paid plans. You can select related currencies as per your region.
# Enquiries
Customers can submit the inquiry from the home page & Received inquiries on subscription plans will be shown to related Enquiries tables.
# Subscribers
Your followers can subscribe to your system via the landing page. you can see lists of subscribers' information here. and use their emails to notify them.
# Landing CMS
Here you can manage all the content of the landing page. you can see the contact us inquiries here.
Can add new testimonials, faq's can update the about us text, and many other things.
# Settings
Here you can manage all your application settings including :
- Application Name
- Payment gateway credentials
- Phone
- Logo & Favicon
- etc
# Admin Panel
# Dashboard
Powerful admin dashboard where admin can see the overview of the application, what's going on, what are the revenue, etc.
# Clients
You can create a client from the admin panel, and yes of course clients will get their separate panel, where they can see his assigned/sent invoices and perform related actions.
# Products
You can create your products from where, which will be later used in invoice creation. You can define the price, set image and related information.
# Product Categories
You can create different kinds of product categories which will be used in product creation, you can choose categories while creating products.
# Taxes
You can create different kinds of taxes from here, e.g GST / IGST / etc with related percentages. Taxes will be used while creation of the invoice.
# Transactions
All the invoices transactions will be listed here, either it will be manually or via stripe. you can see the detailed information here.
# Payment
Admin can do payment of Invoice through cash mode.
# Settings
You can manage to generate settings from here, like the app logo, favicon the currency, your payment gateway credentials and company address.
Also, you can manage the number format and decimal separator settings from here.
# Invoice Template
We are supporting the beautiful invoice template, which is used when you print the invoice template. You can manage the downloaded invoice format by using this interface.
# Multi Currency
You can add your currency here, whatever you want to show before the price everywhere. The selected currency will be reflected everywhere in the project.
# Multi Lingual
Its comes up with 9 different languages and multi currency options.
# Client Panel
# Dashboard
Attractive and Powerful dashboard from where client can see the overview of his invoices, how many invoices are still pending or paid, etc.
# Invoices
Client can see only assigned invoices, he can print invoices and check details of it. Also clients can pay the invoice by manually or via the stripe payment gateway.
# Pay Invoice
Clients can pay invoices by multiple ways. We are supporting the partial payment option, so let's say there is a $1000 invoice and the client wants to pay just $500 then he can choose Partial payment while paying the invoice.
Later when the client does the next payment he will just see $500 remains as he already paid $500.
# Print Invoices
Clients can print the invoices from the details screen, we are supporting the attractive invoices templates.
# Transactions
Here the client can see his invoices payment history and reports, whatever transaction he made will be recorded here.
# Payment Gateways
We are supporting the stripe, razorpay and paypal payment gateway to pay invoice from customer side.