WShip - Shipment And Courier Management SystemWShip - Shipment And Courier Management System
You can easily assign freelance courier to shipments created by customers.WShip - Shipment And Courier Management System
You can easily assign freelance courier to shipments created by customers.Overview
WShip | Shipment and Courier Management System
WShip is a shipment and courier management system designed for companies. With the awesome User Interface and User Experience, you can easily keep track of your shipments, customers, couriers, payments and expenses. Also lots of other tasks that are provided with WShip app.
Wship was built using the following technologies;
- PHP
- Mysql
- Laravel
- Livewire
- Tailwind
Features
- Multi-language, unlimited languages.Authentication - Fully loaded authentication, email verification, and password reset.
-
Multi User - Admin, Branch, Courier and User dashboard pages.
-
User Profiles - Easily Customizable User, Courier and Branch Profiles.
-
View - Courier and User front end pages.
-
Dummy Data - To setup app inital data with seeders and factories.
-
Courier Tracking - Live tracking couriers and shipments via mobile apps.
-
Tracking logs are backed up Google Drive and deleted every month.
-
Model Logs - Creating, updating, deleting operations made by users, couriers and branches are saved in the database.
-
System Logs - System logs are backed up Google Drive and deleted every month.
-
Assign Couriers - Nearest courier to task sender address can be assigned to shipment. (courier should share live location.)
-
Supports push notification to mobile apps.
-
API - Ready-to-consume API for your application (Used for Courier and User ios/android apps.)
-
Payments - Easily receive shipment payments.
-
Balance Management - Manage user and courier balances.
-
Test - Courier and User unit tests.
-
Shipment Price - Shipping price is calculated automatically depending on distance(Google Maps Distance API).
Demo
- User: https://wship.wedat.org/
- User Dashboard: https://wship.wedat.org/login [email protected] password
- Courier: https://wship.wedat.org/courier
- Courier Dashboard: https://wship.wedat.org/courier/login [email protected] password
- Branch Dashboard: https://wship.wedat.org/branch/login [email protected] password
- Admin Dashboard: https://wship.wedat.org/admin/login [email protected] password
Test accounts for payment
- Credit Card for Stripe: 4242 4242 4242 4242 – Anything in the CVV and expiration date
Changelog
Version 1.0 (17/09/2021)
Version 1.1 (17/09/2021)
Features
Authentication - Fully loaded authentication, email verification, and password reset.
Multi User - Admin, Branch, Courier and User dashboard pages.
User Profiles - Easily Customizable User, Courier and Branch Profiles.
View - Courier and User front end pages.
Dummy Data - To setup app inital data with seeders and factories.
Courier Tracking - Live tracking couriers and shipments via mobile apps. Tracking logs are backed up Google Drive and deleted every month.
Model Logs - Creating, updating, deleting operations made by users, couriers and branches are saved in the database.
System Logs - System logs are backed up Google Drive and deleted every month.
Assign Couriers - Nearest courier to task sender address can be assigned to shipment. (courier should share live location.) Supports push notification to mobile apps.
API - Ready-to-consume API for your application (Used for Courier and User ios/android apps.)
Payments - Easily receive shipment payments.
Balance Management - Manage user and courier balances.
Test - Courier and User unit tests.
Requirements
PHP >= 7.3
BCMath PHP Extension
Ctype PHP Extension
Fileinfo PHP Extension
JSON PHP Extension
Mbstring PHP Extension
OpenSSL PHP Extension
PDO PHP Extension
Tokenizer PHP Extension
XML PHP Extension
Node >= 14.6
NPM >= 6.14.8
Composer
Instructions
Use Cases Scenario:
-User
-User signs in or sign up.
-User create a address, a contact. (addresses are checked by google map. If addresses invalid, they can not created.)
-User opens task creation page.
-User selects task type, delivery address(from addresses list), receiver(from contact list), courier type, payment type, and enters weight, description. So, price will be calculated automaticly(based on unit prices and address distance).
-There are four type of payment;
If payment type is from balance; shipping price will be withdrawn from the user balance.The courier balance will be increased according to the commission rate when the task is completed.
If payment type is Credit Card; user will redirect Stripe payment page and task will be created un paid status. If user payment is successful status will be paid and couriers can see the shipment, otherwise courier can not see un paid task. User can pay anytime if payment is not successful. Then, courier balance will be increased according to the commission rate when the task is completed.
If payment type is Sender Payment: Task will be created un paid status. Couriers can see this shipment. If courier accept that task, courier balance amount must be bigger than task company commission price. After couier picked task from sender address, task status will be updated to paid and company commission price will be withdrawn from the courier balance.
If payment type is Receiver Payment: Task will be created un paid status. Couriers can see this shipment. If courier accept that task, courier balance amount must be bigger than task company commission price. When the courier reaches the receiver address and delivered task, task status will be updated to paid and company commission price will be withdrawn from the courier balance.
-Finally, user must confirm when the shipment is delivered.
-User can live tracking courier and shipment status from dashboard.(Also public link is provided to receivers).
-Courier
-Courier signs in or sign up.
-Admin or branch approve courier registration. (If courier and branch city and disrict are same, branch can see courier.)
-Shipments are shown according to the location of the courier. Sender address district and courier district must be same(It can also be shown to courier, according to the specific area. Ex:In the area within 500 square meters).
-After accept task, courier will be assigned to task and can change task status.
-Courier location will be saved automatically from mobile app.
-Branch
-Branches can perform courier, user, address, iban, contact, shipment transactions.
-Courier or User districts must be in district list which the branch is responsible.
Admin
-Admin can perform courier, user, address, iban, contact, shipment, city, district, payment, rating, message, logs, unit prices and setting transactions.
Category | Scripts & Code / PHP Scripts / Management / Business |
First release | 19 September 2021 |
Last update | 19 September 2021 |
Software version | PHP 7.4, PHP 8.0 |
Files included | .php, .css, .html, .less, Javascript .js |
Tags | payment, live, tracking, manage, map, shipping, courier, shipment, branch, trasport |