Missing invoice_state "posted" on sale module is intentional or not?

It sound fine. But it is very much work than the other option.

I our company the salesman is the same person than the debt collector. So them must be very careful of the payment situation.

But they do no manage payment on the sale list.
I’m talking about role. Here there are two roles the salesmen and the accountant. We do not care if it is the same person or not. But the workflow must always pretend they are different persons to make a generic design.

No idea how much work it is, not sure it is the point.
On the sale form, today we have the list of shipments, the list of invoices, the list of returns.
If I understand correctly, you are interested in waiting invoices. I would prefer a pending(n) button in which I get all shipments/invoices/returns which are not completed. It would warn me something is not done on time, and now I have to check all three lists to know if something is still pending.

I do not see any use case related to such behavior.
The responsible of the shipment has a list of waiting (and late) shipments.
The responsible of invoicing has a list of draft invoices.
The responsible of dunning has a list of due lines.

For me, it is wrong to think that employees will manage operations from the sale form. The sale form once confirmed is only used in case customer call to get information. And in such case, there is no problem having separate list which will be opened depending on the customer request.

On second though, I think we need to keep it as ‘paid’ because it is what matters when the shipment method is based on invoice. So it is better to keep invoice and shipment states linked with the methods.

I also believe that it is necessary to maintain the status of paid but that it is also necessary to add the status of invoiced or posted to show the reality of an invoice that was created from a sale.

Rationally and logically speaking if we have a field for sale that is literally called invoice status, the logical thing is that it showed the actual status of the invoice according to the different states that an invoice can have which are: Draft, Validated, Posted, Paid and Canceled , without evaluating the functions of the users who have access to that information or not.

Personally Tryton that has an integrated management of different processes that one depends on another should show more clearly and specifies the reality of the different processes or states of those processes before their related ones.

If we think of a specific case, where the business owner verifies the sales and verifies that they are all in the Processing state, he will think that nothing has been invoiced and to confirm he will have to go to invoicing to confirm if it has been invoiced or not. , when the correct thing is to give the information from the first contact or in the simplest way.

If the user want’s to know the invoice state of an specific customer he should open the invoices view and not the sale view.

The invoice status on sale is only used to indicate the invoices states that trigger the workflow. All other status are useless on sale as the sale user has nothing to do with states not relevent for it’s own workflow.

If the bussiness owner want’s to know the invoice state he should open the invoices list and see from there what is pending to invoice (draft invoices), what is alreading invoiced (posted invoices) and what has been paid already.

for example, user is a salesman and commission module was activated with commission method: on payment or on posting, for that salesman is important to know if invoice generated from his sale was posted or paid to track them then that not is a useless field or state on sale.

correct or not?

If the user is a salesman he should open the comissing list where he can see all the commissions that he has generated, it’s status and the invoice where they had been paid.

Incorrect :laughing: :laughing: :kissing_closed_eyes: :kissing_closed_eyes: