Sale Carrier default selection if Carrier Cost method is None

Rational

In Sales, Carrier is not selected by default if Shipment cost method is None.
I think some companies who are using a carrier manually will still appreciate automatic selection of carrier, even without using Shipment cost method to add a Shipping line to the Sale.
I think it is useful to store which carrier was used for the Sale.

Proposal

Options as I see it are:

  1. Select Carrier for a sale even if Shipment Cost Method is None
  2. or add another option for shipment cost method: Select Carrier
    I prefeer 1.

Implementation

For me the problem is that if there is no shipment cost method, we can not know if there is a carrier to select or not because the shipment can be managed by the customer or it can pick on warehouse.
But if there is a shipment cost method set, then we know for sure that we need a carrier so we can pre-select one.

The right way to sell, in my opinion is to have goods and transport lines on the invoice.
However many customers require a delivered price (DDP/DAP) where the supplier ships and pays for transport using a Carrier.

What do you suggest to do for such a customer?
What I currently do is I use Shipment Cost Method: None, and enter the Carrier manually every time.

An option is to set shipping cost to 0, and include a transport line with a cost of 0, but in my opinion it does not look good to have a line with 0 on the sale/invoice.
Also this is not right because the carrier has a cost for the Company, but the cost is passed to the customer in the item price instead of in an sale/invoice line.

I do not understand.
It sounds like you do not want to have shipment cost but do want to have a line for the shipment cost.

My feature proposal deals with the automatic carrier selection for sales, where there is an external carrier involved, but the cost should not be explicitly invoiced to the customer.

It is not a matter of what I want, what I want I can implement in a custom module. The reason I created a feature proposal is because I consider this to be a common use case without optimal workflow in tryton.

Statement: Some customers require an item price, which includes delivery, and they do not accept to have goods lines + transport lines on the sale confirmation and invoice.

I acknowledge that the current workflow is workable, the only inconvenience is that I have to select carrier manually. If it is your opinion that this is an edge case, and should not be a part of the tryton project, then I accept your opinion.

In my experience, some of the corporate customers require DAP price, without a transport line on the sale/invoice. I have 5 such customers with a sales volume of about 1/3 of my total sales.

Question 1: Is the statement above true? Does anyone else have this customer requirement?

Question 2: Is it common/important enough to bloat standard tryton modules with this feature?

Question 3:
How do you propose I handle a sale, where I have to deliver Box 5*500 A4 paper to the customer, but the price of the item, includes delivery.
I do the delivery with an external carrier, which costs the company, but this cost is not explicitly invoiced to the customer, instead it is baked in the price of the item.

That is the customer wants this:
Box 5x500 A4 paper, 1 u, 15 EUR

The customer does not want this:
Box 5x500 A4 paper, 1 u , 15 EUR
Transport, 1 u, 0 EUR
And the customer does not want this:
Box 5x500 A4 paper, 1 u, 10 EUR
Transport, 1 u, 5 EUR

As discussed, using a zero-cost transport line feels suboptimal, as it adds unnecessary clutter to the invoice and doesn’t accurately reflect that shipping is absorbed into the product price.

PS: I am not asking for anyone to implement this feature for free, either I do it, or I pay a service provider to do it.

I hope I have explained the idea clearly.

Essentially I want the opposite.
I want to have shipment cost, but not a line for shipment cost on the sale/invoice.

So I do not see why you want to define the carrier at the sale level if you do not sell it.
For me you just need to choose the carrier when processing the shipment such that the carrier cost will be allocated to the cost of the stock moves.

Now the carrier field on the shipment does not have the filter on available carriers but I think this could be a standard improvement.
And some constraint on requiring a carrier could be implemented on the shipment based on company rules.

Makes sense.
The only reason would be to know from the Sale, how it was dispatched, but like you state, that information can be obtained from the official source: the shipment.

I agree.
In this case, if the shipment address is not the company warehouse, and the Sale Carrier field is empty, could the shipment auto-select a default value for the Shipment Carrier in the same way that the Sale Carrier is auto-selected?
For me this feels like it could produce a default which does not reflect reality.