diff --git a/changelog.d/2824.fixed.md b/changelog.d/2824.fixed.md new file mode 100644 index 0000000000..1ad9218c56 --- /dev/null +++ b/changelog.d/2824.fixed.md @@ -0,0 +1 @@ +The model now adds the disabled child premium and the enhanced disability premium to a pensioner's Council Tax Reduction applicable amount for each qualifying child or young person in England, Wales and Scotland, with each nation's armed forces independence payment routes by year. diff --git a/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml new file mode 100644 index 0000000000..fab893223c --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml @@ -0,0 +1,16 @@ +description: Councils in England count a child (under 16) in a pensioner's family for the disabled child premium under the England Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: false + reference: + - title: SI 2012/2885 Sch. 2 para. 8, as in force on 30 April 2015, which has no AFIP limb; nor has the text in force on 30 April 2022 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2015-04-30 + - title: SI 2012/2885 Sch. 2 para. 8(e), as in force on 30 April 2023, which reaches only a young person + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2023-04-30 +metadata: + unit: bool + period: year + label: England Council Tax Reduction pensioner disabled child premium AFIP route for a child + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) Regulations 2012 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml new file mode 100644 index 0000000000..4f3a4f33dc --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml @@ -0,0 +1,19 @@ +description: Councils in England count a young person (a Child Benefit qualifying young person) in a pensioner's family for the disabled child premium under the England Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: false + reference: + - title: SI 2012/2885 Sch. 2 para. 8, as in force on 30 April 2015, which has no AFIP limb; nor has the text in force on 30 April 2022 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2015-04-30 + 2023-04-01: + value: true + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) (Amendment) Regulations 2023 (SI 2023/16) regs. 1(3) and 7(8), inserting Sch. 2 para. 8(e) for schemes for financial years from 1 April 2023 + href: https://www.legislation.gov.uk/uksi/2023/16/made +metadata: + unit: bool + period: year + label: England Council Tax Reduction pensioner disabled child premium AFIP route for a young person + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) Regulations 2012 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml new file mode 100644 index 0000000000..4de79d91be --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml @@ -0,0 +1,19 @@ +description: Councils in England count a child (under 16) in a pensioner's family for the enhanced disability premium under the England Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: false + reference: + - title: SI 2012/2885 Sch. 2 para. 7(1), as in force on 30 April 2015, which has no AFIP limb; nor has the text in force on 30 April 2022 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2015-04-30 + 2023-04-01: + value: true + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) (Amendment) Regulations 2023 (SI 2023/16) regs. 1(3) and 7(7)(c), inserting Sch. 2 para. 7(1)(c) for schemes for financial years from 1 April 2023 + href: https://www.legislation.gov.uk/uksi/2023/16/made +metadata: + unit: bool + period: year + label: England Council Tax Reduction pensioner enhanced disability premium AFIP route for a child + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) Regulations 2012 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml new file mode 100644 index 0000000000..f66428b35e --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml @@ -0,0 +1,19 @@ +description: Councils in England count a young person (a Child Benefit qualifying young person) in a pensioner's family for the enhanced disability premium under the England Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: false + reference: + - title: SI 2012/2885 Sch. 2 para. 7(1), as in force on 30 April 2015, which has no AFIP limb; nor has the text in force on 30 April 2022 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2015-04-30 + 2023-04-01: + value: true + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) (Amendment) Regulations 2023 (SI 2023/16) regs. 1(3) and 7(7)(c), inserting Sch. 2 para. 7(1)(c) for schemes for financial years from 1 April 2023 + href: https://www.legislation.gov.uk/uksi/2023/16/made +metadata: + unit: bool + period: year + label: England Council Tax Reduction pensioner enhanced disability premium AFIP route for a young person + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) Regulations 2012 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml new file mode 100644 index 0000000000..6d35085da5 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml @@ -0,0 +1,77 @@ +description: Weekly amount of the disabled child premium for each child or young person in the applicant's family who meets the condition in Sch. 2 para. 8, in the applicable amount of a pensioner under the England Council Tax Reduction prescribed requirements. The amounts equal the Housing Benefit amounts in every year from 2015-16 to 2026-27. +values: + # Each value is the weekly amount in the table of premium amounts in the + # version of the schedule in force on 30 April of that year. + 2013-04-01: + value: 57.89 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2013 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2013-04-30 + 2014-04-01: + value: 59.50 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2014 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2014-04-30 + 2015-04-01: + value: 60.06 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2015 (unchanged to 2016-17) + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2015-04-30 + 2017-04-01: + value: 60.90 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2017 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2017-04-30 + 2018-04-01: + value: 62.86 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2018 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2018-04-30 + 2019-04-01: + value: 64.19 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2019 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2019-04-30 + 2020-04-01: + value: 65.52 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2020 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2020-04-30 + 2021-04-01: + value: 65.94 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2021 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2021-04-30 + 2022-04-01: + value: 68.04 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2022 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2022-04-30 + 2023-04-01: + value: 74.69 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2023 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2023-04-30 + 2024-04-01: + value: 80.01 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2024 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2024-04-30 + 2025-04-01: + value: 81.37 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2025 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2025-04-30 + 2026-04-01: + value: 84.46 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (3), as in force on 30 April 2026 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2026-04-30 +metadata: + unit: currency-GBP + period: week + label: England Council Tax Reduction pensioner disabled child premium for a child or young person + uprating: gov.benefit_uprating_cpi + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) Regulations 2012 Sch. 1 para. 6(1)(d) and Sch. 2 paras. 4 and 8, Part 4 entry (3) + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml new file mode 100644 index 0000000000..b4213e49a5 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/england/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml @@ -0,0 +1,77 @@ +description: Weekly amount of the enhanced disability premium for each child or young person in the applicant's family who meets the condition in Sch. 2 para. 7, in the applicable amount of a pensioner under the England Council Tax Reduction prescribed requirements. The amounts equal the Housing Benefit amounts in every year from 2015-16 to 2026-27. +values: + # Each value is the weekly amount in the table of premium amounts in the + # version of the schedule in force on 30 April of that year. + 2013-04-01: + value: 23.45 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2013 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2013-04-30 + 2014-04-01: + value: 24.08 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2014 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2014-04-30 + 2015-04-01: + value: 24.43 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2015 (unchanged to 2016-17) + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2015-04-30 + 2017-04-01: + value: 24.78 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2017 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2017-04-30 + 2018-04-01: + value: 25.48 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2018 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2018-04-30 + 2019-04-01: + value: 26.04 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2019 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2019-04-30 + 2020-04-01: + value: 26.60 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2020 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2020-04-30 + 2021-04-01: + value: 26.67 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2021 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2021-04-30 + 2022-04-01: + value: 27.44 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2022 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2022-04-30 + 2023-04-01: + value: 30.17 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2023 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2023-04-30 + 2024-04-01: + value: 32.20 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2024 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2024-04-30 + 2025-04-01: + value: 32.75 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2025 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2025-04-30 + 2026-04-01: + value: 33.99 + reference: + - title: SI 2012/2885 Sch. 2 Part 4 entry (2), as in force on 30 April 2026 + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2/2026-04-30 +metadata: + unit: currency-GBP + period: week + label: England Council Tax Reduction pensioner enhanced disability premium for a child or young person + uprating: gov.benefit_uprating_cpi + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements) (England) Regulations 2012 Sch. 1 para. 6(1)(d) and Sch. 2 paras. 4 and 7, Part 4 entry (2) + href: https://www.legislation.gov.uk/uksi/2012/2885/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml new file mode 100644 index 0000000000..429c9ecfa5 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml @@ -0,0 +1,16 @@ +description: Councils in Scotland count a child (under 16) in a pensioner's family for the disabled child premium under the Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2013-06-11: + value: false + reference: + - title: SSI 2012/319 Sch. 1 para. 9(ba), as in force on 30 April 2015, which reaches only a young person + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2015-04-30 + - title: SSI 2012/319 Sch. 1 para. 9(ba), as in force on 30 April 2026, which reaches only a young person + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2026-04-30 +metadata: + unit: bool + period: year + label: Scotland Council Tax Reduction pensioner disabled child premium AFIP route for a child + reference: + - title: The Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 Sch. 1 paras. 8 and 9 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1 diff --git a/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml new file mode 100644 index 0000000000..8097ce0d4e --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml @@ -0,0 +1,14 @@ +description: Councils in Scotland count a young person (a Child Benefit qualifying young person) in a pensioner's family for the disabled child premium under the Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2013-06-11: + value: true + reference: + - title: SSI 2013/142 regs. 1 and 12(7)(d), inserting SSI 2012/319 Sch. 1 para. 9(ba) from 11 June 2013, as the text in force on 30 April 2015 notes + href: https://www.legislation.gov.uk/ssi/2013/142/made +metadata: + unit: bool + period: year + label: Scotland Council Tax Reduction pensioner disabled child premium AFIP route for a young person + reference: + - title: The Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 Sch. 1 paras. 8 and 9 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1 diff --git a/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml new file mode 100644 index 0000000000..5c07ab4a51 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml @@ -0,0 +1,16 @@ +description: Councils in Scotland count a child (under 16) in a pensioner's family for the enhanced disability premium under the Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2013-06-11: + value: false + reference: + - title: SSI 2012/319 Sch. 1 para. 8(1)(aa), as in force on 30 April 2015, which reaches only a young person + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2015-04-30 + - title: SSI 2012/319 Sch. 1 para. 8(1)(aa), as in force on 30 April 2026, which reaches only a young person + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2026-04-30 +metadata: + unit: bool + period: year + label: Scotland Council Tax Reduction pensioner enhanced disability premium AFIP route for a child + reference: + - title: The Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 Sch. 1 paras. 8 and 9 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1 diff --git a/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml new file mode 100644 index 0000000000..1e6312e585 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml @@ -0,0 +1,14 @@ +description: Councils in Scotland count a young person (a Child Benefit qualifying young person) in a pensioner's family for the enhanced disability premium under the Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2013-06-11: + value: true + reference: + - title: SSI 2013/142 regs. 1 and 12(7)(c), inserting SSI 2012/319 Sch. 1 para. 8(1)(aa) from 11 June 2013, as the text in force on 30 April 2015 notes + href: https://www.legislation.gov.uk/ssi/2013/142/made +metadata: + unit: bool + period: year + label: Scotland Council Tax Reduction pensioner enhanced disability premium AFIP route for a young person + reference: + - title: The Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 Sch. 1 paras. 8 and 9 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1 diff --git a/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml new file mode 100644 index 0000000000..9683f95180 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml @@ -0,0 +1,77 @@ +description: Weekly amount of the disabled child premium for each child or young person in the applicant's family who meets the condition in Sch. 1 para. 9, in the applicable amount of a pensioner under the Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012. The amounts equal the Housing Benefit amounts in every year from 2015-16 to 2026-27. +values: + # Each value is the weekly amount in the table of premium amounts in the + # version of the schedule in force on 30 April of that year. + 2013-04-01: + value: 57.89 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2013 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2013-04-30 + 2014-04-01: + value: 59.50 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2014 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2014-04-30 + 2015-04-01: + value: 60.06 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2015 (unchanged to 2016-17) + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2015-04-30 + 2017-04-01: + value: 60.90 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2017 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2017-04-30 + 2018-04-01: + value: 62.86 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2018 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2018-04-30 + 2019-04-01: + value: 64.19 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2019 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2019-04-30 + 2020-04-01: + value: 65.52 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2020 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2020-04-30 + 2021-04-01: + value: 65.94 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2021 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2021-04-30 + 2022-04-01: + value: 68.04 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2022 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2022-04-30 + 2023-04-01: + value: 74.69 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2023 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2023-04-30 + 2024-04-01: + value: 80.01 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2024 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2024-04-30 + 2025-04-01: + value: 81.37 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2025 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2025-04-30 + 2026-04-01: + value: 84.46 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (3), as in force on 30 April 2026 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2026-04-30 +metadata: + unit: currency-GBP + period: week + label: Scotland Council Tax Reduction pensioner disabled child premium for a child or young person + uprating: gov.benefit_uprating_cpi + reference: + - title: The Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 reg. 20(d) and Sch. 1 paras. 9 and 13 entry (3) + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1 diff --git a/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml new file mode 100644 index 0000000000..f73dd6228d --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/scotland/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml @@ -0,0 +1,77 @@ +description: Weekly amount of the enhanced disability premium for each child or young person in the applicant's family who meets the condition in Sch. 1 para. 8, in the applicable amount of a pensioner under the Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012. The amounts equal the Housing Benefit amounts in every year from 2015-16 to 2026-27. +values: + # Each value is the weekly amount in the table of premium amounts in the + # version of the schedule in force on 30 April of that year. + 2013-04-01: + value: 23.45 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2013 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2013-04-30 + 2014-04-01: + value: 24.08 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2014 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2014-04-30 + 2015-04-01: + value: 24.43 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2015 (unchanged to 2016-17) + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2015-04-30 + 2017-04-01: + value: 24.78 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2017 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2017-04-30 + 2018-04-01: + value: 25.48 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2018 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2018-04-30 + 2019-04-01: + value: 26.04 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2019 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2019-04-30 + 2020-04-01: + value: 26.60 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2020 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2020-04-30 + 2021-04-01: + value: 26.67 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2021 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2021-04-30 + 2022-04-01: + value: 27.44 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2022 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2022-04-30 + 2023-04-01: + value: 30.17 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2023 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2023-04-30 + 2024-04-01: + value: 32.20 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2024 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2024-04-30 + 2025-04-01: + value: 32.75 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2025 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2025-04-30 + 2026-04-01: + value: 33.99 + reference: + - title: SSI 2012/319 Sch. 1 para. 13 entry (2), as in force on 30 April 2026 + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1/2026-04-30 +metadata: + unit: currency-GBP + period: week + label: Scotland Council Tax Reduction pensioner enhanced disability premium for a child or young person + uprating: gov.benefit_uprating_cpi + reference: + - title: The Council Tax Reduction (State Pension Credit) (Scotland) Regulations 2012 reg. 20(d) and Sch. 1 paras. 8 and 13 entry (2) + href: https://www.legislation.gov.uk/ssi/2012/319/schedule/1 diff --git a/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml new file mode 100644 index 0000000000..2e43cc5f5f --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/child.yaml @@ -0,0 +1,19 @@ +description: Councils in Wales count a child (under 16) in a pensioner's family for the disabled child premium under the Welsh Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: false + reference: + - title: WSI 2013/3029 Sch. 2 para. 8, as in force on 30 April 2015 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2015-04-30 + 2024-04-01: + value: true + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements and Default Scheme) (Amendment) (Wales) Regulations 2024 (WSI 2024/56) regs. 1(3) and 5(d), inserting Sch. 2 para. 8(d) for schemes for financial years from 1 April 2024 + href: https://www.legislation.gov.uk/wsi/2024/56/made +metadata: + unit: bool + period: year + label: Wales Council Tax Reduction pensioner disabled child premium AFIP route for a child + reference: + - title: The Council Tax Reduction Schemes and Prescribed Requirements (Wales) Regulations 2013 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml new file mode 100644 index 0000000000..c63ca6b577 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/disabled_child_premium/young_person.yaml @@ -0,0 +1,19 @@ +description: Councils in Wales count a young person (a Child Benefit qualifying young person) in a pensioner's family for the disabled child premium under the Welsh Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: false + reference: + - title: WSI 2013/3029 Sch. 2 para. 8, as in force on 30 April 2015 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2015-04-30 + 2024-04-01: + value: true + reference: + - title: The Council Tax Reduction Schemes (Prescribed Requirements and Default Scheme) (Amendment) (Wales) Regulations 2024 (WSI 2024/56) regs. 1(3) and 5(d), inserting Sch. 2 para. 8(d) for schemes for financial years from 1 April 2024 + href: https://www.legislation.gov.uk/wsi/2024/56/made +metadata: + unit: bool + period: year + label: Wales Council Tax Reduction pensioner disabled child premium AFIP route for a young person + reference: + - title: The Council Tax Reduction Schemes and Prescribed Requirements (Wales) Regulations 2013 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml new file mode 100644 index 0000000000..caa4849543 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/child.yaml @@ -0,0 +1,14 @@ +description: Councils in Wales count a child (under 16) in a pensioner's family for the enhanced disability premium under the Welsh Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: true + reference: + - title: WSI 2013/3029 Sch. 2 para. 7(1)(c), as in force on 30 April 2015 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2015-04-30 +metadata: + unit: bool + period: year + label: Wales Council Tax Reduction pensioner enhanced disability premium AFIP route for a child + reference: + - title: The Council Tax Reduction Schemes and Prescribed Requirements (Wales) Regulations 2013 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml new file mode 100644 index 0000000000..d61a05b708 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/armed_forces_independence_payment/enhanced_disability_premium/young_person.yaml @@ -0,0 +1,14 @@ +description: Councils in Wales count a young person (a Child Benefit qualifying young person) in a pensioner's family for the enhanced disability premium under the Welsh Council Tax Reduction prescribed requirements when an armed forces independence payment (AFIP) is payable for them, if this is true. +values: + 2015-04-01: + value: true + reference: + - title: WSI 2013/3029 Sch. 2 para. 7(1)(c), as in force on 30 April 2015 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2015-04-30 +metadata: + unit: bool + period: year + label: Wales Council Tax Reduction pensioner enhanced disability premium AFIP route for a young person + reference: + - title: The Council Tax Reduction Schemes and Prescribed Requirements (Wales) Regulations 2013 Sch. 2 paras. 7 and 8 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml new file mode 100644 index 0000000000..de505ab186 --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/disabled_child_premium.yaml @@ -0,0 +1,72 @@ +description: Weekly amount of the disabled child premium for each child or young person in the applicant's family who meets the condition in Sch. 2 para. 8, in the applicable amount of a pensioner under the Welsh Council Tax Reduction prescribed requirements. The amounts equal the Housing Benefit amounts in every year from 2015-16 to 2026-27. +values: + # Each value is the weekly amount in the table of premium amounts in the + # version of the schedule in force on 30 April of that year. + 2014-04-01: + value: 59.50 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2014 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2014-04-30 + 2015-04-01: + value: 60.06 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2015 (unchanged to 2016-17) + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2015-04-30 + 2017-04-01: + value: 60.90 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2017 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2017-04-30 + 2018-04-01: + value: 62.86 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2018 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2018-04-30 + 2019-04-01: + value: 64.19 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2019 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2019-04-30 + 2020-04-01: + value: 65.52 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2020 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2020-04-30 + 2021-04-01: + value: 65.94 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2021 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2021-04-30 + 2022-04-01: + value: 68.04 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2022 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2022-04-30 + 2023-04-01: + value: 74.69 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2023 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2023-04-30 + 2024-04-01: + value: 80.01 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2024 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2024-04-30 + 2025-04-01: + value: 81.37 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2025 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2025-04-30 + 2026-04-01: + value: 84.46 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (3), as in force on 30 April 2026 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2026-04-30 +metadata: + unit: currency-GBP + period: week + label: Wales Council Tax Reduction pensioner disabled child premium for a child or young person + uprating: gov.benefit_uprating_cpi + reference: + - title: The Council Tax Reduction Schemes and Prescribed Requirements (Wales) Regulations 2013 Sch. 1 para. 1(1)(d) and Sch. 2 paras. 8 and 12 entry (3) + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2 diff --git a/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml new file mode 100644 index 0000000000..b3161806bf --- /dev/null +++ b/policyengine_uk/parameters/gov/local_authorities/wales/council_tax_reduction/pensioners/applicable_amount/enhanced_disability_premium.yaml @@ -0,0 +1,72 @@ +description: Weekly amount of the enhanced disability premium for each child or young person in the applicant's family who meets the condition in Sch. 2 para. 7, in the applicable amount of a pensioner under the Welsh Council Tax Reduction prescribed requirements. The amounts equal the Housing Benefit amounts in every year from 2015-16 to 2026-27. +values: + # Each value is the weekly amount in the table of premium amounts in the + # version of the schedule in force on 30 April of that year. + 2014-04-01: + value: 24.08 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2014 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2014-04-30 + 2015-04-01: + value: 24.43 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2015 (unchanged to 2016-17) + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2015-04-30 + 2017-04-01: + value: 24.78 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2017 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2017-04-30 + 2018-04-01: + value: 25.48 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2018 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2018-04-30 + 2019-04-01: + value: 26.04 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2019 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2019-04-30 + 2020-04-01: + value: 26.60 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2020 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2020-04-30 + 2021-04-01: + value: 26.67 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2021 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2021-04-30 + 2022-04-01: + value: 27.44 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2022 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2022-04-30 + 2023-04-01: + value: 30.17 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2023 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2023-04-30 + 2024-04-01: + value: 32.20 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2024 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2024-04-30 + 2025-04-01: + value: 32.75 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2025 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2025-04-30 + 2026-04-01: + value: 33.99 + reference: + - title: WSI 2013/3029 Sch. 2 para. 12 entry (2), as in force on 30 April 2026 + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2/2026-04-30 +metadata: + unit: currency-GBP + period: week + label: Wales Council Tax Reduction pensioner enhanced disability premium for a child or young person + uprating: gov.benefit_uprating_cpi + reference: + - title: The Council Tax Reduction Schemes and Prescribed Requirements (Wales) Regulations 2013 Sch. 1 para. 1(1)(d) and Sch. 2 paras. 7 and 12 entry (2) + href: https://www.legislation.gov.uk/wsi/2013/3029/schedule/2 diff --git a/policyengine_uk/tests/policy/baseline/gov/local_authorities/council_tax_reduction/council_tax_reduction_pensioner_child_disability_premiums.yaml b/policyengine_uk/tests/policy/baseline/gov/local_authorities/council_tax_reduction/council_tax_reduction_pensioner_child_disability_premiums.yaml new file mode 100644 index 0000000000..de145cd6b6 --- /dev/null +++ b/policyengine_uk/tests/policy/baseline/gov/local_authorities/council_tax_reduction/council_tax_reduction_pensioner_child_disability_premiums.yaml @@ -0,0 +1,979 @@ +# Councils add the disabled child premium and the enhanced disability premium +# to a pensioner's Council Tax Reduction applicable amount for each qualifying +# child or young person in the family: +# +# - England: SI 2012/2885 Sch 1 para 6(1)(d), Sch 2 paras 7 and 8, amounts in +# Sch 2 Part 4 entries (2) and (3). For schemes from 1 April 2023 the +# Secretary of State added an AFIP limb to para 7 for any child or young +# person, and to para 8 for a young person (SI 2023/16 regs 1(3) and +# 7(7)-(8)). +# - Wales: WSI 2013/3029 Sch 1 para 1(1)(d), Sch 2 paras 7, 8 and 12. The +# Welsh Ministers name AFIP for any child or young person in para 7(1)(c), +# and added it to para 8 for schemes from 1 April 2024 (WSI 2024/56 regs +# 1(3) and 5(d)). +# - Scotland: SSI 2012/319 reg 20(d), Sch 1 paras 8, 9 and 13. The Scottish +# Ministers name AFIP for a young person only (paras 8(1)(aa) and 9(ba)). +# +# Weekly amounts, the same in all three nations (each schedule's table of +# premium amounts in force on 30 April): +# year enhanced disability premium disabled child premium +# 2015 24.43 60.06 +# 2022 27.44 68.04 +# 2023 30.17 74.69 +# 2024 32.20 80.01 +# 2026 33.99 84.46 +# So in 2026 the two premiums come to 84.46 * 52 = 4,391.92 and 33.99 * 52 = +# 1,767.48 a year, together 118.45 * 52 = 6,159.40. +# +# Each 2026 pensioner is 72, reached State Pension age before 1 April 2021, +# and gets a single or lone parent personal allowance of 256.00 a week (13,312 +# a year). Councils add a child or young person amount of 87.88 a week in +# England and Wales and 109.85 in Scotland, and in Wales a family premium of +# 20.22 (the child_or_young_person and family_premium parameters under +# gov.local_authorities..council_tax_reduction.pensioners.applicable_amount). +# A young person here is a 17-year-old at school, a Child Benefit qualifying +# young person (SI 2012/2885 reg 2; WSI 2013/3029 reg 2; SSI 2012/319 reg +# 4). The formula multiplies weekly amounts by 52. + +- name: Case A0 England, an English pensioner with no child gets no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + benunits: + benunit: + members: [pensioner] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 0 + # 256.00 * 52. + council_tax_reduction_applicable_amount: 13_312 + +- name: Case A1 England, a ten-year-old with no disability benefit adds no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 0 + council_tax_reduction_premiums: 0 + # (256.00 + 87.88) * 52. + council_tax_reduction_applicable_amount: 17_881.76 + +- name: Case A2 England, a child on the highest DLA care rate adds both premiums. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # (84.46 + 33.99) * 52 = 6,159.40. + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + council_tax_reduction_premiums: 6_159.40 + # 17,881.76 + 6,159.40. + council_tax_reduction_applicable_amount: 24_041.16 + +- name: Case A3 England, a child on the middle DLA care rate adds the disabled child premium only. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: MIDDLE + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # 84.46 * 52 = 4,391.92. + council_tax_reduction_pensioner_child_disability_premiums: 4_391.92 + # 17,881.76 + 4,391.92. + council_tax_reduction_applicable_amount: 22_273.68 + +- name: Case A4 England, a blind child with no DLA adds the disabled child premium only. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + is_blind: true + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # 84.46 * 52 = 4,391.92. + council_tax_reduction_pensioner_child_disability_premiums: 4_391.92 + # 17,881.76 + 4,391.92. + council_tax_reduction_applicable_amount: 22_273.68 + +- name: Case A2c England, with £24,000 of pensions the premiums bring income within the applicable amount and the full reduction. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + private_pension_income: 11_430 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + council_tax_reduction_applicable_amount: 24_041.16 + # Applicable income 21,714.00 falls short of 24,041.16, so councils + # give the maximum reduction, 100% of the council tax (England Sch 1 + # paras 2(e), 7(1) and 10(2)), here 2,000. + council_tax_reduction_applicable_income: 21_714.00 + council_tax_reduction: 2_000 + +- name: Case A0 Wales, a Welsh pensioner with no child gets no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + benunits: + benunit: + members: [pensioner] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 0 + # 256.00 * 52. + council_tax_reduction_applicable_amount: 13_312 + +- name: Case A1 Wales, a ten-year-old with no disability benefit adds no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 0 + council_tax_reduction_premiums: 0 + # (256.00 + 87.88 + 20.22) * 52. + council_tax_reduction_applicable_amount: 18_933.20 + +- name: Case A2 Wales, a child on the highest DLA care rate adds both premiums. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # (84.46 + 33.99) * 52 = 6,159.40. + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + council_tax_reduction_premiums: 6_159.40 + # 18,933.20 + 6,159.40. + council_tax_reduction_applicable_amount: 25_092.60 + +- name: Case A3 Wales, a child on the middle DLA care rate adds the disabled child premium only. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: MIDDLE + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # 84.46 * 52 = 4,391.92. + council_tax_reduction_pensioner_child_disability_premiums: 4_391.92 + # 18,933.20 + 4,391.92. + council_tax_reduction_applicable_amount: 23_325.12 + +- name: Case A4 Wales, a blind child with no DLA adds the disabled child premium only. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + is_blind: true + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # 84.46 * 52 = 4,391.92. + council_tax_reduction_pensioner_child_disability_premiums: 4_391.92 + # 18,933.20 + 4,391.92. + council_tax_reduction_applicable_amount: 23_325.12 + +- name: Case A2c Wales, with £24,000 of pensions the premiums bring income within the applicable amount and the full reduction. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + private_pension_income: 11_430 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + council_tax_reduction_applicable_amount: 25_092.60 + # Applicable income 21,714.00 falls short of 25,092.60, so the council + # gives the maximum reduction, the whole council tax (WSI 2013/3029 + # reg 22(e) and Sch 1 paras 2(1) and 4(2); + # gov.local_authorities.wales.council_tax_reduction.maximum_support_rate), + # here 2,000. + council_tax_reduction_applicable_income: 21_714.00 + council_tax_reduction: 2_000 + +- name: Case A0 Scotland, a Scottish pensioner with no child gets no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + benunits: + benunit: + members: [pensioner] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 0 + # 256.00 * 52. + council_tax_reduction_applicable_amount: 13_312 + +- name: Case A1 Scotland, a ten-year-old with no disability benefit adds no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 0 + council_tax_reduction_premiums: 0 + # (256.00 + 109.85) * 52. + council_tax_reduction_applicable_amount: 19_024.20 + +- name: Case A2 Scotland, a child on the highest DLA care rate adds both premiums. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # (84.46 + 33.99) * 52 = 6,159.40. + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + council_tax_reduction_premiums: 6_159.40 + # 19,024.20 + 6,159.40. + council_tax_reduction_applicable_amount: 25_183.60 + +- name: Case A3 Scotland, a child on the middle DLA care rate adds the disabled child premium only. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: MIDDLE + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # 84.46 * 52 = 4,391.92. + council_tax_reduction_pensioner_child_disability_premiums: 4_391.92 + # 19,024.20 + 4,391.92. + council_tax_reduction_applicable_amount: 23_416.12 + +- name: Case A4 Scotland, a blind child with no DLA adds the disabled child premium only. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + is_blind: true + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + # 84.46 * 52 = 4,391.92. + council_tax_reduction_pensioner_child_disability_premiums: 4_391.92 + # 19,024.20 + 4,391.92. + council_tax_reduction_applicable_amount: 23_416.12 + +- name: Case A2c Scotland, with £24,000 of pensions the premiums bring income within the applicable amount and the full reduction. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + private_pension_income: 11_430 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + council_tax_reduction_applicable_amount: 25_183.60 + # Applicable income 21,753.67 falls short of 25,183.60, so the council + # gives the maximum reduction, the whole council tax (SSI 2012/319 + # regs 14(5)(a)(ii) and (8)(a) and 47(1); + # gov.local_authorities.scotland.council_tax_reduction.maximum_support_rate), + # here 2,000. + council_tax_reduction_applicable_income: 21_753.67 + council_tax_reduction: 2_000 + +- name: AFIP England 2022, a young person on AFIP alone meets neither condition before SI 2023/16. + period: 2022 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 17 + current_education: UPPER_SECONDARY + age_started_or_accepted_current_education_or_training: 16 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, true] + is_child_or_young_person_for_council_tax_reduction: [false, true] + council_tax_reduction_pensioner_child_disability_premiums: 0 + +- name: AFIP England 2023, a young person on AFIP alone meets both conditions (paras 7(1)(c) and 8(e)). + period: 2023 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 17 + current_education: UPPER_SECONDARY + age_started_or_accepted_current_education_or_training: 16 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, true] + # (74.69 + 30.17) * 52 = 104.86 * 52 = 5,452.72. + council_tax_reduction_pensioner_child_disability_premiums: 5_452.72 + +# The Secretary of State and the Welsh Ministers name AFIP for a child or +# young person (England para 7(1)(c); Wales paras 7(1)(c) and 8(d)); the +# cases with a 10-year-old on AFIP test that wording. +- name: AFIP England 2023, a child under 16 on AFIP alone meets the enhanced condition only. + period: 2023 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, false] + # The Secretary of State gives AFIP the disabled child premium for a young + # person only (para 8(e)): 30.17 * 52 = 1,568.84. + council_tax_reduction_pensioner_child_disability_premiums: 1_568.84 + +- name: AFIP Wales 2023, a child on AFIP alone meets the enhanced condition only (para 7(1)(c)). + period: 2023 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, false] + # 30.17 * 52 = 1,568.84. + council_tax_reduction_pensioner_child_disability_premiums: 1_568.84 + +- name: AFIP Wales 2024, a child on AFIP alone meets both conditions (paras 7(1)(c) and 8(d)). + period: 2024 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, false] + # (80.01 + 32.20) * 52 = 112.21 * 52 = 5,834.92. + council_tax_reduction_pensioner_child_disability_premiums: 5_834.92 + +- name: AFIP Scotland 2026, a child under 16 on AFIP alone meets neither condition. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, false] + # The Scottish Ministers give AFIP both premiums for a young person only + # (paras 8(1)(aa) and 9(ba)). + council_tax_reduction_pensioner_child_disability_premiums: 0 + +- name: AFIP Scotland 2026, a young person on AFIP alone meets both conditions (paras 8(1)(aa) and 9(ba)). + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 17 + current_education: UPPER_SECONDARY + age_started_or_accepted_current_education_or_training: 16 + armed_forces_independence_payment: 3_000 + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + is_qualifying_young_person_for_child_benefit: [false, true] + # (84.46 + 33.99) * 52 = 6,159.40. + council_tax_reduction_pensioner_child_disability_premiums: 6_159.40 + +- name: Earlier year England 2015, a child on the highest DLA care rate adds both premiums at the 2015-16 amounts. + period: 2015 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner: true + # (60.06 + 24.43) * 52 = 84.49 * 52 = 4,393.48. + council_tax_reduction_pensioner_child_disability_premiums: 4_393.48 + council_tax_reduction_premiums: 4_393.48 + +- name: Earlier year Wales 2015, a child on the highest DLA care rate adds both premiums at the 2015-16 amounts. + period: 2015 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: WALES + local_authority: CARDIFF + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner: true + # (60.06 + 24.43) * 52 = 84.49 * 52 = 4,393.48. + council_tax_reduction_pensioner_child_disability_premiums: 4_393.48 + council_tax_reduction_premiums: 4_393.48 + +- name: Earlier year Scotland 2015, a child on the highest DLA care rate adds both premiums at the 2015-16 amounts. + period: 2015 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: SCOTLAND + local_authority: GLASGOW_CITY + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner: true + # (60.06 + 24.43) * 52 = 84.49 * 52 = 4,393.48. + council_tax_reduction_pensioner_child_disability_premiums: 4_393.48 + council_tax_reduction_premiums: 4_393.48 + +- name: Nil, a working-age lone parent's child on the highest DLA care rate adds no pensioner child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + parent: + age: 40 + employment_income: 20_000 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [parent, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [parent, child] + country: ENGLAND + local_authority: MAIDSTONE + tenure_type: OWNED_OUTRIGHT + council_tax: 2_000 + savings: 0 + output: + council_tax_reduction_pensioner: false + is_child_or_young_person_for_council_tax_reduction: [false, true] + council_tax_reduction_pensioner_child_disability_premiums: 0 + +- name: Nil, a pensioner household head who applies alone has no child in their family, so their grandchild on the highest DLA care rate adds nothing. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + grandmother: + age: 80 + is_household_head: true + mother: + age: 30 + is_parent: true + is_household_head: false + father: + age: 30 + is_parent: true + is_household_head: false + child: + age: 5 + dla_sc_category: HIGHER + is_household_head: false + benunits: + family: + members: [grandmother, mother, father, child] + would_claim_pc: false + would_claim_uc: false + households: + home: + members: [grandmother, mother, father, child] + country: ENGLAND + local_authority: MAIDSTONE + council_tax: 2_000 + savings: 0 + output: + is_claimant_or_partner: [false, true, true, false] + council_tax_reduction_head_applies_alone: [true] + council_tax_reduction_pensioner: [true] + council_tax_reduction_pensioner_child_disability_premiums: [0] + # A single pensioner aged 80: 256.00 * 52. + council_tax_reduction_applicable_amount: [13_312] + +- name: Nil, a pensioner in Northern Ireland with a child on the highest DLA care rate gets no child disability premium. + period: 2026 + absolute_error_margin: 0.01 + input: + people: + pensioner: + age: 72 + state_pension: 12_570 + child: + age: 10 + dla_sc_category: HIGHER + benunits: + benunit: + members: [pensioner, child] + would_claim_pc: false + would_claim_uc: false + households: + household: + members: [pensioner, child] + country: NORTHERN_IRELAND + output: + council_tax_reduction_pensioner: true + # The child meets both conditions, as Housing Benefit's reading shows. + housing_benefit_child_disability_premiums: 6_159.40 + council_tax_reduction_pensioner_child_disability_premiums: 0 diff --git a/policyengine_uk/tests/test_council_tax_reduction_pensioner_child_disability_premium_properties.py b/policyengine_uk/tests/test_council_tax_reduction_pensioner_child_disability_premium_properties.py new file mode 100644 index 0000000000..387ef53c83 --- /dev/null +++ b/policyengine_uk/tests/test_council_tax_reduction_pensioner_child_disability_premium_properties.py @@ -0,0 +1,456 @@ +"""Property-based tests for a pensioner's Council Tax Reduction child +disability premiums. + +Councils add the disabled child premium and the enhanced disability premium +to a pensioner's applicable amount for each qualifying child or young person +in the family (SI 2012/2885 Sch 1 para 6(1)(d) and Sch 2 paras 7, 8 and Part +4; WSI 2013/3029 Sch 1 para 1(1)(d) and Sch 2 paras 7, 8 and 12; SSI 2012/319 +reg 20(d) and Sch 1 paras 8, 9 and 13). A child or young person meets the +disabled child condition with DLA or PIP (either component) or blindness, and +the enhanced condition with the highest DLA care rate or the enhanced PIP +daily living rate. The armed forces independence payment (AFIP) meets a +condition where the nation's ministers name it for that person in that year +(afip_routes). + +The test generates families in England, Wales and Scotland with children and +young persons on the listed awards, and checks these invariants: + +1. Working-age families, and a pensioner household head who applies alone, + get no child disability premium. +2. A pensioner family's premiums equal the sum, over its children and young + persons, of 52 times each premium whose condition the child meets, at the + weekly amounts in AMOUNTS. +3. On the model's inputs, every child or young person who meets the enhanced + condition also meets the disabled child condition, except through AFIP: + AFIP alone meets only the enhanced condition for a child under 16 in + England from 2023, and for any child or young person in Wales before 2024. +4. The applicable amount never falls when a child or young person gains a + qualifying benefit. +5. For pension-age families with no AFIP, in every year from 2015 to 2026, + the premiums equal housing_benefit_child_disability_premiums wherever + is_child_or_young_person_for_council_tax_reduction and + is_child_or_young_person_for_legacy_benefits agree. +""" + +import numpy as np +from hypothesis import HealthCheck, assume, example, given, settings +from hypothesis import strategies as st +from policyengine_core.periods import period as make_period + +from policyengine_uk import Simulation +from policyengine_uk.variables.gov.dwp.housing_benefit._child_disability_premiums import ( + child_disability_premium_benefit_conditions, +) + +SETTINGS = settings( + max_examples=6, + deadline=None, + derandomize=True, + suppress_health_check=[ + HealthCheck.too_slow, + HealthCheck.data_too_large, + HealthCheck.filter_too_much, + ], +) +WEEKS_IN_YEAR = 52 +AUTHORITIES = {"ENGLAND": "MAIDSTONE", "WALES": "CARDIFF", "SCOTLAND": "GLASGOW_CITY"} +YEARS = list(range(2015, 2027)) +# Weekly (enhanced disability premium, disabled child premium) for each child +# or young person, the same in all three nations from 2014-15 (each schedule's +# table of premium amounts in force on 30 April). +AMOUNTS = { + 2015: (24.43, 60.06), + 2016: (24.43, 60.06), + 2017: (24.78, 60.90), + 2018: (25.48, 62.86), + 2019: (26.04, 64.19), + 2020: (26.60, 65.52), + 2021: (26.67, 65.94), + 2022: (27.44, 68.04), + 2023: (30.17, 74.69), + 2024: (32.20, 80.01), + 2025: (32.75, 81.37), + 2026: (33.99, 84.46), +} + + +def afip_routes(country, year, young_person): + """Whether AFIP meets the (enhanced, disabled child) condition: England + paras 7(1)(c) and 8(e) from 2023-24 (SI 2023/16); Wales para 7(1)(c), and + para 8(d) from 2024-25 (WSI 2024/56); Scotland paras 8(1)(aa) and 9(ba), + for a young person only.""" + if country == "ENGLAND": + return year >= 2023, year >= 2023 and young_person + if country == "WALES": + return True, year >= 2024 + return young_person, young_person + + +# Award inputs, and whether each meets the (disabled child, enhanced) +# condition on its own. +AWARDS = { + "dla_care_lowest": ({"dla_sc_category": "LOWER"}, True, False), + "dla_care_middle": ({"dla_sc_category": "MIDDLE"}, True, False), + "dla_care_highest": ({"dla_sc_category": "HIGHER"}, True, True), + "dla_mobility_lower": ({"dla_m_category": "LOWER"}, True, False), + "pip_daily_living_standard": ({"pip_dl_category": "STANDARD"}, True, False), + "pip_daily_living_enhanced": ({"pip_dl_category": "ENHANCED"}, True, True), + "pip_mobility_standard": ({"pip_m_category": "STANDARD"}, True, False), + "blind": ({"is_blind": True}, True, False), + "afip": ({"armed_forces_independence_payment": 2_000}, False, False), +} +# A child under 16, a Child Benefit qualifying young person (17 and at +# school) and a 17-year-old out of education, who is neither. +KINDS = ("child", "young_person", "not_counted") + +child_strategy = st.fixed_dictionaries( + { + "kind": st.sampled_from(KINDS), + "age": st.integers(0, 15), + # Two awards never set the same input. + "awards": st.lists( + st.sampled_from(list(AWARDS)), + max_size=2, + unique_by=lambda award: tuple(AWARDS[award][0]), + ), + } +) +pensioner_family = st.fixed_dictionaries( + { + "country": st.sampled_from(list(AUTHORITIES)), + "age": st.integers(67, 90), + "partner_age": st.one_of(st.none(), st.integers(60, 90)), + "claims_pc": st.booleans(), + "children": st.lists(child_strategy, min_size=1, max_size=3), + } +) +working_age_family = st.fixed_dictionaries( + { + "country": st.sampled_from(list(AUTHORITIES)), + "age": st.integers(25, 55), + "partner_age": st.one_of(st.none(), st.integers(25, 55)), + "claims_pc": st.just(False), + "children": st.lists(child_strategy, min_size=1, max_size=3), + } +) + + +def child_inputs(child, year): + if child["kind"] == "child": + inputs = {"age": child["age"]} + else: + inputs = {"age": 17} + if child["kind"] == "young_person": + inputs["current_education"] = "UPPER_SECONDARY" + inputs["age_started_or_accepted_current_education_or_training"] = 16 + for award in child["awards"]: + inputs.update(AWARDS[award][0]) + return {name: {year: value} for name, value in inputs.items()} + + +def situation(families, year, head_alone=()): + """One benefit unit and household for each family, and for each family + in head_alone a pensioner household head who applies alone, with that + family's adults as the claimant couple in the head's benefit unit.""" + data = {"people": {}, "benunits": {}, "households": {}} + for index, spec in enumerate(families): + alone = index in head_alone + members = [] + if alone: + name = f"head_{index}" + data["people"][name] = { + "age": {year: 80}, + "is_household_head": {year: True}, + } + members.append(name) + adults = [spec["age"]] + if spec["partner_age"] is not None or alone: + adults.append(spec["partner_age"] or spec["age"]) + for number, age in enumerate(adults): + name = f"adult_{index}_{number}" + person = {"age": {year: age}} + if alone: + person["is_parent"] = {year: True} + person["is_household_head"] = {year: False} + data["people"][name] = person + members.append(name) + for number, child in enumerate(spec["children"]): + name = f"child_{index}_{number}" + data["people"][name] = child_inputs(child, year) + if alone: + data["people"][name]["is_household_head"] = {year: False} + members.append(name) + data["benunits"][f"family_{index}"] = { + "members": members, + "would_claim_pc": {year: spec["claims_pc"]}, + "would_claim_uc": {year: False}, + } + data["households"][f"home_{index}"] = { + "members": members, + "country": {year: spec["country"]}, + "local_authority": {year: AUTHORITIES[spec["country"]]}, + "tenure_type": {year: "OWNED_OUTRIGHT"}, + "council_tax": {year: 2_000}, + "savings": {year: 0}, + } + return data + + +def child_premiums(child, country, year): + """The test's own annual premiums for one child or young person.""" + if child["kind"] == "not_counted": + return 0.0 + enhanced_amount, disabled_amount = AMOUNTS[year] + disabled = any( + AWARDS[award][1] + # dla_m pays the lower mobility rate only from age 5. + and not ( + award == "dla_mobility_lower" + and child["kind"] == "child" + and child["age"] < 5 + ) + for award in child["awards"] + ) + enhanced = any(AWARDS[award][2] for award in child["awards"]) + if "afip" in child["awards"]: + afip_enhanced, afip_disabled = afip_routes( + country, year, child["kind"] == "young_person" + ) + disabled = disabled or afip_disabled + enhanced = enhanced or afip_enhanced + return WEEKS_IN_YEAR * (disabled_amount * disabled + enhanced_amount * enhanced) + + +def calculate(families, year, names, head_alone=()): + simulation = Simulation(situation=situation(families, year, head_alone)) + return {name: np.asarray(simulation.calculate(name, year)) for name in names} + + +@SETTINGS +@given( + st.lists(working_age_family, min_size=1, max_size=4), + st.lists(pensioner_family, min_size=1, max_size=3), + st.sampled_from(YEARS), +) +def test_nil_for_working_age_families_and_a_head_who_applies_alone( + working_age, pensioners, year +): + families = working_age + pensioners + head_alone = set(range(len(working_age), len(families))) + result = calculate( + families, + year, + [ + "council_tax_reduction_pensioner", + "council_tax_reduction_head_applies_alone", + "council_tax_reduction_pensioner_child_disability_premiums", + ], + head_alone, + ) + pensioner = result["council_tax_reduction_pensioner"] + alone = result["council_tax_reduction_head_applies_alone"] + # The generator builds what it means to build. + assert not pensioner[: len(working_age)].any() + assert alone[len(working_age) :].all() + assert pensioner[len(working_age) :].all() + np.testing.assert_array_equal( + result["council_tax_reduction_pensioner_child_disability_premiums"], 0 + ) + + +@SETTINGS +@given( + st.lists(pensioner_family, min_size=1, max_size=6), + st.sampled_from(YEARS), +) +# Children aged 3, 4 and 5 on the lower DLA mobility rate alone: dla_m +# pays that rate only from age 5 (gov.dwp.dla.mobility.lower_min_age). +@example( + [ + { + "country": "ENGLAND", + "age": 72, + "partner_age": None, + "claims_pc": False, + "children": [ + {"kind": "child", "age": age, "awards": ["dla_mobility_lower"]} + ], + } + for age in (3, 4, 5) + ], + 2026, +) +def test_family_total_is_the_sum_of_each_childs_premiums(families, year): + result = calculate( + families, + year, + [ + "council_tax_reduction_pensioner", + "council_tax_reduction_pensioner_child_disability_premiums", + ], + ) + assert result["council_tax_reduction_pensioner"].all() + expected = [ + sum(child_premiums(child, spec["country"], year) for child in spec["children"]) + for spec in families + ] + np.testing.assert_allclose( + result["council_tax_reduction_pensioner_child_disability_premiums"], + expected, + atol=0.01, + ) + + +@SETTINGS +@given(st.lists(child_strategy, min_size=1, max_size=8), st.sampled_from(YEARS)) +def test_shared_enhanced_condition_implies_disabled_child_condition(children, year): + families = [ + { + "country": "ENGLAND", + "age": 72, + "partner_age": None, + "claims_pc": False, + "children": children, + } + ] + simulation = Simulation(situation=situation(families, year)) + person = simulation.populations["person"] + disabled, enhanced = child_disability_premium_benefit_conditions( + person, make_period(year) + ) + assert not (enhanced & ~disabled).any() + + +@SETTINGS +@given( + st.sampled_from(list(AUTHORITIES)), + st.sampled_from(YEARS), + st.sampled_from(["child", "young_person"]), + st.lists( + st.sampled_from(list(AWARDS)), + min_size=1, + max_size=2, + unique_by=lambda award: tuple(AWARDS[award][0]), + ), +) +# Each AFIP route for a child and a young person, which the six drawn +# examples may not reach. +@example("ENGLAND", 2022, "child", ["afip"]) +@example("ENGLAND", 2022, "young_person", ["afip"]) +@example("ENGLAND", 2023, "child", ["afip"]) +@example("ENGLAND", 2023, "young_person", ["afip"]) +@example("WALES", 2023, "child", ["afip"]) +@example("WALES", 2023, "young_person", ["afip"]) +@example("WALES", 2024, "child", ["afip"]) +@example("WALES", 2024, "young_person", ["afip"]) +@example("SCOTLAND", 2026, "child", ["afip"]) +@example("SCOTLAND", 2026, "young_person", ["afip"]) +def test_enhanced_without_disabled_child_premium_only_through_afip( + country, year, kind, awards +): + child = {"kind": kind, "age": 10, "awards": awards} + families = [ + { + "country": country, + "age": 72, + "partner_age": None, + "claims_pc": False, + "children": [child], + } + ] + total = calculate( + families, year, ["council_tax_reduction_pensioner_child_disability_premiums"] + )["council_tax_reduction_pensioner_child_disability_premiums"][0] + enhanced_amount, disabled_amount = AMOUNTS[year] + enhanced_only = abs(total - WEEKS_IN_YEAR * enhanced_amount) < 0.01 + # AFIP alone meets only the enhanced condition for a child under 16 in + # England from 2023-24, and for any child or young person in Wales before + # 2024-25. + exception = awards == ["afip"] and ( + (country == "ENGLAND" and year >= 2023 and kind == "child") + or (country == "WALES" and year < 2024) + ) + assert enhanced_only == exception + + +@SETTINGS +@given( + pensioner_family, + st.sampled_from(YEARS), + st.integers(0, 2), + st.sampled_from(list(AWARDS)), +) +def test_applicable_amount_never_falls_when_a_child_gains_a_benefit( + family, year, index, award +): + index = index % len(family["children"]) + gained = dict(family) + gained["children"] = [dict(child) for child in family["children"]] + awards = gained["children"][index]["awards"] + # The new award adds a benefit rather than replacing one the child has. + assume(all(set(AWARDS[a][0]).isdisjoint(AWARDS[award][0]) for a in awards)) + gained["children"][index]["awards"] = awards + [award] + result = calculate( + [family, gained], + year, + [ + "council_tax_reduction_applicable_amount", + "council_tax_reduction_pensioner_child_disability_premiums", + ], + ) + amount = result["council_tax_reduction_applicable_amount"] + premiums = result["council_tax_reduction_pensioner_child_disability_premiums"] + assert amount[1] >= amount[0] - 0.01 + assert premiums[1] >= premiums[0] - 0.01 + + +@settings( + max_examples=3, + deadline=None, + derandomize=True, + suppress_health_check=[HealthCheck.too_slow, HealthCheck.data_too_large], +) +@given( + st.lists( + pensioner_family.map( + lambda spec: { + **spec, + "children": [ + {**child, "awards": [a for a in child["awards"] if a != "afip"]} + for child in spec["children"] + ], + } + ), + min_size=1, + max_size=6, + ) +) +def test_matches_housing_benefit_child_premiums_without_afip(families): + names = [ + "council_tax_reduction_pensioner", + "council_tax_reduction_pensioner_child_disability_premiums", + "housing_benefit_child_disability_premiums", + ] + for year in YEARS: + simulation = Simulation(situation=situation(families, year)) + result = {name: np.asarray(simulation.calculate(name, year)) for name in names} + council = np.asarray( + simulation.calculate( + "is_child_or_young_person_for_council_tax_reduction", year + ) + ) + legacy = np.asarray( + simulation.calculate("is_child_or_young_person_for_legacy_benefits", year) + ) + agree = simulation.populations["benunit"].all(council == legacy) + # For a pensioner's family the two definitions coincide. + assert agree.all() + compared = agree & result["council_tax_reduction_pensioner"] + assert compared.all() + np.testing.assert_allclose( + result["council_tax_reduction_pensioner_child_disability_premiums"][ + compared + ], + result["housing_benefit_child_disability_premiums"][compared], + atol=0.01, + ) diff --git a/policyengine_uk/tests/test_process_time_reforms.py b/policyengine_uk/tests/test_process_time_reforms.py index d67fa29932..0255b27b9c 100644 --- a/policyengine_uk/tests/test_process_time_reforms.py +++ b/policyengine_uk/tests/test_process_time_reforms.py @@ -57,6 +57,8 @@ LAGGED_CPI = f"{GROWTH}.obr.lagged_cpi" INDICES = "gov.economic_assumptions.indices" ENERGY_PRICES = "gov.economic_assumptions.energy_prices" +# The calendar-year series on the gov tree (invariant 2). +CALENDAR_YEAR_SERIES = (f"{GROWTH}.", f"{INDICES}.", f"{ENERGY_PRICES}.") CPI_INDEX = f"{INDICES}.obr.consumer_price_index" INPUTS = "gov.economic_assumptions.statutory_uprating_inputs" AWE = f"{INPUTS}.awe_total_pay_may_july" @@ -324,9 +326,7 @@ def test_calendar_year_series_are_the_growth_rates_indices_and_household_tree(): for path in paths: if path.startswith("baseline."): continue - expected = path.startswith( - (f"{GROWTH}.", f"{INDICES}.", f"{ENERGY_PRICES}.", "household.") - ) + expected = path.startswith(CALENDAR_YEAR_SERIES + ("household.",)) assert reads(path) is expected, path assert not reads("gov.not.a.parameter") @@ -600,8 +600,7 @@ def statutory_leaves(): ORDINARY = [ path for path in statutory_leaves() - if path.startswith("gov.") - and not path.startswith(("gov.economic_assumptions.yoy_growth.",)) + if path.startswith("gov.") and not path.startswith(CALENDAR_YEAR_SERIES) ] KEYS = st.one_of( st.integers(2016, 2040), @@ -613,6 +612,12 @@ def statutory_leaves(): ) +def test_no_ordinary_parameter_reads_calendar_years(): + reads = tbs_module.parameter_reads_calendar_years() + assert ORDINARY + assert [path for path in ORDINARY if reads(path)] == [] + + @settings(max_examples=200, deadline=None, derandomize=True) @given(path=st.sampled_from(ORDINARY), key=KEYS) def test_ordinary_parameters_read_every_key_as_before(path, key): diff --git a/policyengine_uk/variables/gov/dwp/housing_benefit/_child_disability_premiums.py b/policyengine_uk/variables/gov/dwp/housing_benefit/_child_disability_premiums.py new file mode 100644 index 0000000000..b8d89ac57c --- /dev/null +++ b/policyengine_uk/variables/gov/dwp/housing_benefit/_child_disability_premiums.py @@ -0,0 +1,30 @@ +from policyengine_uk.model_api import * + + +def child_disability_premium_benefit_conditions(person, period): + """The disabled child and enhanced disability premium conditions that + Housing Benefit and pension-age Council Tax Reduction share, for each + person, leaving out the armed forces independence payment. + + A child or young person meets the disabled child condition with a positive + DLA amount (either component), a positive PIP amount (either component) or + the blindness indicator (HB Regs 2006 Sch 3 para 16; SI 2012/2885 Sch 2 + para 8(a)-(b); WSI 2013/3029 Sch 2 para 8(a)-(b); SSI 2012/319 Sch 1 para + 9(a)-(b)). They meet the enhanced condition with the DLA care component at + the highest rate (has_highest_dla_sc_award) or the PIP daily living + component at the enhanced rate (has_enhanced_pip_dl_award) (HB Regs 2006 + Sch 3 para 15; SI 2012/2885 Sch 2 para 7(1)(a)-(b); WSI 2013/3029 Sch 2 + para 7(1)(a)-(b); SSI 2012/319 Sch 1 para 8(1)(a)-(b)). Each caller adds + its own armed forces independence payment route. + + Neither condition reads a field for child disability payment or adult + disability payment, which the model lacks, so callers enter those awards + in the DLA and PIP fields. + """ + dla = (person("dla_sc", period) > 0) | (person("dla_m", period) > 0) + pip = (person("pip_dl", period) > 0) | (person("pip_m", period) > 0) + disabled_child = dla | pip | person("is_blind", period) + enhanced = person("has_highest_dla_sc_award", period) | person( + "has_enhanced_pip_dl_award", period + ) + return disabled_child, enhanced diff --git a/policyengine_uk/variables/gov/dwp/housing_benefit/housing_benefit_child_disability_premiums.py b/policyengine_uk/variables/gov/dwp/housing_benefit/housing_benefit_child_disability_premiums.py index 171979a8cb..1e89a7739d 100644 --- a/policyengine_uk/variables/gov/dwp/housing_benefit/housing_benefit_child_disability_premiums.py +++ b/policyengine_uk/variables/gov/dwp/housing_benefit/housing_benefit_child_disability_premiums.py @@ -1,4 +1,7 @@ from policyengine_uk.model_api import * +from policyengine_uk.variables.gov.dwp.housing_benefit._child_disability_premiums import ( + child_disability_premium_benefit_conditions, +) class housing_benefit_child_disability_premiums(Variable): @@ -36,16 +39,10 @@ def formula(benunit, period, parameters): p = parameters(period).gov.dwp.housing_benefit.premiums person = benunit.members child = person("is_child_or_young_person_for_legacy_benefits", period) - dla_care = person("dla_sc", period) > 0 - dla = dla_care | (person("dla_m", period) > 0) - pip_daily = person("pip_dl", period) > 0 - pip = pip_daily | (person("pip_m", period) > 0) + disabled, enhanced = child_disability_premium_benefit_conditions(person, period) + # The formula counts AFIP for any child or young person in both premiums. afip = person("armed_forces_independence_payment", period) > 0 - disabled = dla | pip | afip | person("is_blind", period) - enhanced = ( - person("has_highest_dla_sc_award", period) - | person("has_enhanced_pip_dl_award", period) - | afip - ) + disabled = disabled | afip + enhanced = enhanced | afip weekly = p.disabled_child * disabled + p.enhanced_disabled_child * enhanced return benunit.sum(child * weekly) * WEEKS_IN_YEAR diff --git a/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_applicable_amount.py b/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_applicable_amount.py index 8507549d97..ea9728d04d 100644 --- a/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_applicable_amount.py +++ b/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_applicable_amount.py @@ -16,7 +16,10 @@ class council_tax_reduction_applicable_amount(Variable): "For a pensioner we also add an amount for each child or young " "person in the family (council_tax_reduction_pensioner_child_amounts) " "and the family premium " - "(council_tax_reduction_pensioner_family_premium)." + "(council_tax_reduction_pensioner_family_premium). A pensioner's " + "council_tax_reduction_premiums include the disabled child and " + "enhanced disability premiums for each qualifying child or young " + "person (council_tax_reduction_pensioner_child_disability_premiums)." ) definition_period = YEAR unit = GBP @@ -99,8 +102,11 @@ def formula(benunit, period, parameters): + couple * couple_personal_allowance + lone_parent * lone_parent_personal_allowance ) * WEEKS_IN_YEAR - # We currently include the severe disability and carer premiums for - # pensioners, and choose the schedule by the same pensioner test. + # For a pensioner, council_tax_reduction_premiums holds the severe + # disability and carer premiums and the disabled child and enhanced + # disability premiums for the family's children and young persons + # (SI 2012/2885 Sch 1 para 6(1)(d)). It chooses the schedule by the + # same pensioner test. premiums = benunit("council_tax_reduction_premiums", period) # A pensioner's amounts for the children and young persons in the # family and the family premium (SI 2012/2885 Sch 1 para 6(1)(b)-(c); diff --git a/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_pensioner_child_disability_premiums.py b/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_pensioner_child_disability_premiums.py new file mode 100644 index 0000000000..ee86a5fc6b --- /dev/null +++ b/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_pensioner_child_disability_premiums.py @@ -0,0 +1,96 @@ +from policyengine_uk.model_api import * +from policyengine_uk.variables.gov.dwp.housing_benefit._child_disability_premiums import ( + child_disability_premium_benefit_conditions, +) +from policyengine_uk.variables.household.demographic.country import Country + + +class council_tax_reduction_pensioner_child_disability_premiums(Variable): + value_type = float + entity = BenUnit + label = "Council Tax Reduction pensioner child disability premiums" + documentation = ( + "Councils add the disabled child premium and the enhanced disability " + "premium to a pensioner's Council Tax Reduction applicable amount for " + "each child or young person in the family " + "(is_child_or_young_person_for_council_tax_reduction) who meets the " + "premium's condition, at the nation's weekly amounts. A child or young " + "person meets the disabled child condition with a positive DLA or PIP " + "amount (either component) or the blindness indicator, and the " + "enhanced condition with the highest DLA care rate " + "(has_highest_dla_sc_award) or the enhanced PIP daily living rate " + "(has_enhanced_pip_dl_award), as for Housing Benefit. An armed forces " + "independence payment meets each condition where the nation's " + "ministers name it for that person in that year: in England, for a child or " + "young person for the enhanced premium and for a young person for the " + "disabled child premium, from 2023-24; in Wales, for a child or young " + "person for the enhanced premium, and for the disabled child premium " + "from 2024-25; in Scotland, for a young person for both. A young " + "person is a Child Benefit qualifying young person " + "(is_qualifying_young_person_for_child_benefit). The model has no " + "fields for child disability payment, adult disability payment or " + "Scottish Adult Disability Living Allowance, so callers enter them in " + "the DLA and PIP fields. The model omits the hospital limbs and the " + "section 145A run-on after a child's death. Where the household head " + "applies alone (council_tax_reduction_head_applies_alone), the model " + "assumes the head has no children in their family. Working-age " + "families and families outside England, Wales and Scotland get nil." + ) + definition_period = YEAR + unit = GBP + reference = ( + "https://www.legislation.gov.uk/uksi/2012/2885/schedule/1/paragraph/6", + "https://www.legislation.gov.uk/uksi/2012/2885/schedule/2", + "https://www.legislation.gov.uk/uksi/2023/16/regulation/7/made", + "https://www.legislation.gov.uk/wsi/2013/3029/schedule/1/paragraph/1", + "https://www.legislation.gov.uk/wsi/2013/3029/schedule/2", + "https://www.legislation.gov.uk/wsi/2024/56/regulation/5/made", + "https://www.legislation.gov.uk/ssi/2012/319/regulation/20", + "https://www.legislation.gov.uk/ssi/2012/319/schedule/1", + ) + + def formula(benunit, period, parameters): + local_authorities = parameters(period).gov.local_authorities + nations = [ + local_authorities.england.council_tax_reduction.pensioners.applicable_amount, + local_authorities.wales.council_tax_reduction.pensioners.applicable_amount, + local_authorities.scotland.council_tax_reduction.pensioners.applicable_amount, + ] + person = benunit.members + country = person.household("country", period) + in_nation = [ + country == Country.ENGLAND, + country == Country.WALES, + country == Country.SCOTLAND, + ] + + def by_nation(get, default): + return select(in_nation, [get(p) for p in nations], default=default) + + disabled, enhanced = child_disability_premium_benefit_conditions(person, period) + # The Secretary of State and the Welsh and Scottish Ministers name the + # armed forces independence payment for a child, a young person, both or + # neither, by premium and year. + afip = person("armed_forces_independence_payment", period) > 0 + young_person = person("is_qualifying_young_person_for_child_benefit", period) + + def afip_route(premium): + routes = [p.armed_forces_independence_payment[premium] for p in nations] + return afip & where( + young_person, + select(in_nation, [r.young_person for r in routes], default=False), + select(in_nation, [r.child for r in routes], default=False), + ) + + disabled = disabled | afip_route("disabled_child_premium") + enhanced = enhanced | afip_route("enhanced_disability_premium") + weekly = ( + by_nation(lambda p: p.disabled_child_premium, 0) * disabled + + by_nation(lambda p: p.enhanced_disability_premium, 0) * enhanced + ) + child = person("is_child_or_young_person_for_council_tax_reduction", period) + pensioner = benunit("council_tax_reduction_pensioner", period) + applicant_family = ~benunit("council_tax_reduction_head_applies_alone", period) + return ( + pensioner * applicant_family * benunit.sum(child * weekly) * WEEKS_IN_YEAR + ) diff --git a/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_premiums.py b/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_premiums.py index 4e449893da..1a8c543998 100644 --- a/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_premiums.py +++ b/policyengine_uk/variables/gov/local_authorities/council_tax_reduction/council_tax_reduction_premiums.py @@ -7,12 +7,17 @@ class council_tax_reduction_premiums(Variable): label = "Council Tax Reduction disability and carer premiums" documentation = ( "The disability and carer premiums in the Council Tax Reduction " - "applicable amount, which are the applicant's. A pensioner " - "(council_tax_reduction_pensioner) has the pension-age schedule (the " - "severe disability and carer premiums), anyone else the working-age " - "schedule. Where the applicant is the benefit unit's claimant, these " - "are the benefit unit's premiums (pension_age_benefits_premiums or " - "working_age_benefits_premiums). Where the household head applies " + "applicable amount. A pensioner (council_tax_reduction_pensioner) has " + "the pension-age schedule (the severe disability and carer premiums, " + "and the disabled child and enhanced disability premiums for each " + "qualifying child or young person in the family), anyone else the " + "working-age schedule. Where the applicant is the benefit unit's " + "claimant, these are the benefit unit's premiums: for a pensioner, " + "pension_age_benefits_premiums plus " + "council_tax_reduction_pensioner_child_disability_premiums; otherwise " + "working_age_benefits_premiums, with Council Tax Reduction's own " + "severe disability, enhanced disability and carer premiums in place " + "of the shared ones. Where the household head applies " "alone (council_tax_reduction_head_applies_alone), they are the " "premiums of a single claimant on the head's own circumstances, under " "the same conditions: the disability premium on her own disability and " @@ -59,7 +64,14 @@ def formula(benunit, period, parameters): # premium). benefit_unit_premiums = where( pensioner, - benunit("pension_age_benefits_premiums", period), + # A pensioner's premiums include the disabled child and enhanced + # disability premiums for the family's children and young persons + # (SI 2012/2885 Sch 1 para 6(1)(d); WSI 2013/3029 Sch 1 para + # 1(1)(d); SSI 2012/319 reg 20(d)). + benunit("pension_age_benefits_premiums", period) + + benunit( + "council_tax_reduction_pensioner_child_disability_premiums", period + ), benunit("working_age_benefits_premiums", period) + ( benunit("council_tax_reduction_severe_disability_premium", period) diff --git a/policyengine_uk/variables/household/income/benefits_premiums.py b/policyengine_uk/variables/household/income/benefits_premiums.py index d3030731f2..5511457bd0 100644 --- a/policyengine_uk/variables/household/income/benefits_premiums.py +++ b/policyengine_uk/variables/household/income/benefits_premiums.py @@ -10,10 +10,11 @@ # The pension-age schedules (HB(SPC) Regs 2006 Sch 3 Part 3; CTR (Prescribed # Requirements) (England) Regs 2012 Sch 2 Part 3; the Scottish and Welsh # pension-age CTR schedules) have only the severe disability, enhanced -# disability (children only), disabled child and carer premiums. The two -# child premiums are modelled for Housing Benefit only, by -# housing_benefit_child_disability_premiums in the applicable amount; -# Council Tax Reduction does not model them. +# disability (children only), disabled child and carer premiums. This list +# holds the two adult premiums. The model computes the two child premiums +# separately: housing_benefit_child_disability_premiums for Housing Benefit, +# and council_tax_reduction_pensioner_child_disability_premiums for Council +# Tax Reduction, which council_tax_reduction_premiums adds for a pensioner. PENSION_AGE_PREMIUMS = [ "pension_age_severe_disability_premium", "carer_premium",