Courier Management System using PHP/MySQLi with Source Code


Project: Courier Management System using PHP/MySQLi


The Courier Management System is a simple PHP/MySQLi project that helps a courier company or businesses manage their customers' parcels or packages details. The system stores all the branches or the company that can be also used when setting a destination where the recipient will pick up their packages or parcels. The system has a tracking feature where can help to monitor the movement of the customer's parcel. The system has 2 types of user which is the Admin user and the Branch Staff user. The Admin user can manage all the data in the system including managing the branches and branches staff user. The Branch user can only track a parcel and manage the list of parcels where the origin or the destination of a parcel under the logged-in staff branch. The couriered items have multiple statuses which are the "Item Accepted by Courier", "Collected", "Shipped", "In-Transit", "Arrived At Destination", "Out for Delivery", "Ready to Pickup", "Delivered", "Picked-up", and "Unsuccessful Delivery Attempt". These statuses will help to determine the movement of the parcel. The system also generates a report between two dates and selected status. The couriered items of the clients can be set into "Deliver" and "Pickup". The parcels that marked as "Deliver" are the items to be delivered directly to the recipient while the "Pickup" will be delivered to the branch of the company near to the recipient address. The system admin or staff user can store or adds multiple items at the same time but these items will be stored in the database separately because each package has a different reference number or different tracking number. For example, Client 1 has 3 boxes of the package to be couriered in the same recipient, the system user can submit the parcel registration to the system at once but will be stored separately so that the system will generate a different unique reference number in each item so that they can track easily each items.


Admin Side

  • Login Page
    • The page where the admin user submits their system credentials to access the admin side of the system.
  • Home Page
    • The page where the admin user is being redirected by default after logging into the system. This page displays a summary of the data of the system.
  • New Branch Page
    • The page where the admin submits the information on the new branch of the courier company.
  • List of Branches Page
    • The page where all the branches of the courier company are listed and managed.
  • New Branch Staff Page
    • The page where the system admin creates a new user for the specific branch of the company.
  • Branch Staff List Page 
    • The page where all of the staff users of the system in all branches are listed and managed.

Both Users

  • New Parcel Page
    • The page where can system users submit the information of the parcels such as the sender and recipient details.
  • Parcel List Page
    • The page where the parcels are listed and managed. 
  • Parcel View Modal
    • The page that shows the parcel's details.
  • Track Parcel Page
    • The page that displays the movement of the client's packages or parcels.
  • Report Page
    • The page where the printable list of the transaction of the courier company with the clients is listed.

The Courier Management System was developed using HTML, PHP/MySQLi, CSS, JavaScript (jQuery/Ajax), and Bootstrap for the design. The source code is fully functional and easy to modify or enhance. Follow the instruction below to have an actual experience using this simple project.

How to Run

  1. Download the source code and extract the zip file.
  2. Download or set up any local web server that runs PHP script.
  3. Open the web-server database and create a new database name it cms_db.
  4. Import the SQL file located in the database folder of the source code.
  5. Copy and paste the source code to the location where your local web server accessing your local projects. Example for XAMPP('C:\xampp\htdocs')
  6. Open a web browser and browse the project. E.g [http://localhost/courier-management-system]

Default Admin Access

Username: [email protected]
Password: admin123

I hope this simple Courier Management System will help you with what you are looking for, feel free to download and modify the source code.

Explore more on this website for more source codes and tutorials.


Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. After downloading it, you will need a program like Winzip to decompress it.

Virus note: All files are scanned once-a-day by for viruses, but new viruses come out every day, so no prevention program can catch 100% of them.


1. Re-scan downloaded files using your personal virus checker before using it.
2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.


Submitted byKimt (not verified)on Tue, 12/01/2020 - 21:35

Hello, the system is unable to add new parcel details into the db. it keeps loading forever. any assistance?

Hi, I have updated the source code and I forgot to put an error handling when submitting the new parcel form and will trigger when you submit the form without at least 1 parcel information because this form requires at least 1 parcel info. I hope that is the error that occurred in your actual test too. Try to download the updated source code and test it again.

Can you give another file for this source code there's no specific mb/gb in this file it's just shown ? Unknown download no specific if this is infinite or something can you help me so that I can download it"'
Submitted bysara0 (not verified)on Wed, 12/09/2020 - 13:00

note working add new parcel, ( php + mariadb) lasted version, can you help me, there something with referece_code or id, can someone help?
Submitted byoretnom23on Fri, 12/18/2020 - 08:24

In reply to by sara0 (not verified)

Can you give a detailed information about the error? Because the source code works fine with me.

Submitted byYsfshdjdksd (not verified)on Thu, 01/07/2021 - 17:24

Does this project contain any trigger or store procedure in it...if yes do mention it pls
Submitted byPronto (not verified)on Wed, 02/03/2021 - 07:03

Everything works fine..but what about a user who wats to just track a room for that
Submitted byvsnair (not verified)on Tue, 02/16/2021 - 03:34

Can you please guide me if need to create a signup for customers. Customer needs to track the parcel and book a parcel?
Submitted byKhightFox (not verified)on Thu, 03/04/2021 - 10:34

The system works fine on XAMPP, but i try to upload to Cpanel, it's not working properly. It's start direct to homepage. it's suppose to be start from Login page. I click "Manage Account", An Error Occured popup. Can you fix it? Please..
Submitted byTina Joseph (not verified)on Fri, 04/23/2021 - 19:15

Hey! Can you please help us with how to change the password? My partner and I are working on the project, thank s a ton for the code. We are getting a disclaimer when we run it from Chrome. please help us to resolve this issue as we have submissions coming soon.
Submitted byJosh Obatoye (not verified)on Tue, 08/10/2021 - 05:21

When i typed “http://localhost/cms/” it redirects to “http://localhost/cms/login.php, but nothing is showing....
Submitted byFuegoflx (not verified)on Fri, 08/27/2021 - 19:12

Please help the new parcel form doesn't work it just loads and nothing changes
Submitted byRomnick Roldan (not verified)on Sat, 02/03/2024 - 09:16

I can't download the source code infinite file why is that happening? Can you fix it
Submitted byAbdur Rahman (not verified)on Sat, 02/17/2024 - 18:09

Please help API integrate another webpage

Add new comment