Skip to Content
Catalog / ACC · Accounting & Finance / Bank Journals - Commission Based
Bank Journals - Commission Based
ac_bank_journal_commission

Bank Journals - Commission Based

Capture every bank payment fee automatically inside the payment entry, per payment method.

v19.0.1.0.0 AlShayeb Partners Accounting & Finance

Extends payment method line with commission_percentage (Float) and commission_account_id (Many2one to account account). The core logic overrides payment _prepare_move_lines_per_type, the single hook shared by move generation and draft re-sync: it computes the commission, reduces the liquidity line (inbound) or counterpart line (outbound) by the fee, and appends a balancing commission write-off line. A POS guard returns to super when pos_session_id is set, and it strips a re-passed commission line from write_off_line_vals to avoid double-counting on sync. The journal form view (account view_account_journal_form) is inherited to surface both new columns on the incoming and outgoing payment method lists. No new menus, actions, or security records.

Overview

Banks deduct a percentage commission on card and electronic payments, but standard Odoo records the full gross amount and leaves the fee untracked, so books drift from real cash received. This module lets you set a commission percentage and a commission expense account on each bank payment method, then carves that fee out of every payment the moment it is posted. The bank line shows the net cash you actually received (or the full amount you paid), the customer or vendor counterpart is settled correctly, and the commission lands on its own expense line, all inside the same payment journal entry with no extra steps for the user.

Key Features

  • Adds a Commission % field and a Commission Account field to each bank payment method line on the journal form.
  • Automatically books the bank fee as its own expense debit line inside the payment's journal entry at posting time.
  • Carves the commission out of the gross amount rather than adding it on top, so the entered figure is always the real transaction total.
  • Inbound payments reduce the bank line to the net cash received while settling the customer in full.
  • Outbound payments pay the bank the full amount while booking the commission against the vendor counterpart.
  • Handles foreign-currency payments, converting the commission to company currency at the payment date.
  • Leaves payments without a configured commission to behave exactly like standard Odoo.
  • Skips POS-originated payments so the dedicated point-of-sale commission module handles them without double-counting.
  • De-duplicates the commission line on draft re-sync so editing a draft payment never doubles the fee.

Technical Details

Technical Name ac_bank_journal_commission
Version 19.0.1.0.0
License LGPL-3
Domain ACC · Accounting & Finance

Security

No new security groups or access rules are added. The module only extends existing Accounting models (account.payment.method.line and account.payment), so it inherits the standard Accounting access rights already enforced by Odoo's account module.

Dependencies

account