Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Localizations
  3. Indonesia Bank Statement Import (BCA/Mandiri/BRI/BNI) v 18.0
  4. Sales Conditions FAQ

Indonesia Bank Statement Import (BCA/Mandiri/BRI/BNI)

by Lema Core Technologies https://lemacore.com
Odoo

$ 19.81

v 18.0 Third Party
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Invoicing (account)
• Discuss (mail)
Lines of code 1194
Technical Name lm_bank_statement_import_id
LicenseOPL-1
Websitehttps://lemacore.com
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Invoicing (account)
• Discuss (mail)
Lines of code 1194
Technical Name lm_bank_statement_import_id
LicenseOPL-1
Websitehttps://lemacore.com
  • Description
  • Documentation
  • License
Indonesia Bank Statement Import

Lema Core Technologies

Indonesia Bank Statement Import — BCA / Mandiri / BRI / BNI

Import bank statements directly from the four major Indonesian banks into Odoo 18 bank journals. No enterprise modules required — works on Odoo 18 Community out of the box, with auto format detection and a rich preview before commit.

Odoo 18 OPL-1 Indonesian Localization
Email Us
Community
Enterprise
Odoo.sh
On-Premise
Lema Core Technologies

Lema Core Technologies is a provider of business software solutions specializing in custom Odoo development. We help businesses unlock the full potential of their Odoo instances through reliable, well-tested modules.

Demo Preview

See Indonesia Bank Statement Import in Action

Demo preview

Screenshots

Visual Walkthrough

Upload Bank File Auto-Detect Format

Three-step wizard: upload your CSV or Excel export, the parser detects the bank from header signatures, and you preview every transaction before commit.

Wizard upload step

Rich OWL Preview Filter, Sort, Inspect

Bootstrap-styled preview table with inflow / outflow colouring, instant search box, sortable columns, summary tiles for total inflow, total outflow, net change, and transaction count.

OWL preview widget

Bank Reconciliation Native Odoo Flow

After import, the standard Odoo bank reconciliation takes over. Each statement line matches existing invoices or payments; manual operations cover bank fees, interest, and tax.

Bank reconciliation

Bank Journal Setup Import Format

An optional Indonesian Bank Format field pins the parser for journals that always receive a specific format.

Bank journal smart button

Features

What You Get

Bank Parsers

BCA CSV Parser

Reads BCA mutasi CSV with DB / CR sign convention. Handles preamble lines (account number, period, holder name) automatically.

Mandiri CSV Parser

Reads Mandiri e-statement with Debit / Kredit columns. Supports Tanggal Valuta, Cabang, and standard MCM exports.

BRI CSV / XLSX Parser

Reads BRI mutasi in CSV or Excel. Handles Indonesian month abbreviations (Mei, Agt, Okt, Des). Requires openpyxl for XLSX.

BNI Dual Variant

BNI exports come in two shapes: Tipe / Nominal columns or Debit / Kredit columns. Both are supported transparently.

Auto Format Detection

Wizard scans the first 20 non-empty rows and matches each one against every parser. The first match wins; ambiguous BRI / BNI exports are disambiguated by signature columns.

Pure Python Parsers

Parser layer is decoupled from Odoo — unit-testable in plain Python. Reusable in CLI scripts or other tools.

Preview Experience

OWL Preview Widget

Native OWL 2 component with summary card, stat tiles, and a Bootstrap-styled transactions table — no jQuery, no carousel.

Filter & Sort

Search by description or reference; click any column header to sort. Filtered counts update in real time.

Inflow / Outflow Colour

Green for credits, red for debits. Net change summary highlights any imbalance before you commit.

Format Handling

Indonesian Number Format

Auto-detects 1.234.567,89 (Indonesian) and 1,234,567.89 (standard) decimal formats. Empty cells, dashes, and zero strings are normalised to zero.

Multiple Date Formats

DD/MM, DD/MM/YYYY, DD-MM-YYYY, DD-Mon-YYYY (including Indonesian month abbreviations) — each parser knows what its bank exports.

Source File Audit Trail

The original CSV / XLSX is attached to the created bank statement as an ir.attachment, so auditors can always trace a line back to its source.

System Architecture

From File to Bank Statement

Three-step pipeline keeps the source file, the parsed preview, and the final journal entry decoupled.

Upload
CSV or XLSX dropped into the wizard. File stored as a binary field.
Detect & Parse
Header signature picks a parser; rows become a normalised transaction list.
Preview
OWL widget renders the transactions for review. Filter, sort, inspect.
Confirm
Bank statement + lines created. Source file attached for audit trail.

Technical Specifications

Built on Odoo 18 Standards

Dependencies
  • account (core)
  • openpyxl (Python, for BRI .xlsx only)
  • No enterprise-only dependencies
Deployment
  • Odoo Community & Enterprise
  • Odoo.sh (PaaS)
  • On-Premise multi-worker
Performance
  • Single-pass CSV parsing
  • Streaming Excel read (read-only mode)
  • Batched bank statement line creation
Security
  • Uses native Odoo journal access rights
  • Source file kept as ir.attachment
  • No external service calls

Version History

What's New

LATEST v18.0.2.0.0 May 2026
Chained Statement Balance Dashboard Quick Import Button Context-Aware Wizard Editability
v18.0.1.0.0 May 2026 Initial Release
BCA / Mandiri / BRI / BNI OWL Preview Widget Auto Format Detection Demo CSV Bundle

Frequently Asked Questions

Got Questions?

Which banks are supported?
BCA, Mandiri, BRI, and BNI. BNI is supported in two variants (Tipe / Nominal columns and Debit / Kredit columns). BRI is supported in both CSV and Excel (.xlsx). Other Indonesian banks can be added on request.
How is this different from Odoo's built-in Import File button?
The built-in Import File on a bank journal uploads PDF or image invoices and creates draft vendor bills via OCR. It does not import bank statement transactions. This module imports CSV / Excel bank statements (rekening koran) into the account.bank.statement model — a completely different use case.
Does it work on Odoo Community?
Yes. The account_bank_statement_import module is enterprise-only on Odoo 18, but this module provides its own standalone wizard and creates account.bank.statement records directly. There is no dependency on enterprise.
What if my CSV starts with account holder name and period header?
The wizard scans the first twenty non-empty rows and finds the header row automatically. Preamble lines like "No. Rekening: 1234567890" or "Periode: 01/01/2025 — 31/01/2025" are tolerated; no manual editing of the file is needed.
Do I need openpyxl?
Only if you import BRI .xlsx files. Pure CSV imports for all four banks work without openpyxl. Install via "pip install openpyxl" and restart Odoo to enable BRI Excel support.
Is this available for Odoo Community and Enterprise?
Yes. The module is available for both Community and Enterprise editions, as well as Odoo.sh and on-premise deployments.
Do purchases include future version upgrades?
Each purchase covers the specific Odoo version purchased. Upgrades to newer major versions are available at a reduced upgrade price. Bug fixes and minor updates within the same version are provided free of charge.

Related Products

Indonesia Withholding Tax

SQL Query Executor

Lema AI Summary

Lema MCP Server

Lema RFQ Sequence

Lema Sale Quotation Sequence

Lema Core Technologies Indonesia Bank Statement Import v18.0.2.0.0  ·  OPL-1 License  ·  © 2026 Lema Core Technologies
info@lemacore.com

Indonesia Bank Statement Import (BCA / Mandiri / BRI / BNI)

Import bank statements directly from the four major Indonesian banks into Odoo 18 bank journals — no enterprise modules required.

Works on Odoo 18 Community and Enterprise. Hard dependency: account. Soft dependency: openpyxl (only for BRI .xlsx files).

What This Module Solves

Stock Odoo 18 Community has no account_bank_statement_import module (it is enterprise-only). Even on enterprise, Indonesian bank export formats (BCA mutasi CSV, Mandiri e-statement, BRI mutasi, BNI export) are not recognised. This module provides a standalone import wizard with parsers tuned for each bank.

Supported Banks

The presence of Tgl Valuta or Branch is what distinguishes BRI from the BNI Debit/Kredit variant — they share the same 5 base columns.

Number and Date Format Support

Both Indonesian (1.234.567,89) and standard (1,234,567.89) decimal formats are auto-detected. Date formats are handled per bank:

  • BCA: DD/MM (year inferred) or DD/MM/YYYY
  • Mandiri: DD-MM-YYYY or DD/MM/YYYY
  • BRI: DD-Mon-YYYY including Indonesian month abbreviations (Mei, Agt, Okt, Des)
  • BNI: DD/MM/YYYY

Installation

pip install openpyxl     # required only for BRI .xlsx imports
odoo-bin -c odoo.conf -d <database> -i lm_bank_statement_import_id --stop-after-init

Or from the UI: Apps → search "Bank Statement Import" → Install.

Usage

The wizard has three steps: Upload → Preview → Confirm.

Entry point — from a Bank Journal (recommended):

  1. Open Accounting → Configuration → Journals and pick a bank journal.
  2. Optionally set the Indonesian Bank Format under the Journal Entries tab; default Auto-detect is usually correct.
  3. Click the Import ID Statement smart button at the top right.

Step 1 — Upload: drag-and-drop or browse for the .csv / .xlsx file. Click Parse File.

Step 2 — Preview: the wizard parses the file and shows the detected bank, account number, opening / closing balance, transaction count, and a sortable, filterable transaction table. Inflow rows are green, outflow rows are red. Use the search box to filter by description or reference.

Step 3 — Confirm: click Confirm Import. The wizard creates one account.bank.statement record with one line per transaction, attaches the original file for audit, and redirects to the new statement.

The normal Odoo bank reconciliation flow then takes over.

Demo Files

The module ships realistic sample CSVs at static/demo/ for every supported bank, so you can test the wizard without exporting from real internet banking. See the static/demo/README.md for instructions.

Common Issues

  • "Unsupported file format. Could not detect bank from header." — open the CSV and verify the first non-empty row matches one of the signatures above. The wizard scans the first 20 rows, so preamble lines (account number, holder name) are tolerated automatically.
  • BRI .xlsx fails with "openpyxl is required" — run pip install openpyxl and restart Odoo.
  • All transactions imported with amount = 0 — check that the Debit / Kredit columns contain digits in your file.

License

OPL-1. Copyright Lema Core Technologies — https://lemacore.com

Changelog

  • 2.0.0 — Chain balance_start of the new statement with the journal's last statement balance_end_real so Odoo's statement balance check stays consistent across imports. Adds a dashboard kanban quick-import button that shows on bank journals with a pinned bank format. Wizard's journal_id / bank_format fields become read-only when the wizard is opened from a journal context (only editable when launched from the menu).
  • 1.0.0 — Initial release: BCA, Mandiri, BRI, BNI (two variants), OWL preview widget, Indonesian number/date format support.
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

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with