point_of_sale: payment moves not are added in the correct journal

Asked by Jordi Esteve (www.zikzakmedia.com)

When a POS sale is done (whitout invoice) the payment move is created in the journal defined in the POS (invoice or sale journal) instead if the payment journal.

I think the following lines (in create_account_move function of pos.py) order.sale_journal.id should change to payment.journal_id.id

                # Create one entry for the payment
                payment_move_id = account_move_obj.create(cr, uid, {
                    'journal_id': order.sale_journal.id,
                    'period_id': period,
                }, context=context)
                account_move_line_obj.create(cr, uid, {
                    'name': order.name,
                    'date': order.date_order,
                    'ref': order.name,
                    'move_id': payment_move_id,
                    'account_id': payment_account,
                    'credit': ((payment.amount<0) and -payment.amount) or 0.0,
                    'debit': ((payment.amount>0) and payment.amount) or 0.0,
                    'journal_id': order.sale_journal.id,
                    'period_id': period,
                }, context=context)
                to_reconcile.append(account_move_line_obj.create(cr, uid, {
                    'name': order.name,
                    'date': order.date_order,
                    'ref': order.name,
                    'move_id': payment_move_id,
                    'account_id': order_account,
                    'credit': ((payment.amount>0) and payment.amount) or 0.0,
                    'debit': ((payment.amount<0) and -payment.amount) or 0.0,
                    'journal_id': order.sale_journal.id,
                    'period_id': period,
                }, context=context))

should change to:

                # Create one entry for the payment
                payment_move_id = account_move_obj.create(cr, uid, {
                    'journal_id': payment.journal_id.id,
                    'period_id': period,
                }, context=context)
                account_move_line_obj.create(cr, uid, {
                    'name': order.name,
                    'date': order.date_order,
                    'ref': order.name,
                    'move_id': payment_move_id,
                    'account_id': payment_account,
                    'credit': ((payment.amount<0) and -payment.amount) or 0.0,
                    'debit': ((payment.amount>0) and payment.amount) or 0.0,
                    'journal_id': payment.journal_id.id,
                    'period_id': period,
                }, context=context)
                to_reconcile.append(account_move_line_obj.create(cr, uid, {
                    'name': order.name,
                    'date': order.date_order,
                    'ref': order.name,
                    'move_id': payment_move_id,
                    'account_id': order_account,
                    'credit': ((payment.amount>0) and payment.amount) or 0.0,
                    'debit': ((payment.amount<0) and -payment.amount) or 0.0,
                    'journal_id': payment.journal_id.id,
                    'period_id': period,
                }, context=context))

Jordi

Question information

Language:
English Edit question
Status:
Solved
For:
Odoo Addons (MOVED TO GITHUB) Edit question
Assignee:
No assignee Edit question
Solved by:
Jordi Esteve (www.zikzakmedia.com)
Solved:
Last query:
Last reply:
Revision history for this message
Lionel Sausin - Initiatives/Numérigraphe (ls-initiatives) said :
#1

Shouldn't you file a bug report instead of a question ?

Revision history for this message
Jordi Esteve (www.zikzakmedia.com) (jesteve-zikzakmedia) said :
#2

First I was not sure if this was a bug or not, so I sent a question.

But one day later, I sent a bug with the same title and content. You will find it here:

https://bugs.launchpad.net/openobject-addons/+bug/272141