- Go to Point of Sale > Configuration > Settings & enable "Cash Rounding"
- Configure POS:
* Enable Invoicing
* Enable "Cash Rounding" and "Only on cash methods"
* Select 0.05 HALF-UP Rounding Method
- Start POS session
- Select a Product and change its Price to a value that should be rounded (i.e. $ 16.51)
- Select a Customer
- Proceed to Payment
- Enable Invoice
- Select Bank Payment method
- Validate
No rounding is applied as expected, but the rounding line still appears on printed Invoice.
opw-2449222
closesodoo/odoo#65345
X-original-commit: d207a0fbe63c40eb879964ae6fb6c742d276fa5e
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Signed-off-by: Anh Thao PHAM <kitan191@users.noreply.github.com>
For now, when you are selling products in the point of sales, the stock
is affected once the order is validated or the session closed. But in
some case, you don't have the product in your store, and you have to
plan a delivery for the order.
To be able to plan a delivery, you can now choose the warehouse in POS
Config and the routes of your warehouse will be applied. You can also
set a specific rule on your POS Config if you've enabled the
multi-step-routes in the inventory module
closesodoo/odoo#58506
Task-id: 2082104
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
When the customer use Anglo-Saxon stock valuation and have already
reconciled some `account.move.line` related to an open `pos.session`,
closing the session will fail.
(You are trying to reconcile some entries that are already reconciled)
Now, the reconciled lines are ignored.
The inventory valuation is still correct as these lines were already
reconciled.
opws:
2374559
2376187
2377958
2391395
2425197
closesodoo/odoo#64668
X-original-commit: 3f939af62df65dcb9c8cdd2ecc3ac3d4c2983a2f
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
STEPS:
* configure rounding:
- cash_rounding=True
- only_round_cash_method=True
- round method: 1.0 Down
* open a session
* add products with subtotal in decimals (such as 6.35)
* select Bank payment method and process the order
BEFORE: error "You have to round your payments lines"
AFTER: order is processed and marked as paid
---
https://github.com/odoo/odoo/commit/42425996e36d9cb1fc1391402cf6d00df4aea019
opw-2426027
closesodoo/odoo#64351
X-original-commit: db0b65e547defe3d49c1a31c4671f546aa5156e8
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Steps to reproduce the bug:
- Let's consider a sales team ST and a POS session PS
- Set ST on PS
- Open PS and make an invoice I from an order
Bug:
The sales team set on I was not ST
opw:2418806
closesodoo/odoo#63898
X-original-commit: 61e5389236ad767827ef2fe039aa78b20848298e
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Journal entries coming from PoS are based in UTC instead of local time.
This commit is an improvement over 23d3856f2a4323097f51254b5e32c517d45bfe66
to add the timezone info
opw-2371863
closesodoo/odoo#63075
X-original-commit: 30ee2ebae3275de259eff6019d3a4582ef86a729
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
With this commit, all instances of errors being raised inside
`BaseModel.unlink` overrides are moved into methods decorated with
`api.ondelete` which is safer.
When you are configuring the picking type used in the point of sale to
not use existing lots and not create lots, the POS still ask you to
encode a lot for product tracked, and the picking created don't use
existing lots in stock because no reservation is made when a picking is
valaidated from point of sale.
As we want to reserve only in this specific case, we are now checking
the options on the picking type to reserve or not product tracked.
We are also not asking anymore for lot or serial number if picking type
is configured that way.
OPW-2377008
closesodoo/odoo#62857
X-original-commit: f9dd1d88d0d24914028464cc12b69ff0878346f8
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Instances like deleting a tax used in a pos.order before closing a
session is allowed but it renders error when closing the session
because of imbalance move lines. In this commit, we are adding
a 'balancing' line in the move before it is created. This ensures
the closing of pos session. The introduced move line is named
'Difference at closing PoS session' and is a receivable making it
easy to find and can be reconciled.
closesodoo/odoo#62308
X-original-commit: 7b9545387962981b5729318e2bbc5714dcbac68c
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Signed-off-by: Joseph Caburnay (jcb) <caburj@users.noreply.github.com>
* Do not load x records from database when one is enough.
Earlier SQL returns when a matching record is found.
* any() can receive a generator as argument
Do not explicitly cast a generator as list when it is not needed.
Task Id: 2328664
COM PR: https://github.com/odoo/odoo/pull/55525
ENT PR: https://github.com/odoo/enterprise/pull/12250
Otherwise, they may crash or be incorrectly verified when
creating/updating recordsets containing multiple records.
Also improve the constraint error messages to be more detailed.
When possible, use a sql constraint instead to speed up the records
validation.
Task Id: 2328664
COM PR: https://github.com/odoo/odoo/pull/55525
ENT PR: https://github.com/odoo/enterprise/pull/12250
When a session is created and no orders can be created because of
misconfiguration. We should be able to close the session.
When a chart of account is installed, we should not try to create
payment methods on config that have active session as it is forbidden.
Check that there is at least one payment method configured when
launching a session.
closesodoo/odoo#61954
X-original-commit: 17bc5d31722c1a90b03ada16f8e100b8713095ca
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
- Create a POS session
- Sell some items
- Close the session, go to the closing page
- Duplicate the browser tab
- Close the session in tab 1
- Close the session in tab 2
The journal entries are created twice.
There should be a server check before closing the session.
opw-2379278
closesodoo/odoo#61860
X-original-commit: 0ba535c5123fecb410fa7546b5bb39a52884ca40
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Before this commit, if a customer/supplier has an invoice address, when
creating an invoice/bill it's the invoice address that will be
identified as the customer/supplier and that will have its rank
increased and not the commercial partner.
Now, the rank increment is done to the commercial partner as well.
opw-2377870
closesodoo/odoo#61778
X-original-commit: dbf042611ccb134a220704d6b775aab650364ca2
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Before this fix, in the pos.payment form, you were able
to select any pos.payment.method. Saving with a
pos.payment.method that is not allowed in the
pos.config of the session caused a traceback.
opw-2372025
closesodoo/odoo#61728
X-original-commit: ff648a0ace9cf72274211662707e7ee33fc73252
Related: odoo/enterprise#14731
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
The open_action_with_context was not using _for_xml_id, producing an
error when reading the action content.
In open_action, the action_name was taken from the context and needs
sanity checks. Ensure only actions from the account module can be
read and only if the user has access to the target model.
This is a limitation of the previous behaviour but, at the moment, all
known calls are made refering to an action from the account module.
Limit the scope of this method while the 14.0 is still early to avoid
having a door open to ready any action, and difficult to close later.
Remove old action fetching from the context in create_move that is no
longer used.
closesodoo/odoo#61602
X-original-commit: a39e94f7e4dc74e850650ac90bbc5f85af130bc8
Related: odoo/enterprise#14695
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
Co-authored-by: Xavier Morel <xmo@odoo.com>
Unify the behavior for smart buttons on res.partner view form
Let's consider generic records R on a specific model M
- All the R of the children and archived children of a contact C must be counted in smart button of M
in the form of C
- Clicking on the smart button of a contact C must display all R of the children and archived
children of C
closesodoo/odoo#61241
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
When the invoice is fully reconciled but not using payments, set the 'paid' status on invoices.
closesodoo/odoo#61339
X-original-commit: 052324cca4ec8682f065a4158e86fc113b0242e0
Related: odoo/enterprise#14590
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
When you are selling a kit in point of sale, the genrated picking is not
validated.
It is not validated, because the moves are not confirmed, before we set
a quantity done, and so the moves are not exploded and it result to the
impossibility of calling action_done on the picking.
To avoid this problem, we are confirming the moves created, and then set
the quantity done on the moves generated from the
confirmation.
closesodoo/odoo#61260
X-original-commit: 4f2f347c8b21b78efaa702d1b3c91b7f88dd88e0
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
- Use the tax tags returned by the compute_all for the base lines instead of recomputing them separately
Splitting the computation caused inconsistent computation in some cases between the base and tax lines (one could select the refund distribution, while the other selected the invoice one).
- Pass the is_refund parameter to True if either the quantity or the price is negative (but not both)
Those negative lines should correspond to refund repartition (double-checked with the Belgian tax report in v12).
OPW 2351412
closesodoo/odoo#60925
X-original-commit: 7827581b208b464638a91044462d0bc497025326
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Open POS
Make some cash transaction
Close POS
Repeat for some days and close the session
Cash statement lines will be saved with the closing date, even
if the payment entries are saved with their payment date
opw-2347645
closesodoo/odoo#60385
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
In 857c485175 currency_rate precision was changed to keep more digits
for the currency rate.
This commit reflects that in the point of sale.
Also this change fixes an update issue that could recreate sale.report
uncomplete because:
=> point_of_sale and pos_sale had different definition of
pos.order().currency_rate field
=> this caused the field to be recreated (to change from double precison
to numeric) on a given module update (pos_hr)
=> this caused the sale.report view to be dropped
=> this caused the sale.report view to be recreated before modules (that
added fields to sale.report) were fully loaded
opw-2306523
closesodoo/odoo#60110
X-original-commit: a73030b3d71d835145b01b81515a21e23187687c
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Starting this commit: 8f57863707
regular pos User now don't have a read access to ir.property model.
Because of this, if a user opens a session, he won't be able to close
it. We sudo the search to stock.move (because the query parameters
requires reading from ir.property) to make sure that closing a session
will succeed.
closesodoo/odoo#59712
X-original-commit: 5e2763fdc94b63eee637f9679f8ea3a07beb74ce
Related: odoo/enterprise#13981
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Signed-off-by: Joseph Caburnay (jcb) <caburj@users.noreply.github.com>
- Create companies A & B
- Switch to company B
- Open a POS session in company B, but do not close it
- Switch to company A
- Set a Lock Date for Non-Advisers
The error message 'Please close all the point of sale sessions...' is
raised.
The message shouldn't be raised since the session is not in the company
we are setting a lock date.
We filter the session based on the company.
opw-2351930
closesodoo/odoo#59529
X-original-commit: a1445bf45fadf21a4af5dd2791efda4a4450a825
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Steps to reproduce the bug:
- Create POS (P)
- Create journal (J) and link it to (P)
- Open a new session in (P)
- Exit the session without closing it
- Delete (J)
Bug:
You cannot close the session nor assign a new journal to the POS.
opw:2347169
closesodoo/odoo#59097
X-original-commit: 636f1358e72e65a3210c95c60d1703c9cbd914dc
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Signed-off-by: backspac <backspac@users.noreply.github.com>
And other reported English mistakes in source string
Courtesy of Transifex translators
And remove leftover from gengo
closesodoo/odoo#59022
X-original-commit: 26efc84c5cac47a2cc83d7b084f8b71528fec6c7
Related: odoo/enterprise#13781
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
When registering payment, we display now the date + time instead just the date.
closesodoo/odoo#58667
X-original-commit: eb534d078dcdf58aedf09131dd57c8f6da69a910
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
We are are here facilitating the inheritance of the functions that
create the reurn orders
closesodoo/odoo#57796
X-original-commit: ebb11e18eef7f0a0031f01389116a24de868b6b3
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
We are using the reference to `pos.order` on adding the message to chatter, While we were using the name in the message.
With this commit, we make record name consistent with the record reference being added to the chatter.
closesodoo/odoo#50786
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Virtual keyboard has been removed in c6397ab, but the field to activate
it still existed. We remove it from the view and delete the field.
closesodoo/odoo#57794
X-original-commit: 0979435d6612f4de8b7c94e09be1302cec53e706
Related: odoo/upgrade#1773
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
The only reason the customer facing display was a field was that the
customers were able to modify it. As this feature is has been removed,
we can turn it into a Qweb template.
We also remove customer_facing_display.scss as it wasn't used anymore
When we are creating invoices from a pos order, we should be able to
extend the values used to create the invoices, when you have custom
fields or module extention.
This was possible in versio 13.0 and accidentally removed in the
following commit.
closesodoo/odoo#57023
X-original-commit: 352ee90eb2a26aff8454846f6db719fbaae0ebd7
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Have a payment method [PAYMENT] on POS with split transactions enabled.
Make a POS sale to a specific customer, pay with [PAYMENT].
Close and validate the session.
While the accounting entry for the POS sale will have the partner set,
this is not the case for the entries related to the payment.
opw-2307973
closesodoo/odoo#56142
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
HTTPS had been disabled on SaaS to allow the use of the IoT Box that
had no valid SSL certificate. As of V13.0, IoT Boxes connected to
Enterprise DBs have a valid certificate. POS can then use HTTPS.
Nginx is configured to redirect all requests to `/pos/web` to HTTP,
so we change the POS URL to `/pos/ui`, except when using a Six
payment terminal as it only works in HTTP.
closesodoo/odoo#56933
Taskid: 2191878
X-original-commit: 8aee4992778fee5e2f146c4cff8b35e83c7f56b3
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Signed-off-by: Antoine Prieëls <aprieels@users.noreply.github.com>
As long as the payment is not validated, the cashier can add products
to the order, even if the payment has been completed. The amount
authorized can be adjusted if the payment interface implements the
canBeAdjusted method.
closesodoo/odoo#56656
Taskid: 2117032
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
A single anglo saxon line was created in the pos.session journal
entries, even if some products were returned. We now distinguish
positive from negative lines.
E.g. Selling 10 Product1 (cost=10) and returning 5 Product1 used to
create the following line:
```
Stock Interim Account (Delivered) 0 50
```
and now creates the following lines:
```
Stock Interim Account (Delivered) 0 100
Stock Interim Account (Delivered) 50 0
```
Task ID: 2126521
closesodoo/odoo#55086
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
This commit switch the cash control opening mangement from the backend to the front end of the point of sale.
task_id: 2258817
closesodoo/odoo#55741
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
1. Introduce an option in restaurant config to allow setting tips after payment.
2. Tip form is shown in bills so the customers can choose/set their tips.
3. Validated orders are kept in TipScreen (access via TicketScreen) so that at the
end of the day, the user/cashier can set the tips for each validated order.
closesodoo/odoo#55488
Task-id: 2117029
Related: odoo/upgrade#1606
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Followup on 7416340e0ff96bdabb0578f9c1eccd79baf83e17
Before this commit, The warning on deleting Bank statement was referring to only Open Point of Sale session, while we are checking for any linked Session on Bank statement.
Now we show a warning of Linked Point of Sale session.
closesodoo/odoo#53360
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>