schedule17

T2 Corporation Income Tax Return

Kind
batch
Supported tax years
2022 and later
Strict profile
s17_2022_single_part1_rows_target_value_v1
Payload schema version
0.5.0
Dependencies (run automatically)
none

Example request

Send this body to POST /api/v1/computations/batch. It satisfies the strict profile, so it works with or without the payloadContract selector.

{
  "compute": [
    "schedule17"
  ],
  "inputs": {
    "taxYear": 2025,
    "fiscalStart": "2025-01-01",
    "fiscalEnd": "2025-12-31",
    "daysInYear": 365,
    "isCCPC": true,
    "schedule17": {
      "isCreditUnion": true,
      "part1AllocationRows": [
        {
          "line_100_interest_payable_by_members": 5000,
          "line_200_money_borrowed_by_members": 100000,
          "line_300_allocation_in_proportion_to_borrowing": 2000
        }
      ],
      "part1BonusInterestRows": [
        {
          "line_110_interest_payable_to_members": 8000,
          "line_210_money_on_deposit_by_members": 150000,
          "line_310_bonus_interest_payments": 4000
        }
      ]
    }
  }
}

Input cells (46)

Paths are relative to the request’s inputs object; [] marks an array element.

Required says when a cell must be present. Always means every request needs it: the default boundary rejects the call when the cell is omitted or null. Strict means only a request that sends this target’s payloadContract selector needs it. See Run computations for the default boundary.

These cells are everything this target accepts. A member that is not published here, or is sent with the wrong JSON type, fails the call with a 400 naming each failing cell.

Input cells for schedule17
CellTypesRequired
daysInYearInclusive day count for the canonical fiscalStart/fiscalEnd period. TXE-680 routed the single-target schedule17 request through the same two-phase SBD seam as the filing batch, whose Part I closure requires the complete canonical taxation-period trio.integerstrict
fiscalEndLast day of the taxation year, as YYYY-MM-DD, on or after fiscalStart. Its calendar year must equal taxYear. Required for the same reason as fiscalStart.stringstrict
fiscalStartFirst day of the taxation year, as YYYY-MM-DD. Required because this target's dependency closure reaches part_i_tax, whose rates and limits are day-weighted; ITA s.249(1)(a) makes the taxation year the fiscal period, and the engine will not invent calendar-year bounds.stringstrict
isCCPCCanadian-controlled private corporation status, the T2 box 040 fact the SBD closure requires. The witness credit union is a CCPC; s.137(7) deems a credit union not a private corporation except for the enumerated provisions, and the s.125 deduction reaches it through s.137(4)/(3).booleanstrict
schedule17.amount_1a_part1_total_deductionPart 1 amount 1A, line 305 plus line 315, the credit union's total payments-to-members deduction flowing to Schedule 1 line 315. The engine computes it from the per-class rows, so send it only to reconcile an imported total.null | number | string
schedule17.amount_2a_pra_opening_on_bcAmount 2A — PRA at end of PY incl. transfers (= 2E from PY S17, or zero if first-time ON/BC PE filer). Carries forward from line 801 via carryforward_schedule17.null | number
schedule17.amount_2f_sbd_for_tax_yearAmount 2F — SBD claimed for tax year (= T2 line 430).null | number
schedule17.amount_3a_pra_opening_mbAmount 3A — MB opening PRA incl. transfers.null | number
schedule17.amount_3d_s383_amount_1eAmount 3D — MB SBD claimed (= S383 amount 1E).null | number
schedule17.amount_3j_s383_amount_1fAmount 3J — = S383 amount 1F.null | number
schedule17.hasPermanentEstablishmentBritishColumbiaTrue iff the corp has a permanent establishment in British Columbia.boolean | null
schedule17.hasPermanentEstablishmentManitobaTrue iff the corp has a permanent establishment in Manitoba. Drives Part 3 applicability.boolean | null
schedule17.hasPermanentEstablishmentOntarioTrue iff the corp has a permanent establishment in Ontario. Drives Part 2 applicability (along with hasPermanentEstablishmentBritishColumbia).boolean | null
schedule17.isCreditUnionWhether the filer is a credit union (ITA s.137). Used when this target runs on its own, standing in for the T2 jacket's credit-union status. If the two disagree, the engine blocks.boolean | nullstrict
schedule17.line_305Line 305 — Total allocations in proportion to borrowing (sum of col 300 across rows). Practitioner may override the computed sum or leave null to defer to the engine.null | number
schedule17.line_315Line 315 — Total bonus interest payments (sum of col 310 across rows). Practitioner may override or defer to engine.null | number
schedule17.line_501Line 501 — Taxable income for tax year (= T2 line 360).null | number
schedule17.line_502Line 502 — MB taxable income (= S383 amount 1A).null | number
schedule17.line_601Line 601 — 4/3 × maximum cumulative reserve at end of tax year. MCR per s.137(6) is 5% × (debts to members + members' shares).null | number
schedule17.line_602Line 602 — 4/3 × MCR at end of tax year (typically equal to line 601).null | number
schedule17.line_626Line 626 — Min of T2 lines 400, 405, 410, 428 (federal SBD-eligibility floor that grinds the year's PRA addition).null | number
schedule17.line_651Line 651 — Amount 2D × 19% (engine-computed; override allowed).null | number
schedule17.line_652Line 652 — Amount 3H × 12% (engine-computed; feeds S383 amount 2B).null | number
schedule17.line_701Line 701 — PRA at end of PY (= PY line 801).null | number
schedule17.line_702Line 702 — MB PRA at end of PY (= PY line 802).null | number
schedule17.line_751Line 751 — PRA transferred on amalgamation or wind-up (s.87 / s.88 continuity; default zero).null | number
schedule17.line_752Line 752 — MB PRA transferred on amalgamation or wind-up.null | number
schedule17.line_801Line 801 — PRA at end of tax year (= 2E + 2I, engine-computed).null | number
schedule17.line_802Line 802 — MB PRA at end of tax year (= 3I + 3J + 3K, engine-computed).null | number
schedule17.part1AllocationRowsPer-class rows for allocations in proportion to borrowing. Each row's col 300 sums into line 305.array
schedule17.part1AllocationRows[].classDescriptionOptional practitioner notes for this class row.null | string
schedule17.part1AllocationRows[].line_100_interest_payable_by_membersCol 100 — Interest payable BY all members of class (reference input).null | numberstrict
schedule17.part1AllocationRows[].line_200_money_borrowed_by_membersCol 200 — Amount of money borrowed BY all members of class (reference input).null | numberstrict
schedule17.part1AllocationRows[].line_300_allocation_in_proportion_to_borrowingCol 300 — Allocation in proportion to borrowing for the class (deductible).null | number | stringstrict
schedule17.part1AllocationRows[].paymentDateDate the payment was made to members (ISO YYYY-MM-DD). ITA s.137(2) deducts only payments "made by the credit union within the year or within 12 months thereafter". null = unanswered.null | string
schedule17.part1AllocationRows[].sameRateAttestationWere the payments to members of this class computed at the SAME RATE? ITA s.137(6) "allocation in proportion to borrowing" admits only same-rate classes. false excludes the row from the total; null = unanswered.boolean | null
schedule17.part1AllocationRows[].wasDeductibleInPriorYearWas this amount DEDUCTIBLE in computing income for a preceding tax year? ITA s.137(2) opening words. true removes the row from this year's total whether or not it was actually claimed; null = unanswered.boolean | null
schedule17.part1BonusInterestRowsPer-class rows for bonus interest payments. Each row's col 310 sums into line 315.array
schedule17.part1BonusInterestRows[].classDescriptionOptional practitioner notes for this class row.null | string
schedule17.part1BonusInterestRows[].line_110_interest_payable_to_membersCol 110 — Interest payable TO all members of class (reference input).null | numberstrict
schedule17.part1BonusInterestRows[].line_210_money_on_deposit_by_membersCol 210 — Amount of money on deposit BY all members of class (reference input).null | numberstrict
schedule17.part1BonusInterestRows[].line_310_bonus_interest_paymentsCol 310 — Bonus interest payment for the class (deductible).null | numberstrict
schedule17.part1BonusInterestRows[].paymentDateDate the bonus interest was paid to members (ISO YYYY-MM-DD). ITA s.137(2) year-or-12-months window. null = unanswered.null | string
schedule17.part1BonusInterestRows[].sameRateAttestationWere the bonus interest payments to this class computed at the SAME RATE? ITA s.137(6). null = unanswered.boolean | null
schedule17.part1BonusInterestRows[].wasDeductibleInPriorYearWas this amount DEDUCTIBLE in computing income for a preceding tax year? ITA s.137(2). null = unanswered.boolean | null
taxYearFour-digit taxation year accepted by the batch reader. Historical applicability is decided by the requested form; years after 2027 fail at the shared verified-rate horizon.integer | stringalways
Strict profile accepted values (10 of 46 cells)

These values apply only when the request sends this target’s payloadContract selector. A cell marked pinned must equal the value shown to satisfy the strict profile. On the default boundary the same cell accepts any value of its published type.

Strict profile accepted values for schedule17
CellAccepted values
daysInYear1 to 1000000000000000
fiscalEnddate (YYYY-MM-DD); 10 to 10 characters
fiscalStartdate (YYYY-MM-DD); 10 to 10 characters
schedule17.part1AllocationRows[].line_100_interest_payable_by_members-1000000000000000 to 1000000000000000
schedule17.part1AllocationRows[].line_200_money_borrowed_by_members-1000000000000000 to 1000000000000000
schedule17.part1AllocationRows[].line_300_allocation_in_proportion_to_borrowing-1000000000000000 to 1000000000000000; 0 to 20000 characters
schedule17.part1BonusInterestRows[].line_110_interest_payable_to_members-1000000000000000 to 1000000000000000
schedule17.part1BonusInterestRows[].line_210_money_on_deposit_by_members-1000000000000000 to 1000000000000000
schedule17.part1BonusInterestRows[].line_310_bonus_interest_payments-1000000000000000 to 1000000000000000
taxYearmatches ^\s*(?:1[0-9]{3}|2(?:0(?:[0-1][0-9]{1}|2[0-7])))\s*$; 1000 to 2027

Output cells (110)

Paths are relative to this target’s result object in the response.

Output cells for schedule17
CellTypes
amount_1a_part1_total_deductionstring
amount_2a_pra_opening_on_bcstring
amount_2b_remaining_mcr_on_bcstring
amount_2c_feeds_s500_line_4a_or_s427_line_1fstring
amount_2c_lesser_ti_or_2bstring
amount_2d_2c_less_626string
amount_2e_701_plus_751string
amount_2f_sbd_for_tax_yearstring
amount_2g_line_651string
amount_2h_2f_plus_2gstring
amount_2i_2h_div_19pctstring
amount_3a_pra_opening_mbstring
amount_3b_remaining_mcr_mbstring
amount_3c_lesser_mb_ti_or_3bstring
amount_3d_s383_amount_1estring
amount_3e_3c_less_3dstring
amount_3f_2021_days_at_40pctstring
amount_3g_2022_days_at_20pctstring
amount_3h_3f_plus_3gstring
amount_3i_702_plus_752string
amount_3j_s383_amount_1fstring
amount_3k_amount_3hstring
fired_gatesobject
form.amount_1anumber
form.amount_2anumber
form.amount_2bnumber
form.amount_2cnumber
form.amount_2dnumber
form.amount_2enumber
form.amount_2fnumber
form.amount_2gnumber
form.amount_2hnumber
form.amount_2inumber
form.amount_3anumber
form.amount_3bnumber
form.amount_3cnumber
form.amount_3dnumber
form.amount_3enumber
form.amount_3fnumber
form.amount_3gnumber
form.amount_3hnumber
form.amount_3inumber
form.amount_3jnumber
form.amount_3knumber
form.days_2021number
form.days_2022number
form.formWarningsarray
form.line_305number
form.line_315number
form.line_501number
form.line_502number
form.line_601number
form.line_602number
form.line_626number
form.line_651number
form.line_652number
form.line_701number
form.line_702number
form.line_751number
form.line_752number
form.line_801number
form.line_802number
form.part1AllocationContinuationTablearray
form.part1AllocationTable[].col_100number
form.part1AllocationTable[].col_200number
form.part1AllocationTable[].col_300number
form.part1BonusContinuationTablearray
form.part1BonusTable[].col_110number
form.part1BonusTable[].col_210number
form.part1BonusTable[].col_310number
form.total_daysnumber
has_pe_british_columbiaboolean | null
has_pe_manitobaboolean | null
has_pe_ontarioboolean | null
is_credit_unionboolean | null
line_305string
line_315string
line_501string
line_502string
line_601string
line_602string
line_626string
line_651string
line_652string
line_701string
line_702string
line_751string
line_752string
line_801string
line_802string
manitoba_credit_flows_to_s383_amount_2bstring
manitoba_day_counts.days_in_2021integer
manitoba_day_counts.days_in_2022integer
manitoba_day_counts.total_days_in_tax_yearinteger
part1_deduction_flows_to_s1_line_315string
provisionalboolean
readyboolean
warnings[].boxstring
warnings[].citation.applies_to_boxes[]string
warnings[].citation.cra_text_verbatimstring
warnings[].citation.form_idstring
warnings[].citation.form_revisionstring
warnings[].citation.gate_idstring
warnings[].citation.rulestring
warnings[].citation.sourcestring
warnings[].citation.source_urlstring
warnings[].citation.verified_atstring
warnings[].gate_idstring
warnings[].messagestring
warnings[].severitystring
Filemark | schedule17 cells