AshalDesk ERP Setup Guide
Complete professional guide for installing, customizing, and deploying AshalDesk ERP system
ASHAL REST API Module Installation
Step-by-step guide to install the ASHAL REST API module in your UltimatePOS system
Download the Module
Obtain the ASHAL REST API module ZIP file from the official source or your provider.
Upload to UltimatePOS
Access your UltimatePOS admin panel and navigate to the modules management section.
Activate the Module
Install and activate the module to enable REST API functionality in your system.
Access UltimatePOS Admin
Log in to your UltimatePOS administration dashboard with your credentials.
Navigate to Modules Section
Go to the following path in your browser:
/manage-modules
Upload the Module
Click on “Add Module” or “Upload Module” button and select the ASHAL REST API ZIP file.
Install the Module
After successful upload, click “Install” next to the ASHAL REST API module.
Activate the Module
Wait for installation to complete, then ensure the module is activated.
Note: You may need to refresh the page after installation to see the module in the installed modules list.
Common Issues & Solutions
Module upload fails
Problem: The module ZIP file fails to upload or gives an error.
Solution: Ensure the file is not corrupted and is the correct version for your UltimatePOS. Check file permissions on the server.
Module installation fails
Problem: The module installation process fails with an error message.
Solution: Check server error logs for details. Ensure your UltimatePOS version is compatible with the module.
Module not appearing after installation
Problem: The module doesn’t appear in the modules list after installation.
Solution: Clear your browser cache and refresh the page. Check if the module files were correctly extracted to the modules directory.
API Client Configuration
Create and configure API client to connect AshalDesk with your UltimatePOS system
Access Client Management
After successful module installation, navigate to:
/connector/client
Create New Client
Click on “Add New Client” or “Create New Client” button.
Configure Client Details
Fill in the required information such as client name. You can leave other fields with default settings.
Save Client Configuration
Click “Save” to create the API client.
Retrieve Credentials
After saving, you will receive Client ID and Client Secret.
Keep these credentials secure as you’ll need them for AshalDesk configuration.
Security Warning: Never share your Client ID and Client Secret with anyone. These are the keys to access your system.
Common Issues & Solutions
Client creation fails
Problem: Unable to create a new API client or getting an error.
Solution: Ensure the ASHAL REST API module is properly installed and activated. Check server logs for detailed error information.
Client credentials not generated
Problem: After creating a client, ID and Secret are not displayed.
Solution: Check if the client was actually created in the clients list. Some systems require you to generate credentials separately.
API endpoints not accessible
Problem: Cannot connect to API endpoints with the generated credentials.
Solution: Verify that your server allows external API connections. Check firewall settings and ensure the API module is correctly configured.
Flutter Project Setup
Configure and customize the AshalDesk Flutter application for your business
Download Project
Get the AshalDesk Flutter project from the official repository or your provider.
Configure API Settings
Update API endpoints and credentials to connect with your UltimatePOS system.
Install Dependencies
Download and install all required Flutter packages and dependencies.
Open the Project
Extract the AshalDesk project and open it in your preferred code editor (VS Code recommended).
Update API Endpoints
Navigate to the file:
lib/api_end_points.dart
Locate and update the base URL to your UltimatePOS domain:
static String baseUrl = 'https://your-domain.com';
Configure Client Credentials
Navigate to the file:
lib/config.dart
Update with your Client ID and Client Secret:
String clientId = 'your-client-id',
clientSecret = 'your-client-secret';
Install Dependencies
Open terminal in the project directory and run:
flutter pub get
This command will download and install all required packages.
Test the Connection
Run the application to verify it can connect to your UltimatePOS system:
flutter run
Common Issues & Solutions
Dependencies resolution fails
Problem: ‘flutter pub get’ command fails with dependency errors.
Solution: Check your Flutter version compatibility. Try ‘flutter pub upgrade’ or check pubspec.yaml for version conflicts.
API connection errors
Problem: Application cannot connect to the API endpoints.
Solution: Verify baseUrl is correct and accessible. Check if Client ID and Secret are valid. Ensure CORS is configured on the server.
Build fails on specific platform
Problem: Project builds for one platform but fails for another.
Solution: Ensure you have the necessary platform-specific dependencies installed. Run ‘flutter doctor’ to check your setup.
Application Customization
Personalize your AshalDesk application with custom branding and features
Update App Display Name
Navigate to the file:
pubspec.yaml
Update the name and description fields:
name: your_app_name
description: Your Custom ERP Application
Update Android App Name
Navigate to:
android/app/src/main/AndroidManifest.xml
Update the android:label attribute:
<application
android:label="Your App Name"
...
>
Update iOS App Name
Navigate to:
ios/Runner/Info.plist
Update the CFBundleName value:
<key>CFBundleName</key>
<string>Your App Name</string>
Prepare App Icons
Create app icons in various sizes. Recommended tools:
Use a high-resolution image (at least 1024×1024 pixels) as your source.
Replace Android Icons
Replace icon files in the folder:
android/app/src/main/res
Replace all mipmap-* directories with your custom icons.
Replace iOS Icons
Replace icon files in the folder:
ios/Runner/Assets.xcassets/AppIcon.appiconset
Replace Desktop Icons
For Windows, replace icons in:
windows/runner/resources
For Linux and macOS, replace corresponding icon files in their respective directories.
Update Color Scheme
Navigate to the theme configuration file (usually in lib/theme/ or similar):
lib/theme/app_theme.dart
Update primary and secondary colors to match your branding.
Customize UI Components
Modify UI components in the lib/widgets/ directory to match your desired look and feel.
Update Splash Screen
Customize the splash screen by updating files in:
android/app/src/main/res/drawable/
and corresponding directories for other platforms.
Common Issues & Solutions
Icons not updating
Problem: Custom icons don’t appear after replacement.
Solution: Run ‘flutter clean’ then rebuild. Ensure all icon sizes are provided. On Android, check the AndroidManifest.xml icon reference.
App name not changing
Problem: App name remains the same after configuration changes.
Solution: Ensure you’ve updated all platform-specific configuration files. Uninstall the app completely before reinstalling.
Theme changes not reflecting
Problem: Color and styling changes don’t appear in the app.
Solution: Check if you’re modifying the correct theme file. Ensure the theme is properly applied in main.dart. Hot restart the app after changes.
Building & Distribution
Build, package and distribute your AshalDesk application across different platforms
Desktop Builds
Create executable applications for Windows, Linux and macOS platforms.
Mobile Builds
Generate APK and IPA files for Android and iOS devices.
Packaging
Create installers and distribution packages for easy deployment.
Run in Development Mode
Test your application in development mode:
flutter run -d windows
Replace ‘windows’ with ‘linux’ or ‘macos’ for other platforms.
Build Debug Version
Create a debug build for testing:
flutter build windows --debug
Build Release Version
Create a production-ready release build:
flutter build windows --release
The executable files will be generated in:
build/windows/runner/Release
Create Distribution Package
Copy the entire Release folder for distribution, or create an installer using tools like:
- Inno Setup – Free installer creation for Windows
- NSIS – Open-source scriptable install system
- WiX Toolset – XML-based Windows installer creation
Optimize Executable Size
Use UPX to compress the executable file:
upx --best your_app_name.exe
Pro Tip: For production deployment, consider code signing your application to avoid security warnings.
Common Issues & Solutions
Build fails for specific platform
Problem: Building works for one platform but fails for another.
Solution: Ensure you have the necessary platform-specific build tools installed. Run ‘flutter doctor’ to check your environment.
Large executable size
Problem: The built application is excessively large.
Solution: Use ‘–split-debug-info’ flag to reduce size. Remove unused dependencies. Consider using UPX compression.
Application crashes on startup
Problem: The built application crashes immediately when launched.
Solution: Check if all required DLLs are included. Verify that the API endpoints are accessible from the target environment.
Useful Flutter Commands
# Clean the project and remove temporary files
flutter clean
# Get information about dependencies
flutter pub deps
# Upgrade dependencies
flutter pub upgrade
# Analyze the project for potential issues
flutter analyze
# Run tests
flutter test
# Build web version
flutter build web
# Build Android APK
flutter build apk --release
# Build Android App Bundle
flutter build appbundle --release
# Build iOS (requires macOS)
flutter build ios --release