1 <?xml version="1.0" encoding="utf-8"?>
4 <!-- CONTRIBUTION REGISTERS -->
5 <record id="res_partner_onss" model="res.partner">
6 <field name="name">ONSS</field>
8 <record id="contrib_register_onss" model="hr.contribution.register">
9 <field name="name">ONSS</field>
10 <field name="note">National Office of Social Security</field>
11 <field name="partner_id" ref="res_partner_onss"/>
13 <record id="res_partner_pp" model="res.partner">
14 <field name="name">Fiscal Administration</field>
16 <record id="contrib_register_pp" model="hr.contribution.register">
17 <field name="name">Fiscal Administration</field>
18 <field name="partner_id" ref="res_partner_pp"/>
20 <record id="res_partner_meal_vouchers" model="res.partner">
21 <field name="name">Restaurant Tickets Organism</field>
23 <record id="contrib_register_meal_vouchers" model="hr.contribution.register">
24 <field name="name">Restaurant Tickets Organism</field>
25 <field name="partner_id" ref="res_partner_meal_vouchers"/>
28 <!-- HR SALARY RULE CATEGORIES-->
29 <record id="hr_payroll_head_salary" model="hr.salary.rule.category">
30 <field name="name">Gross</field>
31 <field name="code">BRUT</field>
33 <record id="hr_payroll.COMP" model="hr.salary.rule.category">
34 <field name="name">Company Part</field>
35 <field name="code">COMP. PART</field>
37 <record id="hr_payroll_head_onss" model="hr.salary.rule.category">
38 <field name="name">Worker Social Contribution</field>
39 <field name="code">ONSS</field>
40 <field name="parent_id" ref="hr_payroll.ALW"/>
42 <record id="hr_payroll_head_div_impos" model="hr.salary.rule.category">
43 <field name="name">Misc. Taxable</field>
44 <field name="code">DIV. IMPOS</field>
45 <field name="parent_id" ref="hr_payroll.ALW"/>
47 <record id="hr_payroll_head_pp" model="hr.salary.rule.category">
48 <field name="name">Withholding Tax Grid 2011 (Precompte Professionnel Bareme 2011)</field>
49 <field name="code">P.P.</field>
50 <field name="parent_id" ref="hr_payroll.DED"/>
52 <record id="hr_payroll_head_div_net" model="hr.salary.rule.category">
53 <field name="name">Misc. Net</field>
54 <field name="code">DIV. NET</field>
55 <field name="parent_id" ref="hr_payroll.DED"/>
57 <record id="hr_payroll_head_child_alw" model="hr.salary.rule.category">
58 <field name="name">Child Allowance Belgium</field>
59 <field name="code">Ch.A</field>
60 <field name="parent_id" ref="hr_payroll.DED"/>
63 <!-- HR SALARY RULES-->
64 <record id="hr_payroll_rules_maj" model="hr.salary.rule">
65 <field name="category_id" ref="hr_payroll_head_salary"/>
66 <field name="name">Worker Salary. Premium pay of 108%</field>
67 <field name="code">SALARY</field>
68 <field name="condition_select">none</field>
69 <field name="amount_select">code</field>
70 <field name="amount_python_compute">result = contract.wage * 1.08</field>
72 <record id="hr_payroll_rules_employee" model="hr.salary.rule">
73 <field name="category_id" ref="hr_payroll_head_salary"/>
74 <field name="name">Employee Salary</field>
75 <field name="code">SALARY</field>
76 <field name="condition_select">none</field>
77 <field name="amount_select">code</field>
78 <field name="amount_python_compute">result = contract.wage * 1</field>
79 <field name="appears_on_payslip" eval="False"/>
81 <record id="hr_payroll_rules_onss_rule" model="hr.salary.rule">
82 <field name="category_id" ref="hr_payroll_head_onss"/>
83 <field name="name">Social contribution</field>
84 <field name="code">ONSS</field>
85 <field name="sequence">41</field>
86 <field name="condition_select">none</field>
87 <field name="amount_select">percentage</field>
88 <field name="amount_percentage_base">SALARY</field>
89 <field name="amount_percentage">-13.07</field>
90 <field name="register_id" ref="contrib_register_onss"/>
92 <record id="hr_payroll_rules_p_p_b1" model="hr.salary.rule">
93 <field name="category_id" ref="hr_payroll_head_pp"/>
94 <field name="name">Withholding Tax Grid 2011</field>
95 <field name="code">P.P</field>
96 <field name="sequence">120</field>
97 <field name="amount_select">fix</field>
98 <field name="condition_select">none</field>
99 <field name="appears_on_payslip" eval="False"/>
101 <record id="hr_payroll_rules_bareme" model="hr.salary.rule">
102 <field name="category_id" ref="hr_payroll_head_pp"/>
103 <field name="parent_rule_id" ref="hr_payroll_rules_p_p_b1"/>
104 <field name="name">Withholding Tax</field>
105 <field name="code">B.I.</field>
106 <field name="amount_select">fix</field>
107 <field name="sequence">120</field>
108 <field name="condition_select">python</field>
109 <field name="appears_on_payslip" eval="False"/>
110 <field name="condition_python">result = (((employee.marital=='single') or (employee.marital=='married' and employee.spouse_fiscal_status=='with income')) and (employee.resident_bool!=True))</field>
112 <record id="hr_payroll_rules_baremeII" model="hr.salary.rule">
113 <field name="category_id" ref="hr_payroll_head_pp"/>
114 <field name="parent_rule_id" ref="hr_payroll_rules_p_p_b1"/>
115 <field name="name">Withholding Tax</field>
116 <field name="code">B.II</field>
117 <field name="amount_select">fix</field>
118 <field name="sequence">120</field>
119 <field name="condition_select">python</field>
120 <field name="appears_on_payslip" eval="False"/>
121 <field name="condition_python">result = ((employee.marital=='married' and employee.spouse_fiscal_status=='without income') and (employee.resident_bool!=True))</field>
123 <record id="hr_payroll_rules_baremeIII" model="hr.salary.rule">
124 <field name="category_id" ref="hr_payroll_head_pp"/>
125 <field name="parent_rule_id" ref="hr_payroll_rules_p_p_b1"/>
126 <field name="name">Withholding Tax</field>
127 <field name="code">B.III</field>
128 <field name="amount_select">fix</field>
129 <field name="sequence">120</field>
130 <field name="condition_select">python</field>
131 <field name="condition_python">result = employee.resident_bool==True</field>
132 <field name="appears_on_payslip" eval="False"/>
134 <record id="hr_payroll_rules_child_alw" model="hr.salary.rule">
135 <field name="category_id" ref="hr_payroll.DED"/>
136 <field name="name">Child Allowance Belgium</field>
137 <field name="code">Child.Allowance</field>
138 <field name="sequence">140</field>
139 <field name="amount_select">fix</field>
140 <field name="condition_select">python</field>
141 <field name="condition_python">result = bool(employee.children)</field>
143 <record id="hr_payroll_rules_child" model="hr.salary.rule">
144 <field name="category_id" ref="hr_payroll.DED"/>
145 <field name="parent_rule_id" ref="hr_payroll_rules_child_alw"/>
146 <field name="name">Child Allowance Belgium</field>
147 <field name="code">Ch.A</field>
148 <field name="amount_select">fix</field>
149 <field name="sequence">141</field>
150 <field name="note">The recipient of income is an isolated or spouse beneficiary's income has also
151 earned income (Schedule I / II scale)
153 A. When the gross monthly earnings do not exceed € 7,500, the withholding tax is determined according to the Schedule I.
154 The following reductions are then deducted from the payroll tax determined in accordance with this schedule:
156 a) Reduction for dependent children</field>
157 <field name="condition_select">python</field>
158 <field name="condition_python">result = bool(employee.children)</field>
160 <record id="hr_payroll_rules_child_handicap" model="hr.salary.rule">
161 <field name="category_id" ref="hr_payroll.DED"/>
162 <field name="parent_rule_id" ref="hr_payroll_rules_child_alw"/>
163 <field name="name">Child Allowance for the Disabled Belgium</field>
164 <field name="code">Ch.Handicap</field>
165 <field name="amount_select">fix</field>
166 <field name="sequence">143</field>
167 <field name="note">"Disabled child" means:
169 the child reaches at least 66% of failure or reduced physical or mental capacity
170 the head of one or more conditions;
173 the child that is established, regardless of age, that due to developments and recognized
174 before age 65</field>
175 <field name="condition_select">python</field>
176 <field name="condition_python">result = bool(employee.disabled_children_number)</field>
178 <record id="hr_payroll_rules_spouse_handicap" model="hr.salary.rule">
179 <field name="category_id" ref="hr_payroll_head_div_net"/>
180 <field name="name">Disabled Spouse Allowance</field>
181 <field name="code">Sp.handicap</field>
182 <field name="amount_select">fix</field>
183 <field name="sequence">145</field>
184 <field name="amount_fix">31</field>
185 <field name="condition_select">python</field>
186 <field name="condition_python">result = employee.disabled_spouse_bool==True</field>
188 <record id="hr_payroll_rules_company_car_parent" model="hr.salary.rule">
189 <field name="category_id" ref="hr_payroll_head_div_impos"/>
190 <field name="name">Company Car</field>
191 <field name="code">car</field>
192 <field name="amount_select">fix</field>
193 <field name="sequence">15</field>
194 <field name="condition_select">none</field>
195 <field name="appears_on_payslip" eval="False"/>
197 <record id="hr_payroll_rules_parent_company_car" model="hr.salary.rule">
198 <field name="category_id" ref="hr_payroll_head_div_impos"/>
199 <field name="name">Company car</field>
200 <field name="parent_rule_id" ref="hr_payroll_rules_company_car_parent"/>
201 <field name="code">CAR 1</field>
202 <field name="sequence">15</field>
203 <field name="condition_select">python</field>
204 <field name="condition_python">result = bool(contract.car_employee_deduction)</field>
205 <field name="amount_select">code</field>
206 <field name="amount_python_compute">result = contract.car_employee_deduction</field>
208 <record id="hr_payroll_rules_company_car_2" model="hr.salary.rule">
209 <field name="category_id" ref="hr_payroll_head_div_net"/>
210 <field name="name">Retenue Company car</field>
211 <field name="parent_rule_id" ref="hr_payroll_rules_company_car_parent"/>
212 <field name="code">CAR 2</field>
213 <field name="sequence">160</field>
214 <field name="condition_select">python</field>
215 <field name="condition_python">result = contract.car_employee_deduction</field>
216 <field name="amount_select">code</field>
217 <field name="amount_python_compute">result = -contract.car_employee_deduction</field>
219 <record id="hr_payroll_rules_company_car_emp" model="hr.salary.rule">
220 <field name="category_id" ref="hr_payroll.COMP"/>
221 <field name="name">Company car, Company part</field>
222 <field name="parent_rule_id" ref="hr_payroll_rules_company_car_parent"/>
223 <field name="code">CAR 3</field>
224 <field name="sequence">160</field>
225 <field name="condition_select">python</field>
226 <field name="condition_python">result = bool(contract.car_company_amount)</field>
227 <field name="amount_select">code</field>
228 <field name="amount_python_compute">result = -contract.car_company_amount</field>
229 <field name="appears_on_payslip" eval="False"/>
231 <record id="hr_payroll_rules_parent_ch" model="hr.salary.rule">
232 <field name="category_id" ref="hr_payroll_head_div_net"/>
233 <field name="name">Meal Voucher</field>
234 <field name="code">MEAL_V</field>
235 <field name="amount_select">fix</field>
236 <field name="sequence">165</field>
237 <field name="condition_select">none</field>
238 <field name="appears_on_payslip" eval="False"/>
240 <record id="hr_payroll_rules_ch_value" model="hr.salary.rule">
241 <field name="category_id" ref="hr_payroll.COMP"/>
242 <field name="parent_rule_id" ref="hr_payroll_rules_parent_ch"/>
243 <field name="name">Meal Voucher, Company Part</field>
244 <field name="code">MEAL_V_COMP</field>
245 <field name="amount_select">fix</field>
246 <field name="sequence">165</field>
247 <field name="amount_select">code</field>
248 <field name="amount_python_compute">result = -(contract.meal_voucher_amount - contract.meal_voucher_employee_deduction) * worked_days.WORK100.number_of_days</field>
249 <field name="condition_select">python</field>
250 <field name="condition_python">result = bool(contract.meal_voucher_amount)</field>
251 <field name="appears_on_payslip" eval="False"/>
252 <field name="register_id" ref="contrib_register_meal_vouchers"/>
254 <record id="hr_payroll_rules_ch_worker" model="hr.salary.rule">
255 <field name="category_id" ref="hr_payroll_head_div_net"/>
256 <field name="name">Retain on Meal Voucher</field>
257 <field name="parent_rule_id" ref="hr_payroll_rules_parent_ch"/>
258 <field name="code">MEAL_V_EMP</field>
259 <field name="sequence">165</field>
260 <field name="condition_select">python</field>
261 <field name="condition_python">result = bool(contract.meal_voucher_employee_deduction)</field>
262 <field name="amount_select">percentage</field>
263 <field name="amount_percentage">-100.0</field>
264 <field name="amount_percentage_base">contract.meal_voucher_employee_deduction</field>
265 <field name="quantity">worked_days.WORK100.number_of_days</field>
266 <field name="appears_on_payslip" eval="True"/>
267 <field name="register_id" ref="contrib_register_meal_vouchers"/>
269 <record id="hr_payroll_rules_reim_travel" model="hr.salary.rule">
270 <field name="category_id" ref="hr_payroll.DED"/>
271 <field name="name">Reimbursement of travel expenses</field>
272 <field name="code">Tr.E</field>
273 <field name="amount_select">code</field>
274 <field name="sequence">65</field>
275 <field name="condition_select">python</field>
276 <field name="condition_python">result = bool(contract.travel_reimbursement_amount)</field>
277 <field name="amount_python_compute">result = contract.travel_reimbursement_amount</field>
279 <record id="hr_payroll_rules_mis_ex_onss" model="hr.salary.rule">
280 <field name="category_id" ref="hr_payroll.DED"/>
281 <field name="name">Miscellaneous exempt ONSS</field>
282 <field name="code">M.ONSS</field>
283 <field name="amount_select">code</field>
284 <field name="sequence">165</field>
285 <field name="condition_select">python</field>
286 <field name="condition_python">result = bool(contract.misc_onss_deduction)</field>
287 <field name="amount_python_compute">result = -contract.misc_onss_deduction</field>
289 <record id="hr_payroll_rules_insurance" model="hr.salary.rule">
290 <field name="category_id" ref="hr_payroll.DED"/>
291 <field name="name">Insurance</field>
292 <field name="code">Ins</field>
293 <field name="amount_select">code</field>
294 <field name="sequence">165</field>
295 <field name="condition_select">python</field>
296 <field name="condition_python">result = bool(contract.insurance_employee_deduction)</field>
297 <field name="amount_python_compute">result = -contract.insurance_employee_deduction</field>
299 <record id="hr_payroll_rules_advantage" model="hr.salary.rule">
300 <field name="category_id" ref="hr_payroll.ALW"/>
301 <field name="name">Benefits of various nature</field>
302 <field name="code">Ben</field>
303 <field name="amount_select">code</field>
304 <field name="sequence">10</field>
305 <field name="condition_select">python</field>
306 <field name="condition_python">result = bool(contract.misc_advantage_amount)</field>
307 <field name="amount_python_compute">result = contract.misc_advantage_amount</field>
309 <record id="hr_payroll_rules_suppl_net" model="hr.salary.rule">
310 <field name="category_id" ref="hr_payroll_head_div_net"/>
311 <field name="name">Net Supplement</field>
312 <field name="code">Net.S</field>
313 <field name="amount_select">code</field>
314 <field name="sequence">185</field>
315 <field name="condition_select">python</field>
316 <field name="condition_python">result = bool(contract.additional_net_amount)</field>
317 <field name="amount_python_compute">result = contract.additional_net_amount</field>
319 <record id="hr_payroll_rules_retained_net" model="hr.salary.rule">
320 <field name="category_id" ref="hr_payroll_head_div_net"/>
321 <field name="name">Net retained</field>
322 <field name="code">Net.R</field>
323 <field name="amount_select">code</field>
324 <field name="sequence">190</field>
325 <field name="condition_select">python</field>
326 <field name="condition_python">result = bool(contract.retained_net_amount)</field>
327 <field name="amount_python_compute">result = -contract.retained_net_amount</field>
329 <record id="hr_payroll_salary_structure_employee" model="hr.payroll.structure">
330 <field name="code">C.P.218</field>
331 <field name="name">Belgian Employee</field>
332 <field eval="[(6, 0, [ref('hr_payroll_rules_company_car_parent'),ref('hr_payroll_rules_onss_rule'),ref('hr_payroll_rules_employee'),ref('hr_payroll_rules_p_p_b1'),ref('hr_payroll_rules_child_alw'),ref('hr_payroll_rules_parent_ch'),ref('hr_payroll_rules_reim_travel'),ref('hr_payroll_rules_mis_ex_onss'),ref('hr_payroll_rules_insurance'),ref('hr_payroll_rules_advantage'),ref('hr_payroll_rules_suppl_net'),ref('hr_payroll_rules_retained_net')])]" name="rule_ids"/>
333 <field name="company_id" ref="base.main_company"/>
334 <field name="parent_id" ref="hr_payroll.structure_base"/>
336 <record id="hr_payroll_salary_structure_worker" model="hr.payroll.structure">
337 <field name="code">C.P.219</field>
338 <field name="name">Belgian Worker</field>
339 <field eval="[(6, 0, [ref('hr_payroll_rules_maj'), ref('hr_payroll_rules_onss_rule'),ref('hr_payroll_rules_p_p_b1'),ref('hr_payroll_rules_child_alw'),ref('hr_payroll_rules_parent_ch'),ref('hr_payroll_rules_reim_travel'),ref('hr_payroll_rules_mis_ex_onss'),ref('hr_payroll_rules_insurance'),ref('hr_payroll_rules_advantage'),ref('hr_payroll_rules_suppl_net'),ref('hr_payroll_rules_retained_net')])]" name="rule_ids"/>
340 <field name="company_id" ref="base.main_company"/>
341 <field name="parent_id" ref="hr_payroll.structure_base"/>