omaralghussein / itflow

Free Opensource ITGlue alternative - Client IT Documentation, Ticketing, Invoicing and Accounting Web Application for MSP (Managed Service Providers).

Home Page:https://itflow.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Contributors Stargazers Issues Commits GPL License

ITFlow

IT Documentation, Accounting and Invoicing System for Small MSPs.

View demo
Username: demo@demo | Password: demo

Docs · Forum · Report Bug · Request Feature

About

ITFlow

ITFlow is a free & open-source solution for IT service management, documentation, and accounting.

The Problem

  • You're a busy MSP with 101 things to do.
  • Information about your clients is unorganised and unstructured: scattered in random tickets or folders - when you do eventually find it, it's out of date.
  • For some tickets, you spend longer looking for the relevant documentation than actually working the ticket.
  • On top of the technical day to day, you also have to take care of the financial side of the business - consistent pricing, quotes/invoicing, and accounting.

The Solution: ITFlow

  • ITFlow consolidates common MSP needs (ticketing, wiki/docs, CMDB and accounting) into one system to help you do what you do best - IT.

In Beta

  • This project is still in early beta and is considered a work in progress. Many changes are being performed and may cause breakage upon updates.
  • We strongly recommend against storing confidential information like passwords in ITFlow at this time.
  • We are hoping to have a stable 1.0 release by July 2022.

Built With

  • Backend / PHP libs

    • PHP
    • MariaDB
    • PHPMailer
  • CSS

    • Bootstrap
    • AdminLTE
    • fontawesome
  • JS Libraries

    • chart.js
    • moments.js
    • jQuery
    • pdfmake
    • Select2
    • SummerNote
    • FullCalendar.io

Getting Started

ITFlow is self-hosted. There is a full installation guide in the docs, but the main steps are:

Prerequisites

  • Git
    sudo apt install git
  • Apache
    sudo apt install apache2
  • PHP
    sudo apt install php libapache2-mod-php
  • MariaDB
    sudo apt install mariadb-server

Installation

  1. Login to your server, change directory to your web root
  2. Clone the repo
    git clone https://github.com/johnnyq/itflow.git .
  3. Create a MariaDB Database
  4. Point your browser to your HTTPS web server to begin setup

Features

  • Client Documentation

    • Contacts - Keep track of important individuals
    • Locations (Head Quarters, Satellite locations)
    • Vendors (ISP, WebHost, MailHost, Software Company, VOIP company, etc.)
    • Assets (Laptop, Workstations, Routers, Switches, Access Points, phones, etc.)
    • Password Manager (AES Encrypted in database)
    • Domain Names & SSL Certificates
    • Software (Manage Applications Licenses, Renewals etc.)
    • Networks
    • Files (PDF Contracts, Manuals, Firewall Backup Configs, etc.)
    • Documents (Tech Docs, How-tos, Processes, Procedures, Notes, etc.)
    • Services (Relate all of the above together, e.g. Active Directory, a web app, etc.)
    • Tickets
    • Single Downloadable IT Documentation for a client
  • Client Portal

    • Invoice, Quotes and Payment information
    • More to come soon...
  • Invoicing

    • Automatically Emails Past Due Invoices to clients
    • Automatically Email Receipts upon marking invoices paid
    • Automatic Recurring Invoices
  • Quotes

    • Automated customer approval process using a link that is sent via email to the primary contact
    • One Click turn Quotes into Invoices
  • Accounting

    • Expense Tracking (Track internal business expenses such as Office Supplies, Professional Services, Equipment, etc.)
    • Profit and Loss Reports
    • Income/Expense Summaries
    • Travel Mileage Tracking
    • Accounts (Manage several accounts including cash on hand, bank accounts, etc.)
    • Account Transfers (Keep track of money transfers from account to account including deposits)
  • Alerting/Notifications

    • Low Account Balances
    • Domains to expire
    • Password reset reminder for customers
    • Past Due Invoices
    • Software License Expiration
  • Calendar

    • Schedule Jobs
    • Overview of Invoices, Domains, Asset Warranty Expiry, etc.
    • Schedule Events
    • Automatic Email Reminders of upcoming calendar events to customers
  • Dashboard

    • Overview of business financials
  • Mailing List - Notify users of upcoming change controls, marketing, etc.

  • API

    • XML Phonebook download for VOIP Phones
    • FreePBX Integrated called ID (When call comes in it queries the Database and displays the company name on your caller ID as well as alerts you in the CRM)
    • Pull Emails for Mailing list Integration
    • Check account Balances using FreePBX IVR
  • Multi-Tenant - One Instance Multiple Companies and Users

  • Audit Logging - Logs detailed actions of users and events

  • Permissions / Roles

  • 2FA Login Support (TOTP)

API

  • Caller ID lookup (Great for integrating with your phone system like FreePBX, and having your VOIP phone return the client's name thats calling in) - /api.php?api_key=[API_KEY]&cid=[PHONE_NUMBER] - Returns a name
  • XML Phonebook Download - /api.php?api_key=[API_KEY]&phonebook
  • Client Email (great for mailing lists) - /api.php?api_key=[API_KEY]&client_emails - Returns Client Name - Email Address
  • Account Balance for Client (can be integrated into multiple places for example in FreePBX Press 3 to check account balance, please enter your client ID your balance is) - /api.php?api_key=[API_KEY]&client_id=[CLIENT_ID] - Returns Account Balance
  • Add new asset for a client - /api.php?api_key=[API_KEY]&client_id=ClientID&add_asset=Name&type=[Desktop|Laptop|Server]&make=Make&model=Model&serial=Serial&os=OS
    • Required: api_key, client_id, add_asset (name)
  • NOTE: [API_KEY] - is auto generated when a company is created and shows up in General Settings, this can also be changed manually.

Roadmap / Future to-do

  • MeshCentral / TacticalRMM (Export Assets Info to ITFlow, Exports common software applications to Software)
  • CalDAV to integrate with 3rd party calendars
  • CardDAV to integrate with 3rd party Address books
  • Stripe Integration for online payments
  • Toast Alerts with recent caller that matches caller ID in database which allows you to click on the toast alerts and bring up the clients account right away.
  • FIDO2 WebAuthn Support for passwordless auth (TPM Fingerprint), (USB Hardware keys such as Yubikey)

See the forum and the open issues for a full list of proposed features & known issues.

Support & Contributions

Forum

For assistance using ITFlow, feature requests, and general ideas/discussions please use the community forum. For bugs, please raise an issue.

Contributing

If you are able to make a contribution that would make ITFlow better, please fork the repo and create a pull request.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature)
  3. Commit your Changes (git commit -m 'Add some')
  4. Push to the Branch (git push origin feature)
  5. Open a Pull Request

Contributors

License

ITFlow is distributed under the GPL License in the hope that it will be useful, but WITHOUT ANY WARRANTY. See LICENSE.txt for details.

About

Free Opensource ITGlue alternative - Client IT Documentation, Ticketing, Invoicing and Accounting Web Application for MSP (Managed Service Providers).

https://itflow.org

License:GNU General Public License v3.0


Languages

Language:JavaScript 54.5%Language:PHP 44.9%Language:CSS 0.4%Language:Hack 0.2%Language:HTML 0.0%