Openbravo Issue Tracking System - Retail Modules
View Issue Details
0033983Retail ModulesWeb POSpublic2016-09-05 16:392016-09-29 15:58
guilleaer 
guilleaer 
normalmajorhave not tried
closedfixed 
5
 
RR16Q3.2 
marvintm
No
0033983: Rounding issues paying with foreign currency
Having a certain configuration, payments done in foreign currency does not match with the amounts expected in the "default" currency.

Example:
The customer have to pay 541.65€ but he decides to pay it using USD
In that case -> 32.827272727 USD so rounding the user will have to pay 32.83$
Then once the payment is done, we convert the amount again to EUR and we get
541.695 which is rounded to 541.70

As you can see, the user is paying 541.70 instead of 541.65.

This is normal due to the loss of precision, but it is not acceptable because order/invoice will not be perfectly matched.


Al convertir de MXN 541.65 a USD se obtienen 32.83 USD (32.827272727 sin el redondeo). El problema es que al convertir de vuelta de USD a MXN, 32.83 da 541.695, que redondeado da 541.70.

Un ejemplo concreto se puede ver en el pedido: 3123-2/0039886.
Configure EUR currency
USD -> 0.060606 - 16.5

Configure USD currency
EUR -> 16.5 - 0.060606

Add A Prduct to the ticket
Change price to 541.65
Pay it using USD
Check Created Sales order in the ERP:

   - Payment plan has an outstanding of -0.05
   - Payment details shows 541.70 instead of 541.65
   - Payment in amount is 541.70 instead of 541.65
After discuss with functional team, we will proceed in the same way that ERP.

When a payment to completely pay the order is done using a foreign currency is done, the system should adjust the quantity to match with the amount which is pending in the "default" currency.
No tags attached.
blocks defect 0033898 closed guilleaer Rounding issues paying with foreign currency 
Issue History
2016-09-14 10:17marvintmTypedefect => backport
2016-09-14 10:17marvintmTarget Version => RR16Q3.2
2016-09-23 09:43hgbotCheckin
2016-09-23 09:43hgbotNote Added: 0090189
2016-09-23 09:43hgbotStatusscheduled => resolved
2016-09-23 09:43hgbotResolutionopen => fixed
2016-09-23 09:43hgbotFixed in SCM revisionhttp://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/9514e62268ee017778da2efab7507122bb8ada57 [^] => http://code.openbravo.com/retail/backports/3.0RR16Q3.2/org.openbravo.retail.posterminal/rev/c2009b33ff835fb4da5efd56af0d49e7011c5662 [^]
2016-09-26 23:18guilleaerNote Added: 0090279
2016-09-26 23:18guilleaerStatusresolved => new
2016-09-26 23:18guilleaerResolutionfixed => open
2016-09-26 23:21guilleaerNote Edited: 0090279bug_revision_view_page.php?bugnote_id=0090279#r13220
2016-09-27 09:13hgbotCheckin
2016-09-27 09:13hgbotNote Added: 0090283
2016-09-27 09:25guilleaerStatusnew => scheduled
2016-09-27 09:25guilleaerStatusscheduled => resolved
2016-09-27 09:25guilleaerResolutionopen => fixed
2016-09-29 15:47marvintmAssigned ToRetail => guilleaer
2016-09-29 15:58marvintmReview Assigned To => marvintm
2016-09-29 15:58marvintmStatusresolved => closed

Notes
(0090189)
hgbot   
2016-09-23 09:43   
Repository: retail/backports/3.0RR16Q3.2/org.openbravo.retail.posterminal
Changeset: c2009b33ff835fb4da5efd56af0d49e7011c5662
Author: Miguel de Juana <miguel.dejuana <at> openbravo.com>
Date: Fri Sep 23 09:42:42 2016 +0200
URL: http://code.openbravo.com/retail/backports/3.0RR16Q3.2/org.openbravo.retail.posterminal/rev/c2009b33ff835fb4da5efd56af0d49e7011c5662 [^]

Fixed issue 33983: Last payment in foreign currency is adjusted to expected to avoid differences

When a payment is done, the code will check if this payment satisfy the amount which is pending in foreign amount. If the amount is satisfied then the amount of this payment will be calculated from the pending amount instead of converting the payment to the default currency which can cause differences. Reuse value stored in var instead to call function again

---
M web/org.openbravo.retail.posterminal/js/model/order.js
---
(0090279)
guilleaer   
2016-09-26 23:18   
(edited on: 2016-09-26 23:21)
This change also should be backported

https://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/fbf4631464e1c0d1b5a916ad0267d85735d4c708 [^]

(0090283)
hgbot   
2016-09-27 09:13   
Repository: retail/backports/3.0RR16Q3.2/org.openbravo.retail.posterminal
Changeset: da6903b1d3bc98b27fef0100777850ae5da77a10
Author: Guillermo Alvarez de Eulate <guillermo.alvarez <at> openbravo.com>
Date: Tue Sep 27 09:13:02 2016 +0200
URL: http://code.openbravo.com/retail/backports/3.0RR16Q3.2/org.openbravo.retail.posterminal/rev/da6903b1d3bc98b27fef0100777850ae5da77a10 [^]

Related to issue 33983: remove code which is not needed.
Current fix resolves the problem that this piece of code is trying to fix in a better way

---
M web/org.openbravo.retail.posterminal/js/pointofsale/view/keyboard-toolbars.js
---