Files
suite/l10n_us_hr_payroll/data/state/ct_connecticut.xml
2021-12-20 14:13:28 -06:00

652 lines
22 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!-- Wage Base -->
<record id="rule_parameter_us_ct_suta_wage_base" model="hr.rule.parameter">
<field name="name">US CT Connecticut SUTA Wage Base</field>
<field name="code">us_ct_suta_wage_base</field>
<field name="country_id" ref="base.us"/>
</record>
<record id="rule_parameter_us_ct_suta_wage_base_2020" model="hr.rule.parameter.value">
<field name="parameter_value">15000.0</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_suta_wage_base"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
<!-- Rate -->
<record id="rule_parameter_us_ct_suta_rate" model="hr.rule.parameter">
<field name="name">US CT Connecticut SUTA Rate</field>
<field name="code">us_ct_suta_rate</field>
<field name="country_id" ref="base.us"/>
</record>
<data noupdate="1">
<record id="rule_parameter_us_ct_suta_rate_2020" model="hr.rule.parameter.value">
<field name="parameter_value">3.2</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_suta_rate"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
</data>
<record id="rule_parameter_us_ct_sit_initial_tax_rate" model="hr.rule.parameter">
<field name="name">US CT Connecticut SIT Initial Tax Rate</field>
<field name="code">us_ct_sit_initial_tax_rate</field>
<field name="country_id" ref="base.us"/>
</record>
<record id="rule_parameter_us_ct_sit_initial_tax_rate_2020" model="hr.rule.parameter.value">
<field name="parameter_value">{
'a': [
( 10000, 0, 3.00),
( 50000, 300, 5.00),
(100000, 2300, 5.50),
(200000, 5050, 6.00),
(250000, 11050, 6.50),
(500000, 14300, 6.90),
( 'inf', 31550, 6.99),
],
'b': [
( 16000, 0, 3.00),
( 80000, 480, 5.00),
(160000, 3680, 5.50),
(320000, 8080, 6.00),
(400000, 17680, 6.50),
(800000, 22880, 6.90),
( 'inf', 50480, 6.99),
],
'c': [
( 20000, 0, 3.00),
( 100000, 600, 5.00),
( 200000, 4600, 5.50),
( 400000, 10100, 6.00),
( 500000, 22100, 6.50),
(1000000, 28600, 6.90),
( 'inf', 63100, 6.99),
],
'd': [
( 10000, 0, 3.00),
( 50000, 300, 5.00),
(100000, 2300, 5.50),
(200000, 5050, 6.00),
(250000, 11050, 6.50),
(500000, 14300, 6.90),
( 'inf', 31550, 6.99),
],
'f': [
( 10000, 0, 3.00),
( 50000, 300, 5.00),
(100000, 2300, 5.50),
(200000, 5050, 6.00),
(250000, 11050, 6.50),
(500000, 14300, 6.90),
( 'inf', 31550, 6.99),
],
}</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_sit_initial_tax_rate"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
<record id="rule_parameter_us_ct_sit_tax_rate" model="hr.rule.parameter">
<field name="name">US CT Connecticut Tax Rate</field>
<field name="code">us_ct_sit_tax_rate</field>
<field name="country_id" ref="base.us"/>
</record>
<record id="rule_parameter_us_ct_sit_tax_rate_2020" model="hr.rule.parameter.value">
<field name="parameter_value">{
'a': [
(50250, 0),
(52750, 20),
(55250, 40),
(57750, 60),
(60250, 80),
(62750, 100),
(65250, 120),
(67750, 140),
(70250, 160),
(72750, 180),
('inf', 200),
],
'b': [
( 78500, 0),
( 82500, 32),
( 86500, 64),
( 90500, 96),
( 94500, 128),
( 98500, 160),
(102500, 192),
(106500, 224),
(110500, 256),
(114500, 288),
( 'inf', 320),
],
'c': [
(100500, 0),
(105500, 40),
(110500, 80),
(115500, 120),
(120500, 160),
(125500, 200),
(130500, 240),
(135500, 280),
(140500, 320),
(145500, 360),
( 'inf', 400),
],
'd': [
(50250, 0),
(52750, 20),
(55250, 40),
(57750, 60),
(60250, 80),
(62750, 100),
(65250, 120),
(67750, 140),
(70250, 160),
(72750, 180),
('inf', 200),
],
'f': [
( 56500, 0),
( 61500, 20),
( 66500, 40),
( 71500, 60),
( 76500, 80),
( 81500, 100),
( 86500, 120),
( 91500, 140),
( 96500, 160),
(101500, 180),
( 'inf', 200),
],
}</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_sit_tax_rate"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
<record id="rule_parameter_us_ct_sit_decimal_rate" model="hr.rule.parameter">
<field name="name">US CT Connecticut Decimal Rate</field>
<field name="code">us_ct_sit_decimal_rate</field>
<field name="country_id" ref="base.us"/>
</record>
<record id="rule_parameter_us_ct_sit_decimal_rate_2020" model="hr.rule.parameter.value">
<field name="parameter_value">{
'a': [
(15000, 0.75),
(15500, 0.70),
(16000, 0.65),
(16500, 0.60),
(17000, 0.55),
(17500, 0.50),
(18000, 0.45),
(18500, 0.40),
(20000, 0.35),
(20500, 0.30),
(21000, 0.25),
(21500, 0.20),
(25000, 0.15),
(25500, 0.14),
(26000, 0.13),
(26500, 0.12),
(27000, 0.11),
(48000, 0.10),
(48500, 0.09),
(49000, 0.08),
(49500, 0.08),
(50000, 0.06),
(50500, 0.05),
(51000, 0.03),
(51500, 0.03),
(52000, 0.02),
(52500, 0.01),
('inf', 0.00),
],
'b': [
(24000, 0.75),
(24500, 0.70),
(25000, 0.65),
(25500, 0.60),
(26000, 0.55),
(26500, 0.50),
(27000, 0.45),
(27500, 0.40),
(34000, 0.35),
(34500, 0.30),
(35000, 0.25),
(35500, 0.20),
(44000, 0.15),
(44500, 0.14),
(45000, 0.13),
(45500, 0.12),
(46000, 0.11),
(74000, 0.10),
(74500, 0.09),
(75000, 0.08),
(75500, 0.08),
(76000, 0.06),
(76500, 0.05),
(77000, 0.03),
(77500, 0.03),
(78000, 0.02),
(78500, 0.01),
('inf', 0.00),
],
'c': [
(30000, 0.75),
(30500, 0.70),
(31000, 0.65),
(31500, 0.60),
(32000, 0.55),
(32500, 0.50),
(33000, 0.45),
(33500, 0.40),
(40000, 0.35),
(40500, 0.30),
(41000, 0.25),
(41500, 0.20),
(50000, 0.15),
(50500, 0.14),
(51000, 0.13),
(51500, 0.12),
(52000, 0.11),
(96000, 0.10),
(96500, 0.09),
(97000, 0.08),
(97500, 0.08),
(98000, 0.06),
(98500, 0.05),
(99000, 0.03),
(99500, 0.03),
(100000, 0.02),
(100500, 0.01),
('inf', 0.00),
],
'f': [
(18800, 0.75),
(19300, 0.70),
(19800, 0.65),
(20300, 0.60),
(20800, 0.55),
(21300, 0.50),
(21800, 0.45),
(22300, 0.40),
(25000, 0.35),
(25500, 0.30),
(26000, 0.25),
(26500, 0.20),
(31300, 0.15),
(31800, 0.14),
(32300, 0.13),
(32800, 0.12),
(33300, 0.11),
(60000, 0.10),
(60500, 0.09),
(61000, 0.08),
(61500, 0.08),
(62000, 0.06),
(62500, 0.05),
(63000, 0.03),
(63500, 0.03),
(64000, 0.02),
(64500, 0.01),
('inf', 0.00),
],
}</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_sit_decimal_rate"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
<record id="rule_parameter_us_ct_sit_recapture_rate" model="hr.rule.parameter">
<field name="name">US CT Connecticut Recapture Rate</field>
<field name="code">us_ct_sit_recapture_rate</field>
<field name="country_id" ref="base.us"/>
</record>
<record id="rule_parameter_us_ct_sit_recapture_rate_2020" model="hr.rule.parameter.value">
<field name="parameter_value">{
'a': [
(200000, 0),
(205000, 90),
(210000, 180),
(215000, 270),
(220000, 360),
(225000, 450),
(230000, 540),
(235000, 630),
(240000, 720),
(245000, 810),
(250000, 900),
(255000, 990),
(260000, 1080),
(265000, 1170),
(270000, 1260),
(275000, 1350),
(280000, 1440),
(285000, 1530),
(290000, 1620),
(295000, 1710),
(300000, 1800),
(305000, 1890),
(310000, 1980),
(315000, 2070),
(320000, 2160),
(325000, 2250),
(330000, 2340),
(335000, 2430),
(340000, 2520),
(345000, 2610),
(500000, 2700),
(505000, 2750),
(510000, 2800),
(515000, 2850),
(520000, 2900),
(525000, 2950),
(530000, 3000),
(535000, 3050),
(540000, 3100),
( 'inf', 3150),
],
'b': [
(320000, 0),
(328000, 140),
(336000, 280),
(344000, 420),
(352000, 560),
(360000, 700),
(368000, 840),
(376000, 980),
(384000, 1120),
(392000, 1260),
(400000, 1400),
(408000, 1540),
(416000, 1680),
(424000, 1820),
(432000, 1960),
(440000, 2100),
(448000, 2240),
(456000, 2380),
(464000, 2520),
(472000, 2660),
(480000, 2800),
(488000, 2940),
(496000, 3080),
(504000, 3220),
(512000, 3360),
(520000, 3500),
(528000, 3640),
(536000, 3780),
(544000, 3920),
(552000, 4060),
(800000, 4200),
(808000, 4280),
(816000, 4360),
(824000, 4440),
(832000, 4520),
(840000, 4600),
(848000, 4680),
(856000, 4760),
(864000, 4840),
( 'inf', 4920),
],
'c': [
( 400000, 0),
( 410000, 180),
( 420000, 360),
( 430000, 540),
( 440000, 720),
( 450000, 900),
( 460000, 1080),
( 470000, 1260),
( 480000, 1440),
( 490000, 1620),
( 500000, 1800),
( 510000, 1980),
( 520000, 2160),
( 530000, 2340),
( 540000, 2520),
( 550000, 2700),
( 560000, 2880),
( 570000, 3060),
( 580000, 3240),
( 590000, 3420),
( 600000, 3600),
( 610000, 3780),
( 620000, 3960),
( 630000, 4140),
( 640000, 4320),
( 650000, 4500),
( 660000, 4680),
( 670000, 4860),
( 680000, 5040),
( 690000, 5220),
(1000000, 5400),
(1010000, 5500),
(1020000, 5600),
(1030000, 5700),
(1040000, 5800),
(1050000, 5900),
(1060000, 6000),
(1070000, 6100),
(1080000, 6200),
( 'inf', 6300),
],
'd': [
(200000, 0),
(205000, 90),
(210000, 180),
(215000, 270),
(220000, 360),
(225000, 450),
(230000, 540),
(235000, 630),
(240000, 720),
(245000, 810),
(250000, 900),
(255000, 990),
(260000, 1080),
(265000, 1170),
(270000, 1260),
(275000, 1350),
(280000, 1440),
(285000, 1530),
(290000, 1620),
(295000, 1710),
(300000, 1800),
(305000, 1890),
(310000, 1980),
(315000, 2070),
(320000, 2160),
(325000, 2250),
(330000, 2340),
(335000, 2430),
(340000, 2520),
(345000, 2610),
(500000, 2700),
(505000, 2750),
(510000, 2800),
(515000, 2850),
(520000, 2900),
(525000, 2950),
(530000, 3000),
(535000, 3050),
(540000, 3100),
( 'inf', 3150),
],
'f': [
(200000, 0),
(205000, 90),
(210000, 180),
(215000, 270),
(220000, 360),
(225000, 450),
(230000, 540),
(235000, 630),
(240000, 720),
(245000, 810),
(250000, 900),
(255000, 990),
(260000, 1080),
(265000, 1170),
(270000, 1260),
(275000, 1350),
(280000, 1440),
(285000, 1530),
(290000, 1620),
(295000, 1710),
(300000, 1800),
(305000, 1890),
(310000, 1980),
(315000, 2070),
(320000, 2160),
(325000, 2250),
(330000, 2340),
(335000, 2430),
(340000, 2520),
(345000, 2610),
(500000, 2700),
(505000, 2750),
(510000, 2800),
(515000, 2850),
(520000, 2900),
(525000, 2950),
(530000, 3000),
(535000, 3050),
(540000, 3100),
( 'inf', 3150),
],
}</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_sit_recapture_rate"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
<record id="rule_parameter_us_ct_sit_personal_exemption_rate" model="hr.rule.parameter">
<field name="name">US CT Connecticut Personal Exemption Rate</field>
<field name="code">us_ct_sit_personal_exemption_rate</field>
<field name="country_id" ref="base.us"/>
</record>
<record id="rule_parameter_us_ct_sit_personal_exemption_rate_2020" model="hr.rule.parameter.value">
<field name="parameter_value">{
'a' : [
(24000, 12000),
(25000, 11000),
(26000, 10000),
(27000, 9000),
(28000, 8000),
(29000, 7000),
(30000, 6000),
(31000, 5000),
(32000, 4000),
(33000, 3000),
(34000, 2000),
(35000, 1000),
('inf', 0),
],
'b' : [
(38000, 19000),
(39000, 18000),
(40000, 17000),
(41000, 16000),
(42000, 15000),
(43000, 14000),
(44000, 13000),
(45000, 12000),
(46000, 11000),
(47000, 10000),
(48000, 9000),
(49000, 8000),
(50000, 7000),
(51000, 6000),
(52000, 5000),
(53000, 4000),
(54000, 3000),
(55000, 2000),
(56000, 1000),
('inf', 0),
],
'c': [
(48000, 24000),
(49000, 23000),
(50000, 22000),
(51000, 21000),
(52000, 20000),
(53000, 19000),
(54000, 18000),
(55000, 17000),
(56000, 16000),
(57000, 15000),
(58000, 14000),
(59000, 13000),
(60000, 12000),
(61000, 11000),
(62000, 10000),
(63000, 9000),
(64000, 8000),
(65000, 7000),
(66000, 6000),
(67000, 5000),
(68000, 4000),
(69000, 3000),
(70000, 2000),
(71000, 1000),
('inf', 0),
],
'f' : [
(30000, 15000),
(31000, 14000),
(22000, 13000),
(33000, 12000),
(34000, 11000),
(35000, 10000),
(36000, 9000),
(37000, 8000),
(38000, 7000),
(39000, 6000),
(40000, 5000),
(41000, 4000),
(42000, 3000),
(43000, 2000),
(44000, 1000),
('inf', 0),
],
}</field>
<field name="rule_parameter_id" ref="rule_parameter_us_ct_sit_personal_exemption_rate"/>
<field name="date_from" eval="datetime(2020, 1, 1).date()"/>
</record>
<!-- Partners and Contribution Registers -->
<record id="res_partner_us_ct_dor" model="res.partner">
<field name="name">US Connecticut - Department of Labor (CDOL) - Unemployment Tax</field>
</record>
<record id="res_partner_us_ct_dor_sit" model="res.partner">
<field name="name">US Connecticut - Department of Revenue Services (CDRS) - Income Tax</field>
</record>
<!-- Categories -->
<!-- Rules -->
<record id="hr_payroll_rule_er_us_ct_suta" model="hr.salary.rule">
<field name="sequence" eval="450"/>
<field name="struct_id" ref="hr_payroll_structure"/>
<field name="category_id" ref="hr_payroll_category_er_us_suta"/>
<field name="name">ER: US CT Connecticut State Unemployment</field>
<field name="code">ER_US_CT_SUTA</field>
<field name="condition_select">python</field>
<field name="condition_python">result, _ = general_state_unemployment(payslip, categories, worked_days, inputs, wage_base='us_ct_suta_wage_base', rate='us_ct_suta_rate', state_code='CT')</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">result, result_rate = general_state_unemployment(payslip, categories, worked_days, inputs, wage_base='us_ct_suta_wage_base', rate='us_ct_suta_rate', state_code='CT')</field>
<field name="partner_id" ref="res_partner_us_ct_dor"/>
<field name="appears_on_payslip" eval="False"/>
</record>
<record id="hr_payroll_rule_ee_us_ct_sit" model="hr.salary.rule">
<field name="sequence" eval="195"/>
<field name="struct_id" ref="hr_payroll_structure"/>
<field name="category_id" ref="hr_payroll_category_ee_us_sit"/>
<field name="name">EE: US CT Connecticut State Income Tax Withholding</field>
<field name="code">EE_US_CT_SIT</field>
<field name="condition_select">python</field>
<field name="condition_python">result, _ = ct_connecticut_state_income_withholding(payslip, categories, worked_days, inputs)</field>
<field name="amount_select">code</field>
<field name="amount_python_compute">result, result_rate = ct_connecticut_state_income_withholding(payslip, categories, worked_days, inputs)</field>
<field name="partner_id" ref="res_partner_us_ct_dor_sit"/>
<field name="appears_on_payslip" eval="True"/>
</record>
</odoo>