| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Community Apps Dependencies | Show |
| Lines of code | 1697 |
| Technical Name |
ek_loan_management |
| License | OPL-1 |
| Website | https://ekika.co |
| Versions | 15.0 16.0 17.0 18.0 19.0 |
Loan Management
Manage your company's complete loan lifecycle - borrowing from banks and lending to employees or partners - entirely inside Odoo. Automatic journal entries are created at every stage: disbursement, each repayment installment, and top-ups. Choose from three repayment calculation methods, set flexible due-date rules, and close the books on every loan without touching a spreadsheet.
Key Features
-
Borrow & Lend Loan Types
-
Amortizing Loan Schedule
-
Interest-Only + Balloon Payment
-
Interest Only Fixed Rate Method
-
Auto Disbursement Journal Entry
-
Auto Repayment Journal Entries
-
Mid-Loan Top-Up & Reschedule
-
Extra Fees on Installments
-
Flexible Due Date Methods
-
Simple & Compound Interest
-
Reusable Loan Config Templates
-
Document Attachments per Loan
-
Cumulative Interest
Borrow & Lend in One Module
A single Loan Configuration record defines whether your company is borrowing (receiving funds from a bank) or lending (advancing funds to an employee or partner). Each type maps to different accounting accounts so debits and credits are always correct without manual intervention.
- Separate account mapping for borrow vs. lend
- Multiple reusable configs - one per loan product
- Loan type visible in list view for quick filtering
Reusable Loan Config Templates
Define Loan Configurations once and reuse them across every loan of the same product type. Each configuration stores the journal, currency, company, and exact accounts to debit and credit - accountants configure once, loan officers select from a dropdown.
- Payable & expense accounts for borrow loans
- Receivable & income accounts for lend loans
- Multi-company & multi-currency ready
Automatic Disbursement Journal Entry
Clicking Approve & Disburse instantly posts a balanced journal entry using the accounts from the Loan Configuration - no manual voucher creation needed. The entry references the loan partner and disbursement date so it reconciles correctly in your bank statement matching workflow.
- Entry auto-posted - no manual confirmation step
- Linked to the loan via smart button (count badge)
- Correct DR/CR for both borrow and lend scenarios
Auto-Generated Repayment Schedule
Clicking Start generates the complete repayment schedule in one click, based on your chosen calculation method, interest rate, duration, and due-date rules. Each line shows principal, interest, total payment, beginning balance, remaining balance, and cumulative interest - the full amortisation table at a glance.
- All installment lines created automatically
- Balloon payment line flagged with ending-payment marker
- Header totals (interest, payment) computed in real time
One-Click Installment Payment
For each pending installment, enter the payment date and click Generate Entry - the module posts a balanced journal entry splitting principal and interest to the correct accounts and marks the line as Paid. The loan header's Total Amount Paid updates in real time, and a smart button navigates directly to all related journal entries.
- Separate principal and interest lines in the entry
- Line state switches from Pending to Paid immediately
- Complete button unlocks when all lines are paid
All Entries Linked to the Loan
Every journal entry generated - disbursement, each repayment, and any top-up - is linked back to the loan and accessible via the Entries smart button on the loan form. This makes audit trails and period-end reconciliation straightforward without hunting through the general journal.
- Entry count badge on the smart button
- Entries filtered automatically to the open loan
- Repayment entries split principal vs. interest lines
Mid-Loan Top-Up & Rescheduling
While a loan is running, use the Modify Loan wizard to inject additional principal (top-up), recalculate the remaining schedule, and post a new disbursement entry - all in a single guided workflow. The module preserves a complete before/after snapshot in the Extra Loans tab so both schedules remain traceable.
- Top-up any running loan mid-term
- Pending installment lines updated automatically
- Old & new schedule snapshots preserved for audit
Extra Fees on Installment Lines
Add named extra charges - late payment penalties, processing fees, administration charges - to any pending installment line using the Add Fees wizard. Fees roll up into a Total Amount column and can be applied to a single line or broadcast to all remaining pending lines at once.
- Named, itemised fee lines per installment
- Add to all pending lines toggle for bulk application
- Total Fees & Total Amount auto-computed per line
Install Loan Management (ek_loan_management) from the Odoo Apps menu.
Go to Loans -> Loan Configurations and click New. Give the configuration a descriptive name (e.g. Bank Loan - Borrow), select the Loan Type (Borrow or Lend), choose the Journal, Company, and Currency. Create one configuration per loan product.
Open the Accounts tab on the Loan Configuration. For a Borrow configuration set the Loan Account (current liability), Loan Payable Account, and Interest Expense Account. For a Lend configuration set the Loan Account (current asset), Loan Receivable Account, and Interest Income Account. These accounts drive every journal entry the module creates automatically.
Navigate to Loans -> Loans and click New. Select the Loan Configuration (type, currency, and company fill automatically), then enter the Partner, Total Principal Amount, Annual Interest (%), Loan Method, Start (Disburse) Date, and Duration (Months). Choose the Due Date Calculation Method and supply the related field if required. Save - the loan is now in Draft state.
Click Approve & Disburse in the form header. The module creates and posts a disbursement journal entry automatically. The loan state advances to Disbursed. Review the entry via the Entries smart button.
Click Start on the disbursed loan. The module calculates the full repayment schedule and populates the Loan Lines tab automatically. The loan state advances to Running.
When a payment is received, enter the Payment Date on the installment line and click Generate Entry. The module posts the journal entry and marks the line Paid. Once all lines are paid, the Complete button appears - click it to close the loan and set state to Completed.
Three Loan Calculation Methods
Choose the calculation method that matches your loan product. Each method determines how principal and interest are distributed across installment lines. The method is selected on the Loan record before disbursement and cannot be changed once the loan is running.
Amortizing Loan
Equal installments; decreasing interest over time
The classic Equal Monthly Payment (EMI) method. Each installment has the same total amount, but the split between principal and interest shifts over time.
- Fixed total payment every period
- Principal portion increases each month
- Balance reaches zero on the last line
- Accrued interest handled for mid-month disbursements
Interest Only
Fixed interest payments + balloon principal at end
The borrower pays only the interest each period. The full principal is returned in a single balloon payment on the final line - automatically flagged as ending payment.
- All regular lines carry zero principal
- Final balloon line contains the full principal
- Lower periodic outflow during the loan term
- Accrued interest for gap days built in
Interest Only (Fixed Rate)
Fixed-rate interest from disbursement date + balloon
Similar to Interest Only but payment dates are anchored to day 1 of each month from the disbursement date, with precise first-line gap amount for partial-period interest on top-ups.
- Payment dates fixed to the disbursement calendar day
- Gap interest computed automatically on reschedule
- Balloon payment on the final line
- No due-date method configuration required
Due Date Calculation Methods
For Amortizing Loan and Interest Only methods, control exactly when each installment falls due using one of three rules:
| Method | How Due Dates Are Set | Extra Field Required |
|---|---|---|
| Fix Date of Every Month | Each line falls on the same day-of-month (1-28) every month | Due Day (select 1-28) |
| Last Day of Month | Each line falls on the last calendar day of its month | None |
| 30-Day Interval | Lines spaced exactly 30 days apart from the line start date | Line Start Date |
Simple vs. Compound Interest
Every loan records an Interest Type - Simple or Compound - for classification and reporting. The schedule calculation applies the annual rate divided by 12 to the outstanding monthly balance. The Total Year Days field (default 365, adjustable to 360) controls how daily accrued interest is prorated for mid-month disbursements.
Frequently Asked Questions
Can't find your question? Contact us at hello@ekika.co or open a support ticket at ekika.co/support.
Yes. Loan Management is compatible with both Odoo Community and Enterprise editions
The module ships with three methods:
- Amortizing Loan - fixed equal payments where interest decreases and principal increases each period. Best for bank loans and mortgages.
- Interest Only - periodic interest-only payments with the full principal returned as a balloon payment at the end. Best for short-term bridge facilities.
- Interest Only (Fixed Rate) - same as Interest Only but payment dates anchor to day 1 of each month from the disbursement date, with precise gap-interest handling during top-ups.
Yes. While the loan is in Running state, click Modify Loan to open the modification wizard. You can inject additional principal (top-up), enter a new disburse date, and the wizard automatically recalculates all remaining pending installment lines, posts a new disbursement journal entry, and saves a before/after snapshot in the Extra Loans tab for full traceability.
All journal entries are created and posted automatically. Three types of entries are generated:
- Disbursement entry - when you click Approve & Disburse
- Repayment entry - per installment when you click Generate Entry on a pending line
- Top-up entry - when you confirm the Modify Loan wizard
All entries are linked back to the loan and viewable via the Entries smart button.
Yes. On any pending installment line, click Add Fees to open the fee wizard. Add multiple named fee lines (e.g. Late Payment Penalty, Processing Fee) with individual amounts. Tick Add to all pending lines to apply the same fees across the entire remaining schedule in one action. Fee totals appear in the Total Fees and Total Amount columns on each line.
For Interest Only and Interest Only (Fixed Rate) methods, the schedule generates N regular interest-only lines followed by one final balloon payment line carrying the full principal. This line is flagged Ending Payment = True so you can spot it instantly. When you click Generate Entry on the balloon line, the full principal is reversed against the loan account to close it out.
Yes. Each Loan Configuration is tied to a specific Company and Currency, and every loan inherits these from its configuration. Create separate configurations for different subsidiaries or currencies so each entity books entries in its own company and currency.
Once every installment is marked Paid, the loan header's Total Amount Paid equals Total Payment Amount and the Complete button becomes visible. Clicking Complete sets the loan to Completed state. No additional journal entries are generated at completion - all accounting was booked incrementally via individual repayment entries.
Contact us:
- WhatsApp / Phone: +919510031431 - URGENT
- Email: hello@ekika.co
- Website: https://ekika.co
- Support Ticket: https://ekika.co/support
- 24 x 7 Available - Contact us NOW.
Need Help?
EKIKA Has Your Back - 24/7 Support.
We're just a message away, no matter the time zone.
90 Days Free Support
(copy link to clipboard)
(copy link to clipboard)
(copy link to clipboard)
Services EKIKA Provides
EKIKA is your destination for expert Odoo ERP implementation and customization. We pride ourselves on building reliable, trust-based partnerships that give you full transparency and control over your business processes.
With over 12 years of experience, we can assist you with eCommerce platforms, production planning, point-of-sale systems, inventory management, and advanced field worker tracking solutions to optimize your workflows.
Implementation
Odoo ERP tailored for your business needs for smooth operations.
Customization
Personalized adjustments to Odoo modules for seamless management.
Support
Ongoing assistance and maintenance to keep your Odoo running smoothly.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module