This question has been flagged

I have the following error during POS...

During POS Check out for payment, I put the paid cash amount and then select the customer. After that I click Validate and got this error message... 


What could possibly cause this error and how to fix it ? 

 

A transaction can't have a 0 amount. None

Traceback (most recent call last): File "/opt/odoo/odoo-10.0/odoo/http.py", line 638, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/opt/odoo/odoo-10.0/odoo/http.py", line 675, in dispatch result = self._call_function(**self.params) File "/opt/odoo/odoo-10.0/odoo/http.py", line 331, in _call_function return checked_call(self.db, *args, **kwargs) File "/opt/odoo/odoo-10.0/odoo/service/model.py", line 119, in wrapper return f(dbname, *args, **kwargs) File "/opt/odoo/odoo-10.0/odoo/http.py", line 324, in checked_call result = self.endpoint(*a, **kw) File "/opt/odoo/odoo-10.0/odoo/http.py", line 933, in __call__ return self.method(*args, **kw) File "/opt/odoo/odoo-10.0/odoo/http.py", line 504, in response_wrap response = f(*args, **kw) File "/opt/odoo/odoo-10.0/addons/web/controllers/main.py", line 862, in call_kw return self._call_kw(model, method, args, kwargs) File "/opt/odoo/odoo-10.0/addons/web/controllers/main.py", line 854, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "/opt/odoo/odoo-10.0/odoo/api.py", line 679, in call_kw return call_kw_model(method, model, args, kwargs) File "/opt/odoo/odoo-10.0/odoo/api.py", line 664, in call_kw_model result = method(recs, *args, **kwargs) File "/opt/odoo/odoo-10.0/addons/point_of_sale/models/pos_order.py", line 503, in create_from_ui pos_order = self._process_order(order) File "/opt/odoo/odoo-10.0/addons/point_of_sale/models/pos_order.py", line 107, in _process_order order.add_payment(self._payment_fields(payments[2])) File "/opt/odoo/odoo-10.0/addons/point_of_sale/models/pos_order.py", line 691, in add_payment self.env['account.bank.statement.line'].with_context(context).create(args) File "/opt/odoo/odoo-10.0/addons/account/models/account_bank_statement.py", line 399, in create line.amount = line.amount File "/opt/odoo/odoo-10.0/odoo/fields.py", line 908, in __set__ record.write({self.name: write_value}) File "/opt/odoo/odoo-10.0/odoo/models.py", line 3549, in write self._write(old_vals) File "/opt/odoo/odoo-10.0/odoo/models.py", line 3695, in _write self._validate_fields(vals) File "/opt/odoo/odoo-10.0/odoo/models.py", line 1069, in _validate_fields check(self) File "<decorator-gen-71>", line 2, in _check_amount File "/opt/odoo/odoo-10.0/odoo/api.py", line 361, in loop result = [method(rec, *args, **kwargs) for rec in self] File "/opt/odoo/odoo-10.0/addons/account/models/account_bank_statement.py", line 380, in _check_amount raise ValidationError(_('A transaction can\'t have a 0 amount.')) ValidationError: (u"A transaction can't have a 0 amount.", None)


For the browser console log files : https://drive.google.com/open?id=0B4Zbp3gbakWlSGFrY0FWNlNFWWs

For Odoo log, I look for /var/log/odoo/ and did not find any log file...( I follow https://www.odoo.com/forum/help-1/question/how-can-i-see-the-error-log-74643  for Linux log file Also I tried to search can not find odoo log file...)



The reason I re-post this message are :

I already tried to ask this question on https://www.odoo.com/forum/help-1/question/error-on-pos-121456 and got closed for not enough information given. Thats why I repost with more detailed question. 

I already tried to do the suggested solution and still no good.. https://www.odoo.com/forum/help-1/question/pos-error-a-transacation-can-t-have-a-0-amount-94050 I use physical and virtual server and still give me the same error... 


Looking forward for the answers... 


Avatar
Discard
Best Answer

Hello Sidhi,

I have experienced something like that,

error occurs because the currency on the odoo must have a decimal value.


how to fix it,

1. First debug the odoo

2. Enter the settings module> user> company

3. in form company click (icon) Currency (many2one)

4. then in "Price Accuracy" change the "Rounding factor" value field to 0.01 (two numbers behind comma)

* Try not to 0 if you don't want the error log to appear

Avatar
Discard