issue #21123: facilitate business logic in sales model