This question has been flagged
2 Replies
7944 Views

I'm trying to set up an Odoo POS, but I keep getting the above error. What am I doing wrong? 

Below is the traceback 

Traceback (most recent call last):

  File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 643, in _handle_exception

    return super(JsonRequest, self)._handle_exception(exception)

  File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 680, in dispatch

    result = self._call_function(**self.params)

  File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 316, in _call_function

    return checked_call(self.db, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/service/model.py", line 118, in wrapper

    return f(dbname, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 309, in checked_call

    result = self.endpoint(*a, **kw)

  File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 959, in __call__

    return self.method(*args, **kw)

  File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 509, in response_wrap

    response = f(*args, **kw)

  File "/usr/lib/python2.7/dist-packages/openerp/addons/web/controllers/main.py", line 892, in call_kw

    return self._call_kw(model, method, args, kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/addons/web/controllers/main.py", line 884, in _call_kw

    return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper

    return old_api(self, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/addons/point_of_sale/point_of_sale.py", line 760, in create_from_ui

    order_id = self._process_order(cr, uid, order, context=context)

  File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper

    return old_api(self, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/addons/point_of_sale/point_of_sale.py", line 715, in _process_order

    self.add_payment(cr, uid, order_id, self._payment_fields(cr, uid, payments[2], context=context), context=context)

  File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 250, in wrapper

    return old_api(self, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 354, in old_api

    result = method(recs, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/addons/pos_mercury/models/pos_mercury.py", line 73, in add_payment

    statement_id = super(pos_order_card, self).add_payment(order_id, data)

  File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 248, in wrapper

    return new_api(self, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 490, in new_api

    result = method(self._model, cr, uid, *args, **old_kwargs)

  File "/usr/lib/python2.7/dist-packages/openerp/addons/point_of_sale/point_of_sale.py", line 1035, in add_payment

    raise UserError(msg)

UserError: (u'There is no receivable account defined to make payment.', None)

Avatar
Discard
Best Answer

The method add_payment requires receivable account to be set on partner. 

You can either set receivable and payable account all partners manually or you can create "company properties" for receivable and payable to get it set for all partners by default. 


How to set receivable/payable on partner?

* Make sure you have charts of account installed for any country.

* Go to Contacts

* Open the partner for whom you were adding payment

* Go to Accounting tab.

* Set "Accounts Receivable" in accounts receivable field.

* Set "Accounts Payable" in accounts payable field.

* Save the partner.


Now try to add payment for customer and it should work if everything else is correctly configured. 


Regards,

Kinner

Avatar
Discard
Best Answer

Settings > Parameters > Company Properties add property_account_receivable

Avatar
Discard