policyengine-us 1.455.0__py3-none-any.whl → 1.456.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,13 @@
1
+ description: REIT and PTP income is deducted at this rate under the qualified business income deduction.
2
+ metadata:
3
+ label: REIT/PTP income deduction rate
4
+ unit: /1
5
+ period: year
6
+ reference:
7
+ - title: 26 U.S. Code § 199A(b)(1)(B) - Combined qualified business income amount
8
+ href: https://www.law.cornell.edu/uscode/text/26/199A#b_1_B
9
+ - title: IRS Form 8995 Lines 6-9 - REIT and PTP Component
10
+ href: https://www.irs.gov/pub/irs-pdf/f8995.pdf
11
+ values:
12
+ 2013-01-01: 0.0
13
+ 2018-01-01: 0.2
@@ -27,12 +27,14 @@
27
27
  w2_wages_from_qualified_business: 8_000
28
28
  unadjusted_basis_qualified_property: 50_000
29
29
  taxable_income_less_qbid: 400_100
30
+ qualified_reit_and_ptp_income: 1_000
30
31
  business_is_sstb: False
31
32
  filing_status: JOINT
32
33
  output:
33
- # Calculation: QBI component is $8,800. REIT component is 0.20 * 1k = $200.
34
- # Total = $8,800
35
- qbid_amount: 8_800
34
+ # Calculation: QBI component is $8,800 (same as Entity 1).
35
+ # REIT/PTP component = 0.20 * 1k = $200.
36
+ # Total = $8,800 + $200 = $9,000.
37
+ qbid_amount: 9_000
36
38
 
37
39
  - name: Non-SSTB above phase-in range (Entity 2 from Appendix A)
38
40
  period: 2022
@@ -127,3 +129,73 @@
127
129
  # The final taxable income cap (at 24k) is applied at the
128
130
  # tax-unit level, outside the scope of this business-level function.
129
131
  qbid_amount: 40_000
132
+
133
+ # REIT/PTP Income Tests - Form 8995 Lines 6-9
134
+ # REIT/PTP income gets 20% deduction WITHOUT W-2 wage or UBIA limitations
135
+
136
+ - name: REIT/PTP only - no QBI (Form 8995 simplified path)
137
+ period: 2022
138
+ input:
139
+ qualified_business_income: 0
140
+ w2_wages_from_qualified_business: 0
141
+ unadjusted_basis_qualified_property: 0
142
+ taxable_income_less_qbid: 100_000
143
+ qualified_reit_and_ptp_income: 10_000
144
+ business_is_sstb: False
145
+ filing_status: SINGLE
146
+ output:
147
+ # No QBI, so QBI component = $0.
148
+ # REIT/PTP component = 0.20 * 10k = $2,000.
149
+ # Total = $2,000.
150
+ qbid_amount: 2_000
151
+
152
+ - name: REIT/PTP with SSTB - REIT/PTP not affected by SSTB phase-out
153
+ period: 2022
154
+ input:
155
+ qualified_business_income: 110_000
156
+ w2_wages_from_qualified_business: 60_000
157
+ unadjusted_basis_qualified_property: 6_000
158
+ taxable_income_less_qbid: 460_100
159
+ qualified_reit_and_ptp_income: 50_000
160
+ business_is_sstb: True
161
+ filing_status: JOINT
162
+ output:
163
+ # SSTB above phase-in range, so QBI component = $0 (fully phased out).
164
+ # REIT/PTP is NOT subject to SSTB rules, so:
165
+ # REIT/PTP component = 0.20 * 50k = $10,000.
166
+ # Total = $0 + $10,000 = $10,000.
167
+ qbid_amount: 10_000
168
+
169
+ - name: REIT/PTP above wage limitation - no wage cap applies
170
+ period: 2022
171
+ input:
172
+ qualified_business_income: 0
173
+ w2_wages_from_qualified_business: 0
174
+ unadjusted_basis_qualified_property: 0
175
+ taxable_income_less_qbid: 500_000
176
+ qualified_reit_and_ptp_income: 100_000
177
+ business_is_sstb: False
178
+ filing_status: JOINT
179
+ output:
180
+ # No QBI, so QBI component = $0.
181
+ # Even though taxable income is above threshold and W-2 wages are $0,
182
+ # REIT/PTP is NOT subject to W-2 wage limitations.
183
+ # REIT/PTP component = 0.20 * 100k = $20,000.
184
+ qbid_amount: 20_000
185
+
186
+ - name: Combined QBI and REIT/PTP - below threshold
187
+ period: 2024
188
+ input:
189
+ qualified_business_income: 50_000
190
+ w2_wages_from_qualified_business: 30_000
191
+ unadjusted_basis_qualified_property: 0
192
+ taxable_income_less_qbid: 150_000
193
+ qualified_reit_and_ptp_income: 25_000
194
+ business_is_sstb: False
195
+ filing_status: SINGLE
196
+ output:
197
+ # Below threshold ($191,950 single in 2024), so no W-2/UBIA limit.
198
+ # QBI component = 0.20 * 50k = $10,000.
199
+ # REIT/PTP component = 0.20 * 25k = $5,000.
200
+ # Total = $15,000.
201
+ qbid_amount: 15_000
@@ -4,14 +4,13 @@ from policyengine_us.model_api import *
4
4
  class qbid_amount(Variable):
5
5
  value_type = float
6
6
  entity = Person
7
- label = (
8
- "Per-cap qualified business income deduction amount for each person"
9
- )
7
+ label = "Per-person qualified business income deduction amount"
10
8
  unit = USD
11
9
  definition_period = YEAR
12
10
  reference = (
13
- "https://www.law.cornell.edu/uscode/text/26/199A#b_1"
14
- "https://www.irs.gov/pub/irs-prior/p535--2018.pdf"
11
+ "https://www.law.cornell.edu/uscode/text/26/199A#b_1",
12
+ "https://www.irs.gov/pub/irs-prior/p535--2018.pdf",
13
+ "https://www.irs.gov/pub/irs-pdf/f8995.pdf",
15
14
  )
16
15
 
17
16
  def formula(person, period, parameters):
@@ -53,4 +52,15 @@ class qbid_amount(Variable):
53
52
  )
54
53
  line26 = max_(0, adj_qbid_max - reduction)
55
54
  line12 = where(adj_cap < adj_qbid_max, line26, 0)
56
- return max_(line11, line12) # Worksheet 12-A, line 13
55
+ # QBI component (Worksheet 12-A, line 13 / Form 8995 Line 5)
56
+ qbi_component = max_(line11, line12)
57
+
58
+ # REIT/PTP component (Form 8995 Lines 6-9)
59
+ # Per §199A(b)(1)(B), qualified REIT dividends and qualified PTP income
60
+ # receive a 20% deduction WITHOUT W-2 wage or UBIA limitations
61
+ reit_ptp_income = person("qualified_reit_and_ptp_income", period)
62
+ reit_ptp_component = p.max.reit_ptp_rate * max_(0, reit_ptp_income)
63
+
64
+ # Total QBID = QBI component + REIT/PTP component
65
+ # (Form 8995 Line 10: Add lines 5 and 9)
66
+ return qbi_component + reit_ptp_component
@@ -6,7 +6,7 @@ class qualified_reit_and_ptp_income(Variable):
6
6
  entity = Person
7
7
  label = "REIT and PTP Income"
8
8
  unit = USD
9
- documentation = "REIT and Publically Traded Partnership Income. Part of the QBID calclulation."
9
+ documentation = "REIT and Publicly Traded Partnership Income. Part of the QBID calculation."
10
10
  definition_period = YEAR
11
11
  reference = "https://www.law.cornell.edu/uscode/text/26/1#h_11"
12
12
  uprating = "calibration.gov.irs.soi.qualified_dividend_income"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: policyengine-us
3
- Version: 1.455.0
3
+ Version: 1.456.0
4
4
  Summary: Add your description here.
5
5
  Author-email: PolicyEngine <hello@policyengine.org>
6
6
  License-File: LICENSE
@@ -729,6 +729,7 @@ policyengine_us/parameters/gov/irs/deductions/qbi/income_definition.yaml,sha256=
729
729
  policyengine_us/parameters/gov/irs/deductions/qbi/deduction_floor/amount.yaml,sha256=CXwummMdhR2MRypqpHlMS2-pYGzs43hxzW9qJ9ywhuQ,578
730
730
  policyengine_us/parameters/gov/irs/deductions/qbi/deduction_floor/in_effect.yaml,sha256=Lcmj2iI0_9bQ84pBtMs4tvPSHUyQzxFQAF5NvaA1r9M,372
731
731
  policyengine_us/parameters/gov/irs/deductions/qbi/max/rate.yaml,sha256=roMoxlefYwEdD9VdGTiC9OkivmQrwwSUx0CbNSvXpzA,415
732
+ policyengine_us/parameters/gov/irs/deductions/qbi/max/reit_ptp_rate.yaml,sha256=TQ_UbmPc4wR71cKscBmAYozzJ0k13Ogl3lciqbTLSbw,507
732
733
  policyengine_us/parameters/gov/irs/deductions/qbi/max/business_property/rate.yaml,sha256=oR27sVH8gGfDQtUx1pG4IGzNCqimmC6SnO6CtF5oK0g,370
733
734
  policyengine_us/parameters/gov/irs/deductions/qbi/max/w2_wages/alt_rate.yaml,sha256=blMwSsl2cGk9tUKzwVAYYFoFrkOH2HBFKW62Qjt921I,600
734
735
  policyengine_us/parameters/gov/irs/deductions/qbi/max/w2_wages/rate.yaml,sha256=d7jlv_p-zsdryNc-RvGfxNTsE6SbI4STzLDvuM5di-I,335
@@ -3718,7 +3719,7 @@ policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/i
3718
3719
  policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/itemizing/wagering_losses_deduction.yaml,sha256=w_kw5K7GltU67dx1Q-W1o_JvdIF5uiROxlo3fkXqrjA,1622
3719
3720
  policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction.yaml,sha256=Walib9Jo93X4XkqicUXypVdpucueZgdsJptK-VtKl44,1010
3720
3721
  policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction_ssn_requirement_met.yaml,sha256=GD4w8BKLayQyVJ9qBcB0ddetWaAWau0BYP77AEttB8w,1353
3721
- policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml,sha256=jUiPA4VHc1yPT3idQnQVxzTig6yV73Zoa4I56oUd-_A,4527
3722
+ policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml,sha256=IUxjnPdrTILitnWJ5jh_2E4P55bAOm6fMuIQNRq0BMs,6953
3722
3723
  policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qualified_business_income.yaml,sha256=4qNyYDGR_o_DBOsSxiHszzqWvt31-jGDKjtjs-5tcCY,1939
3723
3724
  policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qualified_business_income_deduction.yaml,sha256=B8G8xmMwlgR2zF1O_4azxIlLNkwJMeKDAnpeVMZJMPo,1492
3724
3725
  policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/taxable_income_less_qbid.yaml,sha256=Cjt-YJ_Hpfnqd0vGHs361h55WqYR0_Te9lGWEf4Lrts,536
@@ -6153,7 +6154,7 @@ policyengine_us/variables/gov/irs/income/taxable_income/deductions/itemizing/tot
6153
6154
  policyengine_us/variables/gov/irs/income/taxable_income/deductions/itemizing/wagering_losses_deduction.py,sha256=EfNKU46fN_z84wh2lr-xyL07msiqJtoha33_YWP64BE,628
6154
6155
  policyengine_us/variables/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction.py,sha256=nj2R9ywGYT6wZC0TSd3nS0uCgU6-YpkOW10OSXysnUc,984
6155
6156
  policyengine_us/variables/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction_ssn_requirement_met.py,sha256=oy3WhxjuJAzTeLNCp8-Ol5-NFVvhrs3OLj-gniRRtZM,961
6156
- policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qbid_amount.py,sha256=HHAtCsYqazz-jLRcY9mmlZJp_DlGinImKFZHBBVvIE4,2480
6157
+ policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qbid_amount.py,sha256=Xb-cctuwuc6hb-n4iJOjs17zTnL0my18Dd8n3tUPBAs,3069
6157
6158
  policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qualified_business_income.py,sha256=siUYxndY6je2Pm335LLZVevy2FAPlzMBJuex5I4FC3s,823
6158
6159
  policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qualified_business_income_deduction.py,sha256=RcCXVvT1GvEFQNOt4f_MtZW9k224_nslXzhG1St6dq0,1477
6159
6160
  policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qualified_business_income_deduction_person.py,sha256=wjBgn5j4BuNqNFSzi89rzQEvQUavwoa_LJlGDtQbt9M,1071
@@ -8919,7 +8920,7 @@ policyengine_us/variables/household/income/person/dividends/dividend_income.py,s
8919
8920
  policyengine_us/variables/household/income/person/dividends/non_qualified_dividend_income.py,sha256=6fklBCnmVWUl9-4yBG4TXpGoYna9qsPUQ50UMx2maJI,291
8920
8921
  policyengine_us/variables/household/income/person/dividends/qualified_bdc_income.py,sha256=7V--w6Rp8s7JTDyEYvK0_PU2ZKb1sb6BNn3p3cKpMc8,459
8921
8922
  policyengine_us/variables/household/income/person/dividends/qualified_dividend_income.py,sha256=32xzhjwRYNlJN-Bx2X8RjNfm331WPHSSm5jI_q88W9s,279
8922
- policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py,sha256=Kan9xlpj_2MalqaRysJmERohgEXK6dcKdJIIu6iYSLQ,445
8923
+ policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py,sha256=nkWgE5DTLGhe-xMvMp2iAKyn8qevey-PIpAPYBej-_8,442
8923
8924
  policyengine_us/variables/household/income/person/estate/estate_income.py,sha256=76XCBnLX_pmKjmyMxFxmrPEVcFAO9FHMdJA-bsAswSY,188
8924
8925
  policyengine_us/variables/household/income/person/estate/estate_income_would_be_qualified.py,sha256=YWoT4rB7lK27DBlu3XFu0qozax42TD8kIOAa2rbfJyA,404
8925
8926
  policyengine_us/variables/household/income/person/farm/farm_operations_income.py,sha256=IHKJH47b8hoSWXi1xiUd8bosnswBG9O_nHttaowZ35Q,458
@@ -9028,8 +9029,8 @@ policyengine_us/variables/input/farm_income.py,sha256=BEKxYmHNNnWJAAvULl5qZJigy5
9028
9029
  policyengine_us/variables/input/geography.py,sha256=Ux0ueAf0rhZaflyEqz81UuXP3xKCKBDvoO3CrKhiQEc,5421
9029
9030
  policyengine_us/variables/input/self_employment_income.py,sha256=PwsGz8R4lRikKWUYOhsC0qosNNLXq4f5SQmfw4S3mk8,511
9030
9031
  policyengine_us/variables/input/self_employment_income_before_lsr.py,sha256=E8fcX9Nlyqz8dziHhQv_euutdmoIwFMMWePUwbbwv_w,379
9031
- policyengine_us-1.455.0.dist-info/METADATA,sha256=IB2mW8AIgn_J8yE6z9QVodSLRwDXRA-VXwI0jeKGz4o,1649
9032
- policyengine_us-1.455.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
9033
- policyengine_us-1.455.0.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
9034
- policyengine_us-1.455.0.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
9035
- policyengine_us-1.455.0.dist-info/RECORD,,
9032
+ policyengine_us-1.456.0.dist-info/METADATA,sha256=1KENDYN0IzlCBMCni-O5UNvmq5tEQzjtlbRhqceYT0U,1649
9033
+ policyengine_us-1.456.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
9034
+ policyengine_us-1.456.0.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
9035
+ policyengine_us-1.456.0.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
9036
+ policyengine_us-1.456.0.dist-info/RECORD,,