saksh-wallet Package Features
User Management
- Set Admin: Designate a user as an admin.
- Set Limit: Configure wallet limits.
- Get Balance: Retrieve the balance of a user in a specific currency.
- Get Balance Summary: Obtain a summary of a user's balance.
Transaction Management
- Credit: Add funds to a user's wallet.
- Debit: Deduct funds from a user's wallet.
- Transfer Funds: Transfer funds between users.
- Get Transaction Report: Generate a report of a user's transactions.
- Reverse Transaction: Reverse a specific transaction.
- Reverse Multiple Transactions: Reverse multiple transactions at once.
Budget Management
- Set Budget: Define a budget for a user.
- Adjust Budget: Modify an existing budget.
- Check Budget: Verify if a budget allows for a specific amount.
- Get Budget Status: Retrieve the status of a user's budget.
Recurring Payments
- Create Recurring Payment: Set up a recurring payment.
- Update Recurring Payment: Modify an existing recurring payment.
- Delete Recurring Payment: Remove a recurring payment.
- Process Due Payments: Process all due recurring payments.
Standard Reporting
- Get Monthly Transaction Report: Generate a monthly transaction report.
- Get Daily Transaction Report: Generate a daily transaction report.
- Get Yearly Transaction Report: Generate a yearly transaction report.
- Get Transactions by Category: Retrieve transactions by category.
- Get Spending Summary: Obtain a summary of spending over a period.
- Get Transaction Count: Count the number of transactions.
- Get Average Transaction Amount: Calculate the average transaction amount.
- Get Largest Transaction: Identify the largest transaction.
- Get Smallest Transaction: Identify the smallest transaction.
- Get Transactions by Payment Method: Retrieve transactions by payment method.
- Get Balance by Currency: Obtain the balance by currency.
- Get All Users Balance by Currency: Retrieve the balance of all users by currency.
- Get All Users Balance by Category: Retrieve the balance of all users by category.
- Get All Users Balance at Date: Retrieve the balance of all users at a specific date.
AI-Enhanced Reporting
- Set Gemini AI Key: Configure the Gemini AI key and initialize OpenAI.
- Generate Report Summary: Create a summary of transactions using AI.
- Handle User Query: Generate and execute a MongoDB query based on a user's query using AI.
- Generate Comprehensive Report: Produce a detailed report based on a prompt and user ID using AI.
These features make saksh-wallet
a comprehensive solution for managing wallets, transactions, budgets, recurring payments, and generating detailed reports, including AI-enhanced capabilities.
Feel free to customize this list further based on your specific implementation and use cases! If you need any more details or assistance, let me know!