1 <?xml version="1.0" encoding="UTF-8"?>
5 <record id="view_voucher_filter_customer_pay" model="ir.ui.view">
6 <field name="name">account.voucher.customer.pay.select</field>
7 <field name="model">account.voucher</field>
8 <field name="type">search</field>
9 <field name="arch" type="xml">
10 <search string="Search Vouchers">
12 <field name="number" string="Voucher"/>
13 <separator orientation="vertical"/>
15 <separator orientation="vertical"/>
16 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Vouchers"/>
17 <filter icon="terp-camera_test" string="Posted" domain="[('state','=','posted')]" help="Posted Vouchers"/>
18 <separator orientation="vertical"/>
19 <filter icon="terp-gtk-jump-to-ltr" string="To Review" domain="[('state','=','posted')]" help="To Review"/>
20 <separator orientation="vertical"/>
21 <field name="partner_id" string="Customer"/>
22 <field name="journal_id" widget="selection" context="{'journal_id': self, 'set_visible':False}" domain="[('type','in',('bank','cash'))]"/>
23 <field name="period_id"/>
26 <group expand="0" string="Group By...">
27 <filter string="Customer" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
28 <filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
29 <filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id','visible':True}"/>
30 <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
37 <record id="view_voucher_filter_vendor_pay" model="ir.ui.view">
38 <field name="name">account.voucher.purchase.pay.select</field>
39 <field name="model">account.voucher</field>
40 <field name="type">search</field>
41 <field name="arch" type="xml">
42 <search string="Search Vouchers">
44 <field name="number" string="Voucher"/>
45 <separator orientation="vertical"/>
47 <separator orientation="vertical"/>
48 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Vouchers"/>
49 <filter icon="terp-camera_test" string="Posted" domain="[('state','=','posted')]" help="Posted Vouchers"/>
50 <separator orientation="vertical"/>
51 <filter icon="terp-gtk-jump-to-ltr" string="To Review" domain="[('state','=','posted')]" help="To Review"/>
52 <separator orientation="vertical"/>
53 <field name="partner_id" string="Supplier"/>
54 <field name="journal_id" widget="selection" context="{'journal_id': self, 'set_visible':False}" domain="[('type','in',('bank','cash'))]"/>
55 <field name="period_id"/>
58 <group expand="0" string="Group By...">
59 <filter string="Supplier" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
60 <filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
61 <filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id','visible':True}"/>
62 <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
67 <record model="ir.ui.view" id="view_low_priority_payment_form">
68 <field name="name">account.voucher.payment.low.priority.form</field>
69 <field name="model">account.voucher</field>
70 <field name="type">form</field>
71 <field name="priority">1</field>
72 <field name="arch" type="xml">
73 <form string="Bill Payment" version="7.0">
75 <field name="partner_id" required="1" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)" string="Supplier" context="{'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1, 'invoice_currency': currency_id}" />
76 <field name="amount" on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, payment_rate_currency_id, company_id, context)"/>
77 <field name="journal_id"
78 domain="[('type','in',['bank', 'cash'])]"
80 on_change="onchange_journal(journal_id, line_dr_ids, False, partner_id, date, amount, type, company_id, context)"
81 string="Payment Method"/>
82 <field name="date" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/>
83 <field name="reference" string="Payment Ref"/>
84 <field name="name" colspan="2"/>
85 <field name="account_id"
88 <field name="pre_line" invisible="1"/>
89 <field name="type" invisible="True"/>
92 <page string="Payment Information">
93 <field name="line_dr_ids" attrs="{'invisible': [('type', '=', 'receipt')]}" context="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" colspan="4" nolabel="1" height="140" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)">
94 <tree string="Open Supplier Journal Entries" editable="bottom" colors="gray:amount==0">
95 <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
96 on_change="onchange_move_line_id(move_line_id)"
97 domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]"
99 <field name="account_id" domain="[('type','=','payable')]"/>
100 <field name="date_original" readonly="1"/>
101 <field name="date_due" readonly="1"/>
102 <field name="amount_original" readonly="1"/>
103 <field name="amount_unreconciled" readonly="1"/>
104 <field name="amount" sum="Total Allocation"/>
107 <field name="line_cr_ids" attrs="{'invisible': [('type', '=', 'payment')]}" context="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)">
108 <tree string="Open Customer Journal Entries" editable="bottom" colors="gray:amount==0">
109 <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
110 on_change="onchange_move_line_id(move_line_id)"
111 domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]"
113 <field name="account_id" domain="[('type','=','payable')]"/>
114 <field name="date_original" readonly="1"/>
115 <field name="date_due" readonly="1"/>
116 <field name="amount_original" readonly="1"/>
117 <field name="amount_unreconciled" readonly="1"/>
118 <field name="amount" sum="Total Allocation"/>
122 <group string="Internal Notes">
123 <field name="narration" nolabel="1" colspan="2"/>
125 <group string="Other Information" col="4">
126 <field name="currency_id" colspan="4"/>
127 <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/>
128 <field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)"/>
129 <field name="paid_amount_in_company_currency" colspan="4" invisible="1"/>
130 <field name="number" colspan="4"/>
139 <record model="ir.ui.view" id="view_vendor_payment_form">
140 <field name="name">account.voucher.payment.form</field>
141 <field name="model">account.voucher</field>
142 <field name="type">form</field>
143 <field name="arch" type="xml">
146 <button name="proforma_voucher" string="Validate" states="draft" invisible="context.get('line_type', False)" class="oe_highlight"/>
147 <button name="cancel_voucher" string="Cancel" states="draft,proforma" invisible="context.get('line_type', False)"/>
148 <button name="cancel_voucher" string="Unreconcile" type="object" states="posted" invisible="context.get('line_type', False)" confirm="Are you sure to unreconcile and cancel this record ?"/>
149 <button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" invisible="context.get('line_type', False)"/>
150 <field name="state" widget="statusbar" statusbar_visible="draft,posted" statusbar_colors='{"proforma":"blue"}'/>
152 <sheet string="Bill Payment">
154 <field name="partner_id" required="1" invisible="context.get('line_type', False)" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)" context="{'invoice_currency':currency_id, 'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1}" string="Supplier"/>
155 <field name="amount" invisible="context.get('line_type', False)" on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, payment_rate_currency_id, company_id, context)"/>
156 <field name="journal_id"
157 domain="[('type','in',['bank', 'cash'])]"
158 invisible="context.get('line_type', False)"
160 on_change="onchange_journal(journal_id, line_dr_ids, False, partner_id, date, amount, type, company_id, context)"
161 string="Payment Method"/>
162 <field name="date" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/>
163 <field name="reference" invisible="context.get('line_type', False)" string="Payment Ref" placeholder="003/10"/>
164 <field name="name" colspan="2" invisible="context.get('line_type', False)" placeholder="Invoice SAJ/0042"/>
165 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
166 <field name="account_id"
169 <field name="pre_line" invisible="1"/>
170 <field name="type" invisible="True"/>
171 <field name="currency_id" invisible="1" colspan="4"/>
174 <page string="Payment Information">
175 <field name="line_dr_ids" context="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}">
176 <tree string="Supplier Invoices and Outstanding transactions" editable="bottom" colors="gray:amount==0">
177 <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
178 on_change="onchange_move_line_id(move_line_id)"
179 domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]"
182 <field name="account_id" groups="base.group_no_one" domain="[('type','=','payable')]"/>
183 <field name="date_original" readonly="1"/>
184 <field name="date_due" readonly="1"/>
185 <field name="amount_original" readonly="1"/>
186 <field name="amount_unreconciled" readonly="1" groups="account.group_account_user"/>
187 <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)" groups="account.group_account_user"/>
188 <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)"/>
191 <field name="line_cr_ids" attrs="{'invisible': [('pre_line','=',False)]}" context="{'journal_id':journal_id, 'partner_id':partner_id}">
192 <tree string="Credits" editable="bottom" colors="gray:amount==0">
193 <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
194 on_change="onchange_move_line_id(move_line_id)"
195 domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]"
198 <field name="account_id" groups="base.group_no_one" domain="[('type','=','payable')]"/>
199 <field name="date_original" readonly="1"/>
200 <field name="date_due" readonly="1"/>
201 <field name="amount_original" readonly="1"/>
202 <field name="amount_unreconciled" readonly="1" groups="account.group_account_user"/>
203 <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)" groups="account.group_account_user"/>
204 <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)"/>
208 <group string="Internal Notes">
209 <field name="narration" colspan="2" nolabel="1"/>
212 <group col="4" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}">
213 <separator string="Currency Options" colspan="4"/>
214 <field name="is_multi_currency" invisible="1"/>
215 <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/>
216 <field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)"/>
217 <field name="paid_amount_in_company_currency" colspan="4" invisible="1"/>
220 <separator string="Payment Options" colspan="2"/>
221 <field name="writeoff_amount"/>
222 <field name="payment_option" required="1"/>
223 <field name="writeoff_acc_id"
224 attrs="{'invisible':[('payment_option','!=','with_writeoff')], 'required':[('payment_option','=','with_writeoff')]}"
225 domain="[('type','=','other')]"/>
226 <field name="comment"
227 attrs="{'invisible':[('payment_option','!=','with_writeoff')]}"/>
228 <field name="analytic_id"
229 groups="analytic.group_analytic_accounting"/>
234 <page string="Journal Items" attrs="{'invisible': [('state','!=','posted')]}">
236 <field name="period_id"/>
237 <field name="audit"/>
238 <field name="number"/>
240 <field name="move_ids" readonly="1">
241 <tree string="Journal Items">
242 <field name="move_id"/>
245 <field name="statement_id"/>
246 <field name="partner_id"/>
247 <field name="account_id"/>
249 <field name="debit"/>
250 <field name="credit"/>
251 <field name="state"/>
252 <field name="reconcile_id"/>
253 <field name="amount_currency"/>
254 <field name="currency_id"/>
260 <div class="oe_chatter">
261 <field name="message_ids" widget="mail_thread"/>
267 <record id="action_vendor_payment" model="ir.actions.act_window">
268 <field name="name">Supplier Payment</field>
269 <field name="res_model">account.voucher</field>
270 <field name="view_type">form</field>
271 <field name="domain">[('journal_id.type', 'in', ['bank', 'cash']), ('type','=','payment')]</field>
272 <field name="context">{'type':'payment'}</field>
273 <field name="view_id" eval="False"/>
274 <field name="search_view_id" ref="view_voucher_filter_vendor_pay"/>
275 <field name="target">current</field>
276 <field name="help">Click on "Create" to register a supplier payment.
278 Track payments you do to your supplier and amounts you pay.</field>
280 <record id="action_vendor_payment_tree" model="ir.actions.act_window.view">
281 <field eval="1" name="sequence"/>
282 <field name="view_mode">tree</field>
283 <field name="act_window_id" ref="action_vendor_payment"/>
285 <record id="action_vendor_payment_form" model="ir.actions.act_window.view">
286 <field eval="2" name="sequence"/>
287 <field name="view_mode">form</field>
288 <field name="view_id" ref="view_vendor_payment_form"/>
289 <field name="act_window_id" ref="action_vendor_payment"/>
293 <menuitem action="action_vendor_payment" icon="STOCK_JUSTIFY_FILL" sequence="12"
294 id="menu_action_vendor_payment" parent="account.menu_finance_payables"/>
296 <record model="ir.ui.view" id="view_vendor_receipt_form">
297 <field name="name">account.voucher.receipt.form</field>
298 <field name="model">account.voucher</field>
299 <field name="type">form</field>
300 <field name="arch" type="xml">
303 <button name="proforma_voucher" string="Validate" states="draft" invisible="context.get('line_type', False)" class="oe_highlight"/>
304 <button name="cancel_voucher" string="Cancel" states="draft,proforma" invisible="context.get('line_type', False)"/>
305 <button name="cancel_voucher" string="Unreconcile" type="object" states="posted" invisible="context.get('line_type', False)" confirm="Are you sure to unreconcile and cancel this record ?"/>
306 <button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" invisible="context.get('line_type', False)"/>
307 <field name="state" widget="statusbar" statusbar_visible="draft,posted" statusbar_colors='{"proforma":"blue"}'/>
310 <div class="oe_title">
311 <div class="oe_edit_only">
312 <label for="parter_id" />
315 <field name="partner_id" domain="[('customer','=',True)]" required="1" invisible="context.get('line_type', False)" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)" string="Customer" context="{'search_default_customer': 1}"/>
321 invisible="context.get('line_type', False)"
324 on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, payment_rate_currency_id, company_id, context)"/>
326 <field name="journal_id"
327 domain="[('type','in',['bank', 'cash'])]"
328 invisible="context.get('line_type', False)"
331 on_change="onchange_journal(journal_id, line_cr_ids, False, partner_id, date, amount, type, company_id, context)"
332 string="Payment Method"/>
337 <field name="currency_id" invisible="1"/>
338 <field name="date" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/>
339 <field name="reference" invisible="context.get('line_type', False)" string="Payment Ref" placeholder="003/10"/>
340 <field name="name" colspan="2" invisible="context.get('line_type', False)" placeholder="Invoice SAJ/0042"/>
341 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
342 <field name="account_id"
345 <field name="pre_line" invisible="1"/>
346 <field name="type" invisible="True"/>
349 <page string="Payment Information">
350 <field name="line_cr_ids" context="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)">
351 <tree string="Invoices and outstanding transactions" editable="bottom" colors="gray:amount==0">
352 <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
353 on_change="onchange_move_line_id(move_line_id)"
354 domain="[('account_id.type','in',('receivable','payable')), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]"
356 groups="account.group_account_user"/>
357 <field name="account_id" groups="base.group_no_one" domain="[('type','=','receivable')]"/>
358 <field name="date_original" readonly="1"/>
359 <field name="date_due" readonly="1"/>
360 <field name="amount_original" readonly="1"/>
361 <field name="amount_unreconciled" readonly="1" groups="account.group_account_user"/>
362 <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)" groups="account.group_account_user"/>
363 <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)" string="Allocation"/>
366 <field name="line_dr_ids" attrs="{'invisible': [('pre_line','=',False)]}" context="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)">
367 <tree string="Credits" editable="bottom" colors="gray:amount==0">
368 <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}"
369 on_change="onchange_move_line_id(move_line_id)"
370 domain="[('account_id.type','in',('receivable','payable')), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]"
373 <field name="account_id" groups="base.group_no_one" domain="[('type','=','receivable')]"/>
374 <field name="date_original" readonly="1"/>
375 <field name="date_due" readonly="1"/>
376 <field name="amount_original" readonly="1"/>
377 <field name="amount_unreconciled" readonly="1"/>
378 <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)"/>
379 <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)" string="Allocation"/>
383 <group col="2" string="Internal Notes">
384 <field name="narration" colspan="2" nolabel="1"/>
386 <group col="4" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}">
387 <separator string="Currency Options" colspan="4"/>
388 <field name="is_multi_currency" invisible="1"/>
389 <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" colspan="3"/>
390 <field name="payment_rate_currency_id" colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)"/>
391 <field name="paid_amount_in_company_currency" colspan="4" invisible="1"/>
394 <separator string="Payment Options" colspan="2"/>
395 <field name="writeoff_amount"/>
396 <field name="payment_option" required="1"/>
397 <field name="writeoff_acc_id"
398 attrs="{'invisible':[('payment_option','!=','with_writeoff')], 'required':[('payment_option','=','with_writeoff')]}"
399 domain="[('type','=','other')]"/>
400 <field name="comment"
401 attrs="{'invisible':[('payment_option','!=','with_writeoff')]}"/>
402 <field name="analytic_id"
403 groups="analytic.group_analytic_accounting"/>
407 <page string="Journal Items" attrs="{'invisible': [('state','!=','posted')]}">
409 <field name="period_id"/>
410 <field name="audit"/>
411 <field name="number"/>
413 <field name="move_ids" readonly="1">
414 <tree string="Journal Items">
415 <field name="move_id"/>
418 <field name="statement_id"/>
419 <field name="partner_id"/>
420 <field name="account_id"/>
422 <field name="debit"/>
423 <field name="credit"/>
424 <field name="state"/>
425 <field name="reconcile_id"/>
426 <field name="amount_currency"/>
427 <field name="currency_id"/>
433 <<div class="oe_chatter">
434 <field name="message_ids" widget="mail_thread"/>
440 <record id="action_vendor_receipt" model="ir.actions.act_window">
441 <field name="name">Customer Payment</field>
442 <field name="res_model">account.voucher</field>
443 <field name="view_type">form</field>
444 <field name="domain">[('journal_id.type', 'in', ['bank', 'cash']), ('type','=','receipt')]</field>
445 <field name="context">{'type':'receipt'}</field>
446 <field name="search_view_id" ref="view_voucher_filter_customer_pay"/>
447 <field name="view_id" eval="False"/>
448 <field name="target">current</field>
450 Click on create to register a payment.
452 Enter the customer and the payment method and then, either create manually a payment record or OpenERP will propose to you automatically the reconciliation of this payment with the open invoices or sales receipts.
455 <record id="action_vendor_receipt_tree" model="ir.actions.act_window.view">
456 <field eval="1" name="sequence"/>
457 <field name="view_mode">tree</field>
458 <field name="act_window_id" ref="action_vendor_receipt"/>
460 <record id="action_vendor_receipt_form" model="ir.actions.act_window.view">
461 <field eval="2" name="sequence"/>
462 <field name="view_mode">form</field>
463 <field name="view_id" ref="view_vendor_receipt_form"/>
464 <field name="act_window_id" ref="action_vendor_receipt"/>
467 <menuitem action="action_vendor_receipt" icon="STOCK_JUSTIFY_FILL" sequence="12"
468 id="menu_action_vendor_receipt" parent="account.menu_finance_receivables"/>