Point Of Sale - Change Payments

pos_payment_change
REPOSITORY
REPOSITORYOCA/pos
GIT
GIThttps://github.com/OCA/pos.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/pos/tree/17.0/pos_payment_change
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYPoint Of Sale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSVíctor Martínez, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/pos
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:02
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - point_of_sale
    - stock_account
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes_gs1_nomenclature
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - account
    - onboarding
    - analytic
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module extends the functionnality of the Odoo Point of Sale to
allow the cashier to change the payments of a PoS order.

This feature is usefull when the user realized that he did a mistake,
just after he marked the order as paid, or during the close of the
session, Only if entries has not been generated.

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_pos_order_form pos.order button Inherits point_of_sale.view_pos_pos_form
view_pos_payment_change_wizard_form pos.payment.change.wizard form New
view_res_config_settings_form res.config.settings block Inherits point_of_sale.res_config_settings_view_form
Models touched (6)

New fields (1)
  • payment_change_policy Selection
    default='refund' help="Payment Change Policy when users want to change the payment lines of a given PoS Order.\n* 'Refund and Resale': Odoo will refund the current Pos Order to cancel it, and create a new PoS Order with the correct payment lines.\n* 'Update Payments': Odoo will change payment lines.\n\nNote : In some countries the 'Update Payments' Option is not allowed by law, because orders history shouldn't not be altered." required=True selection=_PAYMENT_CHANGE_POLICY_SELECTION
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • change_payment(self, payment_lines)
    Change payment of a given order. payment_lines should be a list of data that are the argument of the Odoo Core function add_payment() Return a list of order ids, depending on the payment_change_policy of the related pos_config.

New fields (4)
  • amount_total Float
    readonly=True string='Total'
  • new_line_ids One2many → pos.payment.change.wizard.new.line
    comodel_name='pos.payment.change.wizard.new.line' inverse_name='wizard_id' string='New Payment Lines'
  • old_line_ids One2many → pos.payment.change.wizard.old.line
    comodel_name='pos.payment.change.wizard.old.line' inverse_name='wizard_id' readonly=True string='Old Payment Lines'
  • order_id Many2one → pos.order
    comodel_name='pos.order' readonly=True string='Order'
Public methods (2)
  • button_change_payment(self)
  • default_get(self, fields)
    @api.model

New fields (5)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 required=True
  • available_payment_method_ids Many2many → pos.payment.method
    comodel_name='pos.payment.method' related='wizard_id.order_id.session_id.payment_method_ids'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='new_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • new_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' domain="[('id', 'in', available_payment_method_ids)]" required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (1)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 readonly=True required=True
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='old_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • old_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' readonly=True required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (0)

No public methods.

New fields (1)
  • pos_payment_change_policy Selection
    readonly=False related='pos_config_id.payment_change_policy'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/pos
GIT
GIThttps://github.com/OCA/pos.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/pos/tree/16.0/pos_payment_change
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYPoint Of Sale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSAlexis de Lattre, Sylvain LE GAL, GitHub, Weblate, OCA-git-bot, Pierrick Brun, oca-ci, Olivier Nibart, Julen Zárate Ruiz
WEBSITE
WEBSITEhttps://github.com/OCA/pos
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:40
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - point_of_sale
    - stock_account
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes_gs1_nomenclature
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - account
    - analytic
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_pos_order_form pos.order button Inherits point_of_sale.view_pos_pos_form
view_pos_payment_change_wizard_form pos.payment.change.wizard form New
view_res_config_settings_form res.config.settings xpath Inherits point_of_sale.res_config_settings_view_form
Models touched (6)

New fields (1)
  • payment_change_policy Selection
    default='refund' help="Payment Change Policy when users want to change the payment lines of a given PoS Order.\n* 'Refund and Resale': Odoo will refund the current Pos Order to cancel it, and create a new PoS Order with the correct payment lines.\n* 'Update Payments': Odoo will change payment lines.\n\nNote : In some countries the 'Update Payments' Option is not allowed by law, because orders history shouldn't not be altered." required=True selection=_PAYMENT_CHANGE_POLICY_SELECTION
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • change_payment(self, payment_lines)
    Change payment of a given order. payment_lines should be a list of data that are the argument of the Odoo Core function add_payment() Return a list of order ids, depending on the payment_change_policy of the related pos_config.

New fields (4)
  • amount_total Float
    readonly=True string='Total'
  • new_line_ids One2many → pos.payment.change.wizard.new.line
    comodel_name='pos.payment.change.wizard.new.line' inverse_name='wizard_id' string='New Payment Lines'
  • old_line_ids One2many → pos.payment.change.wizard.old.line
    comodel_name='pos.payment.change.wizard.old.line' inverse_name='wizard_id' readonly=True string='Old Payment Lines'
  • order_id Many2one → pos.order
    comodel_name='pos.order' readonly=True string='Order'
Public methods (2)
  • button_change_payment(self)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 required=True
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='new_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • new_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' domain=<expr> required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (1)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 readonly=True required=True
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='old_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • old_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' readonly=True required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (0)

No public methods.

New fields (1)
  • pos_payment_change_policy Selection
    readonly=False related='pos_config_id.payment_change_policy'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/pos
GIT
GIThttps://github.com/OCA/pos.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/pos/tree/15.0/pos_payment_change
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYPoint Of Sale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSmanu, Weblate, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/pos
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:29
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - point_of_sale
    - stock_account
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - account
    - analytic
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_pos_config_form pos.config xpath Inherits point_of_sale.pos_config_view_form
view_pos_order_form pos.order button Inherits point_of_sale.view_pos_pos_form
view_pos_payment_change_wizard_form pos.payment.change.wizard form New
Models touched (5)

New fields (1)
  • payment_change_policy Selection
    default='refund' help="Payment Change Policy when users want to change the payment lines of a given PoS Order.\n* 'Refund and Resale': Odoo will refund the current Pos Order to cancel it, and create a new PoS Order with the correct payment lines.\n* 'Update Payments': Odoo will change payment lines.\n\nNote : In some countries the 'Update Payments' Option is not allowed by law, because orders history shouldn't not be altered." required=True selection=_PAYMENT_CHANGE_POLICY_SELECTION
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • change_payment(self, payment_lines)
    Change payment of a given order. payment_lines should be a list of data that are the argument of the Odoo Core function add_payment() Return a list of order ids, depending on the payment_change_policy of the related pos_config.

New fields (4)
  • amount_total Float
    readonly=True string='Total'
  • new_line_ids One2many → pos.payment.change.wizard.new.line
    comodel_name='pos.payment.change.wizard.new.line' inverse_name='wizard_id' string='New Payment Lines'
  • old_line_ids One2many → pos.payment.change.wizard.old.line
    comodel_name='pos.payment.change.wizard.old.line' inverse_name='wizard_id' readonly=True string='Old Payment Lines'
  • order_id Many2one → pos.order
    comodel_name='pos.order' readonly=True string='Order'
Public methods (2)
  • button_change_payment(self)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 required=True
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='new_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • new_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' domain=<expr> required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' required=True
Public methods (1)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 readonly=True required=True
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='old_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • old_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' readonly=True required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' required=True
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/pos
GIT
GIThttps://github.com/OCA/pos.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/pos/tree/14.0/pos_payment_change
VERSION
VERSION 1.0.4
CATEGORY
CATEGORYPoint Of Sale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSStéphane Bidoul, oca-travis, Weblate, OCA-git-bot, David, fshah, Kevin Luna, Ivan, Julien Guenat
WEBSITE
WEBSITEhttps://github.com/OCA/pos
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:40:49
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - point_of_sale
    - stock_account
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - account
    - analytic
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_pos_config_form pos.config xpath Inherits point_of_sale.pos_config_view_form
view_pos_order_form pos.order button Inherits point_of_sale.view_pos_pos_form
view_pos_payment_change_wizard_form pos.payment.change.wizard form New
Models touched (5)

New fields (1)
  • payment_change_policy Selection
    default='refund' help="Payment Change Policy when users want to change the payment lines of a given PoS Order.\n* 'Refund and Resale': Odoo will refund the current Pos Order to cancel it, and create a new PoS Order with the correct payment lines.\n* 'Update Payments': Odoo will change payment lines.\n\nNote : In some countries the 'Update Payments' Option is not allowed by law, because orders history shouldn't not be altered." required=True selection=_PAYMENT_CHANGE_POLICY_SELECTION
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • change_payment(self, payment_lines)
    Change payment of a given order. payment_lines should be a list of data that are the argument of the Odoo Core function add_payment() Return a list of order ids, depending on the payment_change_policy of the related pos_config.

New fields (4)
  • amount_total Float
    readonly=True string='Total'
  • new_line_ids One2many → pos.payment.change.wizard.new.line
    comodel_name='pos.payment.change.wizard.new.line' inverse_name='wizard_id' string='New Payment Lines'
  • old_line_ids One2many → pos.payment.change.wizard.old.line
    comodel_name='pos.payment.change.wizard.old.line' inverse_name='wizard_id' readonly=True string='Old Payment Lines'
  • order_id Many2one → pos.order
    comodel_name='pos.order' readonly=True string='Order'
Public methods (2)
  • button_change_payment(self)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 required=True string='Amount'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='new_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • new_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' domain=<expr> required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' required=True
Public methods (1)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 readonly=True required=True string='Amount'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='old_payment_method_id.company_id.currency_id' store=True string='Company Currency'
  • old_payment_method_id Many2one → pos.payment.method
    comodel_name='pos.payment.method' readonly=True required=True string='Payment Method'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' required=True
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/pos
GIT
GIThttps://github.com/OCA/pos.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/pos/tree/12.0/pos_payment_change
VERSION
VERSION 1.1.1
CATEGORY
CATEGORYPoint Of Sale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSSylvain LE GAL, GitHub, Ivàn Todorovich, OCA Transbot, oca-travis, Weblate, OCA-git-bot, Florent THOMAS, r-sierra
WEBSITE
WEBSITEhttps://github.com/OCA/pos
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:13
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - point_of_sale
    - stock_account
    - stock
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - account
    - analytic
    - portal
    - http_routing
    - digest
    - web_editor
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_pos_config_form pos.config xpath Inherits point_of_sale.pos_config_view_form
view_pos_order_form pos.order button Inherits point_of_sale.view_pos_pos_form
view_pos_payment_change_wizard_form pos.payment.change.wizard form New
Models touched (5)

New fields (1)
  • payment_change_policy Selection
    default='refund' help="Payment Change Policy when users want to change the payment lines of a given PoS Order.\n* 'Refund and Resale': Odoo will refund the current Pos Order to cancel it, and create a new PoS Order with the correct payment lines.\n* 'Update Payments': Odoo will change payment lines.\n\nNote : In some countries the 'Update Payments' Option is not allowed by law, because orders history shouldn't not be altered." required=True selection=_PAYMENT_CHANGE_POLICY_SELECTION
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • change_payment(self, payment_lines)
    @api.multi
    Change payment of a given order. payment_lines should be a list of data that are the argument of the Odoo Core function add_payment() Return a list of order ids, depending on the payment_change_policy of the related pos_config.

New fields (4)
  • amount_total Float
    readonly=True string='Total'
  • new_line_ids One2many → pos.payment.change.wizard.new.line
    comodel_name='pos.payment.change.wizard.new.line' inverse_name='wizard_id' string='New Payment Lines'
  • old_line_ids One2many → pos.payment.change.wizard.old.line
    comodel_name='pos.payment.change.wizard.old.line' inverse_name='wizard_id' readonly=True string='Old Payment Lines'
  • order_id Many2one → pos.order
    comodel_name='pos.order' readonly=True string='Order'
Public methods (2)
  • button_change_payment(self)
    @api.multi
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 required=True string='Amount'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='new_journal_id.currency_id' store=True string='Company Currency'
  • new_journal_id Many2one → account.journal
    comodel_name='account.journal' domain=<expr> required=True string='Journal'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (1)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 readonly=True required=True string='Amount'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='old_journal_id.currency_id' store=True string='Company Currency'
  • old_journal_id Many2one → account.journal
    comodel_name='account.journal' readonly=True required=True string='Journal'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/pos
GIT
GIThttps://github.com/OCA/pos.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/pos/tree/11.0/pos_payment_change
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYPoint Of Sale
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), GRAP
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), GRAP
COMMITTERS
COMMITTERSOCA-git-bot, oca-ci, Daniel Duque
WEBSITE
WEBSITEhttps://github.com/OCA/pos
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:23:55
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - point_of_sale
    - stock_account
    - stock
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - barcodes
    - web_planner
    - account
    - analytic
    - portal
    - http_routing
    - web_editor
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
view_pos_config_form pos.config xpath Inherits point_of_sale.pos_config_view_form
view_pos_order_form pos.order button Inherits point_of_sale.view_pos_pos_form
view_pos_payment_change_wizard_form pos.payment.change.wizard form New
Models touched (5)

New fields (1)
  • payment_change_policy Selection
    default='refund' help="Payment Change Policy when users want to change the payment lines of a given PoS Order.\n* 'Refund and Resale': Odoo will refund the current Pos Order to cancel it, and create a new PoS Order with the correct payment lines.\n* 'Update Payments': Odoo will change payment lines.\n\nNote : In some countries the 'Update Payments' Option is not allowed by law, because orders history shouldn't not be altered." required=True selection=_PAYMENT_CHANGE_POLICY_SELECTION
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • change_payment(self, payment_lines)
    @api.multi
    Change payment of a given order. payment_lines should be a list of data that are the argument of the Odoo Core function add_payment() Return a list of order ids, depending on the payment_change_policy of the related pos_config.

New fields (4)
  • amount_total Float
    readonly=True string='Total'
  • new_line_ids One2many → pos.payment.change.wizard.new.line
    comodel_name='pos.payment.change.wizard.new.line' inverse_name='wizard_id' string='New Payment Lines'
  • old_line_ids One2many → pos.payment.change.wizard.old.line
    comodel_name='pos.payment.change.wizard.old.line' inverse_name='wizard_id' readonly=True string='Old Payment Lines'
  • order_id Many2one → pos.order
    comodel_name='pos.order' readonly=True string='Order'
Public methods (2)
  • button_change_payment(self)
    @api.multi
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 required=True string='Amount'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='new_journal_id.currency_id' store=True string='Company Currency'
  • new_journal_id Many2one → account.journal
    comodel_name='account.journal' domain=<expr> required=True string='Journal'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (1)
  • default_get(self, fields)
    @api.model

New fields (4)
  • amount Monetary
    currency_field='company_currency_id' default=0.0 readonly=True required=True string='Amount'
  • company_currency_id Many2one → res.currency
    comodel_name='res.currency' help='Utility field to express amount currency' readonly=True related='old_journal_id.currency_id' store=True string='Company Currency'
  • old_journal_id Many2one → account.journal
    comodel_name='account.journal' readonly=True required=True string='Journal'
  • wizard_id Many2one → pos.payment.change.wizard
    comodel_name='pos.payment.change.wizard' ondelete='cascade' required=True
Public methods (0)

No public methods.

STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/pos
PULL REQUEST
PULL REQUEST[18.0][MIG] pos_payment_change: Migration to 18.0 (#1573)