schedule34

T2 Corporation Income Tax Return

Kind
batch
Supported tax years
2014 and later
Strict profile
s34_2026_exact_prescribed_form_v1
Payload schema version
2.0.0
Dependencies (run automatically)
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": [
    "schedule34"
  ],
  "inputs": {
    "taxYear": 2026,
    "fiscalStart": "2026-01-01",
    "fiscalEnd": "2026-12-31",
    "t2Jacket": {
      "applicability": {
        "associatedCCPC": false
      }
    },
    "wasAssociatedInPrecedingYear": false,
    "schedule34": {
      "isFinancialInstitution": "Yes",
      "isInsuranceCorporation": "No",
      "isAuthorizedForeignBank": "No",
      "residentAtAnyTime": "Yes",
      "lines": {
        "201": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "202": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "203": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "204": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "205": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "206": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "221": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "222": {
          "amount": 0,
          "source": "reviewed trial balance"
        },
        "223": {
          "amount": 0,
          "source": "reviewed trial balance"
        }
      },
      "investmentReviewComplete": "Yes",
      "investmentRows": [],
      "tangibleAssetReviewComplete": "Yes",
      "tangibleAssetRows": [],
      "partnershipReviewComplete": "Yes",
      "partnershipRows": [],
      "canadianAssetsBeforeInvestmentAllowance": 1,
      "totalAssetsBeforeInvestmentAllowance": 1
    }
  }
}

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.

Input cells for schedule34
CellTypesRequired
fiscalEndThe last day of the taxation year in ISO YYYY-MM-DD form, which bounds every disposition date. Send it with fiscalStart and daysInYear: the three are the canonical taxation-period trio, and all three are mandatory whenever the request reaches Part I through its dependency closure. Strict YYYY-MM-DD, and not before fiscalStart.null | stringstrict
fiscalStartThe first day of the taxation year (ISO YYYY-MM-DD). With fiscalEnd and daysInYear it is the canonical taxation-period trio, and all three are mandatory whenever the request reaches Part I through its dependency closure — the request is refused before any computation when one is missing. The bounds also drive Schedule 8's Reg 1100(3) short-year CCA proration and the Reg 1104(3.5)(b) immediate-expensing limit proration.null | stringstrict
functionalCurrencyContextThe functional-currency election sidecar for the taxation year, used to restate statutory dollar thresholds under ITA s.261(5)(b). Send it only for a functional-currency filer; it carries reportingCurrency, periodStart, a firstDayRate object with rate, spotRateSource and firstDayDate, and optional statutoryThresholdRoundingOverrides.null | object
schedule34null | object
schedule34.canadianAssetsBeforeInvestmentAllowanceintegerstrict
schedule34.investmentReviewCompletestringstrict
schedule34.investmentRows[]boolean | null | number | stringstrict
schedule34.isAuthorizedForeignBankstringstrict
schedule34.isFinancialInstitutionstringstrict
schedule34.isInsuranceCorporationstringstrict
schedule34.lines.201.amountintegerstrict
schedule34.lines.201.sourcestringstrict
schedule34.lines.202.amountintegerstrict
schedule34.lines.202.sourcestringstrict
schedule34.lines.203.amountintegerstrict
schedule34.lines.203.sourcestringstrict
schedule34.lines.204.amountintegerstrict
schedule34.lines.204.sourcestringstrict
schedule34.lines.205.amountintegerstrict
schedule34.lines.205.sourcestringstrict
schedule34.lines.206.amountintegerstrict
schedule34.lines.206.sourcestringstrict
schedule34.lines.221.amountintegerstrict
schedule34.lines.221.sourcestringstrict
schedule34.lines.222.amountintegerstrict
schedule34.lines.222.sourcestringstrict
schedule34.lines.223.amountintegerstrict
schedule34.lines.223.sourcestringstrict
schedule34.partnershipReviewCompletestringstrict
schedule34.partnershipRows[]boolean | null | number | stringstrict
schedule34.residentAtAnyTimestringstrict
schedule34.tangibleAssetReviewCompletestringstrict
schedule34.tangibleAssetRows[]boolean | null | number | stringstrict
schedule34.totalAssetsBeforeInvestmentAllowanceintegerstrict
t2Jacket.applicability.associatedCCPCbooleanstrict
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.number | stringalways
wasAssociatedInPrecedingYearbooleanstrict
Strict profile accepted values (33 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.

Strict profile accepted values for schedule34
CellAccepted values
fiscalEnddate (YYYY-MM-DD); 10 to 10 characters
fiscalStartdate (YYYY-MM-DD); 10 to 10 characters
schedule34.canadianAssetsBeforeInvestmentAllowance-1000000000000000 to 1000000000000000
schedule34.investmentReviewComplete0 to 20000 characters
schedule34.investmentRows[]-1000000000000000 to 1000000000000000; 0 to 20000 characters
schedule34.isAuthorizedForeignBank0 to 20000 characters
schedule34.isFinancialInstitution0 to 20000 characters
schedule34.isInsuranceCorporation0 to 20000 characters
schedule34.lines.201.amount-1000000000000000 to 1000000000000000
schedule34.lines.201.source0 to 20000 characters
schedule34.lines.202.amount-1000000000000000 to 1000000000000000
schedule34.lines.202.source0 to 20000 characters
schedule34.lines.203.amount-1000000000000000 to 1000000000000000
schedule34.lines.203.source0 to 20000 characters
schedule34.lines.204.amount-1000000000000000 to 1000000000000000
schedule34.lines.204.source0 to 20000 characters
schedule34.lines.205.amount-1000000000000000 to 1000000000000000
schedule34.lines.205.source0 to 20000 characters
schedule34.lines.206.amount-1000000000000000 to 1000000000000000
schedule34.lines.206.source0 to 20000 characters
schedule34.lines.221.amount-1000000000000000 to 1000000000000000
schedule34.lines.221.source0 to 20000 characters
schedule34.lines.222.amount-1000000000000000 to 1000000000000000
schedule34.lines.222.source0 to 20000 characters
schedule34.lines.223.amount-1000000000000000 to 1000000000000000
schedule34.lines.223.source0 to 20000 characters
schedule34.partnershipReviewComplete0 to 20000 characters
schedule34.partnershipRows[]-1000000000000000 to 1000000000000000; 0 to 20000 characters
schedule34.residentAtAnyTime0 to 20000 characters
schedule34.tangibleAssetReviewComplete0 to 20000 characters
schedule34.tangibleAssetRows[]-1000000000000000 to 1000000000000000; 0 to 20000 characters
schedule34.totalAssetsBeforeInvestmentAllowance-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 (95)

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

Output cells for schedule34
CellTypes
activeTCECLinestring
audit.authoritystring
audit.capitalBranchstring
audit.investmentRowsarray
audit.residenceFactSuppliedboolean
authoritativeForPriorYearGrindsboolean
coverageStatusstring
eligibleForPriorYearGrindInputboolean
filingProjectionSupportedboolean
fiscalEndnull | string
fiscalStartnull | string
form.amountAnumber
form.amountBnumber
form.amountCnumber
form.amountDnumber
form.amountEnumber
form.amountFnumber | string
form.amountGnumber | string
form.amountHnumber | string
form.lines.201number
form.lines.202number
form.lines.203number
form.lines.204number
form.lines.205number
form.lines.206number
form.lines.221number
form.lines.222number
form.lines.223number
form.lines.290number
form.lines.301string
form.lines.302string
form.lines.390string
form.lines.401number
form.lines.404number
form.lines.415number | string
form.lines.490number
form.lines.500number
form.lines.511number
form.lines.512number
form.lines.611number
form.lines.612number
form.lines.650number
form.lines.690number
grindTCECnumber
line_415_sbd_factorarray | boolean | null | number | object | string
lines.201number
lines.202number
lines.203number
lines.204number
lines.205number
lines.206number
lines.221number
lines.222number
lines.223number
lines.290number
lines.401number
lines.404number
lines.415array | boolean | null | number | object | string
lines.490number
lines.500number
lines.511number
lines.512number
lines.611number
lines.612number
lines.650number
lines.690number
lines.Anumber
lines.Bnumber
missing_requiredarray
part5Applicabilitystring
part5CurrentYearTCECReconciledarray | boolean | null | number | object | string
part5Excessarray | boolean | null | number | object | string
part5Floorarray | boolean | null | number | object | string
provisionalboolean
readyboolean
residenceFactSuppliedboolean
reviewedCurrentYearTCECarray | boolean | null | number | object | string
schedulestring
sourceSchedulestring
taxYearinteger
tcecnumber
tcecBranchFactSuppliedboolean
tcecCalculationCompleteboolean
filingPropositions[].schemaVersioninteger
filingPropositions[].propositionIdstring
filingPropositions[].statestring
filingPropositions[].filingDispositionstring
filingPropositions[].targets[]string
filingPropositions[].evidence[]string
warnings[].codestring
warnings[].fieldstring
warnings[].messagestring
warnings[].severitystring
currentYearAssociatedboolean
wasAssociatedInPrecedingYearboolean
Filemark | schedule34 cells