Repository
OCA/account-invoicing · module folder · Try on Runboat
Module version
1.4.0
Category
Account
Folder size
0.23 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/account-invoicing
Last tracking update
2026-08-07 08:42:47
Authors
Odoo Community Association (OCA), Ecosoft
Maintainers
Odoo Community Association (OCA), Ecosoft
Committers
Aungkokolin1997, Weblate, OCA-git-bot, oca-ci, Morita Shinnosuke, yostashiro
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
account_billing_from_cutoff, l10n_jp_summary_invoice
Description
In some countries, there is a customary practice for companies to
collect money from their customers only once in a month. For example,
the customer has 3 payments due in a given month, the vendor or billing
company should group all the due AR Invoices in a document call Billing
Document and issue it with all the invoices consolidated to the customer
on the Billing Day. The customer will be paying based on the payable
amount shown in Billing Document in the following month.

This module use a new document called "Billing" to group these invoices
together.

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
report_billing report_billing ir.ui.view qweb New
report_billing_document report_billing_document ir.ui.view qweb New
view_account_billing_form account.billing.form account.billing form New
view_account_billing_tree account.billing.list account.billing list New
view_account_supplier_billing_tree account.supplier.billing.list account.billing list New
view_billing_search account.billing.search account.billing search New
view_invoice_tree account.invoice.tree account.move tree Inherits account.view_invoice_tree
view_move_form account.move.form.inherit.view.billing account.move form Inherits account.view_move_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (3)

New fields (13)
  • bill_type Selection
    default=<expr> help='Type of invoice' readonly=True selection=[('out_invoice', 'Customer Invoice'), ('in_invoice', 'Vendor Bill')]
  • billing_line_ids One2many → account.billing.line
    comodel_name='account.billing.line' inverse_name='billing_id' readonly=True string='Bill Lines'
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> help='Leave this field empty if this route is shared between all companies' index=True string='Company'
  • currency_id Many2one → res.currency
    comodel_name='res.currency' default=<expr> help='Currency' readonly=True required=True string='Currency'
  • date Date
    default=fields.Date.context_today help='Effective date for accounting entries' readonly=True string='Billing Date' tracking=True
  • invoice_related_count Integer
    compute='_compute_invoice_related_count' help='Count invoice in billing' string='# of Invoices'
  • name Char
    copy=False help='Number of account.billing' readonly=True
  • narration Html
    help='Notes' readonly=True string='Notes'
  • partner_id Many2one → res.partner
    comodel_name='res.partner' help='Partner Information' required=True tracking=True
  • payment_paid_all Boolean
    compute='_compute_payment_paid_all' store=True
  • state Selection
    default='draft' help="\n * The 'Draft' status is used when a user create a new billing\n\n * The 'Billed' status is used when user confirmed billing,\n billing number is generated\n\n * The 'Cancelled' status is used when user billing is cancelled\n " readonly=True selection=[('draft', 'Draft'), ('cancel', 'Cancelled'), ('billed', 'Billed')] string='Status'
  • threshold_date Date
    default=<expr> help='All invoices with date (threshold date type) before and equal to threshold date will be listed in billing lines' readonly=True required=True tracking=True
  • threshold_date_type Selection
    default=<expr> help='All invoices with date (threshold date type) before and equal to threshold date will be listed in billing lines' readonly=True required=True selection=[('invoice_date_due', 'Due Date'), ('invoice_date', 'Invoice Date')]
Public methods (7)
  • action_cancel(self)
  • action_cancel_draft(self)
  • action_register_payment(self)
  • compute_lines(self)
  • invoice_relate_billing_tree_view(self)
  • name_get(self)
  • validate_billing(self)

New fields (11)
  • amount_residual Monetary
    compute='_compute_amount_residual' store=True string='Amount Due'
  • amount_total Monetary
    readonly=True string='Total'
  • billing_id Many2one → account.billing
    comodel_name='account.billing'
  • currency_id Many2one
    related='move_id.currency_id'
  • invoice_date Date
    compute='_compute_invoice_date'
  • move_id Many2one → account.move
    comodel_name='account.move' index=True
  • name Char
    related='move_id.name'
  • origin Char
    related='move_id.invoice_origin'
  • payment_state Selection
    related='move_id.payment_state'
  • sequence Integer
    default=10
  • state Selection
    related='move_id.state'
Public methods (0)

No public methods.

New fields (2)
  • billing_ids Many2many → account.billing
    comodel_name='account.billing' compute='_compute_billing_ids' groups='account.group_account_invoice' help='Relationship between invoice and billing' string='Billings'
  • billing_line_ids One2many → account.billing.line
    comodel_name='account.billing.line' help='Billing lines that reference this invoice' inverse_name='move_id' string='Billing Lines'
Public methods (2)
  • action_create_billing(self)
  • button_draft(self)

Loading…

Loading…

Loading…

Loading…

Status
Open migration PR — not merged yet for this version
CI status
checks failing
Open since
101 days ago
Last activity
10 days ago
Repository
OCA/account-invoicing
Pull request
[19.0][MIG] account_billing: Migration to 19.0 (#2349)