Skip to Content
Menu
This question has been flagged
2 Replies
7146 Views

Hi there,

Is it possible to create an automation in Odoo 14 for create invoices after the quotation is confirmed in sales module?

Thank you

Avatar
Discard
Best Answer

Hi,

You can override the function of 'Confirm' button in sale order and create invoice from it.
See the below code.

class SaleOrder(models.Model):
    _inherit = 'sale.order'

    def action_confirm(self):
        res = super(SaleOrder, self).action_confirm()
        invoice_lines = []
        for line in self.order_line:
            vals = {
                'name': line.name,
                'price_unit': line.price_unit,
                'quantity': line.product_uom_qty,
                'product_id': line.product_id.id,
                'product_uom_id': line.product_uom.id,
                'tax_ids': [(6, 0, line.tax_id.ids)],
                'sale_line_ids': [(6, 0, [line.id])],
            }
            invoice_lines.append((0, 0, vals))
        self.env['account.move'].create({
            'ref': self.client_order_ref,
            'move_type': 'out_invoice',
            'invoice_origin': self.name,
            'invoice_user_id': self.user_id.id,
            'partner_id': self.partner_invoice_id.id,
            'currency_id': self.pricelist_id.currency_id.id,
            'invoice_line_ids': invoice_lines
        })
        return res

Regards

Avatar
Discard

thank you cybrosys!

Best Answer

Hi,

Use this free module as it is or you can refer the coding done inside the free module, which automatically create the picking and invoice on confirming the sales order.

Module: Sale Order Automation


Thanks

Avatar
Discard
Related Posts Replies Views Activity
1
Jan 25
1451
0
Oct 24
1526
3
Mar 16
4977
1
Mar 25
1523
1
May 24
1897