E-Cartify - Modern Point of Sale and Stock Management v1.1
by Jejookit
Getting Started
Thank you for purchasing our script. If you have any questions that are beyond the scope of this help file, please feel free to contact us via our jejookit@gmail.com. Thank you very much!
Introduction
E-Cartify is a comprehensive POS system crafted with Laravel and Flutter Framework. Laravel, a PHP Framework, boasts an expressive, elegant syntax, allowing you to focus on creation rather than trivial details. Meanwhile, Flutter, developed by Google, is an open-source framework for mobile app development, catering to Android and iOS platforms. E-Cartify consists of Mobile Applications & Web Panel The mobile applications for Android & iOS are built using Flutter, while the web panel is developed using Laravel.
Technologies used:- PHP Laravel
- Flutter
- Dart
- API
- HTML 5
- CSS 3
- Bootstrap
- JQUERY
- AJAX
- Clean and Responsive Design
- Built Using Bootstrap
- Totally Secure System
- RTL Support
- All features related to POS, including POS invoicing.
- Product management with barcode functionality
- Order and transaction history tracking
- Accounts or financial management for your business
- Stock-out alerts
- Customer management
- Supplier management
- Coupon management
- Multi-language support within the application.
- Multi-currency support within the application.
Security:
E-Cartify is a secure system. There are various mechanisms to secure application. These mechanisms are:
- Cross-Site Request Forgery (CSRF) Prevention
- Cross-Site Scripting (XSS) Prevention
- Password Hashing
- Avoiding SQL Injection
Requirements:
Web App
There are some requirements for E-Cartify to work on your server. These requirements are:- PHP >= 8.1
- Mysql >= 5.7
- Mod_rewrite Apache
- cURL PHP Extension
- Fileinfo PHP Extension
- Exif PHP Extension
- Mbstring PHP Extension
- Ctype PHP, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML, Zip, Fileinfo, Gd, sodium Extension
Mobile App
- Android studio
You can download android studio from here:
https://developer.android.com/studio- Flutter SDK setup (version 3.19.X Stable)
- JDK with path setup (only for vs code)
- Xcode for IPA file build
Installation
Check your PHP version before start installation. Your PHP version need to be 8.1 or a higher version.
cURL PHP extension must be enabled on your server. If you get "cURL is not available on your server! Please enable cURL to continue the installation" error during installation, you need to enable cURL on your server. You can enable it by adding extension=php_curl.dll line to your php.ini file. If you cannot access your php.ini file, please contact your server provider.
License Code
You need a license code to install the script. You can download this license code from Codecanyon. To download the license code, follow these steps:- Go to Codecanyon and login to your account.
- Go to your account and click "Downloads" section.
- Find the script and click "Download" button.
- Click "License certificate & purchase code" link and download the license code.
If you cannot find the license code, here is a direct link to download the license code: Where Is My Purchase Code?
You can follow these steps to install the web app:
1. Create a new Database with user that has all permissions.
- Go to cPanel and Click MySQL® Databases
- Create New Database
- Add New User
- Add User To Database
- Set User Permissions
2. Upload script files to your hosting (FTP).
-
Open your cPanel and go to File Manager section.
-
Go to main directory of your site. Most of the time this folder will be "public_html".

-
Open this folder and upload codecanyon-.zip file to this folder.
-
Rigth click the .zip file and select Extract option.
-
Move all files that in the "ecartify-v.." folder to main directory.
-
Make sure that the .htaccess file exists in this directory. If you cannot see it, click Settings button at the top right corner and select Show Hidden Files (dotfiles) option. Also, cPanel can automatically change the content of this file. Please open this file and make sure the content of this file is like .htaccess below.
If you are using NGINX server, .htaccess will not work on your server. In this case, you need to make these settings in your server: NGINX configuration for Laravel
Also, our script does not start from the "public" folder. So you should not add '/public' to your root variable in the server configuration file.
4. Enter your license code and then click Next.
5. You will see this page after entering your license code. Click Get Started.
6. Check system requirements. If one of these extensions is not enabled, you must enable it from your server settings. If all requirements are provided, click Next.
7. Enter your database credentials. Click next.

If you want to change your database credentials later, you can edit the .env file.

Fill for the admin user information and click Next.
9. You will see this page after installation. Click Go to Admin Panel.

10. After the installation, if you see "page login".

If you completed the installation successfully, please make your SSL settings.
You can follow these steps to install the Flutter app:
- Windows: https://docs.flutter.dev/get-started/install/windows
- Mac: https://docs.flutter.dev/get-started/install/macos
- Linux: https://docs.flutter.dev/get-started/install/linux
1. Open the project in your IDE (Android Studio or VS Code).
2. Open the terminal and run the following command:
flutter pub get3. If you want to change the API URL, you can change it in the lib/util/app_constant.dart file.
static const String baseUrl = 'change_your_api_url_here';4. Run the project in your emulator or physical device.
5. If you want to build the APK file, run the following command:
flutter build apk6. If you want to build the IPA file, run the following command:
flutter build ios7. If you want to change the color, you can change it in the lib/util/color_resources.dart file.
8. If you want to change the app icon, you can change it in the android/app/src/main/res/mipmap folder. You can generate your app icon from https://icon.kitchen website.
9. If you want to change the app name, you can change it in the android/app/src/main/AndroidManifest.xml file.
10. If you want to change the app package name, you can change it in the android/app/src/main/AndroidManifest.xml file.
Local server (not mandatory)
If you want to run the admin panel in your local machine, you need to install a local server. You can use XAMPP, WAMP, MAMP or LAMP for this purpose.
File Upload Settings
If you want to upload large files, you may need to make some settings on your server. Also, E-Cartify performs image optimization while uploading images. This optimization uses memory.If you try to upload large files without doing some settings on your server, you can get an error.
If you can't upload large files, you need to set these PHP values. These are recommended minimum values.
php_value upload_max_filesize 32M
php_value post_max_size 32M
php_value memory_limit 256M
With these settings, you can only upload files up to 32 MB in size. If you want to upload larger files, you need to increase the "32M" value.
If you think your upload will take more than 30 seconds, you can increase the max_execution_time value also.
If you cannot upload large files after making these settings, you may need to increase client_max_body_size value in your server.
- Go to your cPanel and click "Select PHP Version"

- Then click "Switch to PHP Options"

- Then set the values "upload_max_filesize", "post_max_size" and "memory_limit" as you see in the picture.

If you can not reach these settings, please contact your hosting provider and ask them to make these settings.
Customization
✓ Add New Local Language
- Go to /assets/language and press right button on language folder and create new file and name it with your language code (.json). For example if your language is Bengali then you have to named your file as bn.json. You have to name it with proper and valid language code otherwise app won’t work. For getting language and country code you can visit this url: https://docs.oracle.com/cd/E13214_01/wli/docs92/xref/xqisocodes.html
- Copy all data from en.json and paste it in your created file.
- Translate all English text placed here after colon(:) to your local language. There texts are in key-value formatted. You have to translate value only not key otherwise it won’t work. For example: “home”: “Home” -> “home”: “বাড়ি”
- Add your country picture on /assets/image folder.
- Open /lib/util/app_constrants.dart, scroll down to bottom and add one more LanguageModel under languages array with your imageUrl, languageName, countryCode and languageCode. Again must remember that your language code and country code should valid otherwise app won’t work. In image url field you have to put your image path as assets/image/added_country_picture_name.extension. For example if your added country picture name is italian.png then path will be assets/image/italian.png.
✓ Change App Color
-
Open
file and set primary, accent and etc. colours for light theme./lib/theme/light_theme.dart -
In the same way open
file and set preferred primary, accent and etc. color for dark theme./lib/theme/dark_theme.dart
✓ Change App Font
- Download you preferred font from internet. Google has many free font you can check them: https://fonts.google.com
-
Unzip fonts and paste it them to
folder./assets/font/ -
Mentioned them in
file like: fonts:/pubspec.yaml -
family:
YOUR_FONT_FAMILY_NAME fonts:
asset: assets/font/YOUR_FONT_FILE_NAME.ttf weight: YOUR_FONT_WEIGHT
-
family:
-
Replace font family name in
,/lib/theme/light_theme.dart and/lib/theme/dark_theme.dart file./lib/util/styles.dart
App build & release
Build for Android
For debug build you can run command:
flutter build apkYou will get a larger merged apk with this. But you can split them with this command:
flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
Build file location: /build/app/outputs/flutter-apk/ For deploying it please follow this documentation:
Build for iOS
For debug build you can run command:
flutter build iosFor release build you can run command:
flutter build ios --releaseBuild file location: /build/ios/ For deploying it please follow this documentation:
Update Guide
Admin Panel
- Download the latest version of the script from Codecanyon.
- Extract the downloaded file.
- Upload all files to your server using FTP. Make sure you replace all files except the storage folder.
- If you have customized the script, you should be careful while replacing the files. You can lose your customization.
- After uploading all files, go to your admin panel and check if the version is updated.
- If you see the updated version, you have successfully updated the script.
- If you see any error, please contact us.
Mobile App
- Download the latest version of the script from Codecanyon.
- Extract the downloaded file.
- Open the project in your IDE (Android Studio or VS Code).
- Open the terminal and run the following command:
flutter pub get- Run the project in your emulator or physical device.
- If you want to build the APK file, run the following command:
flutter build apk- If you want to build the IPA file, run the following command:
flutter build iosUpdate after Customisation
If you customized something on the code and want to update to our latest version follow any option given below:
First, push your code on a git branch. Then download our project code from codecanyon and push it to another branch. And at last merge both branches, which might lead to conflicts. Resolve them carefully.
We provide changed files directory-wise with every update. You have to replace them with your code. Remember that it may conflict with your customization. If you customize something on a file and we change something on the same file, then merge those codes carefully.
Download updated files from codecanyon and do your customization again.