Bank Reconciliation Documentation¶
Overview¶
The Bank Reconciliation module (account.bank.reconcile) links bank statement lines with accounting journal entries for reconciliation purposes. This model groups related statement and journal lines together to verify that bank records match accounting records.
Note: This model is marked as deprecated in the source code and may not be actively used in current implementations. The reconciliation functionality is primarily handled through account.statement.line and account.move.line models directly.
Model Information¶
Model Name: account.bank.reconcile
Display Name: Bank Reconciliation
Name Field: number (computed)
Key Fields: None (auto-increment ID)
Status: Deprecated (not actively used)
Features¶
- ✅ Links statement lines with journal entries
- ✅ Balance verification
- ✅ Unbalanced indicator
- ✅ Legacy reconciliation support
Key Fields Reference¶
Relationship Fields¶
| Field | Type | Description |
|---|---|---|
account_lines |
One2Many | Journal entry lines (account.move.line) |
statement_lines |
One2Many | Bank statement lines (account.statement.line) |
Computed Fields¶
| Field | Type | Description |
|---|---|---|
number |
Char | Reconciliation number: "R{id}" or "R{id}*" if unbalanced |
total_account |
Decimal | Total from journal entries (debit - credit) |
total_statement |
Decimal | Total from statement lines (received - spent) |
API Methods¶
1. Get Total (Computed)¶
Method: get_total(ids, context={})
Calculates totals from linked lines and generates number.
Returns:
{
reconcile_id: {
"total_account": 1000.00,
"total_statement": 1000.00,
"number": "R42" # or "R42*" if unbalanced
}
}
Balance Indicator: - "R42" - Balanced (totals match) - "R42*" - Unbalanced (asterisk indicates mismatch)
2. Delete Reconciliation¶
Method: delete(ids, context)
Deletes reconciliation and resets line states.
Behavior: 1. Collects all statement and journal lines 2. Sets all lines to "not_reconciled" 3. Deletes the reconciliation record
Usage Notes¶
Deprecation Notice¶
This model is deprecated. Current best practice is to use:
- account.statement.line.reconcile() method
- Direct Many2Many relationship between statement and journal lines
- account.reconcile model for payment/invoice matching
Legacy Support¶
If your system uses this model: - Balanced reconciliations have matching totals - Unbalanced reconciliations show "*" in number - Deletion clears reconciliation status on lines
Related Models¶
| Model | Relationship | Description |
|---|---|---|
account.move.line |
One2Many | Journal entry lines |
account.statement.line |
One2Many | Statement transaction lines |
account.reconcile |
Alternative | Current reconciliation model |
Migration Path¶
For systems still using this model, consider migrating to:
# Old approach (deprecated)
bank_rec_id = get_model("account.bank.reconcile").create({...})
# New approach (recommended)
# Use statement line reconcile method directly
get_model("account.statement.line").reconcile([st_line_ids])
Version History¶
Last Updated: 2025-12-16 Model Version: account_bank_reconcile.py Framework: Netforce Status: Deprecated
Additional Resources¶
- Statement Line Documentation:
account.statement.line - Journal Entry Line Documentation:
account.move.line - Account Reconcile Documentation:
account.reconcile
This documentation is generated for developer onboarding and reference purposes.