mirror of
https://gitlab.com/hibou-io/hibou-odoo/suite.git
synced 2025-01-20 12:37:31 +02:00
PA Pennsylvania
This commit is contained in:
@@ -7,11 +7,7 @@
|
||||
<field name="country_id" ref="base.us"/>
|
||||
</record>
|
||||
<data noupdate="1">
|
||||
<record id="rule_parameter_us_pa_suta_wage_base_2019" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">10000.00</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_suta_wage_base"/>
|
||||
<field name="date_from" eval="datetime(2019, 1, 1).date()"/>
|
||||
</record>
|
||||
<!-- Unchanged for 2021 https://www.uc.pa.gov/employers-uc-services-uc-tax/uc-tax-rates/Pages/Yearly-Tax-Highlights.aspx -->
|
||||
<record id="rule_parameter_us_pa_suta_wage_base_2020" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">10000.00</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_suta_wage_base"/>
|
||||
@@ -26,11 +22,7 @@
|
||||
<field name="country_id" ref="base.us"/>
|
||||
</record>
|
||||
<data noupdate="1">
|
||||
<record id="rule_parameter_us_pa_suta_rate_2019" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">3.6890</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_suta_rate"/>
|
||||
<field name="date_from" eval="datetime(2019, 1, 1).date()"/>
|
||||
</record>
|
||||
<!-- Unchanged for 2021 https://www.uc.pa.gov/employers-uc-services-uc-tax/uc-tax-rates/Pages/Yearly-Tax-Highlights.aspx -->
|
||||
<record id="rule_parameter_us_pa_suta_rate_2020" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">3.6890</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_suta_rate"/>
|
||||
@@ -44,11 +36,7 @@
|
||||
<field name="country_id" ref="base.us"/>
|
||||
</record>
|
||||
<data noupdate="1">
|
||||
<record id="rule_parameter_us_pa_suta_ee_rate_2019" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">0.06</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_suta_ee_rate"/>
|
||||
<field name="date_from" eval="datetime(2019, 1, 1).date()"/>
|
||||
</record>
|
||||
<!-- unchanged in 2021 https://www.uc.pa.gov/employers-uc-services-uc-tax/uc-tax-rates/Pages/Yearly-Tax-Highlights.aspx -->
|
||||
<record id="rule_parameter_us_pa_suta_ee_rate_2020" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">0.06</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_suta_ee_rate"/>
|
||||
@@ -62,11 +50,7 @@
|
||||
<field name="country_id" ref="base.us"/>
|
||||
</record>
|
||||
<data noupdate="1">
|
||||
<record id="rule_parameter_us_pa_sit_rate_2019" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">3.07</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_sit_rate"/>
|
||||
<field name="date_from" eval="datetime(2019, 1, 1).date()"/>
|
||||
</record>
|
||||
<!-- unchanged in 2021 https://www.revenue.pa.gov/GeneralTaxInformation/Tax%20Types%20and%20Information/EmployerWithholding/Pages/default.aspx -->
|
||||
<record id="rule_parameter_us_pa_sit_rate_2020" model="hr.rule.parameter.value">
|
||||
<field name="parameter_value">3.07</field>
|
||||
<field name="rule_parameter_id" ref="rule_parameter_us_pa_sit_rate"/>
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
# Part of Hibou Suite Professional. See LICENSE_PROFESSIONAL file for full copyright and licensing details.
|
||||
|
||||
from .common import TestUsPayslip, process_payslip
|
||||
|
||||
|
||||
class TestUsPAPayslip(TestUsPayslip):
|
||||
###
|
||||
# Taxes and Rates
|
||||
###
|
||||
PA_UNEMP_MAX_WAGE = 10000.0
|
||||
ER_PA_UNEMP = -3.6890 / 100.0
|
||||
EE_PA_UNEMP = -0.06 / 100.0
|
||||
PA_INC_WITHHOLD = 3.07
|
||||
|
||||
def test_2019_taxes(self):
|
||||
salary = 4166.67
|
||||
wh = -127.92
|
||||
|
||||
|
||||
employee = self._createEmployee()
|
||||
contract = self._createContract(employee,
|
||||
wage=salary,
|
||||
state_id=self.get_us_state('PA'))
|
||||
|
||||
self._log('2019 Pennsylvania tax first payslip:')
|
||||
payslip = self._createPayslip(employee, '2019-01-01', '2019-01-31')
|
||||
payslip.compute_sheet()
|
||||
|
||||
cats = self._getCategories(payslip)
|
||||
|
||||
self.assertPayrollEqual(cats['EE_US_SUTA'], cats['GROSS'] * self.EE_PA_UNEMP)
|
||||
self.assertPayrollEqual(cats['ER_US_SUTA'], cats['GROSS'] * self.ER_PA_UNEMP)
|
||||
self.assertPayrollEqual(cats['EE_US_SIT'], wh)
|
||||
43
l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2021.py
Executable file
43
l10n_us_hr_payroll/tests/test_us_pa_pennsylvania_payslip_2021.py
Executable file
@@ -0,0 +1,43 @@
|
||||
# Part of Hibou Suite Professional. See LICENSE_PROFESSIONAL file for full copyright and licensing details.
|
||||
|
||||
from datetime import date
|
||||
from .common import TestUsPayslip
|
||||
|
||||
|
||||
class TestUsPAPayslip(TestUsPayslip):
|
||||
###
|
||||
# Taxes and Rates
|
||||
###
|
||||
PA_UNEMP_MAX_WAGE = 10000.0
|
||||
ER_PA_UNEMP = 3.6890
|
||||
EE_PA_UNEMP = 0.06
|
||||
PA_INC_WITHHOLD = 3.07
|
||||
|
||||
def test_2021_taxes(self):
|
||||
self._test_er_suta('PA', self.ER_PA_UNEMP, date(2021, 1, 1), wage_base=self.PA_UNEMP_MAX_WAGE)
|
||||
self._test_ee_suta('PA', self.EE_PA_UNEMP, date(2021, 1, 1))
|
||||
|
||||
salary = 4166.67
|
||||
wh = -127.90
|
||||
employee = self._createEmployee()
|
||||
contract = self._createContract(employee,
|
||||
wage=salary,
|
||||
state_id=self.get_us_state('PA'))
|
||||
|
||||
self._log('2019 Pennsylvania tax first payslip:')
|
||||
payslip = self._createPayslip(employee, '2021-01-01', '2021-01-31')
|
||||
payslip.compute_sheet()
|
||||
cats = self._getCategories(payslip)
|
||||
self.assertPayrollEqual(cats['EE_US_SIT'], wh)
|
||||
|
||||
# Test Additional
|
||||
contract.us_payroll_config_id.state_income_tax_additional_withholding = 100.0
|
||||
payslip.compute_sheet()
|
||||
cats = self._getCategories(payslip)
|
||||
self.assertPayrollEqual(cats['EE_US_SIT'], wh - 100.0)
|
||||
|
||||
# Test Exempt
|
||||
contract.us_payroll_config_id.state_income_tax_exempt = True
|
||||
payslip.compute_sheet()
|
||||
cats = self._getCategories(payslip)
|
||||
self.assertPayrollEqual(cats.get('EE_US_SIT', 0.0), 0.0)
|
||||
Reference in New Issue
Block a user