TIP: You can type at any time to perform a new search.
Sale payment sheet
sale_payment_sheet · OCA/sale-workflow
- Repository
- OCA/sale-workflow · module folder · Try on Runboat
- Module version
- 1.0.0
- Category
- Account
- Folder size
- 0.14 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/sale-workflow
- Last tracking update
- 2026-08-07 08:42:48
- Authors
- Odoo Community Association (OCA), Tecnativa
- Maintainers
- Odoo Community Association (OCA), Tecnativa
- Committers
- Víctor Martínez, Carlos Roca, OCA-git-bot, oca-ci
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- sale_payment_sheet_financial_risk, sale_planner_calendar
- Description
This module allows salesmen to register payments in a new document called payment sheet, accessible only with the sales permission. This sheet includes the paid amount, and an optional reference to which invoice(s) is(are) being paid. This payment sheet will generate a bank statement when confirmed.
Code Analysis ⓘ
Views touched (7)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
report_sale_payment_sheet |
report_sale_payment_sheet | ir.ui.view | qweb | New |
sale_invoice_payment_wiz |
Sale invoice payment wizard | sale.invoice.payment.wiz | form | New |
view_invoice_tree |
sale.payment.sheet.account.invoice.tree | account.move | list | New |
view_sale_payment_sheet_form |
sale.payment.sheet.form | sale.payment.sheet | form | New |
view_sale_payment_sheet_search |
sale.payment.sheet.search | sale.payment.sheet | search | New |
view_sale_payment_sheet_tree |
sale.payment.sheet.tree | sale.payment.sheet | list | New |
view_users_form |
res.users | form | Inherits base.view_users_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (5)
New fields (1)
-
commercial_journal_idsMany2many → account.journalcomodel_name='account.journal'string='Allowed journals for commercial'
No public methods.
New fields (9)
-
amount_residualMonetaryrelated='invoice_id.amount_residual' -
amount_totalMonetaryrelated='invoice_id.amount_total' -
currency_idMany2one → res.currencyrelated='invoice_id.currency_id' args: 'res.currency' -
invoice_dateDaterelated='invoice_id.invoice_date' -
invoice_date_dueDaterelated='invoice_id.invoice_date_due' -
invoice_idMany2one → account.moveargs: 'account.move' -
is_selectedBooleandefault=True -
stateSelectionrelated='invoice_id.state' -
wiz_idMany2one → sale.invoice.payment.wizondelete='cascade' args: 'sale.invoice.payment.wiz'
No public methods.
New fields (8)
-
amountMonetarycompute='_compute_amount'currency_field='currency_id'readonly=Falserequired=Truestore=True -
commercial_journal_idsMany2manyrelated='user_id.commercial_journal_ids' -
currency_idMany2one → res.currencycompute='_compute_currency'string='Currency' args: 'res.currency' -
journal_idMany2one → account.journalcomodel_name='account.journal'required=Truestring='Journal' -
partner_idMany2one → res.partnercomodel_name='res.partner' -
refCharstring='Reference' -
user_idMany2one → res.usersdefault=<expr>required=Falsestring='Responsible' args: 'res.users' -
wiz_line_idsOne2many → sale.invoice.payment.line.wizargs: 'sale.invoice.payment.line.wiz', 'wiz_id'
-
create_sale_invoice_payment_sheet(self) -
default_get(self, fields_list)@api.model
New fields (13)
-
amount_totalMonetarycompute='_compute_amount_total'store=Truestring='Total' -
commercial_journal_idsMany2manyrelated='user_id.commercial_journal_ids' -
company_idMany2one → res.companyrelated='journal_id.company_id'store=Truestring='Company' args: 'res.company' -
currency_idMany2one → res.currencycompute='_compute_currency'string='Currency' args: 'res.currency' -
dateDatecopy=Falsedefault=fields.Date.context_todayindex=Truerequired=True -
group_linesSelectionselection=[('ref', 'Reference')]string='Group statement lines by' -
journal_idMany2one → account.journaldefault=<expr>required=Truestring='Journal' args: 'account.journal' -
line_idsOne2many → sale.payment.sheet.linecopy=Truestring='Sheet lines' args: 'sale.payment.sheet.line', 'sheet_id' -
nameCharcompute='_compute_name'copy=Falsestore=Truestring='Reference' -
referenceCharcopy=Falsestring='External Reference' -
stateSelectioncopy=Falsedefault='open'required=Truestring='Status' args: [('open', 'New'), ('confirm', 'Validated')] -
statement_idMany2one → account.bank.statementcomodel_name='account.bank.statement'string='Bank statement' -
user_idMany2one → res.usersdefault=<expr>required=Falsestring='Responsible' args: 'res.users'
-
button_bank_statement(self)Action to open bank statement linked -
button_confirm_sheet(self) -
button_reopen(self) -
unlink_except_open(self)@api.ondelete(at_uninstall=False)
New fields (14)
-
amountMonetarycompute='_compute_amount'currency_field='journal_currency_id'inverse='_inverse_amount'readonly=Falsestore=True -
company_idMany2one → res.companyrelated='sheet_id.company_id'store=Truestring='Company' args: 'res.company' -
dateDatedefault=<expr>required=True -
invoice_idMany2one → account.movecomodel_name='account.move'index=Truestring='Invoice' -
journal_currency_idMany2one → res.currencyhelp='Utility field to express amount currency'related='sheet_id.currency_id'string="Journal's Currency" args: 'res.currency' -
nameCharcompute='_compute_name'readonly=Falsestore=Truestring='Label' -
noteTextstring='Notes' -
partner_idMany2one → res.partnerstring='Partner' args: 'res.partner' -
refCharstring='Reference' -
sequenceIntegerdefault=1help='Gives the sequence order when displaying a list of payment sheet lines.'index=True -
sheet_idMany2one → sale.payment.sheetindex=Trueondelete='cascade'required=Truestring='Sheet' args: 'sale.payment.sheet' -
stateSelectionrelated='sheet_id.state'string='Status' -
statement_line_idMany2one → account.bank.statement.lineindex=Truestring='Statement Line' args: 'account.bank.statement.line' -
transaction_typeSelectioncompute='_compute_transaction_type' args: [('partial', 'Partial payment'), ('full', 'Full payment')]
-
unlink_except_statement_line(self)@api.ondelete(at_uninstall=False)
Loading…
Loading…
Loading…
Loading…