Developer Documentation
DigiKash - Secure Payments & Advanced Merchant Gateway
Welcome to the official developer documentation for DigiKash — a secure, scalable, and multi-functional wallet solution designed for individuals, businesses, and merchants. This guide will help you integrate, extend, and interact with DigiKash's API and merchant tools.
- Version: 1.0.0
- License: Extended / Regular
- Author: Coevs
- Created: May 2025
If you need support beyond this documentation, please reach out to us at contact.coevs@gmail.com.
Overview
DigiKash is a secure and robust wallet platform with built-in merchant gateway functionality. Designed for flexibility and scalability, it supports a wide range of financial transactions and third-party integrations.
- Multi-Wallet System: Users can manage multiple wallets with different currencies.
- Secure Transactions: Supports deposits, withdrawals, send, and request operations with full logging and protection.
- Merchant Gateway API: External sites can accept payments through DigiKash using API integration.
- Advanced Notification System: Real-time email, push, and SMS alerts for transactional and system events.
- Webhook Support: Enables real-time status updates to merchant-integrated third-party sites when payments are made via DigiKash.
- Role-Based Access: Separate admin, user, and merchant panels with granular permissions.
- Developer-Friendly: Built on Laravel 11 with well-documented APIs and event-driven logic.
Server Requirements
DigiKash is a Laravel-based secure wallet and merchant gateway solution. Please ensure your hosting meets the following minimum requirements for smooth and full-featured operation.
Minimum Software Requirements
- PHP Version: 8.3 or higher
- Database: MySQL 8.0+ or MariaDB 10.3+
- Web Server: Apache or Nginx with
mod_rewrite
support - HTTPS: SSL certificate must be enabled
Required PHP Extensions
openssl
,pdo
,tokenizer
,xml
,json
,fileinfo
,mbstring
,curl
,bcmath
,ctype
allow_url_fopen
must be enabled
Writable Directories
storage/
— writable (775 or 777)bootstrap/cache/
— writable (775 or 777)
Laravel Features Required
- Queue Worker: Must be running to send emails, push notifications, and handle real-time events.
php artisan queue:work --daemon
(should run in background)- If you're using cPanel, refer to Installation Guide → Step 6
Mail Configuration
- Manage SMTP settings via:
/admin/settings/site → Mail Settings
- Supports Gmail SMTP and custom SMTP providers
Public URLs
- User Login:
https://yourdomain.com/login
- User Registration:
https://yourdomain.com/register
Installation Guide (cPanel)
This section guides you to install DigiKash on a shared hosting environment using cPanel. All required vendor and compiled files are pre-included.
1. Upload the Script
- Login to your cPanel and open the File Manager.
- Navigate to
public_html/
or your domain root. - Click Upload and select the
core.zip
file. - After upload, extract the ZIP. You should see folders like
app/
,public/
,routes/
, etc.
2. Create a Database
- Go to MySQL® Databases in cPanel.
- Create a new database and user, then assign the user to the database with ALL PRIVILEGES.
- Go to phpMyAdmin and import the SQL file from
/core/DB/digikash.sql
.
3. Configure Environment Variables
- Edit
.env
with your domain and database credentials:
APP_URL=https://yourdomain.com/public
DB_HOST=localhost
DB_DATABASE=your_db
DB_USERNAME=your_user
DB_PASSWORD=your_pass
4. Set Folder Permissions
chmod -R 775 storage
chmod -R 775 bootstrap/cache
5. Clear Laravel Cache
If you face a blank page or error, run this:
php artisan optimize:clear
6. Run the Queue Worker (Required)
⚙️ Option 1: Add a Cron Job in cPanel
* * * * * cd /home/your_user/public_html && php artisan queue:work --timeout=60 --tries=3 >> /dev/null 2>&1
⚙️ Option 2: Run manually via SSH (if allowed)
php artisan queue:work --daemon
7. Set Maintenance/Production Mode
- Go to Admin Panel → Site Settings → Maintenance Mode.
- ✅ Before changing any mode: First verify that all core features (login, registration, transactions, notifications, API, etc.) are working properly.
- Set
Site Environment
to Production only after confirming everything functions correctly. - Turn off Development Mode to improve performance, hide debug data, and enable full system security optimizations.
8. Access the Website
- Frontend:
https://yourdomain.com
- User Login:
/login
| Register:/register
- Admin Panel:
/admin
- Default Admin Login:
admin@coevs.com
/12345678
⚠️ After installation: change the admin password, configure mail under Site Settings → Mail
, ensure queue worker is active, and disable development mode.
Folder Structure
DigiKash follows Laravel's standard folder structure, enhanced with clean modular separation for scalability, payments, and UI components.
Core Folders
app/
— All core logic, services, jobs, events, and business features.Http/Controllers
— Route-facing controller logicHttp/Middleware
— Custom middlewaresHttp/Requests
— Form request validationsModels
— Eloquent model classesEnums
— Enum-based constants for status, types, etc.Observers
— Model event handlersPayment/
— Structured by gateway:Stripe, PayPal, Mollie, etc.
Services
— Reusable service classes like currency converters, user rank, etc.Notifications
— System notifications (mail, SMS, push)Mail
— Custom mailable classes
routes/
— Web and API route filesresources/views
— Blade views structured bybackend
,frontend
,components
, andemails
resources/lang
— Localization stringsresources/structure/page_component
— Dynamic page component definitionsconfig/
— All app-level configuration filespublic/
— Public assets and entry point (index.php
)database/
— Migrations, factories, seedersstorage/
— Logs, cached views, file uploadsvendor/
— Composer dependencies
Helpful Files
.env
— App-specific environment configcomposer.json
— PHP dependenciesartisan
— Laravel CLI entry pointREADME.md
— (Optional) installation or changelog info
Admin Auth
This section explains how administrators can log in to the DigiKash backend panel securely.
Login URL
- Admin Panel URL:
https://yourdomain.com/admin/login
Default Credentials
- Email:
admin@coevs.com
- Password:
12345678

⚠️ Make sure to change the default password immediately after logging in. For additional security, set up Two-Factor Authentication under settings.
User Login
End users and merchants can log in to their DigiKash wallet accounts using their email or username and password. The login form is designed to be clean, fast, and secure.
Login Process
- Credential Fields: Users must enter their registered email or username and password.
- Password Visibility Toggle: Users can toggle password visibility for better usability.
- Remember Me: Allows persistent sessions on trusted devices.
- Forgot Password: Sends a password reset link to the registered email.
- Sign Up: Redirects new users to the registration page.

Login URL
- URL:
https://yourdomain.com/login
- This login page is used for both regular users and merchant accounts.
🔐 Always recommend enabling 2FA for added security. Admins can enforce this via user profile control.
Admin Dashboard
The DigiKash Admin Dashboard provides a real-time overview of the system’s performance and activity. It’s designed for administrators to quickly monitor user engagement, financial transactions, and growth trends.
Dashboard Overview
Here's a breakdown of the dashboard components you’ll see immediately after login:
- User Widgets: Show stats like Total Users, Active Users, Verified/Unverified Users, and Merchants.
- Transaction Widgets: Present summary amounts for Deposit, Send, Withdraw, Exchange, Reward, and Voucher actions.
- Transaction Summary Chart: Graph showing trends for Deposits, Withdrawals, Payments, and Rewards.
- Wallet Summary: Displays the balances of different wallet types (USD, EUR, USDT, etc.) and the number of users for each.
- Daily Fee Earnings: Bar chart visualizing fee revenue growth per day.
- Wallet Growth Chart: Displays how many new wallets are created daily.
- Latest Transactions: Table showing recent user activities such as deposits and transfers.
- Latest Registered Users: Lists the newest users with status badges and registration info.

User Management
Admins can manage all user accounts, roles, verification statuses, and permissions directly from the user list panel. The system supports powerful filters and real-time activity data to streamline user operations.
User List Overview
This table view provides a searchable and filterable list of all platform users. Admins can sort by role, KYC status, and email status. Each entry includes:
- Name & Username: Full name with unique system handle.
- Email & Verification Status: Shows whether the email is verified or unverified.
- KYC Info: Document type and approval status.
- Joined At / Last Login: Tracks registration and login times.
- Manage Action: Direct access to view and manage user details.

User Manage Panel
When clicking Manage on any user row, admins can access a detailed breakdown of that user’s information:
- Wallet Overview: List of all wallets and balances for the user.
- Transaction Stats: Summarized amounts for deposit, send, withdraw, payment, etc.
- Transaction Graph: Visual report showing user’s recent activity.
- Tabs: Includes Info, Transactions, Referrals, Merchants (if applicable), and Activity Log.
- User Access & Permissions: Enable or disable actions like send, withdraw, deposit, exchange, request.
- Status Controls: Quickly toggle email verification, KYC verification, or disable account access.

ℹ️ You can access this section by navigating to Admin Sidebar → Users → All Users and clicking the Manage button.
Merchant Management
This section allows the admin to manage merchant account requests and review their profile before approval.
Merchant List
Admins can view a list of submitted merchant applications with filters by status and search functionality. Each merchant row shows:
- Merchant Info: Logo, name, and website URL.
- User: The associated user and merchant ID.
- Status: Shows if the request is
APPROVED
,PENDING
, orREJECTED
. - Time: Submitted date and how long ago.
- Action: View details or review the request.

Review Request Modal
When the admin clicks the "Review Request" button, a modal appears containing full merchant information and options to approve or reject the application.
- Profile Info: Displays business name, website, currency, and description.
- Transaction Fee: Admin can set a fixed transaction percentage for the merchant.
- Rejection Reason: Optional textarea for providing rejection feedback.
- Actions: Green
Approve
and redReject
buttons.

KYC Management
The KYC (Know Your Customer) module allows administrators to manage identity verification for both users and merchants. It includes submission handling, approval workflows, and customizable KYC templates.
KYC List
The KYC List section provides a searchable and filterable table showing all submitted KYC requests. Each row includes the user's name, email, KYC type (e.g., NID, Passport), user type (user/merchant), and the submitted timestamp. Admins can click View to review submitted documents and take action.
KYC Templates
This section lets admins define different KYC types for different roles. For example, NID Verify for users, and Passport Verify for both users and merchants. Each template includes a title, description, applicable roles, and status control.

Awaiting KYC
Pending KYC requests appear in this section. Admins can review, approve, or reject requests using the Review Request button. The review modal includes full user information, uploaded document previews, and action options.

🔍 You can access all KYC functionality from Sidebar → KYC Management, including List, Awaiting Requests, and Template Management.
Notification Management
DigiKash provides a dynamic notification system that allows you to manage multi-channel alerts (Email, Push, SMS) for both admin and user activities.
Template Overview
- Title & Role Tag: Identifies the notification purpose and whether it's triggered for Admin/User.
- Channel Status: Enables or disables the delivery of that message through Email, Push, or SMS.
- Variables: Lists placeholders like
{user}
,{amount}
for message customization. - Manage Action: Lets you configure each template’s content and delivery options.

Editing Notification Content
When clicking the Manage button on a template, you can configure individual content for each channel (Email, Push, SMS).
- Subject: Editable only for Email channel.
- Message: Use supported shortcodes to personalize the message content.
- Activation: Toggle switch to enable or disable channel delivery.
System Integration
Each notification template is automatically triggered based on system events like:
- KYC Submission / Approval / Rejection
- Deposit Activities (Auto/Manual/Approval)
- Withdrawal, Exchange, Reward, and more
Currency Management
DigiKash supports a multi-currency system that allows admins to manage both fiat and crypto currencies with transaction role configuration, limits, fees, and exchange rate options.
Currency Overview
- Info: Displays currency name, code, type (FIAT or CRYPTO), and symbol.
- Type & Rate: Admin can define conversion rates manually or enable live rate mode if supported.
- Role: Assigns allowed transaction roles such as SEND, REQUEST, EXCHANGE, PAYMENT, etc.
- Status: Activate or deactivate currency visibility in the system.
- Default: One currency can be marked as default for newly registered user wallets.

Editing Currency
By clicking the Manage button on any currency, you will access a detailed form where you can edit exchange settings, status, default flag, and role-specific configurations.
- Currency Type: Choose between
FIAT
andCRYPTO
. - Conversion Rate: Set manual rate or toggle live mode (requires external rate provider setup).
- Transaction Roles: Each role (SEND, PAYMENT, etc.) has its own Fee, Min/Max amount, and status toggle.
- Symbol & Name: Used throughout the frontend and user wallets.

Role & Fee Control
Each currency supports multiple transaction roles with individual configurations:
- Status: Toggle role activation for this currency.
- Fee: Define fixed or percentage-based transaction fees.
- Limit: Control minimum and maximum transaction amounts per role.
System Integration
Currency settings directly affect wallet operations, exchange flows, deposit/withdraw limits, and API responses. System automatically enforces fee and limit logic based on assigned roles.
- Default currency is used when generating user wallets upon registration.
- Exchange logic fetches currency-to-currency rate using defined values.
- Disabled currencies are hidden from user wallet creation and exchange modules.
Payment Gateway Management
This section lets you configure all available payment gateways to support deposits and withdrawals across multiple currencies and methods.
Gateway Overview
- Logo & Name: Easily identifies the gateway (e.g., PayPal, Stripe).
- Supported Currencies: Displays which currencies are supported, including fiat and crypto.
- Withdraw Available: Shows if this gateway supports withdrawal flows.
- Status: Indicates whether the gateway is currently enabled.
- Action: Use the Manage button to configure API credentials and webhook settings.

Gateway Configuration Panel
Each gateway has its own API credential requirements. The system supports dynamic input fields depending on the selected gateway. You will typically find:
- Gateway Name: Displayed at the top of the form.
- Credential Fields: Dynamically rendered inputs such as:
- Client ID / Secret
- API Key / App ID
- Merchant ID / Project Key
- Webhook URL: Auto-generated, read-only field specific to each gateway.
- Mode: Allows toggling between
live
andtest/sandbox
environments. - Status Toggle: Enable or disable the gateway without deleting credentials.
Webhook Usage
For gateways that support automatic callbacks, DigiKash generates a secure Webhook URL. This URL should be copied into your gateway dashboard to receive real-time payment status updates.
Deposit Management
The DigiKash deposit module allows users to fund their wallets via multiple methods—both automatic and manual—while providing a full admin interface to review, approve, or reject requests.
Deposit Method Types
- Automatic Methods: Gateway-based integrations (e.g., PayPal, Stripe, Mollie, etc.) where payments are validated automatically via API or IPN/Webhook.
- Manual Methods: Users manually input transaction reference and payment details, then submit for admin review and approval.

Manual Deposit Requests
Users submit deposit requests with proof of payment. Admins can:
- Review deposit amount, method, transaction ID, and sender info
- Approve or reject the request with optional remarks

Automatic Deposit Configuration
Admins can create or update automated gateway deposit methods by:
- Selecting a configured gateway (e.g., PayPal)
- Defining supported currency, conversion rate, min/max deposit
- Setting charge percentage and method status
Custom Fields (Manual)
Manual methods allow field customization like TX Hash, Sender ID, Notes, etc. Useful for crypto deposits or mobile transfers.
Deposit Logs
Admins can track all deposits from users with full filtering options (date, method type, currency, etc.).
- Status tags: Pending, Completed
- Fee summary and method reference shown inline

Access Location
Withdraw Management
The withdraw module in DigiKash provides a streamlined and secure system to manage manual and automatic withdrawal methods, including scheduled payouts and full transactional history.
Manual Withdraw Requests
Admins can view all pending manual withdrawal requests from users. Each request shows the transaction ID, amount, fee, method, time, and user details. Review, approve, or reject with optional remarks.

Automatic Withdraw Methods
Configure gateways for automatic withdrawals such as PayPal, Stripe, or Crypto. Each method can be enabled with min/max limits, static or live rate, and associated fees.

Manual Withdraw Methods
Create custom methods like bank transfers. Add instructions, fee details, and required fields (e.g., bank name, account number).

Scheduled Withdrawals
Automate withdrawal processing by enabling specific days of the week for payout execution.

Withdraw History
View all withdrawal transactions with statuses like pending, completed, or rejected. Filters allow date and status-based sorting.

Navigation Tip
Referral Management
DigiKash allows you to set up and manage multi-level referral reward systems for both deposit and payment activities. You can define tiered reward levels and toggle them on or off globally.
Reward Structure
- Deposit Rewards: Earned when a referred user deposits funds. Rewards are tiered by level (e.g., 10% for Level 1).
- Payment Rewards: Earned when a referred user makes a payment. Tiered by referral level similarly.
- Level: The hierarchy of referrals (Level 1 = direct, Level 2 = indirect, etc.).
- Reward %: The percentage of transaction value shared as a referral reward.
- Toggle Switch: Enable or disable rewards globally per reward type.

Editing and Managing
You can add or modify referral reward levels using the buttons provided:
- Edit (✏️): Opens a modal to update the reward percentage for a given level.
- Delete (🗑️): Permanently removes that reward level from the program.
- Add New: Allows you to define a new referral level and reward value.
Use Case Example
<!-- Referral Example -->
User A refers User B
User B deposits $100 → User A (Level 1) gets 10% → $10
User B refers User C
User C pays $200 → User B (Level 1) gets 10% → $20
User A (Level 2) gets 2% → $4
User Ranking Management
DigiKash features a tier-based User Ranking system that enables role-specific rewards and access control based on users’ total transaction volume. Admins can manage how users move up ranks and what each rank offers.
Rank Structure Overview
- Transaction Amount: Minimum amount a user must transact to qualify for the rank.
- Rank Reward: Bonus (in USD or other units) awarded when reaching this rank.
- Transaction Types Allowed: Each rank can restrict or allow specific actions like Deposit, Payment, Send Money, Referral Reward, etc.
- Max Wallets: Limits how many wallets a user in this rank can create.
- Max Referral Level: Determines how deep this user can earn from their referral network.
- Status Toggle: Enables or disables the rank.

Creating or Editing a Rank
Click the Add New button or Manage an existing rank to update the configuration.
- Icon Upload: Add a custom visual identifier per rank.
- Name & Description: Provide context and rank-specific messaging.
- Transaction/Reward Inputs: Numeric fields to set thresholds and benefits.
- Allowed Transaction Types: Toggle permissions by feature.
- Status: Use the switch to activate or deactivate a rank at any time.
Use Case Example
User A has total transactions: $550
→ User qualifies for "Silver" rank
→ Gets 10 USD as reward
→ Gains access to Send Money + Referral Reward
Transaction History
DigiKash provides a comprehensive transaction ledger where admins can monitor all user financial activities—such as deposits, withdrawals, exchanges, requests, and voucher operations—in a unified view.
Transaction Table Overview
- User | TXN ID: Displays the user’s name and the unique transaction reference ID.
- Amount | Type: Shows the credited/debited amount with corresponding transaction type (Deposit, Withdraw, Exchange, etc.).
- Description | Provider: Indicates the operation details and provider used (e.g., Bank, Wallet, System).
- Status: Indicates if the transaction is
Completed
,Pending
, orCancelled
. - Time: Records the date and time when the transaction was initiated.

Filter & Search Options
- Date Range: Filter transactions by specific date periods.
- Transaction Type: Narrow results by action types such as Withdraw, Deposit, Exchange, etc.
- Status Filter: View transactions based on status (Completed, Pending, Cancelled).
- Search Box: Search by user name, transaction ID, or keywords.
Use Case Example
User A withdraws $100 via Bank Transfer
→ Admin sees:
- TXN ID: TXNNPMIOR9EROWT
- Type: Withdraw
- Amount: 100 USD
- Fee: $25
- Status: Pending
Support Ticket System
DigiKash includes a fully-featured support ticket system to streamline user queries, complaints, or service requests. Tickets can be filtered by status and assigned to categories for proper resolution tracking.
Ticket Workflow
- Pending Ticket: New requests submitted by users awaiting initial admin response.
- In Progress Ticket: Tickets currently being handled by support/admin team.
- Close Ticket: Resolved requests archived for future reference.
- All Ticket: Central place to view tickets across all statuses.

Ticket Details View
Clicking Support Now opens the ticket conversation. The support admin can reply, attach files, and track ticket history.
- Ticket ID: Unique identifier of the issue (e.g., #ZIVWBAW).
- Priority: Visual tag to mark urgency (e.g., High, Medium, Low).
- Message Thread: Admin and user messages are grouped chronologically.
- Attach Files: Button available for adding images or documents for clarification.

Support Category Management
Administrators can define categories for tickets (e.g., Wallet, Transaction, General) from the Support Category menu to help classify and route requests efficiently.
Use Case Example
1. User submits ticket: "Deposit not reflected"
2. Ticket enters "Pending" state.
3. Admin reviews and responds, updates to "In Progress".
4. After resolving, Admin marks it "Closed".
5. Ticket remains in "All Tickets" for record keeping.
Site Settings Management
The Site Settings module lets you configure all essential aspects of your DigiKash application, including branding, security, maintenance, email, cookies, and plugin integrations, directly from an intuitive admin panel.

General Settings
- Logo, Light Logo, Small Logo: Upload logos for different theme contexts.
- Favicon & Login Banner: Set branding for browser tabs and login page.
- Site Title, Admin Prefix, Home Redirect: Define core site identity and routing.
- Timezone, Support Email/Phone: Set global timezone and contact info for notifications and system use.
- Copyright Text: Set legal/copyright footer for the application.
Security Settings
- Force HTTPS: Require secure connections (recommended for production).
- Screen Lock: Set auto-lock interval for admin/user inactivity.
- Max Upload Size: Limit file upload size globally.
- Duplicate Submission Lock: Prevents duplicate form submissions by time interval.
Maintenance Mode
- Enable/Disable Maintenance: Temporarily put the site offline with a customizable message and cover image.
- Secret Key: Used to unlock the site during maintenance mode.
- Site Environment & Development Mode: Toggle between Production and Development for debugging or updates.
Mail Settings
- Email From Name & Address: Customize sender details for outgoing emails.
- SMTP Credentials: Enter mail host, username, password, port, and encryption (TLS/SSL).
- SMTP Connection Test: Verify your email settings before saving.
Cookie Settings
- Enable Cookie Consent: Activate and customize a cookie consent banner for compliance.
- Cookie Title & Summary: Set the display message and summary for users.
- Cookie Page URL: Link to your full cookie/privacy policy.
Plugin Management
- Manage Integrations: Activate/deactivate and configure popular plugins (reCAPTCHA, Analytics, Chat, IPInfo, etc.).
- Notifications & Exchange Rates: Configure plugins for SMS, push, and currency rates.
Languages Management
DigiKash supports multi-language management, enabling you to add, edit, or remove languages and localize your platform for global audiences. Effortlessly set your default language and synchronize translation strings as your application grows.
Language List Overview
- Flag: Visual indicator for each language.
- Name & Code: Display language name and ISO code (e.g.,
en
for English). - Default: Set the default language for the application (one active at a time).
- Status: Toggle whether the language is active and available for users.
- Actions: Edit translations, configure language settings, or delete a language.

Key Features
- Add New: Easily add a new language by specifying the name, code, and uploading a flag.
- Edit Translations: Update translation strings for each language. Use the dedicated editor for consistency.
- Sync Missing Translation: Automatically detect and add missing translation keys for new features or modules.
- Activate/Deactivate: Enable or disable languages without removing them from the database.
- Delete: Remove a language entirely (except the default).
Example Use Case
<!-- Language Management Example -->
1. Add Spanish (es) as a new language.
2. Use the editor to translate all keys for the Spanish locale.
3. Sync missing translations after a system update.
4. Set Spanish as the default language if needed.
Staff Management
Manage your platform's team members, assign roles, and control their access with DigiKash's robust staff management module.
Overview
- Avatar: Each staff profile includes an avatar for easy identification.
- Info: Displays the staff member's name and email address.
- Role: Assign staff-specific roles such as Finance Manager, KYC Officer, Super Admin, or Support Executive.
- Status: Indicates whether the staff member is active.
- Actions: Manage (edit) staff information or add new staff via the "Add New" button.

Add/Edit Staff
- Avatar: Upload a profile image for the staff member.
- Staff Name & Email: Enter their name and email address.
- Password: Set or update a secure password for staff login.
- Role Selection: Assign a role from predefined options (e.g., Finance Manager, KYC Officer).
- Status: Enable or disable staff access.
- Update Staff: Save changes to staff information.
Use Case Example
<!-- Example: Adding a New KYC Officer -->
1. Click "Add New".
2. Fill in details: Name = "Jane Doe", Email = "kyc@digikash.com".
3. Select role: KYC Officer.
4. Set a secure password.
5. Toggle status to Active.
6. Click "Save" to add Jane as a new KYC Officer.
Roles & Permissions Management
Manage staff access and platform security with a robust roles and permissions system. Assign roles with precise control over features and actions available to each staff group.
Overview
- Role Assignment: Assign roles to staff for streamlined access control (e.g., Super Admin, Finance Manager, Support Executive, KYC Officer).
- Permissions: Each role has customizable permissions. Enable or disable access to features like dashboard stats, user management, merchant configs, financial modules, and more.
- Protected Roles: Core roles such as Super Admin are protected from deletion for system integrity.
- Role Actions: Roles can be edited or removed (except protected roles). Staff can only access areas and perform actions based on assigned permissions.


Managing Roles
- Add New Role: Click "Add New" to create a new role. Specify a name, description, and assign permissions by module/category.
- Edit Role: Use the "Manage" button to update permissions, description, or reassign modules for an existing role.
- Delete Role: Non-protected roles can be deleted if not required.
Best Practice Example
// Example: Creating a Finance Manager Role with Permissions
{
"role": "Finance Manager",
"permissions": {
"dashboard_stats": true,
"transactions_chart": false,
"wallet_balance": true,
"user_management": false,
"merchant_management": true,
"kyc_review": false,
"deposit_withdrawal": true
}
}
Page & Navigation Management
DigiKash provides a powerful and intuitive interface for managing site navigation, static/dynamic pages, and reusable page components. This enables you to create, organize, and optimize the site's content structure for the best user experience and SEO.
Navigation Manager
- Navigation List: View, reorder (drag & drop), activate/deactivate, and edit navigation items for your site’s main menus.
- Type & Target: Assign menu items to internal pages (e.g., Home, Blog) or custom URLs and select open behavior (same tab/new tab).
- Status & Actions: Activate/deactivate navigation entries and use Edit/Delete for management.
- Bulk Add: Use +Add New to create new menu items efficiently.

Page Manager
- Static & Dynamic Pages: List, create, and manage all pages—both static (with fixed content) and dynamic (component-based, such as Blog).
- SEO Management: Built-in SEO tools to manage titles, meta descriptions, and slugs for better search engine visibility.
- Component Count: Instantly see how many content components each page uses.
- Status & Actions: Activate/deactivate, manage, protect, or delete pages as required. Home and Blog are protected by default.
- Multi-language: Support for localized page titles and content (see Language Management).

Component Manager
- Reusable Components: Manage visual/content blocks such as Banners, Features, Services, Testimonials, Blog, etc.
- Type:
static
for fixed sections (e.g., About, Feature),dynamic
for data-driven (e.g., Blog). - Status & Actions: Enable/disable components or manage their settings.
- Protection: Some components (e.g., Blog Standard) are protected from deletion for core functionality.

Editing & Building Pages
- Add/Remove Components: Easily add, configure, and reorder blocks on any page with a simple click interface.
- Breadcrumbs & Status: Toggle page breadcrumbs for navigation trails and activate/deactivate the page in one click.
- Multi-language Support: Enter content for multiple languages in tabbed form fields.
- Live Preview: Changes reflect instantly for rapid page prototyping.

Example Use Case
1. Click "Create Page" and provide a title, slug, and status.
2. Add desired components from the list: e.g., Banner, Feature, Blog.
3. Configure each component (content, images, settings).
4. Use the SEO Manager to define meta tags.
5. Save changes—page appears in Navigation Manager if linked.
SEO Management
Manage global and per-page SEO settings to optimize DigiKash’s visibility across search engines. Easily set meta tags, descriptions, canonical URLs, robot directives, and SEO images for each page in multiple languages.
Features
- Global SEO: Set default meta tags, description, and image for the entire site. This applies to all pages unless overridden.
- Page-specific SEO: Assign unique SEO data for individual pages, including title, meta description, keywords, and canonical URL.
- Multi-language support: Configure SEO fields in multiple languages for each page.
- Robots Directive: Control how search engines index and follow your pages (e.g., Index, Follow).
- SEO Images: Upload an Open Graph image for each page to improve sharing appearance on social media.
- SEO Management UI: Add, edit, or remove SEO data with a clean, user-friendly interface.

How to Use
- Go to SEO Management from the sidebar.
- To set global SEO, click Manage SEO on the Global SEO row.
- To configure SEO for a specific page, click Add SEO or Manage SEO next to the desired page.
- Fill in the required fields:
- Meta Title: Main title shown in search results.
- Meta Description: Brief summary for search engines.
- Meta Keywords: Optional keywords for SEO (comma-separated or tags).
- Canonical URL: Preferred URL for the page to avoid duplicate content issues.
- Robots Directive: Choose Index, Follow or NoIndex, NoFollow as needed.
- SEO Image: Optional Open Graph image for rich link sharing (recommended size: 1200x630px).
- Switch between language tabs to localize SEO data as needed.
- Click Save Changes to apply.
Example
{
"meta_title": "Digikash – Secure & Fast Digital Wallet for Easy Payments",
"meta_description": "Digikash is your trusted digital wallet solution offering instant money transfers, secure online payments, and seamless transactions worldwide.",
"meta_keywords": [
"digikash",
"digital wallet",
"send money",
"receive money",
"online payment",
"fast transfer",
"secure wallet",
"wallet app"
],
"canonical_url": "https://yourdigikash.com",
"robots_directive": "Index, Follow",
"seo_image": "/assets/seo/og-digikash.png"
}
Activity Logs
The Activity Logs module provides a complete history of user and merchant login activities for DigiKash, including timestamp, IP address, location, browser, and device details. This helps administrators track platform access for security and auditing.
Key Features
- Detailed Login History: View every login event by user or merchant, including name, email, user type, and role badge.
- IP & Geolocation: Shows the IP address and country for each login, with quick IP lookup.
- Browser & Platform Info: Captures browser type and OS (e.g., Chrome, Windows, Edge).
- Date Range & Filtering: Easily filter logs by date, user type (User, Merchant, Admin), or search by name or IP.
- Relative & Absolute Time: Shows both exact login timestamps and relative time (e.g.,
13 hours ago
). - Quick Insights: Quickly identify suspicious login patterns, repeated access from the same IP, or activity from unusual locations.

Custom Style Manager
The Custom Style Manager allows administrators to inject custom CSS into DigiKash, enabling full control over the appearance of the platform without modifying core files. Custom styles override the default design and are added to the site's <head>
tag.
Key Features
- Live Custom CSS Editor: Write and edit your own CSS in a syntax-highlighted editor directly from the admin panel.
- Real-time Overrides: Changes are instantly reflected on the site once activated, making it easy to fine-tune branding and layout.
- Activation Toggle: Instantly enable or disable custom styles with a single switch—no need to remove code.
- Safe & Isolated: Custom styles are sandboxed and never affect core or update files.
<head>
. These styles will override default DigiKash styling.

Example Usage
// The Custom CSS will be added on the site head tag
.site-head-tag {
margin: 0;
padding: 0;
}
How to Use
- Go to Settings → Custom Style Manager in the admin dashboard.
- Enter your CSS rules in the editor panel.
- Toggle the Active switch to apply or disable custom styles globally.
- Click Update Now to save and apply your changes.
Best Practices
- Keep your custom CSS concise and well-commented for easy management.
- Avoid excessive overrides to prevent UI conflicts after system updates.
- Test on all major devices/browsers before activating new styles.
App Optimization & Cache Management
The Optimize App module in DigiKash provides essential tools for maintaining peak performance and resolving common issues. Admins can quickly optimize core caches and clear outdated data to ensure the platform runs smoothly.
Available Actions
-
Optimize App: Rebuilds and optimizes configuration, route, and view caches for improved speed and reliability. This action runs the equivalent of
php artisan optimize
. - Clear Cache App: Clears all cached data including configuration, route, view, and application cache. Use this to resolve issues after updates or setting changes.
How to Use
- Navigate to Optimize App from the admin sidebar menu.
- Click Optimize App to refresh and optimize the system.
- Click Clear Cache App if you experience stale data or issues after changes.
- Wait for the success notification—actions complete in seconds.
Best Practices
- Optimize the app after major updates, plugin installations, or environment changes.
- Clear cache if configuration changes do not appear immediately or if you experience UI glitches.
- Routine optimization can improve response times and reduce unexpected errors.
Profile Settings
Manage your account information, security settings, and personalize your experience using the Profile Settings panel. Update your avatar, change your password, and enable 2FA for enhanced account protection.
Accessing Profile Settings
- Click on your profile avatar (top right corner) and select Profile Settings from the dropdown.
Profile Edit
- Update your avatar, name, and email address.
- Click Update Profile to save changes.
Password Change
- Navigate to Password Change in the left menu.
- Enter your new password, confirm new password, and old password.
- Click Update Password to save.
2FA Setup
- Go to 2FA Setup in the Profile Menu.
- Scan the displayed QR code with your Google Authenticator app or enter the provided Secret Key manually.
- Enter the 6-digit verification code from the authenticator app.
- Click Enable 2FA to activate Two-Factor Authentication for your account.
Best Practices
- Always use a strong, unique password for your account.
- Enable Two-Factor Authentication (2FA) for maximum security.
- Update your contact information regularly to avoid losing access to your account.