Hey everyone,
I'm testing on a staging environment, trying to generate an invoice from a sales order that contains a monthly subscription. Last week, I tested the same process with regular products (non-subscription), and everything worked fine.
However, when I try to create an invoice for a subscription, I get an error. I'm not sure if the issue is related to the fact that it's a subscription or if there's something else causing it. I also tried going directly to the Subscriptions module and creating an invoice from there, but I get the same error.
Has anyone encountered this before? Any ideas on what might be causing the issue?
Thanks!
This is the error:
Odoo Server Error
RPC_ERROR
Odoo Server Error
Occured on rsq-odoo-staging-18330770.dev.odoo.com on model account.move and id 75 on 2025-03-07 07:47:27 GMT
Traceback (most recent call last): File "/home/odoo/src/odoo/odoo/models.py", line 6223, in ensure_one _id, = self._ids ^^^^ ValueError: too many values to unpack (expected 1) During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/odoo/src/odoo/odoo/http.py", line 1962, in _transactioning return service_model.retrying(func, env=self.env) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/odoo/service/model.py", line 156, in retrying result = func() ^^^^^^ File "/home/odoo/src/odoo/odoo/http.py", line 1929, in _serve_ir_http response = self.dispatcher.dispatch(rule.endpoint, args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/odoo/http.py", line 2177, in dispatch result = self.request.registry['ir.http']._dispatch(endpoint) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/odoo/addons/base/models/ir_http.py", line 333, in _dispatch result = endpoint(**request.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/odoo/http.py", line 727, in route_wrapper result = endpoint(self, *args, **params_ok) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 42, in call_button action = call_kw(request.env[model], method, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/odoo/api.py", line 533, in call_kw result = getattr(recs, name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_reports/models/account_move.py", line 40, in action_post res = super().action_post() ^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/addons/sale/models/account_move.py", line 64, in action_post res = super(AccountMove, self).action_post() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_accountant/models/account_move.py", line 118, in action_post res = super().action_post() ^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/addons/account/models/account_move.py", line 5208, in action_post self._post(soft=False) File "/home/odoo/src/user/l10n_si_fiscal_verification_ecommerce/models/account_move.py", line 115, in _post return super()._post(soft=soft) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_loans/models/account_move.py", line 20, in _post posted = super()._post(soft) ^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/sale_subscription/models/account_move.py", line 12, in _post posted_moves = super()._post(soft=soft) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_invoice_extract/models/account_invoice.py", line 277, in _post posted = super()._post(soft) ^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_asset/models/account_move.py", line 132, in _post posted = super()._post(soft) ^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_reports/models/account_move.py", line 30, in _post return super()._post(soft) ^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/addons/sale/models/account_move.py", line 98, in _post posted = super()._post(soft) ^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/appointment_account_payment/models/account_move.py", line 14, in _post posted = super()._post(soft=soft) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/odoo/addons/stock_account/models/account_move.py", line 49, in _post posted = super()._post(soft) ^^^^^^^^^^^^^^^^^^^ File "/home/odoo/src/enterprise/account_accountant/models/account_move.py", line 113, in _post move._generate_deferred_entries() File "/home/odoo/src/enterprise/account_accountant/models/account_move.py", line 336, in _generate_deferred_entries deferred_moves._post(soft=True) File "/home/odoo/src/user/l10n_si_fiscal_verification_ecommerce/models/account_move.py", line 74, in _post _logger.info("Starting _post for move %s", self.name) ^^^^^^^^^ File "/home/odoo/src/odoo/odoo/fields.py", line 1232, in __get__ record.ensure_one() File "/home/odoo/src/odoo/odoo/models.py", line 6226, in ensure_one raise ValueError("Expected singleton: %s" % self) ValueError: Expected singleton: account.move(57, 58, 59) The above server error caused the following client error: RPC_ERROR: Odoo Server Error RPC_ERROR at makeErrorFromResponse (https://rsq-odoo-staging-18330770.dev.odoo.com/web/assets/1/83501c8/web.assets_web.min.js:3142:163) at XMLHttpRequest.<anonymous> (https://rsq-odoo-staging-18330770.dev.odoo.com/web/assets/1/83501c8/web.assets_web.min.js:3147:13)