sbd

Filemark T2 batch computation internal aggregate

Kind
batch
Supported tax years
Strict profile
sbd_exact_2025_default_branch_v1
Payload schema version
8.0.0
Dependencies (run automatically)
division_c, schedule21, schedule23, schedule28, schedule33, schedule34, schedule35, schedule49, schedule5, schedule7, schedule9

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": [
    "sbd"
  ],
  "inputs": {
    "schedule1": {},
    "taxYear": 2025,
    "fiscalStart": "2025-01-01",
    "fiscalEnd": "2025-12-31",
    "isCCPC": true,
    "daysInYear": 365
  }
}

Input cells (32)

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 sbd
CellTypesRequired
associatedGroup.allocated_limitintegerstrict
associatedGroup.filer_bn_rootstringstrict
associatedGroup.matched_business_numberstringstrict
associatedGroup.sourcestringstrict
currentYearTCECTaxable capital employed in Canada for the current taxation year. It must be finite and non-negative.null | number | string
currentYearTCECMetaProvenance for currentYearTCEC. When sent, all four members must be present and correct: basis is current_tax_year, asOf is the current taxation-year end, source names where the figure came from, and confirmed is true. Anything less leaves the amount an unattested assertion.null | object
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.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.null | 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.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
isCCPCThe corporation was a Canadian-controlled private corporation (ITA s.125(7) definition) throughout the taxation year.boolean
priorYearGroupTCECTaxable capital employed in Canada for the preceding period required by ITA s.125(5.1)(a). The accompanying metadata basis decides whether it is the corporation's own preceding taxation year or the associated group's preceding calendar year. An explicit zero is valid; omitting it fails closed with a full capital grind.null | number | string
priorYearGroupTCECMetaProvenance for priorYearGroupTCEC. When sent, basis is standalone_preceding_tax_year or associated_group_preceding_calendar_year, asOf is the exact period end that basis implies, source names where the figure came from, and confirmed is true.null | object
sbd.aaiiGrindobject
sbd.abiS7 Part 6 amount DD — income eligible for the SBD (s.125(1)(a)).number
sbd.baseBusinessLimitnumber
sbd.eligibilityReasonnull | string
sbd.finalBusinessLimitnumber
sbd.isCcpcCorporation-type fact; never infer this from SBD eligibility.boolean
sbd.isEligibleboolean
sbd.isPSBboolean
sbd.provisionalboolean
sbd.s89_11ElectionActivePresent on the CCPC branch when the current-year election fact is known.boolean
sbd.sbdnumber
sbd.sbdEligibleIncomenumber
sbd.sbdRatenumber
sbd.shortYearProrationnull | number
sbd.taxableIncomenumber
sbd.warningsarray
schedule1objectstrict
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
wasAssociatedInPrecedingYearWhether the corporation was associated with another corporation in its preceding taxation year, selecting which ITA s.125(5.1)(a) period the taxable-capital figure belongs to. Send null deliberately when unknown: the engine then blocks rather than inferring a period.null | boolean
Strict profile accepted values (9 of 32 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 sbd
CellAccepted values
associatedGroup.allocated_limit-1000000000000000 to 1000000000000000
associatedGroup.filer_bn_root0 to 20000 characters
associatedGroup.matched_business_number0 to 20000 characters
associatedGroup.source0 to 20000 characters
daysInYear1 to 1000000000000000
fiscalEnddate (YYYY-MM-DD); 10 to 10 characters
fiscalStartdate (YYYY-MM-DD); 10 to 10 characters
sbd.eligibilityReasonone of "s89_11_election"
taxYearmatches ^\s*(?:1[0-9]{3}|2(?:0(?:[0-1][0-9]{1}|2[0-7])))\s*$; 1000 to 2027

Output cells (82)

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

Output cells for sbd
CellTypes
aaiiGrind.aaiinumber
aaiiGrind.grindedLimitnumber
aaiiGrind.reductionnumber
abinumber
baseBusinessLimitnumber
businessLimitAssignednumber
businessLimitAssignmentAppliednumber
businessLimitBeforeAssignmentnumber
businessLimitDeemedNilBy256_2array | boolean | null | number | object | string
businessLimitSourcestring
capitalGrind.authoritativeInputProvidedboolean
capitalGrind.basisModestring
capitalGrind.ceilingnumber
capitalGrind.floornumber
capitalGrind.grindedLimitnumber
capitalGrind.inputMetadata.asOfarray | boolean | null | number | object | string
capitalGrind.inputMetadata.basisarray | boolean | null | number | object | string
capitalGrind.inputMetadata.confirmedboolean
capitalGrind.inputMetadata.expectedAsOfstring
capitalGrind.inputMetadata.expectedBasisstring
capitalGrind.inputMetadata.sourcearray | boolean | null | number | object | string
capitalGrind.inputRequiredboolean
capitalGrind.inputSourcestring
capitalGrind.line415Factorarray | boolean | null | number | object | string
capitalGrind.line415FactorDenominatornull | number
capitalGrind.reductionnumber
capitalGrind.reportedTcecarray | boolean | null | number | object | string
capitalGrind.tcecnumber
capitalGrind.line415FactorCurrencystring
capitalGrind.line415FactorRailstring
eligibilityReasonarray | boolean | null | number | object | string
finalBusinessLimitnumber
hypotheticalSbdEligibleIncomearray | boolean | null | number | object | string
isEligibleboolean
isPSBboolean
matchedSchedule23BusinessNumbernull | string
provisionalboolean
s125_5aFirstYearLimitCaparray | boolean | null | number | object | string
s89_11ElectionActiveboolean
sbdnumber
sbdAssignment.activeRowCountinteger
sbdAssignment.appliedToBusinessLimitnumber
sbdAssignment.businessLimitAssignednumber
sbdAssignment.errorsarray
sbdAssignment.incomePaidClauseBTotalnumber
sbdAssignment.validboolean
sbdAssignment.assigningCorpTaxYearEndstring
sbdEligibleIncomenumber
sbdRatenumber
sbdTaxableIncome405number
shortYearProrationarray | boolean | null | number | object | string
taxableIncomenumber
filingPropositions[].schemaVersioninteger
filingPropositions[].propositionIdstring
filingPropositions[].statestring
filingPropositions[].filingDispositionstring
filingPropositions[].targets[]string
filingPropositions[].evidence[]string
warnings[].codestring
warnings[].messagestring
warnings[].severitystring
warnings[].sourcestring
warnings[].upstreamSourcestring
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
matchedSchedule23Allocationnull | number
associationReconciliation.associatedarray
associationReconciliation.findingsarray
associationReconciliation.reconciledboolean
associationReconciliation.sources.corporate_groupboolean
associationReconciliation.sources.schedule23boolean
associationReconciliation.sources.schedule9boolean
s125_5aFirstYearLimitIsPreShortYearProrationarray | boolean | null | number | object | string
isCcpcboolean
Filemark | sbd cells