This question has been flagged
1 Reply
5191 Views

Normal workflow: Create a sales order, have the customer pay a 10% advance, then process the rest of the flow. My workflow: Have the customer pay a 10% advance, then after he pays create a sales order, process the rest of the flow and subtract the advance payment from the invoice. The problem: because the advance isn't linked to the sales order, the sales order stays in status 'invoice exception'

The reason for my workflow: As long as the customer doesn't pay the advance, I do not start his project in my calculating software. So only after he pays, I will start a new project, then I do an export (custom interface) from my calculating software to OpenERP and automatically a sales order (and some other cool stuff) is then created in OpenERP. So, for my accounting, I need to create an advance invoice manually in OpenERP.

How can I set the sales order to 100% paid and avoid the invoice exception? My workflow can 't be changed.

Avatar
Discard
Best Answer
  1. Create and validate a Customer Payment for the 10% - no credit lines, just the amount and the journal.

  2. Create the Sales Order, confirm it, deliver it, invoice it (for the full amount).

  3. Create a Customer Payment for $0 - once validated the 10% will automatically be applied to the open balance, bringing it down to 90%.

  4. Customize the Invoice report (account_print_invoice.rml) to show the OPEN balance.

<para style="terp_default_9">

Prior payment(s) of [[ formatLang(o.amount_total - o.residual, digits=2, currency_obj=o.currency_id) ]] have been applied to this invoice

</para>

<para style="terp_default_9">

<font color="white"> </font>

</para>

<para style="terp_default_9">

Remaining balance due: [[ formatLang(o.residual, digits=2, currency_obj=o.currency_id) ]]

</para>

Avatar
Discard