schedule43
T2 Corporation Income Tax Return
- Kind
- batch
- Supported tax years
- 2019 and later
- Strict profile
- s43_single_prior_dividend_profile_target_value_v1
- Payload schema version
- 0.9.0
- Dependencies (run automatically)
- part_iv_overlap, schedule23
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": [
"schedule43"
],
"inputs": {
"taxYear": 2025,
"schedule43": {
"line1BPriorYearNonExcludedDividendsPaid": 1200000,
"line220StpsDividendsPaid": 0,
"line230ElectedTpsDividendsPaid": 0,
"line240NonElectedTpsDividendsPaid": 0,
"line250TransferredInFromRelatedCorp": 0,
"line260TransferredOutToRelatedCorp": 0,
"line310TpsDividendsReceived": 0,
"line320RfiSharesDividendsReceived": 0,
"part4ExemptionApplies": true
},
"corpType": "1",
"fiscalStart": "2025-01-01",
"fiscalEnd": "2025-12-31",
"daysInYear": 365
}
}Input cells (37)
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.
| Cell | Types | Required |
|---|---|---|
| corpTypeT2 box 040 corporation type. Code 1 (CCPC) is the receipt-time private-corporation evidence that resolves the Part IV.1 recipient status the sweep made mandatory whenever Part 4 input is present; the editable Schedule 43 answer alone cannot authorize the s.187.1 exemption. | string | strict |
| daysInYearInclusive day count of the taxation year. ITA 191.1(6)(a) prorates the line 210 dividend allowance for a year shorter than 51 weeks, so the sweep withholds line 210 until the day count is supplied; 365 pins the full-year branch. | integer | strict |
| fiscalEnd | string | strict |
| fiscalStart | string | strict |
| schedule43.electionUnderS191_2_1MadeFlag: a s.191.2(1) election is in force for ≥1 class/series of TPS. Required when line 230 > 0. The election is IRREVOCABLE per s.191.2(1) closing words. | boolean | null | |
| schedule43.isAssociatedAndAllocatingFlag: corporation is associated and allocating the $500K dividend allowance among the associated group. When true, Part 2 rows are required and line 210 sources from this corp's own line-140 row rather than the full line 115. | boolean | null | |
| schedule43.isRestrictedFinancialInstitutionFlag: the corporation is a restricted financial institution per s.248(1). Required when line 320 > 0. | boolean | null | |
| schedule43.line116DateFiledBox 116 — Date the agreement was filed (do not use this area per the form; Filemark records for our internal audit trail). | null | string | |
| schedule43.line117IsAmendedAgreementBox 117 — Is this an amended agreement? | boolean | null | |
| schedule43.line118CalendarYearOfAgreementBox 118 — Calendar year to which the agreement applies. | null | number | |
| schedule43.line1BPriorYearNonExcludedDividendsPaidAmount 1B — Prior CALENDAR YEAR non-excluded taxable dividends paid by the corp (or the ASSOCIATED GROUP — see Part 2 point 1) on TPS or shares that would be TPS if issued after June 18, 1987. NOT a printed CRA box code but captured for the line 110 calculation. | null | number | string | strict |
| schedule43.line210OwnAllocationOptional override for line 210 — the practitioner's own allocation when associated. Defaults to the first Part 2 row's column 140 if not provided. Short-year proration applied at the engine level per the form's Note 1 (< 51 weeks → days/365). | null | number | |
| schedule43.line220StpsDividendsPaidLine 220 — taxable dividends (other than excluded dividends) paid in the year on SHORT-TERM preferred shares. ITA 191.1(1)(a)(i) taxes the excess of this total over the dividend allowance at (C) 40% for a taxation year ending after 2011. Required, and admitted only at nil: this profile states the Part VI.1 charging operand rather than defaulting it silently, so a corporation that paid short-term-preferred-share dividends is rejected here rather than served a nil line 270 / T2 line 724. | null | number | strict |
| schedule43.line230ElectedTpsDividendsPaidLine 230 — taxable dividends (other than excluded dividends) paid in the year on taxable preferred shares (other than short-term preferred shares) of classes for which a subsection 191.2(1) election has been made. ITA 191.1(1)(a)(ii) taxes the excess over the unabsorbed dividend allowance at 40%. Admitted only at nil for the same reason as line 220. | null | number | strict |
| schedule43.line240NonElectedTpsDividendsPaidLine 240 — taxable dividends (other than excluded dividends) paid in the year on taxable preferred shares (other than short-term preferred shares) of classes for which no subsection 191.2(1) election has been made. ITA 191.1(1)(a)(iii) taxes the excess over the unabsorbed dividend allowance at 25%. Admitted only at nil for the same reason as line 220. | null | number | strict |
| schedule43.line250TransferredInFromRelatedCorpLine 250 — Part VI.1 tax transferred IN from a related corporation under a subsection 191.3(1) agreement (the ITA 191.1(1)(a)(iv) addition, Schedule 45 companion). Admitted only at nil so the transferred-in limb of the charge is stated rather than assumed. | null | number | strict |
| schedule43.line260TransferredOutToRelatedCorpLine 260 — Part VI.1 tax transferred OUT to a related corporation under a subsection 191.3(1) agreement (the ITA 191.1(1)(b) deduction, Schedule 45 companion). Admitted only at nil so the transferred-out limb of the charge is stated rather than assumed. | null | number | strict |
| schedule43.line310TpsDividendsReceivedLine 310 — dividends RECEIVED in the year on taxable preferred shares (other than shares of a class for which a subsection 191.2(1) election has been made), to the extent deductible under section 112 or 113 or subsection 138(6) (or 115(1)). The ITA 187.2 Part IV.1 charge is 10% of them. Admitted only at nil, for the same reason as the Part VI.1 payer operands: the receipt is stated rather than defaulted silently, so a corporation that received such dividends is rejected here rather than served a nil line 360 / T2 line 716. | null | number | strict |
| schedule43.line320RfiSharesDividendsReceivedLine 320 — dividends RECEIVED in the year on taxable RFI shares, to the extent deductible under section 112 or 113 or subsection 138(6) (or 115(1)). The ITA 187.3(1) charge on a restricted financial institution is 10% of them. Admitted only at nil, for the same reason as line 310. | null | number | strict |
| schedule43.line350PortionAlsoSubjectToPartIvLine 350 — Portion of line 330 also subject to Part IV tax. | null | number | |
| schedule43.line370PortionFromConnectedCorpsLine 370 — Portion of line 350 received from connected corps. | null | number | |
| schedule43.line380PartIvTaxOnLine370DividendsLine 380 — Part IV tax on the dividends reported on line 370. | null | number | |
| schedule43.line390PortionFromNonConnectedCorpsLine 390 — Portion of line 350 received from non-connected corps. | null | number | |
| schedule43.line400EligibleTaxableDividendsFromLine390Line 400 — Eligible-dividend SUBSET of line 390. | null | number | |
| schedule43.part2AgreementCAP-R2 — the persisted ITA 191.1(3) agreement attestation. Boxes 116 / 117 / 118 record only WHEN the agreement was filed and WHICH calendar year it names; subsection 191.1(3) grants an allocated allowance only where ALL of the associated corporations filed the prescribed agreement, and paragraph 191.1(6)(b) makes later associated taxation years ending in the same calendar year reuse the first such year's unprorated allowance. Both attestations are tri-state: null is UNANSWERED and keeps line 210 withheld. | null | object | |
| schedule43.part2Agreement.attestedFiledByEveryAssociatedTpsPayerITA 191.1(3): the agreement is effective only where ALL of the associated corporations filed it. Null is unanswered. | boolean | null | |
| schedule43.part2Agreement.calendarYearCalendar year the agreement allocates for. Must equal the calendar year in which this return's taxation year ends. | null | number | |
| schedule43.part2Agreement.evidenceReferencePractitioner reference to the filed agreement in the engagement file. | null | string | |
| schedule43.part2Agreement.filedDateDate the prescribed agreement was filed with the Minister. | null | string | |
| schedule43.part2Agreement.firstTaxYearAllowanceContinuity191_1_6bITA 191.1(6)(b): where more than one associated taxation year ends in the same calendar year, the later years reuse the FIRST such year's unprorated allowance before paragraph (6)(a) prorates. Null is unanswered. | boolean | null | |
| schedule43.part2Agreement.isAmendedWhether the filed agreement is an amended one. | boolean | null | |
| schedule43.part2RowsAllocation rows. | array | |
| schedule43.part2Rows[].businessNumberColumn 130 — Business number (or literal "NR" if not registered). | null | string | |
| schedule43.part2Rows[].dividendAllowanceAllocatedColumn 140 — Dividend allowance allocated to this corp. Total of column 140 across all rows cannot exceed line 115. | null | number | |
| schedule43.part2Rows[].nameColumn 120 — Name of the associated corporation. | null | string | |
| schedule43.part4ExemptionAppliesWhether every dividend reported on lines 310-400 is an excepted dividend under paragraph (c) of the ITA 187.1 definition, so Part IV.1 does not apply. Required, and admitted only in the exempt state: an explicit false leaves the engine without a reviewed received-TPS fact for a nil line 310/320 and blocks at error severity. Declaring the fact does not establish that it is true. | boolean | null | strict |
| 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 | string | always |
Strict profile accepted values (13 of 37 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.
| Cell | Accepted values |
|---|---|
| corpType | 0 to 20000 characters |
| daysInYear | 1 to 1000000000000000 |
| fiscalEnd | date (YYYY-MM-DD); 10 to 10 characters |
| fiscalStart | date (YYYY-MM-DD); 10 to 10 characters |
| schedule43.line1BPriorYearNonExcludedDividendsPaid | -1000000000000000 to 1000000000000000; 0 to 20000 characters |
| schedule43.line220StpsDividendsPaid | -1000000000000000 to 1000000000000000 |
| schedule43.line230ElectedTpsDividendsPaid | -1000000000000000 to 1000000000000000 |
| schedule43.line240NonElectedTpsDividendsPaid | -1000000000000000 to 1000000000000000 |
| schedule43.line250TransferredInFromRelatedCorp | -1000000000000000 to 1000000000000000 |
| schedule43.line260TransferredOutToRelatedCorp | -1000000000000000 to 1000000000000000 |
| schedule43.line310TpsDividendsReceived | -1000000000000000 to 1000000000000000 |
| schedule43.line320RfiSharesDividendsReceived | -1000000000000000 to 1000000000000000 |
| taxYear | matches ^\s*(?:1[0-9]{3}|2(?:0(?:[0-1][0-9]{1}|2[0-7])))\s*$; 1000 to 2027 |
Output cells (84)
Paths are relative to this target’s result object in the response.
| Cell | Types |
|---|---|
| amount_1A | number |
| amount_1C | number |
| amount_3A | number |
| amount_3B | number |
| amount_3C | number |
| amount_3D | number |
| amount_3E | number |
| amount_3F | number |
| amount_3G | number |
| amount_3H | number |
| amount_3I | number |
| amount_3J | number |
| amount_3K | number |
| amount_3L | number |
| amount_3M | number |
| amount_3N | number |
| amount_3O | number |
| amount_3P | number |
| amount_3Q | number |
| amount_3R | number |
| amount_4A | number |
| amount_4B | number |
| amount_4C | number |
| amount_4D | number |
| electionUnderS191_2_1Made | boolean |
| fired_gates | object |
| gross_part_vi1_tax_before_transfer_out | number |
| isAssociatedAndAllocating | boolean |
| isRestrictedFinancialInstitution | boolean |
| line_110 | number |
| line_115 | number |
| line_116 | array | boolean | null | number | object | string |
| line_117 | array | boolean | null | number | object | string |
| line_118 | array | boolean | null | number | object | string |
| line_120 | array | boolean | null | number | object | string |
| line_130 | array | boolean | null | number | object | string |
| line_140 | number |
| line_1B | number |
| line_210 | number |
| line_220 | number |
| line_230 | number |
| line_240 | number |
| line_250 | number |
| line_260 | number |
| line_270 | number |
| line_310 | number |
| line_320 | number |
| line_330 | number |
| line_340 | number |
| line_350 | number |
| line_360 | number |
| line_370 | number |
| line_380 | number |
| line_390 | number |
| line_400 | number |
| missing_required | array |
| part2Rows | array |
| part2_allocation_total | number |
| part4_exempt | boolean |
| part4_scope_held | boolean |
| provisional | boolean |
| ready | boolean |
| s3_amount_2F_part_iv_reduction_connected_30 | number |
| s3_amount_2I_eligible_reduction_10 | number |
| s3_line_320_total_part_iv_reduction | number |
| short_year_proration_applied | boolean |
| t2_amount_T_part_iv_reduction_non_elig_non_conn | number |
| t2_line_716_part_iv1_tax | number |
| t2_line_724_part_vi1_tax | number |
| warnings[].box | array | boolean | null | number | object | string |
| warnings[].citation.applies_to_boxes[] | string |
| warnings[].citation.cra_text_verbatim | string |
| warnings[].citation.form_id | string |
| warnings[].citation.form_revision | string |
| warnings[].citation.gate_id | string |
| warnings[].citation.rule | string |
| warnings[].citation.source | string |
| warnings[].citation.source_url | string |
| warnings[].citation.verified_at | string |
| warnings[].gate_id | string |
| warnings[].message | string |
| warnings[].severity | string |
| s191_2_1ElectionByClass | object |
| line_210_pre_proration | number |