Hi,
You can inherit the account.move model if you are using odoo 13 and account.invoice model if you are using odoo12 and below and add the following constrains.
from odoo.exceptions import ValidationError
class AccountMove(models.Model):
_inherit = "account.move"
@api.constrains('partner_id')
def check_partner_id(self):
for rec in self:
invoices = self.search([('partner_id', '=', rec.partner_id.id),
('id', '!=', rec.id), ('state', '=', 'draft')])
if invoices and len(invoices) > 2:
raise ValidationError(_("You cannot have more than two draft invoice at a time."))
Then it will show validation error like this. Adjust the search domain if you need to consider only the customer invoice.
Thanks