TIP: You can type at any time to perform a new search.
Point of Sale online payment
pos_online_payment · odoo/odoo
Security findings
Migration considerations
- Raw `cr.execute()` INSERT/UPDATE/DELETE bypasses the ORM (no compute/constrains/tracking/mail): `SELECT id FROM pos_order WHERE id = %s FOR UPDATE` - re-check the table/column names still match after upgrading. migration-raw-sql-write · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- odoo/odoo · module folder
- Module version
- 0.1.0
- Category
- Uncategorized
- Folder size
- 1.08 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- Yes
- Website
- None
- Last tracking update
- 2026-09-28 18:31:21
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- odoo, Odoo Translation Bot, Christophe Matthieu, Victor Feyens, Tiffany Chang (tic), Gorash, william-andre, Antoine Vandevenne (anv), David Monnom (moda), Pedram (PEBR), Dylan Kiss (dyki), tong-odoo, Sarah Bellefroid, Louis Travaux, Max Whale, parp-odoo, Xavier Luyckx (xlu), Hesham Saleh, David Monnom, Michaël Mattiello, anko-odoo, dhruv, vlst-odoo, Guillaume V, Meet Jivani [MEJI], sjai-odoo, Julien Launois (jula), path-odoo, Traina Ludo, rpka-odoo, Stephane Vanmeerhaeghe (stva), abhk-odoo, adgu-odoo, Shubham Agarwal(shag), jean (jebou), Julien Piron, Jean Schoenlaub
Code Analysis
Views touched (11)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
pay |
pay | ir.ui.view | qweb | New |
pay_confirmation |
pay_confirmation | ir.ui.view | qweb | New |
pay_summary |
pay_summary | ir.ui.view | qweb | New |
payment_transaction_form |
payment.transaction.form | payment.transaction | form | Inherits payment.payment_transaction_form |
pos_payment_method_view_form_inherit_pos_online_payment |
pos.payment.method.form.inherit.pos_online_payment | pos.payment.method | form | Inherits point_of_sale.pos_payment_method_view_form |
pos_payment_method_view_tree_inherit_pos_online_payment |
pos.payment.method.list.inherit.pos_online_payment | pos.payment.method | list | Inherits point_of_sale.pos_payment_method_view_tree |
pos_payment_status |
POS Payment Status | ir.ui.view | qweb | New |
pos_state_header |
POS State Header | ir.ui.view | qweb | Inherits payment.state_header |
res_config_settings_view_form |
res.config.settings.view.form.inherit.pos.online.payment | res.config.settings | form | Inherits point_of_sale.res_config_settings_view_form |
view_account_payment_form_inherit_pos_online_payment |
view.account.payment.form.inherit.pos_online_payment | account.payment | form | Inherits account.view_account_payment_form |
view_pos_payment_form |
pos.payment.form | pos.payment | form | Inherits point_of_sale.view_pos_payment_form |
HTTP endpoints (3)
| Route(s) | Handler | Auth | Type | Methods | Flags |
|---|---|---|---|---|---|
/pos/pay/<int:pos_order_id> |
PaymentPortal.pos_order_pay |
public | http | GET | sudo website |
/pos/pay/confirmation/<int:pos_order_id> |
PaymentPortal.pos_order_pay_confirmation |
public | http | GET | sudo website |
/pos/pay/transaction/<int:pos_order_id> |
PaymentPortal.pos_order_pay_transaction |
public | jsonrpc | ALL | sudo website |
Models touched (6)
New fields (1)
-
pos_order_idMany2one → pos.orderhelp='The Point of Sale order linked to this payment'readonly=Truestring='POS Order' args: 'pos.order'
-
action_view_pos_order(self)Return the action for the view of the pos order linked to the payment.
New fields (1)
-
pos_order_idMany2one → pos.orderhelp='The Point of Sale order linked to the payment transaction'readonly=Truestring='POS Order' args: 'pos.order'
-
action_view_pos_order(self)Return the action for the view of the pos order linked to the transaction.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (2)
-
next_online_payment_amountFloatdigits=0required=Falsestring='Next online payment amount to pay' -
online_payment_method_idMany2one → pos.payment.methodcompute='_compute_online_payment_method_id' args: 'pos.payment.method'
-
get_amount_unpaid(self) -
get_and_set_online_payments_data(self, next_online_payment_amount=False)Allows to update the amount to pay for the next online payment and get online payments already made and how much remains to be paid. If next_online_payment_amount is different than False, updates the next online payment amount, otherwise, the next online payment amount is unchanged. If next_online_payment_amount is 0 and the order has no successful online payment, is in draft state, is not a restaurant order and the pos.config has no trusted config, then the order is deleted from the database, because it was probably added for the online payment flow.
New fields (1)
-
online_account_payment_idMany2one → account.paymentreadonly=Truestring='Online accounting payment' args: 'account.payment'
-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (3)
-
has_an_online_payment_providerBooleancompute='_compute_has_an_online_payment_provider'readonly=True -
online_payment_provider_idsMany2many → payment.providerdomain="[('is_published', '=', True)]"string='Allowed Providers' args: 'payment.provider' -
typeSelectionondelete={'online': 'cascade'}selection_add=[('online', 'Online')]
-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
Loading…
Loading…
Loading…