Skip to content

Commit

Permalink
ABF-9069 2025 Tax-Ca Yearly Update (#517)
Browse files Browse the repository at this point in the history
* LIF udpate 2025

* RRIF update (test)

* First batch of changes for 2025. Some amounts are not yet published for 2025.

* with latest updates for 2024.

* Fix lint errors and PPP increase factor

* Fix build error

* Added ppp increase factor source
  • Loading branch information
kdoucet-kronos authored Dec 30, 2024
1 parent ea4b8b6 commit 6cfe724
Show file tree
Hide file tree
Showing 15 changed files with 360 additions and 323 deletions.
282 changes: 141 additions & 141 deletions src/investments/life-income-fund.ts
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
// tslint:disable:max-line-length
/*
Sources
Provincial: https://www.empire.ca/sites/default/files/2023-02/INV-996A-LIFMinMaxWithdrawalPercentages-EN-web.pdf
Provincial: https://www.empire.ca/sites/default/files/2024-02/INV-996A-LIFMinMaxWithdrawalPercentages-EN-web.pdf
https://ca.rbcwealthmanagement.com/documents/1647873/2467026/2023+-+Registered+Plan+Minimums+%26+Maximums.pdf/f26cb471-e962-47cd-9033-fc1d9c34663e
Federal: http://www.osfi-bsif.gc.ca/Eng/pp-rr/faq/Pages/lif-frv.aspx
Federal & Territories & PEI : http://www.osfi-bsif.gc.ca/Eng/pp-rr/faq/Pages/lif-frv.aspx
Conversion for Federal, Territories and PEI
Because the age of reference is at the end of the previous year, we must shift the reference rate
by one year to reflect the calculation engine which uses the age at the end of the current year.
i.e. : Gov has a rate for age 60 but we use it for age 61.
Revised
2023-12-27
2024-12-23
*/
// tslint:enable:max-line-length

Expand Down Expand Up @@ -113,149 +113,149 @@ export const province2MaxWithdrawalPct: MaxWithdrawalPctByAge = {

// Others: Northwest Territories (NT), Nunavut (NU), Prince Edward Island (PE), Yukon (YT)
export const othersMaxWithdrawalPct: MaxWithdrawalPctByAge = {
20: 0.04488,
21: 0.044933,
22: 0.044989,
23: 0.045048,
24: 0.045111,
25: 0.045178,
26: 0.04525,
27: 0.045326,
28: 0.045406,
29: 0.045492,
30: 0.045584,
31: 0.045681,
32: 0.045784,
33: 0.045895,
34: 0.046012,
35: 0.046137,
36: 0.046271,
37: 0.046413,
38: 0.046565,
39: 0.046727,
40: 0.0469,
41: 0.047084,
42: 0.047282,
43: 0.047493,
44: 0.047718,
45: 0.04796,
46: 0.048219,
47: 0.048496,
48: 0.048794,
49: 0.049114,
50: 0.049457,
51: 0.049826,
52: 0.050223,
53: 0.050651,
54: 0.051113,
55: 0.051612,
56: 0.052152,
57: 0.052736,
58: 0.05337,
59: 0.054059,
60: 0.054809,
61: 0.055626,
62: 0.05652,
63: 0.0575,
64: 0.058576,
65: 0.059762,
66: 0.061072,
67: 0.062525,
68: 0.064142,
69: 0.065951,
70: 0.067983,
71: 0.070278,
72: 0.072886,
73: 0.075871,
74: 0.079315,
75: 0.083323,
76: 0.087916,
77: 0.09323,
78: 0.099444,
79: 0.106804,
80: 0.115655,
81: 0.126492,
82: 0.140061,
83: 0.157533,
84: 0.18086,
85: 0.213552,
86: 0.262637,
87: 0.344506,
88: 0.508334,
20: 0.044298,
21: 0.04435,
22: 0.044406,
23: 0.044465,
24: 0.044528,
25: 0.044594,
26: 0.044665,
27: 0.04474,
28: 0.044821,
29: 0.044906,
30: 0.044996,
31: 0.045093,
32: 0.045196,
33: 0.045305,
34: 0.045422,
35: 0.045546,
36: 0.045679,
37: 0.04582,
38: 0.045971,
39: 0.046132,
40: 0.046304,
41: 0.046487,
42: 0.046683,
43: 0.046893,
44: 0.047117,
45: 0.047357,
46: 0.047614,
47: 0.04789,
48: 0.048186,
49: 0.048503,
50: 0.048844,
51: 0.049211,
52: 0.049606,
53: 0.050032,
54: 0.050491,
55: 0.050987,
56: 0.051524,
57: 0.052105,
58: 0.052736,
59: 0.053421,
60: 0.054168,
61: 0.054982,
62: 0.055872,
63: 0.056848,
64: 0.05792,
65: 0.059101,
66: 0.060407,
67: 0.061856,
68: 0.063469,
69: 0.065275,
70: 0.067303,
71: 0.069597,
72: 0.072204,
73: 0.07519,
74: 0.078638,
75: 0.082655,
76: 0.087258,
77: 0.092582,
78: 0.098807,
79: 0.106178,
80: 0.115041,
81: 0.125892,
82: 0.139476,
83: 0.156966,
84: 0.180313,
85: 0.213033,
86: 0.262155,
87: 0.344082,
88: 0.508019,
89: 1,
};

// Federal
export const federalMaxWithdrawalPct: MaxWithdrawalPctByAge = {
20: 0.04488,
21: 0.044933,
22: 0.044989,
23: 0.045048,
24: 0.045111,
25: 0.045178,
26: 0.04525,
27: 0.045326,
28: 0.045406,
29: 0.045492,
30: 0.045584,
31: 0.045681,
32: 0.045784,
33: 0.045895,
34: 0.046012,
35: 0.046137,
36: 0.046271,
37: 0.046413,
38: 0.046565,
39: 0.046727,
40: 0.0469,
41: 0.047084,
42: 0.047282,
43: 0.047493,
44: 0.047718,
45: 0.04796,
46: 0.048219,
47: 0.048496,
48: 0.048794,
49: 0.049114,
50: 0.049457,
51: 0.049826,
52: 0.050223,
53: 0.050651,
54: 0.051113,
55: 0.051612,
56: 0.052152,
57: 0.052736,
58: 0.05337,
59: 0.054059,
60: 0.054809,
61: 0.055626,
62: 0.05652,
63: 0.0575,
64: 0.058576,
65: 0.059762,
66: 0.061072,
67: 0.062525,
68: 0.064142,
69: 0.065951,
70: 0.067983,
71: 0.070278,
72: 0.072886,
73: 0.075871,
74: 0.079315,
75: 0.083323,
76: 0.087916,
77: 0.09323,
78: 0.099444,
79: 0.106804,
80: 0.115655,
81: 0.126492,
82: 0.140061,
83: 0.157533,
84: 0.18086,
85: 0.213552,
86: 0.262637,
87: 0.344506,
88: 0.508334,
20: 0.044298,
21: 0.04435,
22: 0.044406,
23: 0.044465,
24: 0.044528,
25: 0.044594,
26: 0.044665,
27: 0.04474,
28: 0.044821,
29: 0.044906,
30: 0.044996,
31: 0.045093,
32: 0.045196,
33: 0.045305,
34: 0.045422,
35: 0.045546,
36: 0.045679,
37: 0.04582,
38: 0.045971,
39: 0.046132,
40: 0.046304,
41: 0.046487,
42: 0.046683,
43: 0.046893,
44: 0.047117,
45: 0.047357,
46: 0.047614,
47: 0.04789,
48: 0.048186,
49: 0.048503,
50: 0.048844,
51: 0.049211,
52: 0.049606,
53: 0.050032,
54: 0.050491,
55: 0.050987,
56: 0.051524,
57: 0.052105,
58: 0.052736,
59: 0.053421,
60: 0.054168,
61: 0.054982,
62: 0.055872,
63: 0.056848,
64: 0.05792,
65: 0.059101,
66: 0.060407,
67: 0.061856,
68: 0.063469,
69: 0.065275,
70: 0.067303,
71: 0.069597,
72: 0.072204,
73: 0.07519,
74: 0.078638,
75: 0.082655,
76: 0.087258,
77: 0.092582,
78: 0.098807,
79: 0.106178,
80: 0.115041,
81: 0.125892,
82: 0.139476,
83: 0.156966,
84: 0.180313,
85: 0.213033,
86: 0.262155,
87: 0.344082,
88: 0.508019,
89: 1,
};

Expand Down
11 changes: 11 additions & 0 deletions src/investments/non-registered-savings-plan.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
// tslint:disable:max-line-length
/*
Sources
https://www.canada.ca/en/department-finance/news/2024/06/capital-gains-inclusion-rate.html
https://www.revenuquebec.ca/en/press-room/tax-news/details/2024-06-19/capital-gains-inclusion-rate-increase-1/
Revised
2024-12-30
*/
// tslint:enable:max-line-length

import { Rate } from '../taxes';

export const CAPITAL_GAINS_BRACKETS: Rate[] = [
Expand Down
2 changes: 1 addition & 1 deletion src/investments/registered-retirement-income-fund.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Conversion
None
Revised
2023-12-27
2024-01-18
*/

export interface RegisteredRetirementIncomeFund {
Expand Down
4 changes: 2 additions & 2 deletions src/investments/registered-retirement-savings-plan.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Note
Must use RRSP dollar limit and not DB limit
Revised
2023-12-28
2024-12-23
*/

export interface ConversionAge {
Expand All @@ -24,5 +24,5 @@ export const RRSP: RegisteredRetirementSavingsPlan = {
MIN: 0,
MAX: 71,
},
MAX_CONTRIBUTION: 31560,
MAX_CONTRIBUTION: 32490,
};
4 changes: 2 additions & 2 deletions src/investments/tax-free-savings-account.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Sources
https://www.taxtips.ca/tfsa/tfsa-contribution-rules-and-limits.htm
Revised
2024-01-12
2024-12-23
*/

export interface TaxFreeSavingsAccount {
Expand All @@ -20,7 +20,7 @@ export const TFSA: TaxFreeSavingsAccount = {
* Latest unrounded contribution change that changed rounded factor bracket
* (6751 -> 7000, but 2025 will be ~6893 -> 7000)
*/
UNROUNDED_MAX_CONTRIBUTION: 6751,
UNROUNDED_MAX_CONTRIBUTION: 6893,
ROUNDING_FACTOR: 500,
UPDATE_YEAR: 2024,
};
Loading

0 comments on commit 6cfe724

Please sign in to comment.