division_c
Filemark T2 batch computation internal aggregate
- Kind
- batch
- Supported tax years
- —
- Strict profile
- division_c_exact_2025_default_branch_v1
- Payload schema version
- 8.0.0
- Dependencies (run automatically)
- schedule1, schedule2, schedule3, schedule4, schedule43
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": [
"division_c"
],
"inputs": {
"schedule1": {},
"taxYear": 2025,
"fiscalStart": "2025-01-01",
"fiscalEnd": "2025-12-31",
"isCCPC": true,
"daysInYear": 365
}
}Input cells (9)
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 |
|---|---|---|
| daysInYearInclusive day count of the taxation year. It must equal the fiscalStart-to-fiscalEnd span, counting both end days, so a leap year states 366. Required for the same reason as fiscalStart; the count reconciles the bounds and never constructs them. | integer | strict |
| division_c.divisionBIncome | number | |
| division_c.rawTaxableIncome | number | |
| division_c.taxableIncome | number | |
| 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. | string | strict |
| 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. | string | strict |
| isCCPCThe corporation was a Canadian-controlled private corporation (ITA s.125(7) definition) throughout the taxation year. | boolean | |
| schedule1 | object | 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. | number | string | always |
Strict profile accepted values (4 of 9 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 |
|---|---|
| daysInYear | 1 to 1000000000000000 |
| fiscalEnd | date (YYYY-MM-DD); 10 to 10 characters |
| fiscalStart | date (YYYY-MM-DD); 10 to 10 characters |
| taxYear | matches ^\s*(?:1[0-9]{3}|2(?:0(?:[0-1][0-9]{1}|2[0-7])))\s*$; 1000 to 2027 |
Output cells (114)
Paths are relative to this target’s result object in the response.
| Cell | Types |
|---|---|
| deductions.line340_creditUnionAllocation | number |
| deductions.line352_nqSecurityEmployerDeduction | number |
| deductions.line355_section110_5Additions | number |
| dividendDeductions.line311_s112 | number |
| dividendDeductions.line313_partVI1 | number |
| dividendDeductions.line315_prospector | number |
| dividendDeductions.line320_subtotal | number |
| divisionBIncome | number |
| donationDeductions.line314_ecologicalGifts | number |
| donationDeductions.line315_medicineGifts | number |
| donationDeductions.line325_charitable | number |
| donationDeductions.line335_culturalGifts | number |
| donationDeductions.line340_subtotal | number |
| excessDeductions | number |
| lossDeductions.line350_losses | number |
| provisional | boolean |
| rawTaxableIncome | number |
| taxableIncome | number |
| warnings[].accountBalanceThe dollar amount the finding is about. Null where the engine refuses to echo a malformed or non-finite value back, and the caller's own unparsed string where the finding echoes the account balance as supplied. | null | number | string |
| warnings[].accountCodeThe account's code as supplied, or the Schedule 1 pseudo-code the engine uses for a finding that belongs to no account row ("S1", "S3", "S4-P4"). | null | string |
| warnings[].accountId | array | boolean | null | number | object | string |
| warnings[].accountNameThe account's name as supplied, or the label the engine gives a finding that belongs to no account row. | null | string |
| warnings[].actual | number |
| warnings[].citation.applies_to_boxes[] | string |
| warnings[].citation.cra_text_verbatim | string |
| warnings[].citation.display | string |
| warnings[].citation.form_id | string |
| warnings[].citation.form_revision | string |
| warnings[].citation.gate_id | string |
| warnings[].citation.kind | string |
| warnings[].citation.rule | string |
| warnings[].citation.section | string |
| warnings[].citation.source | string |
| warnings[].citation.source_url | string |
| warnings[].citation.verified_at | string |
| warnings[].codeThe finding's machine-readable code. Optional: Schedule 1's account-scoped notices are identified by 'kind' alone, and only the batch dependency-hold disclosure carries a code. | string |
| warnings[].expected | array | boolean | null | number | object | string |
| warnings[].key | string |
| warnings[].kindThe finding's family: classification, coverage, cross_schedule, form_projection, formula, provenance, reconciliation, routing, validation, workpaper, or dependency_hold. | string |
| warnings[].reason | string |
| warnings[].severityThe finding's severity. Optional for the same reason as 'code'. | string |
| warnings[].sourceThe dependency schedule that raised this finding. | string |
| warnings[].templateIdThe workpaper template or classification rule the account's classification names, on the routing notices that name one. Null when the classification states neither. | null | string |
| warnings[].messageThe same preparer sentence as 'reason'. Optional: not every Schedule 1 notice states both. | string |
| warnings[].route | null | string |
| warnings[].amount | number |
| warnings[].fieldThe request path of the cell the finding is about, in the wire shape the request itself used. The two identity notices publish it because a row that states no id can be addressed no other way: an account row by its ordinal and id, and a workpaper by its ordinal and id when the request sent a list, or by its workpaper key and id when it sent the mapping keyed by workpaper id. The balance and posted-adjustment validation notices publish the cell they could not read, 'accounts.<accountId>.currentYearBalance' or 'combinedAdjustments.<accountId>'. Absent on every notice that names its subject by account or workpaper id instead. | string |
| warnings[].lineThe Schedule 1 line whose amount a canonical producer replaced, on the cross-schedule finding that names the replacement. | string |
| warnings[]A schedule1 finding re-published verbatim by Division C with `source` naming the schedule that raised it. Division C propagates its dependency schedules' findings so the provisional flag and the blocking reasons travel with the taxable-income result. | object |
| warnings[].controlledAffiliateCountThe number of box 300 code 1 selections Schedule 25 reports, on the ITA 91(1) foreign accrual property income finding. | integer |
| warnings[].workpaperIdThe workpaper the finding is about, on the workpaper-scoped notices that name one. Null when the workpaper states no id: that is the whole subject of the workpaper-identity notice, which addresses it by ordinal in 'field' instead. | null | string |
| warnings[].gifiCodes[] | string |
| warnings[].ownerThe schedule that owns the replaced Schedule 1 line, on the cross-schedule replacement finding. | string |
| warnings[].replacedTotalThe account-derived total the canonical producer's amount replaced. | number |
| warnings[].producerKeyThe canonical producer whose amount replaced the account-derived one, on the cross-schedule replacement finding. | string |
| warnings[].schedule1LineThe Schedule 1 line the finding is about. Null where the classification or the registry names none, which is itself the subject of several of these findings. | null | string |
| warnings[].sectionThe module that emitted the disclosure. | string |
| warnings[].type | string |
| warnings[].yearOfOrigin | integer | null | string |
| warnings[].adjustmentAmountThe dollar amount the finding is about, on the routing and slip-reconciliation notices that name one. Absent on every notice that does not. | number |
| warnings[].coveredByPostedAjeTrue on the reconciliation finding raised when a posted adjusting entry already moved the accounts a GL-built workpaper measures, so letting both amounts post would reconcile the same item twice. | boolean |
| warnings[].postedAjeAccountIds[] | string |
| warnings[].inferredCategoryThe Schedule 1 category the engine inferred for an amount whose classification named no line. | string |
| warnings[].itaReferences[] | string |
| warnings[].taxTreatmentThe tax treatment the classification states. Null when it states none. | null | string |
| warnings[].competingS1Lines[] | string |
| warnings[].competingTemplateIds[] | string |
| warnings[].computedDirectionThe addition/deduction direction the workpaper or classification computed, on the routing findings that refuse it against the registered direction of the line. | null | string |
| warnings[].pairedLineThe opposite-direction Schedule 1 line registered for the same concept, when one exists. Null when the registry pairs none. | null | string |
| warnings[].pairedLineFeedsScheduleThe schedule the paired line is printed as sourced from, which is why the amount cannot simply be re-anchored there. Null when the registry pairs no line. | null | string |
| warnings[].registeredDirectionThe direction the Schedule 1 line registry records for the line the amount was routed to. Null when the line is not in the registry. | null | string |
| warnings[].receiverThe canonical receiver that must carry this concept's opposite-direction amount, on the canonical-receiver refusal. | string |
| warnings[].conditionalOnThe statutory fact a conditional classification turns on and that the return has not resolved. Nothing is posted while it is open. | string |
| warnings[].conflictingLines[] | string |
| warnings[].incomeAmountCountHow many foreign accrual income amounts share the affiliate class the prior-year claim was recorded against. | integer |
| warnings[].incomeAmountIdThe foreign accrual income amount the finding is about, as the engine keys it. | string |
| warnings[].lineDefaultTaxThe default tax treatment the chosen Schedule 1 line registers. Null when the line registers none, or when no line was chosen. | null | string |
| warnings[].treatmentThe classification's Schedule 1 treatment verdict. Null when the classification states none. | null | string |
| warnings[].unreadableEntryCountHow many foreign accrual ledger entries could not be read, on the coverage finding that refuses to treat them as absent. | integer |
| warnings[].statusThe workpaper's stated adjustment status, on the formula findings that refuse an adjustment the workpaper did not compute cleanly. Null when the workpaper states none. | null | string |
| warnings[].unfundedAccountIds[] | string |
| warnings[].taxYearThe taxation year whose rate tables are unverified. | integer |
| warnings[].acceptedByClaim | object |
| warnings[].requestedByClaim | object |
| warnings[].payerName | string |
| warnings[].rowIndex | integer | null |
| warnings[].payerYearEnd | null | string |
| warnings[].rowIndices[] | integer | null |
| warnings[].notesWhat the rate manifest records against the year, including what is still outstanding before the year can be verified. | string |
| warnings[].unappliedByClaim | object |
| warnings[].businessId | string |
| warnings[].originPools[].amount | number |
| warnings[].originPools[].type | string |
| warnings[].originPools[].yearOfOrigin | integer |
| warnings[].claims[].amountAccepted | null | number |
| warnings[].claims[].amountRequested | null | number |
| warnings[].claims[].lossType | null | string |
| warnings[].claims[].reason | null | string |
| warnings[].claims[].targetYear | integer | null |
| warnings[].claims[].yearOfOrigin | integer | null |
| warnings[].fields[] | string |
| warnings[].higherPriorityTypes[] | string |
| warnings[].poolId | null | string |
| warnings[].poolIds[] | string |
| warnings[].subsidiaryLossYearEnd | null | string |
| warnings[].subsidiaryYearOfOrigin | integer |
| warnings[].taxationYearsElapsed | integer |
| warnings[].accountNumber | string |
| warnings[].pool.remainingBalance | number |
| warnings[].pool.type | string |
| warnings[].pool.yearOfOrigin | integer |
| warnings[].olderYears[] | integer | null | string |
| warnings[].targetYear | integer | null |
| warnings[].yearOfOriginBeforeElection | integer | null |