Fusion Payroll Canada - QuickBooks-Like Enhancement Plan
Overview
Transform the basic Canadian payroll module into a comprehensive, QuickBooks-like payroll solution for Odoo Enterprise.
Status : 📋 PLANNING PHASE - Collecting requirements before implementation
Table of Contents
Gap Analysis
Employee Profile
Employment Status & ROE
ROE Generation
Tax Withholdings
Base Pay & Compensation
Additional Pay Types
Time Off & Vacation
Deductions & Contributions
Paycheque Entry Form
Pay Stub Report
Payroll Cheque Printing
Payroll Tax Centre
Reports
Implementation Order
Gap Analysis
What QuickBooks Has (That Odoo Lacks)
Feature
QuickBooks
Odoo Enterprise
Gap
Priority
Employee Profile Tabs
Profile, Paycheque list, Documents, Notes, Permissions
Basic form
❌ Missing
HIGH
Personal Info
SIN, Birth date, Gender, Full address
Partial
⚠️ Partial
HIGH
Employment Status
Active/Terminated with ROE codes
Basic active/archive
❌ Missing
HIGH
ROE Reason Codes
Full Service Canada codes
None
❌ Missing
HIGH
Tax Withholdings
TD1 Fed/Prov, Exemptions
Basic
❌ Missing
HIGH
Payment Method
Cheque/Direct deposit
Has bank
⚠️ Partial
MEDIUM
Base Pay
Hourly/Salary/Commission
Has wage
⚠️ Partial
HIGH
Additional Pay Types
Stat Holiday, Custom
Not structured
❌ Missing
HIGH
Time Off
Vacation %, Sick pay
Separate module
⚠️ Separate
MEDIUM
Deductions
Health, Retirement, T4 dental
Basic
❌ Missing
MEDIUM
Workers' Comp
WCB tracking
None
❌ Missing
LOW
CPP2 (Second CPP)
2024+ additional pension
None
❌ Missing
HIGH
Employer Tax Tracking
EI (1.4x), CPP (1:1)
Basic
❌ Missing
HIGH
Paycheque Entry Form
Detailed editable form
Basic payslip
❌ Missing
HIGH
Payroll Tax Centre
Remittances + Filings dashboard
None
❌ Missing
HIGH
Tax Remittance Tracking
Monthly CPP/EI/Tax payments
None
❌ Missing
HIGH
T4 Summary/Slips
Year-end tax forms
None
❌ Missing
HIGH
Emergency Contact
Full details
Not in payroll
❌ Missing
LOW
Pay Stub Report
Detailed with YTD
Basic payslip
❌ Missing
HIGH
Phase 1: Employee Profile
Personal Info Fields
Field
Type
Required
Notes
Legal Name (First, M.I., Last)
Char
Yes
Already in Odoo
Preferred First Name
Char
No
Display name
Email
Char
Yes
Already in Odoo
Home Phone
Char
No
With extension
Work Phone
Char
No
With extension
Mobile Phone
Char
No
Street Address
Char
Yes
Address Line 2
Char
No
City
Char
Yes
Province
Selection
Yes
All Canadian provinces
Postal Code
Char
Yes
Format: A1A 1A1
Mailing Address Same as Home
Boolean
No
Checkbox
Birth Date
Date
Yes
Gender
Selection
No
Male/Female/Other
Social Insurance Number
Char
Yes
9 digits, masked
Canadian Provinces Selection
Phase 2: Employment Status & ROE
Employment Status
Status
Description
Triggers
Active
Actively working and receiving pay
Default for new employees
On Leave
Temporary leave (maternity, sick, etc.)
Manual change
Terminated
Employment has ended
Requires ROE code
ROE (Record of Employment) Reason Codes
These are official Service Canada codes required for EI claims:
A - Shortage of Work
Code
Description
A00
Shortage of work/End of contract or season
A01
Employer bankruptcy or receivership
B - Strike/Lockout
Code
Description
B00
Strike or lockout
D - Illness
Code
Description
D00
Illness or injury
E - Quit (Voluntary)
Code
Description
E00
Quit
E02
Quit/Follow spouse
E03
Quit/Return to school
E04
Quit/Health Reasons
E05
Quit/Voluntary retirement
E06
Quit/Take another job
E09
Quit/Employer relocation
E10
Quit/Care for a dependent
E11
Quit/To become self-employed
F - Maternity
Code
Description
F00
Maternity
G - Retirement
Code
Description
G00
Mandatory retirement
G07
Retirement/Approved workforce reduction
H - Work-Sharing
Code
Description
H00
Work-Sharing
J - Apprentice
Code
Description
J00
Apprentice training
K - Other
Code
Description
K00
Other
K12
Other/Change of payroll frequency
K13
Other/Change of ownership
K14
Other/Requested by Employment Insurance
K15
Other/Canadian Forces - Queen's Regulations/Orders
K16
Other/At the employee's request
K17
Other/Change of Service Provider
M - Dismissal
Code
Description
M00
Dismissal
M08
Dismissal/Terminated within probationary period
N - Leave
Code
Description
N00
Leave of absence
P - Parental
Code
Description
P00
Parental
Z - Compassionate Care
Code
Description
Z00
Compassionate Care/Family Caregiver
Employment Details Fields
Field
Type
Required
Notes
Status
Selection
Yes
Active/On Leave/Terminated
Last Day of Work
Date
When terminated
Required for ROE
Show in Employee Lists Only
Boolean
No
Keep terminated visible
Reason for Status Change
Selection
When terminated
ROE codes above
Hire Date
Date
Yes
Pay Schedule
Selection
Yes
Weekly/Bi-Weekly/Semi-Monthly/Monthly
Work Location
Many2one
Yes
Link to work address
Manager
Many2one
No
Department
Many2one
No
Job Title
Char
No
Employee ID
Char
No
Internal employee number
Billing Rate (per hour)
Float
No
For billable employees
Billable by Default
Boolean
No
ROE Tracking Fields
Field
Type
Notes
ROE Issued
Boolean
Checkbox when issued
ROE Issue Date
Date
When ROE was created
ROE Serial Number
Char
Service Canada serial
Phase 2B: ROE Generation & Submission
ROE Workflow (from QuickBooks)
When an employee is terminated or goes on leave:
Prompt Dialog :
"Do you want to create [Employee]'s Record of Employment?"
Reminder: "Make sure you send a Record of Employment (ROE) to Service Canada within [5 days] of the interruption in earnings."
Buttons: "Do it later" | "Continue"
ROE Review Screen :
Shows official ROE form preview
Warning: "This isn't the official ROE"
"Review the info and download the ROE in the next step as a BLK file to submit it through ROE Web"
Displays deadline: "Make sure to submit this ROE by [Date]"
ROE Ready Screen :
Download ROE : "Download it in a BLK format for ROE Web. You can also view a PDF version."
Button: "Download BLK" (dropdown with PDF option)
Go to ROE Web : "Submit it through ROE Web by [deadline date]"
Archive ROE : "After submitting the ROE, archive the ROE for employee. You can view the ROE later in the archive section."
Official ROE Form Fields
Box
Field Name
Description
Source
1
Serial No.
Assigned by Service Canada
N/A for electronic
2
Serial No. of ROE Amended/Replaced
If amending previous ROE
Manual entry
3
Employer's Payroll Reference No.
Internal reference
System generated
4
Employer's Name and Address
Company info
Company settings
5
CRA Business Number (BN)
15-char format: 808902308RP0001
Company settings
6
Pay Period Type
W=Weekly, B=Bi-Weekly, S=Semi-Monthly, M=Monthly
Employee pay schedule
7
Postal Code
Employer postal code
Company settings
8
Social Insurance No.
Employee SIN (9 digits)
Employee record
9
Employee's Name and Address
Full name + address
Employee record
10
First Day Worked
Hire date
Employee record
11
Last Day for Which Paid
Last day of pay
Termination wizard
12
Final Pay Period Ending Date
End date of final pay period
Calculated
13
Occupation
Job title
Employee record
14
Expected Date of Recall
If temporary layoff
Manual entry
15A
Total Insurable Hours
Hours worked in insurable period
Calculated from payslips
15B
Total Insurable Earnings
Earnings in insurable period
Calculated from payslips
15C
Insurable Earnings by Pay Period
Up to 53 pay periods
Calculated from payslips
16
Reason for Issuing this ROE
ROE reason code (A-Z)
Termination wizard
17
Other Payments/Benefits
Other than regular pay
Manual entry
18
Comments
Additional notes
Manual entry
19
Sick/Maternity/Parental Leave
Special payments after last day
Manual entry
20
Communication Preferred In
English/French
Employee preference
21
Telephone No.
Contact phone
Employee/Company
22
Certification
Issuer name and date
Current user + date
Pay Period Type Codes
Code
Type
Pay Periods/Year
W
Weekly
52
B
Bi-Weekly
26
S
Semi-Monthly
24
M
Monthly
12
BLK File Format (ROE Web XML)
QuickBooks exports ROE as a .blk file (XML format) for upload to Service Canada's ROE Web:
ROE File Naming Convention
ROEForm_[LastName]_[FirstName]_[Date]_[Sequence].blk
Example: ROEForm_Gurmeet_Kaur_2026-01-01_011.blk
ROE Archive Model
Field
Type
Notes
employee_id
Many2one
Employee
roe_date
Date
Date ROE created
reason_code
Selection
A-Z codes
first_day_worked
Date
Box 10
last_day_paid
Date
Box 11
final_period_end
Date
Box 12
total_insurable_hours
Float
Box 15A
total_insurable_earnings
Float
Box 15B
pay_period_earnings
Text
JSON of pay period amounts
blk_file
Binary
Downloaded BLK file
pdf_file
Binary
PDF version
submitted_to_roe_web
Boolean
Has been submitted
submission_date
Date
When submitted
service_canada_serial
Char
Serial after submission
state
Selection
draft/ready/submitted/archived
5-Day Deadline Rule
ROE must be submitted to Service Canada within 5 calendar days of:
Interruption of earnings (termination, layoff)
Employee request
First day of leave (maternity, parental, sick)
Phase 3: Tax Withholdings
Federal Withholding
Field
Type
Default
Notes
Federal TD1 Amount
Float
$15,705 (2024)
Basic personal amount
Additional Federal Tax
Float
$0
Extra tax per pay
Provincial Withholding
Field
Type
Notes
Province
Selection
Employee's tax province
Provincial Claim Amount
Float
Provincial TD1 amount
Tax Exemptions
Field
Type
Notes
Exempt from CPP
Boolean
Age 70+, or other exemption
Exempt from EI
Boolean
Specific exemptions
Exempt from Federal Tax
Boolean
Non-resident, treaty, etc.
Phase 4: Base Pay & Compensation
Compensation Type
Type
Description
Fields
Hourly
Paid by the hour
Rate per hour
Salary
Fixed amount per period
Annual/period salary
Commission Only
Commission-based
Commission structure
Base Pay Fields
Field
Type
Notes
Compensation Type
Selection
Hourly/Salary/Commission
Rate
Float
$/hour or annual salary
Account Mapping
Many2one
GL account for wages
Hours per Day
Float
Default working hours
Days per Week
Float
Default working days
Effective Date
Date
When rate takes effect
Phase 5: Additional Pay Types
Pay Type Categories
Category
Examples
Earnings
Regular, Overtime, Stat Holiday, Vacation, Bonus
Deductions
Garnishment, Union dues, Advances
Employer Contributions
Health benefits, RRSP match
Default Pay Types (QuickBooks)
Pay Type
Code
Calculation
Taxable
Regular Pay
REG
Hourly × Hours
Yes
Overtime Pay
OT
1.5× Hourly × Hours
Yes
Stat Holiday Pay
STAT
1.0× Base pay
Yes
Stat Pay - Average Daily Wage
STAT_AVG
Calculated average
Yes
Vacation Pay
VAC
% of earnings
Yes
Sick Pay
SICK
Based on policy
Yes
Bonus
BONUS
Fixed or %
Yes
Pay Type Model
Field
Type
Notes
Name
Char
Display name
Code
Char
Unique code
Category
Selection
Earnings/Deduction/Contribution
Calculation Type
Selection
Fixed/Percentage/Multiplier/Hourly
Rate/Amount
Float
Value based on calc type
Taxable
Boolean
Subject to income tax
Subject to CPP
Boolean
Subject to EI
Boolean
Account
Many2one
GL account
Phase 6: Time Off & Vacation
Vacation Policy
Policy Type
Description
Paid Out Each Pay Period
% of earnings added to each pay
Accrued
Hours/days banked for later use
Vacation Fields
Field
Type
Notes
Vacation Policy
Selection
Payout/Accrued
Vacation Rate
Float
Default: 4.00%
Vacation Earnings Types
Many2many
Which pay types earn vacation
Sick Pay
Policy
Description
No Sick Pay Policy
X Days per Year
Fixed days
Unlimited
Unpaid Time Off
Policy
Description
No Unpaid Time Off Policy
Track Hours
Phase 7: Deductions & Contributions
Deduction/Contribution Types
Category
Examples
Health Insurance
Medical, Dental, Vision
Retirement Plans
RRSP, Pension
Taxable Benefits (non-cash)
Company car, housing
Other Deductions
Garnishment, loans, union dues
T4 Dental Benefits Code (CRA Required)
Code
Description
1
No dental benefits
2
Payee only covered
3
Payee, spouse, and dependents
4
Payee and spouse
5
Payee and dependents
Deduction Model
Field
Type
Notes
Name
Char
Code
Char
Category
Selection
Health/Retirement/Taxable/Other
Calculation
Selection
Fixed/% of Gross
Amount/Rate
Float
Pre-Tax
Boolean
Deducted before tax calc
Has Employer Match
Boolean
Employer Match Rate
Float
% of employee contribution
Max Annual Amount
Float
Cap per year
Phase 8: Paycheque Entry Form
Paycheque Entry Layout (QuickBooks Style)
This is the detailed view when creating/editing a paycheque:
Field
Type
Notes
Employee
Many2one
Pay To
Net Pay
Float
Calculated (readonly)
Pay Date
Date
When payment issued
Pay Period Start
Date
Period beginning
Pay Period End
Date
Period ending
Paid From
Many2one
Bank account
Paid By
Selection
Cheque/Direct Deposit
Cheque Number
Char
Optional, for cheques
Pay Section (Earnings Lines)
Field
Type
Notes
Pay Type
Many2one
Regular, Vacation, Stat, etc.
Hours
Float
Editable for hourly pay types
Rate
Float
$/hour, usually from contract
Current
Float
Calculated: Hours × Rate
YTD
Float
Year-to-date running total
Default Pay Types in QuickBooks
Pay Type
Editable Hours
Editable Rate
Calculation
Regular Pay
✅ Yes
✅ Yes
Hours × Rate
Vacation Pay
❌ No
❌ No
% of earnings
Stat Holiday Pay
✅ Yes (default 0)
❌ No (from contract)
Hours × Rate
Stat pay - average daily wage
❌ No
❌ No
Calculated average
Employee Taxes Section
Tax Type
Calculation
Notes
Income Tax
Complex formula
Federal + Provincial
Employment Insurance
1.64% of insurable earnings
Max $1,077.48/year (2025)
Canada Pension Plan
5.95% above exemption
Max $4,034.10/year (2025)
Second Canada Pension Plan (CPP2)
4% on earnings above first ceiling
NEW for 2024+
Employer Taxes Section
Tax Type
Calculation
Notes
Employment Insurance Employer
1.4× employee EI
$38.21 vs $27.29 = 1.4x
Canada Pension Plan Employer
1:1 match
Same as employee
Second CPP Employer
1:1 match
Same as employee CPP2
Key Insight : Employer EI is 1.4× the employee contribution!
Time Off Section
Field
Type
Notes
Time Off Type
Char
Vacation, Sick, etc.
Hours Accrued
Float
Hours earned this period
Hours Used
Float
Hours taken this period
Hours Available
Float
Balance
Amount Accrued
Float
$ earned
Amount Used
Float
$ taken
Amount Available
Float
$ balance
Memo Field
Field
Type
Notes
Memo
Text
Internal notes for this paycheque
Calculated Totals
Section
Total Field
Calculation
Pay
Total Current
Sum of all earnings
Pay
Total YTD
Sum of all YTD earnings
Employee Taxes
Total Current
Sum of all employee taxes
Employee Taxes
Total YTD
Sum of all YTD employee taxes
Employer Taxes
Total Current
Sum of all employer taxes
Employer Taxes
Total YTD
Sum of all YTD employer taxes
Net Pay Calculation
Where:
Total Pay = Regular Pay + Vacation Pay + Stat Pay + Other Earnings
Employee Taxes = Income Tax + EI + CPP + CPP2
Employee Deductions = Health, RRSP, etc.
Note: Employer taxes are NOT deducted from employee pay (they are employer expense)
Phase 9: Pay Stub Report
Pay Stub Layout (QuickBooks Style)
Pay Stub Data Structure
Section
Fields
Header
Employer name/address, Cheque #, Pay date, Net pay
Employee
Name, Address
Pay Period
Start date, End date, Pay date, Total hours
Benefits
Vacation (Accrued, Used, Available)
Pay
Type, Hours, Rate, Current, YTD
Deductions
Type, Current, YTD
Taxes
Income Tax, EI, CPP, CPP2, Current, YTD
Summary
Total Pay, Taxes, Deductions, Net Pay
Phase 9B: Payroll Cheque Printing
Cheque Format
Paper Size : Letter (8.5" × 11")
Layout : Typically 3-part format:
Top Stub - Employee copy (pay stub details)
Middle Cheque - The actual negotiable cheque
Bottom Stub - Employer record copy
Integration with Odoo Enterprise
Odoo Enterprise has base cheque printing functionality in the account module. We need to:
Extend the cheque template for payroll-specific fields
Add pay stub information to the stub portions
Use Odoo's existing cheque number sequence
Cheque Stub Information (to document)
Section
Fields
Employee Info
Name, Address, Employee ID
Pay Period
Start date, End date, Pay date
Earnings
Pay types with Hours, Rate, Current, YTD
Deductions
Type, Current, YTD
Taxes
Federal, Provincial, EI, CPP, CPP2
Summary
Gross Pay, Total Deductions, Net Pay
Time Off
Vacation balance
Payment Methods
Method
Notes
Cheque
Physical cheque with stub
Direct Deposit
Electronic transfer, still need pay stub
(Awaiting cheque image from user for detailed layout)
Phase 10: Payroll Tax Centre
Overview
The Payroll Tax Centre is a centralized dashboard for managing tax remittances and government filings.
Navigation : Payroll → Payroll Tax
Sub-tabs :
Payments - Tax remittances to CRA
Filings - T4 Summary, T4 Slips, ROEs
10A: Payments Tab (Tax Remittances)
Remittance List Layout
Remittance Model
Field
Type
Notes
Period Start
Date
Beginning of remittance period
Period End
Date
End of remittance period
Quarter
Char
Q1/Q2/Q3/Q4
Due Date
Date
CRA due date (15th of following month)
Status
Selection
pending/due/past_due/paid
CPP Employee
Float
Sum of employee CPP
CPP Employer
Float
Sum of employer CPP
CPP2 Employee
Float
Sum of employee CPP2
CPP2 Employer
Float
Sum of employer CPP2
EI Employee
Float
Sum of employee EI
EI Employer
Float
Sum of employer EI (1.4x)
Income Tax
Float
Sum of income tax withheld
Total
Float
All amounts combined
Payment Date
Date
When paid
Payment Reference
Char
Bank reference
Remittance Breakdown (Expandable)
Line Item
Description
Canada Pension Plan Employer
Employer portion of CPP
Canada Pension Plan
Employee portion of CPP
Employment Insurance Employer
Employer EI (1.4× employee)
Employment Insurance
Employee EI
Income Tax
Federal + Provincial withheld
Total
Sum to remit to CRA
Pay & File Actions
Action
Description
Pay & file
Process payment to CRA
Mark as paid
Manual payment recorded
Remittance Due Dates (CRA Rules)
Remitter Type
Due Date
Regular (< $25K annual)
15th of month following pay
Threshold 1 ($25K-$99K)
15th of month following pay
Threshold 2 (≥ $100K)
3rd working day after pay
Quarterly
15th of month after quarter
10B: Filings Tab
Filings Dashboard
Filing Types
Filing
Description
Due Date
Format
T4 Summary
Employer summary of all T4s
Last day of February
PDF/XML
T4 Employer Slips
Individual T4 for each employee
Last day of February
PDF/XML
ROE
Record of Employment
5 days after interruption
BLK/PDF
Filing Status
Status
Icon
Description
Not Due Yet
ℹ ️ Blue
Future filing, preview available
Due Soon
⚠️ Yellow
Coming up soon
Past Due
🔴 Red
Overdue, action needed
Completed
✅ Green
Filed and archived
10C: T4 Summary Form
Official CRA T4 Summary (Form T4 SUM)
Box
Field Name
Description
Source
-
Year
Tax year (e.g., 2025)
System
-
Employer Account
15-char BN (808902308RP0001)
Company settings
-
Employer Name/Address
Company info
Company settings
88
Total T4 slips filed
Count of employees
Calculated
14
Employment income
Total of all Box 14 on T4s
Sum from payslips
16
Employees' CPP contributions
Total employee CPP
Sum from payslips
16A
Employees' second CPP (CPP2)
Total employee CPP2
Sum from payslips
17
Employees' QPP contributions
Quebec only
Sum from payslips
17A
Employees' second QPP
Quebec only
Sum from payslips
18
Employees' EI premiums
Total employee EI
Sum from payslips
19
Employer's EI premiums
Total employer EI (1.4x)
Sum from payslips
20
RPP contributions
Registered Pension Plan
Sum from payslips
22
Income tax deducted
Federal + Provincial tax
Sum from payslips
27
Employer's CPP contributions
Total employer CPP
Sum from payslips
27A
Employer's second CPP
Total employer CPP2
Sum from payslips
52
Pension adjustment
If applicable
Sum from payslips
80
Total deductions
16+16A+27+27A+18+19+22
Calculated
82
Minus: remittances
Payments made during year
Sum of remittances
-
Difference
Box 80 - Box 82
Calculated
84
Overpayment
If remittances > deductions
Calculated
86
Balance due
If deductions > remittances
Calculated
74
SIN of proprietor
For sole proprietors
Company settings
76
Person to contact
Contact name
User
78
Telephone
Contact phone
User
T4 Summary Example Values (from screenshot)
Box
Value
88
5 employees
14
$124,011.68
16
$6,810.02
27
$6,810.02
18
$2,033.81
19
$2,847.35
22
$15,053.84
80
$33,555.04
86
$33,555.04 (balance due)
Electronic Filing Requirement
Mandatory electronic filing if you have more than 5 information returns of the same type.
Filing formats:
Internet file transfer (XML)
Web Forms (online)
10D: T4 Individual Slips
Each employee receives a T4 slip with their individual amounts.
Box
Field
14
Employment income
16
Employee's CPP contributions
16A
Employee's CPP2 contributions
17
Employee's QPP (Quebec)
18
Employee's EI premiums
22
Income tax deducted
24
EI insurable earnings
26
CPP/QPP pensionable earnings
44
Union dues
46
Charitable donations
50
RPP or DPSP registration number
52
Pension adjustment
55
Employee's PPIP premiums (Quebec)
56
PPIP insurable earnings
Phase 11: Reports
Employee Reports
Report
Description
Priority
Pay Stub
Individual employee pay stub (PDF)
HIGH
Paycheque List
List of all paycheques for employee
HIGH
YTD Summary
Year-to-date earnings and deductions
MEDIUM
T4 Slip
Individual year-end tax slip
HIGH
Employer/Accountant Reports
Report
Description
Priority
Payroll Register
All employees for pay period
HIGH
Payroll Summary
Summary by department/location
MEDIUM
Remittance Summary
CPP, EI, Tax amounts to remit
HIGH
T4 Summary
Year-end employer summary
HIGH
T4 Slips (All)
All employee T4s
HIGH
RL-1 (Quebec)
Quebec year-end slip
LOW
ROE Report
Pending ROE to issue
MEDIUM
Implementation Order
Priority 1 - Foundation (Must Have)
Employee Profile Enhancement (Personal Info)
Employment Status & ROE Codes
ROE Generation & BLK File Export ⭐ NEW
Tax Withholdings (TD1)
Base Pay Configuration
Priority 2 - Core Payroll (Must Have)
Pay Schedules (Weekly, Bi-Weekly, Semi-Monthly, Monthly)
Additional Pay Types (Stat Holiday, Overtime)
Vacation Pay (% payout)
CPP2 (Second Canada Pension Plan)
Priority 3 - Reporting (Must Have)
Enhanced Pay Stub Report
Paycheque Entry Form (detailed view)
Payroll Cheque Printing
Priority 4 - Tax Centre & Compliance (Must Have)
Payroll Tax Centre Dashboard ⭐ NEW
Tax Remittance Tracking (Payments tab)
T4 Summary Generation ✅ (with PDF field positioning system)
T4 Individual Slips ✅ (with PDF field positioning system)
Remittance Due Date Alerts
PDF Field Positioning System ✅ - Dynamic configuration for T4/T4A PDF text overlay (see docs/PDF_FIELD_POSITIONING.md)
Priority 5 - Advanced Features (Nice to Have)
Deductions & Contributions
RL-1 Reports (Quebec)
Workers' Comp Integration
Direct Deposit Files
Questions & Decisions Needed
Answered ✅
Pending ❓
Pay Schedules : Which ones do you need? (Weekly/Bi-Weekly/Semi-Monthly/Monthly)
Provinces : Just Ontario or all provinces?
Vacation : Payout each period (4%) or accrued?
Deductions : What specific deductions do you offer?
Reports : Which reports are most critical?
Multi-company : Do you have multiple employers?
Integration : Need bank file export? Which banks?
Notes from User
(Add notes from discussions here)
QuickBooks screenshots provided for reference
ROE codes from QuickBooks captured (all Service Canada codes)
Pay stub format from QuickBooks captured
User wants comprehensive implementation like QuickBooks
ROE Generation : QuickBooks generates official ROE form, exports as BLK file for ROE Web submission
5-day deadline : System should remind about 5-day submission deadline
ROE Archive : Keep historical ROE records with BLK and PDF files
Paycheque Entry : Detailed form with collapsible sections (Pay, Employee taxes, Employer taxes, Time off)
CPP2 : Second Canada Pension Plan introduced 2024, separate line item
Employer EI : 1.4× employee contribution (key calculation!)
Employer CPP/CPP2 : 1:1 match with employee
Time Off Tracking : Tracks both hours AND dollar amounts (accrued/used/available)
Cheque Printing : Letter size payroll cheques - Odoo Enterprise has base cheque printing to extend
Payroll Tax Centre : Central dashboard for tax remittances and government filings
Remittance Breakdown : CPP (employee+employer), EI (employee+employer 1.4x), Income Tax
Due Dates : Remittances due 15th of following month (regular remitters)
T4 Summary : All CRA boxes documented (88, 14, 16, 16A, 18, 19, 22, 27, 27A, 80, 82, 84, 86)
T4 Filing Deadline : Last day of February following tax year
Electronic Filing : Mandatory if >5 returns (XML or Web Forms)
Dental Benefits Alert : CRA requires T4 dental code for each employee
PDF Field Positioning : ✅ Implemented dynamic field positioning system for T4/T4A PDF generation using flattened templates and ReportLab text overlay. Users can configure field positions, font sizes, and font names through UI. See docs/PDF_FIELD_POSITIONING.md for full documentation.
Version History
Date
Changes
2024-12-31
Initial plan created
2024-12-31
Added ROE codes from QuickBooks screenshots
2024-12-31
Added Pay Stub layout from QuickBooks
2024-12-31
Added Employment Details fields
2024-12-31
Added ROE Generation workflow & BLK file format (Phase 2B)
2024-12-31
Added ROE form fields (all 22 boxes)
2024-12-31
Added ROE Archive model structure
2024-12-31
Added Paycheque Entry Form (Phase 8) - detailed layout
2024-12-31
Added Employee Taxes breakdown (Income Tax, EI, CPP, CPP2)
2024-12-31
Added Employer Taxes (EI=1.4x employee, CPP=1:1 match)
2024-12-31
Added Time Off tracking (hours + amounts)
2024-12-31
Added Payroll Cheque Printing section (Phase 9B) - extends Odoo Enterprise base
2024-12-31
Added Payroll Tax Centre (Phase 10) - Payments & Filings tabs
2024-12-31
Added Tax Remittance tracking with CPP/EI/Income Tax breakdown
2024-12-31
Added T4 Summary form with all CRA box numbers (88, 14, 16, 18, 19, 22, etc.)
2024-12-31
Added T4 Individual Slips structure
2024-12-31
Added Filing deadlines and electronic filing requirements
2025-01-XX
✅ IMPLEMENTED: PDF Field Positioning System - Dynamic configuration interface for T4/T4A PDF text overlay positions. See docs/PDF_FIELD_POSITIONING.md for details