This Blueprint is the continuation of the Money Deposit discussion related to Sale Deposit.
The issues with the current design
-
account_deposit
considers all the money on the deposit account as a whole. When in the sale case each deposit is related to a sale and only a sale. - The current design does not handle the cancellation of deposit invoices ; worst than that issuing a credit note for a deposit invoice might trigger the creation of the shipment
- The creation of the shipment allows modification of this shipment.
A new module: sale_advance_payment
We came to the conclusion that the module should not use a deposit account in order to fix the first point raised. But instead the party will still have a link to an account of type other
. The new module will not make at all use of the account_deposit
functionalities hence its new name: sale_advanced_payment
.
The second point will be solved by adding a warning when the user post an invoice containing a line related to an advanced payment condition. This warning will inform the user of the risks of opening such an invoice.
On a related note, the statement lines should allow reference to validated customer invoices. When processing this statement those invoices will be automatically posted (and partially or completely paid).
The shipping process will be modified to create draft moves once the conditions to supply are met and the creation of the shipment containing those moves in the waiting
state will be triggered once the conditions to ship are met.
##Implementation
https://bugs.tryton.org/issue5215