ITA - Ricevute bancarie

l10n_it_riba_oca
REPOSITORY
REPOSITORYOCA/l10n-italy
GIT
GIThttps://github.com/OCA/l10n-italy.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-italy/tree/18.0/l10n_it_riba_oca
VERSION
VERSION 1.2.1
CATEGORY
CATEGORYLocalization/Italy
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA)
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA)
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, Simone Rubino, oca-ci, odooNextev, Riccardo
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-italy
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:12
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-payment:
    - account_due_list
    - account_payment_term_extension
OCA/l10n-italy:
    - l10n_it_abicab
    - l10n_it_edi_related_document
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
    - l10n_it_edi
    - l10n_it
    - base_vat
    - account_edi_proxy_client
    - certificate
    - purchase
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES openupgradelib
unidecode
cryptography
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
**Italiano**

Modulo per gestire le ricevute bancarie.

Code Analysis

Views touched (27)
XML IDNameModelTypeStatus
invoice_form account.move.form account.move xpath Inherits account.view_move_form
invoice_tree account.move.tree account.move field Inherits account.view_invoice_tree
riba_credit riba.credit.wizard riba.credit form New
riba_due_date_settlement riba.due.date.settlement.wizard riba.due.date.settlement form New
riba_filter RiBa filter account.move.line xpath Inherits account_due_list.view_payments_filter
riba_issue_view riba.issue.wizard riba.issue form New
riba_past_due riba.past_due.wizard riba.past_due form New
riba_payment_multiple_view_form Form view for Pay multiple RiBa lines riba.payment.multiple form New
slip_layout slip_layout ir.ui.view qweb New
slip_qweb slip_qweb ir.ui.view qweb New
view_account_config_settings_riba view_account_config_settings_riba res.config.settings app Inherits account.res_config_settings_view_form
view_detail_riba_filter riba.slip.line.filter riba.slip.line search New
view_detail_riba_tree riba.slip.line.tree riba.slip.line list New
view_partner_bank_sia_form res.partner.bank.form.sia.inherit res.partner.bank field Inherits base.view_partner_bank_form
view_partner_form_riba res.parner.form.riba res.partner group Inherits account.view_partner_property_form
view_res_bank_add_text_field res.bank.add.text.field res.bank field Inherits base.view_res_bank_form
view_riba_add_text_field account.riba.add.text.field account.payment.term xpath Inherits account.view_payment_term_form
view_riba_configuration_form riba.configuration.form riba.configuration form New
view_riba_configuration_tree riba.configuration.tree riba.configuration list New
view_riba_slip_form riba.slip.form riba.slip form New
view_riba_slip_line_form riba.slip.line.form riba.slip.line form New
view_riba_to_issue_tree RiBa Issue account.move.line list New
view_slip_riba_filter riba.slip.filter riba.slip search New
view_slip_riba_tree riba.slip.tree riba.slip list New
wizard_presentation_riba presentation.riba.issue.wizard presentation.riba.issue form New
wizard_riba_file_export Export RiBa riba.file.export form New
wizard_riba_payment_date Set RiBa Payment Date riba.payment.date form New
Models touched (24)

New fields (0)

No new fields.

Public methods (3)
  • get_riba_lines(self)
  • unlink(self)
  • unreconcile_riba_lines(self, riba_lines)
    Reset RiBa line states when reconciliation is undone. When account move lines are unreconciled, we need to revert RiBa lines to their previous state to maintain consistency in the RiBa workflow.

New fields (7)
  • is_riba_payment Boolean
    related='invoice_payment_term_id.riba' args: 'Is RiBa Payment'
  • open_amount Float
    compute='_compute_open_amount' default=0.0 digits='Account' help='Amount currently only supposed to be paid, but has actually not happened'
  • past_due_move_line_ids Many2many → account.move.line
    args: 'account.move.line', 'invoice_past_due_line_rel', 'move_id', 'line_id', 'Past Due Journal Items'
  • riba_credited_ids One2many → riba.slip
    readonly=True args: 'riba.slip', 'credit_move_id', 'Credited RiBa Slips'
  • riba_partner_bank_id Many2one → res.partner.bank
    help='Bank Account Number to which the RiBa will be debited. If not set, first bank in partner will be used.' string='RiBa Bank Account' args: 'res.partner.bank'
  • riba_past_due_ids One2many → riba.slip.line
    readonly=True args: 'riba.slip.line', 'past_due_move_id', 'Past Due RiBa Slips'
  • riba_supplier_company_bank_id Many2one → res.partner.bank
    comodel_name='res.partner.bank' compute='_compute_riba_supplier_company_bank_id' domain=_domain_riba_supplier_company_bank_id help='Bank account used for the RiBa of this vendor bill.' store=True string='Company Bank Account for Supplier'
Public methods (8)
  • action_post(self)
  • action_riba_payment_date(self)
  • button_cancel(self)
  • button_draft(self)
  • copy(self, default=None)
  • create(self, vals_list)
    @api.model_create_multi
  • get_due_cost_line_ids(self)
  • month_check(self, invoice_date_due, all_date_due)
    :param invoice_date_due: first due date of invoice :param all_date_due: list of due dates for partner :return: True if month of invoice_date_due is in a list of all_date_due

New fields (6)
  • due_cost_line Boolean
    args: 'RiBa Collection Fees Line'
  • iban Char
    related='move_id.riba_partner_bank_id.acc_number' store=False string='IBAN'
  • past_due_invoice_ids Many2many → account.move
    args: 'account.move', 'invoice_past_due_line_rel', 'line_id', 'move_id', 'Past Due Invoices'
  • riba Boolean
    related='move_id.invoice_payment_term_id.riba' store=False string='RiBa'
  • slip_line_id Many2one → riba.slip.line
    readonly=True args: 'riba.slip.line', 'RiBa Line'
  • slip_line_ids One2many → riba.slip.move.line
    args: 'riba.slip.move.line', 'move_line_id', 'RiBa Detail'
Public methods (4)
  • action_riba_issue(self)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
  • reconcile(self)
    Override reconcile to update RiBa line states. When account move lines are reconciled, we need to check if any of them are related to RiBa lines and update their status accordingly.
  • update_paid_riba_lines(self)
    Update RiBa line status to 'paid' when move lines are reconciled. This method is called during reconciliation to mark RiBa lines as paid when the related account move lines are reconciled, but only if: - We're not in a past_due_reconciliation context - The RiBa line is in a state that allows transition to 'paid'

New fields (0)

No new fields.

Public methods (2)
  • get_riba_lines(self)
  • unlink(self)

New fields (2)
  • riba Boolean
    default=False args: 'RiBa'
  • riba_payment_cost Float
    digits='Account' help='Collection fees amount. If different from 0, for each payment deadline an invoice line will be added to invoice, with this amount.' args: 'RiBa Collection Fees'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)

New fields (2)
  • currency_id Many2one → res.currency
    default=<expr> args: 'res.currency'
  • presentation_amount Monetary
    currency_field='currency_id'
Public methods (1)
  • action_presentation_riba(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • banca_estera Boolean
    args: 'Foreign Bank'
Public methods (0)

No public methods.

New fields (1)
  • due_cost_service_id Many2one → product.product
    args: 'product.product', 'Collection Fees Service'
Public methods (0)

No public methods.

New fields (1)
  • due_cost_service_id Many2one
    domain=[('type', '=', 'service')] help='Default Service for RiBa Collection Fees on invoice.' readonly=False related='company_id.due_cost_service_id' string='Default Collection Fees Service'
Public methods (1)
  • default_get(self, fields_list)
    @api.model

New fields (3)
  • group_riba Boolean
    help='Group RiBa by customer while issuing.' args: 'Group RiBa'
  • is_supplier_payment_riba Boolean
    readonly=True related='property_supplier_payment_term_id.riba' string='Is RiBa Payment'
  • property_riba_supplier_company_bank_id Many2one → res.partner.bank
    comodel_name='res.partner.bank' company_dependent=True domain=_domain_property_riba_supplier_company_bank_id help='Bank account used for the RiBa of this supplier.' string='Company Bank Account for Supplier'
Public methods (0)

No public methods.

New fields (1)
  • codice_sia Char
    help='Identification Code of the Company in the Interbank System.' size=5 args: 'SIA Code'
Public methods (1)
  • unlink(self)

New fields (15)
  • acceptance_account_id Many2one → account.account
    check_company=True help='Account used when RiBa is accepted by the bank.' required=True args: 'account.account', 'Acceptance Account'
  • acceptance_journal_id Many2one → account.journal
    check_company=True help='Journal used when RiBa is accepted by the bank.' required=True args: 'account.journal', 'Acceptance Journal'
  • bank_account_id Many2one → account.account
    check_company=True args: 'account.account', 'A/C Bank Account'
  • bank_expense_account_id Many2one → account.account
    args: 'account.account', 'Bank Fees Account'
  • bank_id Many2one → res.partner.bank
    check_company=True help='Bank account used for RiBa issuing.' required=True args: 'res.partner.bank', 'Bank Account'
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company', 'Company'
  • credit_account_id Many2one → account.account
    check_company=True domain="[('account_type', '!=', 'liability_credit_card')]" help='Account used when RiBa amount is credited by the bank.' args: 'account.account', 'RiBa Account'
  • credit_journal_id Many2one → account.journal
    check_company=True help='Journal used when RiBa amount is credited by the bank.' args: 'account.journal', 'Credit Journal'
  • name Char
    required=True size=64 args: 'Description'
  • overdue_credit_account_id Many2one → account.account
    check_company=True args: 'account.account', 'Past Due Bills Account'
  • past_due_fee_amount Float
    args: 'Fee Amount'
  • past_due_journal_id Many2one → account.journal
    check_company=True help='Journal used when RiBa is past due.' args: 'account.journal', 'Past Due Journal'
  • protest_charge_account_id Many2one → account.account
    check_company=True args: 'account.account', 'Protest Fee Account'
  • settlement_journal_id Many2one → account.journal
    check_company=True help='Journal used when customers finally pay the invoice to bank.' args: 'account.journal', 'Settlement Journal'
  • type Selection
    required=True args: [('sbf', 'Subject To Collection'), ('incasso', 'After Collection')], 'Issue Mode'
Public methods (2)
  • get_default_value_by_list(self, field_name)
  • get_default_value_by_list_line(self, field_name)

New fields (8)
  • acceptance_account_id Many2one → account.account
    default=_get_acceptance_account_id help='Liability account used during RiBa acceptance. This will be credited to reverse the acceptance entry.' string='Acceptance Account' args: 'account.account'
  • acceptance_amount Float
    default=_get_acceptance_amount help='Total amount from the RiBa slip that was recorded during acceptance. This amount will be used to reverse the acceptance liability.'
  • bank_account_id Many2one → account.account
    default=_get_bank_account_id help='Bank account from which collection fees will be paid. This account will be credited for any expense amounts.' string='Bank Account' args: 'account.account'
  • bank_expense_account_id Many2one → account.account
    default=_get_bank_expense_account_id help='Expense account for recording bank collection fees. This account will be debited for any fees charged by the bank.' string='Bank Fees Account' args: 'account.account'
  • credit_account_id Many2one → account.account
    default=_get_credit_account_id help='Asset account representing amounts credited by the bank. This will be debited with the credit amount.' string='RiBa Credit Account' args: 'account.account'
  • credit_amount Float
    help='Amount the bank is crediting to the company. '
  • credit_journal_id Many2one → account.journal
    default=_get_credit_journal_id string='Credit Journal' args: 'account.journal'
  • expense_amount Float
    help='Amount of fees charged by the bank for the RiBa collection service. If specified, separate entries will be created for the fee payment.' string='Bank Fees Amount'
Public methods (1)
  • create_move(self)
    Create bank credit accounting move for RiBa slip. This method handles the bank credit phase of the RiBa process, where the bank credits the company's account with the RiBa amount (minus any fees). This typically happens when the bank accepts the RiBa collection and provides immediate liquidity to the company. Accounting Flow: 1. Debit RiBa Account (asset) - Amount the bank will collect 2. Credit Acceptance Account (liability) - Offset the acceptance entry 3. Optional: Debit Bank Fees (expense) - Bank collection fees 4. Optional: Credit Bank Account (asset) - Fees paid from bank account Business Context: - After RiBa acceptance, bank may credit company account immediately - Company receives liquidity but bank retains collection risk - If customer doesn't pay, bank may reverse the credit (past due) :return: Action to display the created accounting move :rtype: dict :raises UserError: If required accounts are not configured or active_id missing

New fields (1)
  • due_date Date
Public methods (1)
  • due_date_settlement_confirm(self)

New fields (3)
  • file_name Char
    readonly=True
  • riba_txt Binary
    readonly=True args: 'File'
  • state Selection
    default='choose' args: (('choose', 'choose'), ('get', 'get'))
Public methods (1)
  • act_getfile(self)

New fields (1)
  • configuration_id Many2one → riba.configuration
    required=True string='Configuration' args: 'riba.configuration'
Public methods (1)
  • create_list(self)

New fields (13)
  • acceptance_account_id Many2one → account.account
    default=_get_acceptance_account_id args: 'account.account', 'Acceptance Account'
  • bank_account_id Many2one → account.account
    default=_get_bank_account_id args: 'account.account', 'A/C Bank Account'
  • bank_expense_account_id Many2one → account.account
    default=_get_bank_expense_account_id args: 'account.account', 'Bank Fees Account'
  • charge_to_customer Boolean
    args: 'Charge the customer the costs'
  • config_type Selection
    default=_get_config_type args: [('sbf', 'Subject To Collection'), ('incasso', 'After Collection')], 'Issue Mode'
  • credit_account_id Many2one → account.account
    default=_get_credit_account_id args: 'account.account', 'Credit Account'
  • credit_amount Float
    default=_get_credit_amount
  • date Date
    help='If empty, the due date in the line will be used.' readonly=False
  • expense_amount Float
    args: 'Fees Amount'
  • overdue_credit_account_id Many2one → account.account
    default=_get_overdue_credit_account_id args: 'account.account', 'Past Due Bills Account'
  • overdue_credit_amount Float
    default=_get_credit_amount args: 'Past Due Bills Amount'
  • past_due_fee_amount Float
    default=_get_unsolved_past_due_fee_amount args: 'Past Due Fees Amount'
  • past_due_journal_id Many2one → account.journal
    default=_get_past_due_journal_id domain=[('type', '=', 'bank')] args: 'account.journal', 'Past Due Journal'
Public methods (2)
  • create_move(self)
  • skip(self)

New fields (1)
  • date Date
    required=True string='Payment Date'
Public methods (2)
  • set_riba_payment_date(self)
  • skip(self)

New fields (3)
  • payment_date Date
    compute='_compute_payment_date' help="Defaults to the 'Payment date' in the RiBas.\nIf empty, the due date in each line will be used." readonly=False store=True
  • riba_ids Many2many → riba.slip
    comodel_name='riba.slip' default=<expr> readonly=True required=True string='Selected RiBas'
  • riba_line_ids Many2many → riba.slip.line
    comodel_name='riba.slip.line' compute='_compute_riba_line_ids' domain="['&',('slip_id', 'in', riba_ids),'|','&',('type', '=', 'sbf'),('state', '=', 'credited'),'&',('type', '=', 'incasso'),('state', '=', 'confirmed'),]" readonly=False store=True string='RiBa lines to be paid'
Public methods (2)
  • pay(self)
  • skip(self)

New fields (18)
  • acceptance_move_ids Many2many → account.move
    compute='_compute_acceptance_move_ids' string='Acceptance Entries' args: 'account.move'
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company', 'Company'
  • config_id Many2one → riba.configuration
    help='RiBa configuration to be used.' index=True string='Configuration' args: 'riba.configuration'
  • credit_move_id Many2one → account.move
    readonly=True args: 'account.move', 'Credit Entry'
  • date_accepted Date
    args: 'Acceptance Date'
  • date_created Date
    default=<expr> readonly=True args: 'Creation Date'
  • date_credited Date
    args: 'Credit Date'
  • date_paid Date
    help='Default date for payments.' string='Payment Date'
  • date_past_due Date
    readonly=True args: 'Past Due Date'
  • line_ids One2many → riba.slip.line
    args: 'riba.slip.line', 'slip_id', 'RiBa Due Dates'
  • name Char
    default=<expr> required=True args: 'Reference'
  • past_due_move_ids Many2many → account.move
    compute='_compute_past_due_move_ids' string='Past Due Entries' args: 'account.move'
  • payment_ids Many2many → account.move.line
    compute='_compute_payment_ids' string='Payments' args: 'account.move.line'
  • registration_date Date
    default=<expr> help='Keep empty to use the current date.' required=True
  • state Selection
    default='draft' readonly=True args: [('draft', 'Draft'), ('accepted', 'Accepted'), ('credited', 'Credited'), ('paid', 'Paid'), ('past_due', 'Past Due'), ('cancel', 'Canceled')]
  • total_amount Float
    compute='_compute_total_amount' string='Amount'
  • type Selection
    readonly=True related='config_id.type' string='Type'
  • user_id Many2one → res.users
    default=<expr> required=True args: 'res.users', 'User'
Public methods (12)
  • action_cancel_draft(self)
  • action_open_lines(self)
  • action_riba_due_date_settlement(self)
  • action_riba_export(self)
  • confirm(self)
  • riba_cancel(self)
  • riba_past_due(self)
  • settle_all_line(self)
  • test_accepted(self)
  • test_paid(self)
  • test_past_due(self)
  • test_state(self, state)

New fields (21)
  • acceptance_account_id Many2one → account.account
    string='Acceptance Account' args: 'account.account'
  • acceptance_move_id Many2one → account.move
    readonly=True string='Acceptance Entry' args: 'account.move'
  • amount Float
    compute='_compute_line_values'
  • bank_id Many2one → res.partner.bank
    string='Debtor Bank' args: 'res.partner.bank'
  • cig Char
    compute='_compute_cig_cup_values' size=256 string='CIG'
  • company_id Many2one → res.company
    readonly=True related='slip_id.company_id' related_sudo=False store=True string='Company' args: 'res.company'
  • config_id Many2one
    readonly=True related='slip_id.config_id' string='Configuration'
  • credit_move_id Many2one → account.move
    readonly=True string='Credit Entry' args: 'account.move'
  • cup Char
    compute='_compute_cig_cup_values' size=256 string='CUP'
  • due_date Date
    readonly=True
  • iban Char
    readonly=True related='bank_id.acc_number' store=False string='IBAN'
  • invoice_date Char
    compute='_compute_line_values' size=256
  • invoice_number Char
    compute='_compute_line_values' size=256
  • move_line_ids One2many → riba.slip.move.line
    string='Credit Move Lines' args: 'riba.slip.move.line', 'riba_line_id'
  • partner_id Many2one → res.partner
    readonly=True string='Customer' args: 'res.partner'
  • past_due_move_id Many2one → account.move
    readonly=True string='Past Due Entry' args: 'account.move'
  • payment_id Many2one → account.move.line
    readonly=True string='Payments' args: 'account.move.line'
  • sequence Integer
    args: 'Number'
  • slip_id Many2one → riba.slip
    ondelete='cascade' required=True string='Slip' args: 'riba.slip'
  • state Selection
    readonly=True tracking=True args: [('draft', 'Draft'), ('confirmed', 'Confirmed'), ('credited', 'Credited'), ('paid', 'Paid'), ('past_due', 'Past Due'), ('cancel', 'Canceled')]
  • type Selection
    readonly=True related='slip_id.config_id.type' string='Type'
Public methods (4)
  • button_settle(self)
  • confirm(self)
  • riba_line_settlement(self, date=None)
    Create settlement payment entries for RiBa lines. This method handles the final settlement of RiBa lines by creating accounting entries that record the actual payment received from customers through the bank. It reconciles the credit account with the bank account to complete the RiBa collection process. Settlement Process: 1. Find the original credit move line that needs to be settled 2. Calculate the settlement amount (considering partial payments for SBF) 3. Create settlement move with: - Credit line: reduces the RiBa credit account - Debit line: increases the bank account 4. Reconcile all related move lines to close the collection cycle :param date: The settlement date. If not provided, uses today's date. :type date: date or None :raises UserError: If settlement journal is not configured Business Flow: - Customer pays invoice → Bank receives payment → Bank notifies company - Company records settlement → RiBa line moves to 'paid' state
  • settle_riba_line(self)

New fields (3)
  • amount Float
    digits='Account'
  • move_line_id Many2one → account.move.line
    string='Credit Move Line' args: 'account.move.line'
  • riba_line_id Many2one → riba.slip.line
    ondelete='cascade' string='Slip Line' args: 'riba.slip.line'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-italy
GIT
GIThttps://github.com/OCA/l10n-italy.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-italy/tree/16.0/l10n_it_riba_oca
VERSION
VERSION 1.10.2
CATEGORY
CATEGORYLocalization/Italy
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA)
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA)
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, Simone Rubino, oca-ci, stenext
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-italy
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:11:58
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/account-financial-tools:
    - account_fiscal_year
OCA/account-payment:
    - account_due_list
OCA/l10n-italy:
    - l10n_it_fatturapa_out
    - l10n_it_account
    - l10n_it_fatturapa
    - l10n_it_fiscalcode
    - l10n_it_ipa
    - l10n_it_rea
    - l10n_it_account_tax_kind
    - l10n_it_vat_payability
    - l10n_it_fiscal_payment_term
    - l10n_it_fiscal_document_type
    - l10n_it_abicab
OCA/partner-contact:
    - partner_firstname
OCA/server-ux:
    - date_range
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - attachment_indexation
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES openupgradelib
elementpath
unidecode
xmlschema
asn1crypto
codicefiscale
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
**Italiano**

Modulo per gestire le ricevute bancarie.

Code Analysis

Views touched (27)
XML IDNameModelTypeStatus
invoice_form account.move.form account.move xpath Inherits account.view_move_form
invoice_tree account.move.tree account.move field Inherits account.view_invoice_tree
riba_credit riba.credit.wizard riba.credit form New
riba_due_date_settlement riba.due.date.settlement.wizard riba.due.date.settlement form New
riba_filter RiBa filter account.move.line xpath Inherits account_due_list.view_payments_filter
riba_issue_view riba.issue.wizard riba.issue form New
riba_past_due riba.past_due.wizard riba.past_due form New
riba_payment_multiple_view_form Form view for Pay multiple RiBa lines riba.payment.multiple form New
slip_layout slip_layout ir.ui.view qweb New
slip_qweb slip_qweb ir.ui.view qweb New
view_account_config_settings_riba view_account_config_settings_riba res.config.settings div Inherits account.res_config_settings_view_form
view_detail_riba_filter riba.slip.line.filter riba.slip.line search New
view_detail_riba_tree riba.slip.line.tree riba.slip.line tree New
view_partner_bank_sia_form res.partner.bank.form.sia.inherit res.partner.bank field Inherits base.view_partner_bank_form
view_partner_form_riba res.parner.form.riba res.partner group Inherits account.view_partner_property_form
view_res_bank_add_text_field res.bank.add.text.field res.bank field Inherits base.view_res_bank_form
view_riba_add_text_field account.riba.add.text.field account.payment.term field Inherits account.view_payment_term_form
view_riba_configuration_form riba.configuration.form riba.configuration form New
view_riba_configuration_tree riba.configuration.tree riba.configuration tree New
view_riba_slip_form riba.slip.form riba.slip form New
view_riba_slip_line_form riba.slip.line.form riba.slip.line form New
view_riba_to_issue_tree RiBa Issue account.move.line tree New
view_slip_riba_filter riba.slip.filter riba.slip search New
view_slip_riba_tree riba.slip.tree riba.slip tree New
wizard_presentation_riba presentation.riba.issue.wizard presentation.riba.issue form New
wizard_riba_file_export Export RiBa riba.file.export form New
wizard_riba_payment_date Set RiBa Payment Date riba.payment.date form New
Models touched (24)

New fields (0)

No new fields.

Public methods (3)
  • get_riba_lines(self)
  • unlink(self)
  • unreconcile_riba_lines(self, riba_lines)

New fields (8)
  • is_past_due Boolean
    compute='_compute_is_past_due' store=True args: 'Is a past due invoice'
  • is_riba_payment Boolean
    related='invoice_payment_term_id.riba' args: 'Is RiBa Payment'
  • open_amount Float
    compute='_compute_open_amount' default=0.0 digits='Account' help='Amount currently only supposed to be paid, but has actually not happened'
  • past_due_move_line_ids Many2many → account.move.line
    args: 'account.move.line', 'invoice_past_due_line_rel', 'move_id', 'line_id', 'Past Due Journal Items'
  • riba_credited_ids One2many → riba.slip
    readonly=True args: 'riba.slip', 'credit_move_id', 'Credited RiBa Slips'
  • riba_partner_bank_id Many2one → res.partner.bank
    help='Bank Account Number to which the RiBa will be debited. If not set, first bank in partner will be used.' readonly=True states={'draft': [('readonly', False)]} string='RiBa Bank Account' args: 'res.partner.bank'
  • riba_past_due_ids One2many → riba.slip.line
    readonly=True args: 'riba.slip.line', 'past_due_move_id', 'Past Due RiBa Slips'
  • riba_supplier_company_bank_id Many2one → res.partner.bank
    comodel_name='res.partner.bank' compute='_compute_riba_supplier_company_bank_id' domain=_domain_riba_supplier_company_bank_id help='Bank account used for the RiBa of this vendor bill.' readonly=False states={'posted': [('readonly', True)]} store=True string='Company Bank Account for Supplier'
Public methods (8)
  • action_post(self)
  • action_riba_payment_date(self)
  • button_cancel(self)
  • button_draft(self)
  • copy(self, default=None)
  • create(self, vals_list)
    @api.model_create_multi
  • get_due_cost_line_ids(self)
  • month_check(self, invoice_date_due, all_date_due)
    :param invoice_date_due: first due date of invoice :param all_date_due: list of due dates for partner :return: True if month of invoice_date_due is in a list of all_date_due

New fields (5)
  • due_cost_line Boolean
    args: 'RiBa Collection Fees Line'
  • iban Char
    related='move_id.riba_partner_bank_id.acc_number' store=False string='IBAN'
  • past_due_invoice_ids Many2many → account.move
    args: 'account.move', 'invoice_past_due_line_rel', 'line_id', 'move_id', 'Past Due Invoices'
  • riba Boolean
    related='move_id.invoice_payment_term_id.riba' store=False string='RiBa'
  • slip_line_ids One2many → riba.slip.move.line
    args: 'riba.slip.move.line', 'move_line_id', 'RiBa Detail'
Public methods (5)
  • action_riba_issue(self)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
  • get_riba_lines(self)
  • reconcile(self)
  • update_paid_riba_lines(self)

New fields (0)

No new fields.

Public methods (2)
  • get_riba_lines(self)
  • unlink(self)

New fields (2)
  • riba Boolean
    default=False args: 'RiBa'
  • riba_payment_cost Float
    digits='Account' help='Collection fees amount. If different from 0, for each payment deadline an invoice line will be added to invoice, with this amount.' args: 'RiBa Collection Fees'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • write(self, vals)

New fields (2)
  • currency_id Many2one → res.currency
    default=<expr> args: 'res.currency'
  • presentation_amount Monetary
    currency_field='currency_id'
Public methods (1)
  • action_presentation_riba(self)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • banca_estera Boolean
    args: 'Foreign Bank'
Public methods (0)

No public methods.

New fields (1)
  • due_cost_service_id Many2one → product.product
    args: 'product.product', 'Collection Fees Service'
Public methods (0)

No public methods.

New fields (1)
  • due_cost_service_id Many2one
    domain=[('type', '=', 'service')] help='Default Service for RiBa Collection Fees on invoice.' readonly=False related='company_id.due_cost_service_id' string='Default Collection Fees Service'
Public methods (1)
  • default_get(self, fields_list)
    @api.model

New fields (5)
  • group_riba Boolean
    help='Group RiBa by customer while issuing.' args: 'Group RiBa'
  • is_supplier_payment_riba Boolean
    readonly=True related='property_supplier_payment_term_id.riba' string='Is RiBa Payment'
  • property_riba_supplier_company_bank_id Many2one → res.partner.bank
    comodel_name='res.partner.bank' company_dependent=True domain=_domain_property_riba_supplier_company_bank_id help='Bank account used for the RiBa of this supplier.' string='Company Bank Account for Supplier'
  • riba_exclude_expenses Boolean
    string='Exclude expenses Ri.Ba.'
  • riba_policy_expenses Selection
    default='one_a_month' string='Ri.Ba. Policy expenses' args: [('one_a_month', 'More invoices, one expense per Month'), ('unlimited', 'One expense per maturity')]
Public methods (0)

No public methods.

New fields (1)
  • codice_sia Char
    help='Identification Code of the Company in the Interbank System.' size=5 args: 'SIA Code'
Public methods (0)

No public methods.

New fields (15)
  • acceptance_account_id Many2one → account.account
    check_company=True help='Account used when RiBa is accepted by the bank.' required=True args: 'account.account', 'Acceptance Account'
  • acceptance_journal_id Many2one → account.journal
    check_company=True help='Journal used when RiBa is accepted by the bank.' required=True args: 'account.journal', 'Acceptance Journal'
  • bank_account_id Many2one → account.account
    check_company=True args: 'account.account', 'A/C Bank Account'
  • bank_expense_account_id Many2one → account.account
    args: 'account.account', 'Bank Fees Account'
  • bank_id Many2one → res.partner.bank
    check_company=True help='Bank account used for RiBa issuing.' required=True args: 'res.partner.bank', 'Bank Account'
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company', 'Company'
  • credit_account_id Many2one → account.account
    check_company=True domain="[('company_id', '=', company_id), ('account_type', '!=', 'liability_credit_card'), ]" help='Account used when RiBa amount is credited by the bank.' args: 'account.account', 'RiBa Account'
  • credit_journal_id Many2one → account.journal
    check_company=True help='Journal used when RiBa amount is credited by the bank.' args: 'account.journal', 'Credit Journal'
  • name Char
    required=True size=64 args: 'Description'
  • overdue_effects_account_id Many2one → account.account
    check_company=True args: 'account.account', 'Past Due Bills Account'
  • past_due_journal_id Many2one → account.journal
    check_company=True help='Journal used when RiBa is past due.' args: 'account.journal', 'Past Due Journal'
  • protest_charge_account_id Many2one → account.account
    check_company=True args: 'account.account', 'Protest Fee Account'
  • sbf_collection_type Selection
    args: [('immediate', 'Immediate'), ('maturation', 'At currency maturation')], 'Collection Type'
  • settlement_journal_id Many2one → account.journal
    check_company=True help='Journal used when customers finally pay the invoice to bank.' args: 'account.journal', 'Settlement Journal'
  • type Selection
    required=True args: [('sbf', 'Subject To Collection'), ('incasso', 'After Collection')], 'Issue Mode'
Public methods (2)
  • get_default_value_by_list(self, field_name)
  • get_default_value_by_list_line(self, field_name)

New fields (7)
  • bank_account_id Many2one → account.account
    default=_get_bank_account_id domain=[('account_type', '=', 'asset_cash')] args: 'account.account', 'A/C Bank Account'
  • bank_amount Float
    args: 'Paid Amount'
  • bank_expense_account_id Many2one → account.account
    default=_get_bank_expense_account_id args: 'account.account', 'Bank Fees Account'
  • credit_account_id Many2one → account.account
    default=_get_credit_account_id args: 'account.account', 'RiBa Account'
  • credit_amount Float
    default=_get_credit_amount
  • credit_journal_id Many2one → account.journal
    default=_get_credit_journal_id domain=[('type', '=', 'bank')] args: 'account.journal', 'Credit Journal'
  • expense_amount Float
    args: 'Fees Amount'
Public methods (2)
  • create_move(self)
  • skip(self)

New fields (1)
  • due_date Date
Public methods (1)
  • due_date_settlement_confirm(self)

New fields (3)
  • file_name Char
    readonly=True
  • riba_txt Binary
    readonly=True args: 'File'
  • state Selection
    default='choose' args: (('choose', 'choose'), ('get', 'get'))
Public methods (1)
  • act_getfile(self)

New fields (1)
  • configuration_id Many2one → riba.configuration
    required=True string='Configuration' args: 'riba.configuration'
Public methods (1)
  • create_list(self)

New fields (13)
  • bank_account_id Many2one → account.account
    default=_get_bank_account_id domain=[('account_type', '=', 'asset_cash')] args: 'account.account', 'A/C Bank Account'
  • bank_amount Float
    args: 'Withdrawn Amount'
  • bank_expense_account_id Many2one → account.account
    default=_get_bank_expense_account_id args: 'account.account', 'Bank Fees Account'
  • config_type Selection
    default=_get_config_type args: [('sbf', 'Subject To Collection'), ('incasso', 'After Collection')], 'Issue Mode'
  • date Date
    help='If empty, the due date in the line will be used.' readonly=False
  • effects_account_id Many2one → account.account
    default=_get_effects_account_id args: 'account.account', 'Bills Account'
  • effects_amount Float
    default=_get_effects_amount args: 'Bills Amount'
  • expense_amount Float
    args: 'Fees Amount'
  • overdue_effects_account_id Many2one → account.account
    default=_get_overdue_effects_account_id args: 'account.account', 'Past Due Bills Account'
  • overdue_effects_amount Float
    default=_get_effects_amount args: 'Past Due Bills Amount'
  • past_due_journal_id Many2one → account.journal
    default=_get_past_due_journal_id domain=[('type', '=', 'bank')] args: 'account.journal', 'Past Due Journal'
  • riba_bank_account_id Many2one → account.account
    default=_get_riba_bank_account_id args: 'account.account', 'RiBa Account'
  • riba_bank_amount Float
    default=_get_effects_amount args: 'RiBa Amount'
Public methods (2)
  • create_move(self)
  • skip(self)

New fields (1)
  • date Date
    required=True string='Payment Date'
Public methods (1)
  • set_riba_payment_date(self)

New fields (3)
  • payment_date Date
    compute='_compute_payment_date' help="Defaults to the 'Payment date' in the RiBas.\nIf empty, the due date in each line will be used." readonly=False store=True
  • riba_ids Many2many → riba.slip
    comodel_name='riba.slip' default=<expr> readonly=True required=True string='Selected RiBas'
  • riba_line_ids Many2many → riba.slip.line
    comodel_name='riba.slip.line' compute='_compute_riba_line_ids' domain="['&',('slip_id', 'in', riba_ids),'|','&',('type', '=', 'sbf'),('state', '=', 'credited'),'&',('type', '=', 'incasso'),('state', '=', 'confirmed'),]" readonly=False store=True string='RiBa lines to be paid'
Public methods (1)
  • pay(self)

New fields (18)
  • acceptance_move_ids Many2many → account.move
    compute='_compute_acceptance_move_ids' string='Acceptance Entries' args: 'account.move'
  • company_id Many2one → res.company
    default=<expr> readonly=True required=True states={'draft': [('readonly', False)]} args: 'res.company', 'Company'
  • config_id Many2one → riba.configuration
    help='RiBa configuration to be used.' index=True readonly=True required=True states={'draft': [('readonly', False)]} string='Configuration' args: 'riba.configuration'
  • credit_move_id Many2one → account.move
    readonly=True args: 'account.move', 'Credit Entry'
  • date_accepted Date
    args: 'Acceptance Date'
  • date_created Date
    default=<expr> readonly=True args: 'Creation Date'
  • date_credited Date
    args: 'Credit Date'
  • date_paid Date
    help='Default date for payments.' readonly=True states={'credited': [('readonly', False)]} string='Payment Date'
  • date_past_due Date
    readonly=True args: 'Past Due Date'
  • line_ids One2many → riba.slip.line
    readonly=True states={'draft': [('readonly', False)]} args: 'riba.slip.line', 'slip_id', 'RiBa Due Dates'
  • name Char
    default=<expr> readonly=True required=True states={'draft': [('readonly', False)]} args: 'Reference'
  • past_due_move_ids Many2many → account.move
    compute='_compute_past_due_move_ids' string='Past Due Entries' args: 'account.move'
  • payment_ids Many2many → account.move.line
    compute='_compute_payment_ids' string='Payments' args: 'account.move.line'
  • registration_date Date
    default=<expr> help='Keep empty to use the current date.' readonly=True required=True states={'draft': [('readonly', False)], 'cancel': [('readonly', False)]}
  • state Selection
    default='draft' readonly=True args: [('draft', 'Draft'), ('accepted', 'Accepted'), ('credited', 'Credited'), ('paid', 'Paid'), ('past_due', 'Past Due'), ('cancel', 'Canceled')]
  • total_amount Float
    compute='_compute_total_amount' string='Amount'
  • type Selection
    readonly=True related='config_id.type' string='Type'
  • user_id Many2one → res.users
    default=<expr> readonly=True required=True states={'draft': [('readonly', False)]} args: 'res.users', 'User'
Public methods (12)
  • action_cancel_draft(self)
  • action_open_lines(self)
  • action_riba_due_date_settlement(self)
  • action_riba_export(self)
  • confirm(self)
  • riba_cancel(self)
  • riba_past_due(self)
  • settle_all_line(self)
  • test_accepted(self)
  • test_paid(self)
  • test_past_due(self)
  • test_state(self, state)

New fields (20)
  • acceptance_account_id Many2one → account.account
    string='Acceptance Account' args: 'account.account'
  • acceptance_move_id Many2one → account.move
    readonly=True string='Acceptance Entry' args: 'account.move'
  • amount Float
    compute='_compute_line_values'
  • bank_id Many2one → res.partner.bank
    string='Debtor Bank' args: 'res.partner.bank'
  • cig Char
    compute='_compute_cig_cup_values' size=256 string='CIG'
  • company_id Many2one → res.company
    readonly=True related='slip_id.company_id' related_sudo=False store=True string='Company' args: 'res.company'
  • config_id Many2one
    readonly=True related='slip_id.config_id' string='Configuration'
  • cup Char
    compute='_compute_cig_cup_values' size=256 string='CUP'
  • due_date Date
    readonly=True
  • iban Char
    readonly=True related='bank_id.acc_number' store=False string='IBAN'
  • invoice_date Char
    compute='_compute_line_values' size=256
  • invoice_number Char
    compute='_compute_line_values' size=256
  • move_line_ids One2many → riba.slip.move.line
    string='Credit Move Lines' args: 'riba.slip.move.line', 'riba_line_id'
  • partner_id Many2one → res.partner
    readonly=True string='Customer' args: 'res.partner'
  • past_due_move_id Many2one → account.move
    readonly=True string='Past Due Entry' args: 'account.move'
  • payment_ids Many2many → account.move.line
    compute='_compute_lines' string='Payments' args: 'account.move.line'
  • sequence Integer
    args: 'Number'
  • slip_id Many2one → riba.slip
    ondelete='cascade' required=True string='Slip' args: 'riba.slip'
  • state Selection
    readonly=True tracking=True args: [('draft', 'Draft'), ('confirmed', 'Confirmed'), ('credited', 'Credited'), ('paid', 'Paid'), ('past_due', 'Past Due'), ('cancel', 'Canceled')]
  • type Selection
    readonly=True related='slip_id.config_id.type' string='Type'
Public methods (6)
  • button_settle(self)
  • confirm(self)
  • move_line_id_payment_get(self)
  • riba_line_settlement(self, date=None)
    Create payment the acceptance move of each line in `self`. :param date: The created payment's date.
  • settle_riba_line(self)
  • test_reconciled(self)

New fields (3)
  • amount Float
    digits='Account'
  • move_line_id Many2one → account.move.line
    string='Credit Move Line' args: 'account.move.line'
  • riba_line_id Many2one → riba.slip.line
    ondelete='cascade' string='Slip Line' args: 'riba.slip.line'
Public methods (0)

No public methods.

STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/l10n-italy
PULL REQUEST
PULL REQUEST[19.0][MIG] l10n_it_riba_oca: Migration to 19.0 (#5090)