diff --git a/l10n_us_hr_payroll/data/state/mo_missouri.xml b/l10n_us_hr_payroll/data/state/mo_missouri.xml
index 1e2cd863..cea9bb6c 100644
--- a/l10n_us_hr_payroll/data/state/mo_missouri.xml
+++ b/l10n_us_hr_payroll/data/state/mo_missouri.xml
@@ -13,10 +13,10 @@
-
+
11000.0
-
+
diff --git a/l10n_us_hr_payroll/data/state/nj_newjersey.xml b/l10n_us_hr_payroll/data/state/nj_newjersey.xml
index c1b7e003..1fdafd96 100644
--- a/l10n_us_hr_payroll/data/state/nj_newjersey.xml
+++ b/l10n_us_hr_payroll/data/state/nj_newjersey.xml
@@ -77,10 +77,10 @@
-
+
0.47
-
+
@@ -140,10 +140,10 @@
-
+
0.28
-
+
diff --git a/l10n_us_hr_payroll/data/state/wa_washington.xml b/l10n_us_hr_payroll/data/state/wa_washington.xml
index 528b4caf..61bd6b15 100644
--- a/l10n_us_hr_payroll/data/state/wa_washington.xml
+++ b/l10n_us_hr_payroll/data/state/wa_washington.xml
@@ -98,7 +98,7 @@
- 66.33
+ 63.33
@@ -118,7 +118,7 @@
- 33.67
+ 36.67
diff --git a/l10n_us_hr_payroll/models/state/me_maine.py b/l10n_us_hr_payroll/models/state/me_maine.py
index ad6b9851..7ce80c42 100644
--- a/l10n_us_hr_payroll/models/state/me_maine.py
+++ b/l10n_us_hr_payroll/models/state/me_maine.py
@@ -1,8 +1,6 @@
# Part of Hibou Suite Professional. See LICENSE_PROFESSIONAL file for full copyright and licensing details.
from .general import _state_applies, sit_wage
-import logging
-_logger = logging.getLogger(__name__)
def me_maine_state_income_withholding(payslip, categories, worked_days, inputs):
@@ -15,23 +13,19 @@ def me_maine_state_income_withholding(payslip, categories, worked_days, inputs):
state_code = 'ME'
if not _state_applies(payslip, state_code):
- _logger.warn('state doesnt apply')
return 0.0, 0.0
# Determine Wage
wage = sit_wage(payslip, categories)
if not wage:
- _logger.warn('no wage')
return 0.0, 0.0
filing_status = payslip.contract_id.us_payroll_config_value('me_w4me_sit_filing_status')
if not filing_status:
- _logger.warn('exempt file status')
return 0.0, 0.0
exempt = payslip.contract_id.us_payroll_config_value('state_income_tax_exempt')
if exempt:
- _logger.warn('generic exemption')
return 0.0, 0.0
pay_periods = payslip.dict.get_pay_periods_in_year()
diff --git a/l10n_us_hr_payroll/tests/test_us_sc_south_carolina_payslip_2020.py b/l10n_us_hr_payroll/tests/test_us_sc_south_carolina_payslip_2020.py
index 086af309..170c3bf5 100644
--- a/l10n_us_hr_payroll/tests/test_us_sc_south_carolina_payslip_2020.py
+++ b/l10n_us_hr_payroll/tests/test_us_sc_south_carolina_payslip_2020.py
@@ -6,11 +6,11 @@ from .common import TestUsPayslip
class TestUsSCPayslip(TestUsPayslip):
###
- # 2021 Taxes and Rates
+ # 2020 Taxes and Rates
###
SC_UNEMP_MAX_WAGE = 14000.0
SC_UNEMP = 0.55
- # Calculation based on https://dor.sc.gov/forms-site/Forms/WH1603F_2021.pdf
+ # Calculation based on https://dor.sc.gov/forms-site/Forms/WH1603F_2020.pdf
def _test_sit(self, wage, additional_withholding, exempt, allowances, schedule_pay, date_start, expected_withholding):
employee = self._createEmployee()
@@ -28,9 +28,9 @@ class TestUsSCPayslip(TestUsPayslip):
self._log('Computed period tax: ' + str(expected_withholding))
self.assertPayrollAlmostEqual(cats.get('EE_US_SIT', 0.0), -expected_withholding)
- def test_2021_taxes_example(self):
- self._test_er_suta('SC', self.SC_UNEMP, date(2021, 1, 1), wage_base=self.SC_UNEMP_MAX_WAGE)
- self._test_sit(750.0, 0.0, False, 3.0, 'weekly', date(2021, 1, 1), 28.73)
- self._test_sit(800.0, 0.0, True, 0.0, 'weekly', date(2021, 1, 1), 0.00)
- self._test_sit(9000.0, 0.0, False, 0.0, 'monthly', date(2021, 1, 1), 594.61)
- self._test_sit(5000.0, 10.0, False, 2.0, 'semi-monthly', date(2021, 1, 1), 316.06)
+ def test_2020_taxes_example(self):
+ self._test_er_suta('SC', self.SC_UNEMP, date(2020, 1, 1), wage_base=self.SC_UNEMP_MAX_WAGE)
+ self._test_sit(750.0, 0.0, False, 3.0, 'weekly', date(2020, 1, 1), 28.73)
+ self._test_sit(800.0, 0.0, True, 0.0, 'weekly', date(2020, 1, 1), 0.00)
+ self._test_sit(9000.0, 0.0, False, 0.0, 'monthly', date(2020, 1, 1), 594.61)
+ self._test_sit(5000.0, 10.0, False, 2.0, 'semi-monthly', date(2020, 1, 1), 316.06)
diff --git a/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2020.py b/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2020.py
index 0fa68d61..261512c3 100755
--- a/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2020.py
+++ b/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2020.py
@@ -62,7 +62,7 @@ class TestUsWAPayslip(TestUsPayslip):
self._log('2020 Washington tax first payslip:')
payslip = self._createPayslip(employee, '2020-01-01', '2020-01-31')
hours_in_period = payslip.worked_days_line_ids.filtered(lambda l: l.code == 'WORK100').number_of_hours
- self.assertEqual(hours_in_period, 184) # only asserted to test algorithm
+ self.assertPayrollAlmostEqual(hours_in_period, 184) # only asserted to test algorithm
payslip.compute_sheet()
rules = self._getRules(payslip)
diff --git a/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py b/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py
index 86f541bc..0b4ce7a3 100755
--- a/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py
+++ b/l10n_us_hr_payroll/tests/test_us_wa_washington_payslip_2021.py
@@ -12,8 +12,8 @@ class TestUsWAPayslip(TestUsPayslip):
WA_UNEMP_RATE = 2.16
WA_FML_MAX_WAGE = 142800.00
WA_FML_RATE = 0.4
- WA_FML_RATE_EE = 66.33
- WA_FML_RATE_ER = 33.67
+ WA_FML_RATE_EE = 63.33
+ WA_FML_RATE_ER = 36.67
def setUp(self):
super(TestUsWAPayslip, self).setUp()