Server definition
- Hash
- sha256:e4f0cc2b5fa5ef320eb1d9387863b7cda80a8d1ff665edc859e28a19d9b58d18
- What it is
- What a remote MCP server returned when asked what it offers: 4 tools
The blob, as servednamed by its sha256
{
"instructions": "ccpcrate resolves the Canadian CCPC corporate rate stack (engine 0.0.1, rules 0.2.7): federal Part I with the SBD and its passive-income / taxable-capital grinds, GRR, refundable Part I, Part IV, ERDTOH / NERDTOH continuity and dividend refund, GRIP, CDA and loss continuity for holdcos, and the provincial layer (Québec CO-771 with the hours test, Ontario / New Brunswick without the passive grind, the other provinces through line 428). Every printed line is rounded half-up to the dollar; the engine never assumes a required input away — read the warnings. Amounts are in dollars. Give groupAaiiPriorYear (line 417) whenever a business limit is claimed, and Québec hours 07a / 07b for the CO-771 layer. Each result has a human-readable summary (text) and the full machine-readable object (structuredContent). ccpcrate_explain and ccpcrate_rules are free; ccpcrate_resolve: Paid: 0.25 USD per call in USDC over x402 (Base); without a payment the call returns the x402 payment requirements.",
"tools": [
{
"description": "Free diagnostic pass over the same input as ccpcrate_resolve: which layers run, the defaults the engine would apply, every warning with its meaning (grind binding, provincial asymmetries, missing inputs), the rule rows in force for the year with sources and verification status, the open verifications, and what the paid computation would return. Contains no computed amounts — the numbers are in ccpcrate_resolve.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"activeBusinessIncome": {
"description": "T2 line 400: income from an active business carried on in Canada",
"minimum": 0,
"type": "number"
},
"aggregateInvestmentIncome": {
"description": "T2 line 440: aggregate investment income (s.129(4))",
"minimum": 0,
"type": "number"
},
"allowableCapitalLosses": {
"description": "Sch 6: allowable capital losses of the year",
"minimum": 0,
"type": "number"
},
"businessLimitAllocated": {
"description": "Business limit allocated to this corporation (Sch 23 line 410 if associated, else the statutory limit). 0 = allocation zero",
"minimum": 0,
"type": "number"
},
"capitalGainsDividends": {
"description": "Capital-gains dividends received (full amount; half to CDA)",
"minimum": 0,
"type": "number"
},
"cdaOpening": {
"description": "Capital dividend account opening balance (returns cda_closing)",
"minimum": 0,
"type": "number"
},
"dividendsPaidEligible": {
"description": "Eligible dividends paid (designated) in the year",
"minimum": 0,
"type": "number"
},
"dividendsPaidNonEligible": {
"description": "Non-eligible taxable dividends paid in the year",
"minimum": 0,
"type": "number"
},
"dividendsPaidOfWhichConnected": {
"description": "How much OF the dividends paid above went to connected corporations — a portion of dividendsPaidEligible + dividendsPaidNonEligible, never an amount on top of them. Raises the cascade warning on the payer side. In a ccpcrate_group call the recipients' own dividendsReceivedConnected amounts govern the 186(1)(b) share; this field is then cross-checked against them",
"minimum": 0,
"type": "number"
},
"dividendsReceivedConnected": {
"description": "Dividends from connected corporations (s.186(4)) — Part IV only through the payer's refund",
"items": {
"properties": {
"amount": {
"description": "Taxable dividend received from the connected corporation",
"minimum": 0,
"type": "number"
},
"cascadeShare": {
"description": "Precomputed share of the payer's refund, when already known (overrides the two fields above)",
"minimum": 0,
"type": "number"
},
"payerDividendRefund": {
"description": "The payer's dividend refund for the year it paid the dividend (s.186(1)(b)); 0 = no refund → no cascade; omitted = unknown → cascade withheld with a warning",
"minimum": 0,
"type": "number"
},
"payerId": {
"description": "Id of the paying corporation when it is a member of the same ccpcrate_group call: its refund and total dividends paid are then taken from its own computation",
"minLength": 1,
"type": "string"
},
"payerTotalDividendsPaid": {
"description": "Total taxable dividends the payer paid that year (denominator of the recipient's share)",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"amount"
],
"type": "object"
},
"type": "array"
},
"dividendsReceivedPortfolioEligible": {
"description": "Eligible taxable dividends from non-connected payers (Part IV → ERDTOH)",
"minimum": 0,
"type": "number"
},
"dividendsReceivedPortfolioNonEligible": {
"description": "Non-eligible taxable dividends from non-connected payers (Part IV → NERDTOH)",
"minimum": 0,
"type": "number"
},
"foreignBusinessTaxCredit": {
"description": "T2 line 636: foreign business income tax credit",
"minimum": 0,
"type": "number"
},
"foreignInvestmentIncome": {
"description": "T2 line 445: foreign investment income",
"minimum": 0,
"type": "number"
},
"foreignNonBusinessTaxCredit": {
"description": "T2 line 632: foreign non-business income tax credit",
"minimum": 0,
"type": "number"
},
"groupAaiiPriorYear": {
"description": "T2 line 417: Σ Sch 7 line 745 of the associated group for taxation years ending in the preceding calendar year. REQUIRED whenever a business limit is claimed",
"minimum": 0,
"type": "number"
},
"lossesByYearOfOrigin": {
"additionalProperties": {
"minimum": 0,
"type": "number"
},
"description": "Sch 4 Part 6: opening balances by year of origin, e.g. {\"2011\": 263564}",
"propertyNames": {
"pattern": "^\\d{4}$",
"type": "string"
},
"type": "object"
},
"netIncomeAccounting": {
"description": "Holdco: net income per financial statements",
"type": "number"
},
"netIncomeForTax": {
"description": "Holdco: net income for tax purposes (Sch 1 result) — overrides the derivation",
"type": "number"
},
"nonCapitalLossesClaimedAgainstPartI": {
"description": "Non-capital losses claimed against Part I income",
"minimum": 0,
"type": "number"
},
"nonCapitalLossesClaimedAgainstPartIV": {
"description": "Non-capital / farm losses claimed against Part IV (s.186(1)(c),(d)) — the loss amount",
"minimum": 0,
"type": "number"
},
"nonCapitalLossesOpening": {
"description": "Sch 4: non-capital loss pool at the start of the year",
"minimum": 0,
"type": "number"
},
"otherPropertyIncome": {
"description": "Holdco: property income other than dividends and capital-gains dividends",
"minimum": 0,
"type": "number"
},
"propertyExpenses": {
"description": "Holdco: deductible property expenses of the year (total)",
"minimum": 0,
"type": "number"
},
"province": {
"description": "Province of the permanent establishment (two-letter code)",
"enum": [
"AB",
"BC",
"MB",
"NB",
"NL",
"NS",
"NT",
"NU",
"ON",
"PE",
"QC",
"SK",
"YT"
],
"type": "string"
},
"provincialProportion": {
"description": "Share of taxable income allocated to the province (Reg. 402). Default 1",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"qc": {
"description": "Québec inputs (CO-771)",
"properties": {
"capitalVerseGroupPriorYear": {
"description": "Capital versé of the associated group, prior year (CO-17 line 426a)",
"minimum": 0,
"type": "number"
},
"hours07aCurrentYear": {
"description": "CO-771 line 07a: remunerated hours, current year (required with 07b for the CO-771 layer)",
"minimum": 0,
"type": "number"
},
"hours07bGroupPriorYear": {
"description": "CO-771 line 07b: remunerated hours, associated group, prior year",
"minimum": 0,
"type": "number"
},
"instalmentsPaid": {
"description": "Acomptes provisionnels paid (CO-17 line 440) — enables the balance lines",
"minimum": 0,
"type": "number"
},
"plafondGroupAllocated": {
"description": "CO-771 plafond allocated to this corporation (defaults to businessLimitAllocated)",
"minimum": 0,
"type": "number"
},
"taxableIncomeQc": {
"description": "CO-17 taxable income when it differs from federal",
"type": "number"
}
},
"type": "object"
},
"rdtohOpening": {
"description": "Opening ERDTOH / NERDTOH in T2 terms. Omitted = 0 with a warning when it matters",
"properties": {
"erdtohLine520": {
"description": "Prior year's closing ERDTOH, T2 line 530 (printed before that year's refund)",
"minimum": 0,
"type": "number"
},
"erdtohRefundPrev": {
"description": "Prior year's dividend refund out of ERDTOH (line 570)",
"minimum": 0,
"type": "number"
},
"nerdtohLine535": {
"description": "Prior year's closing NERDTOH, T2 line 545",
"minimum": 0,
"type": "number"
},
"nerdtohRefundPrev": {
"description": "Prior year's dividend refund out of NERDTOH (line 575)",
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"taxYear": {
"properties": {
"end": {
"description": "Last day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"start": {
"description": "First day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"start",
"end"
],
"type": "object"
},
"taxableCapitalGains": {
"description": "Sch 6: taxable capital gains (the included half)",
"minimum": 0,
"type": "number"
},
"taxableCapitalGroupPriorYear": {
"description": "T2 line 415: taxable capital employed in Canada of the group, prior year. Omit when under 10 M",
"minimum": 0,
"type": "number"
},
"taxableIncome": {
"description": "Part I taxable income (T2 line 360). Omit for a holdco and supply the income lines instead; the engine derives it",
"type": "number"
}
},
"required": [
"taxYear",
"province"
],
"type": "object"
},
"name": "ccpcrate_explain",
"outputSchema": null
},
{
"description": "Compute a whole associated group (s.256) in one call: federal line 417 as the sum of the members' prior-year adjusted investment income, the Schedule 23 allocation of the business limit, and every member's return in payer-before-recipient order so that a connected dividend's Part IV under s.186(1)(b) is filled in from the payer's own refund instead of being asked for. Returns each member's lines plus what the grind costs the group and which member causes it — the case a single-corporation computation cannot show. 0.25 USDC covers the group and its first 2 computed members, then 0.05 per additional member, never more than 1. Members that only contribute line 417 are free.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"groupAaiiPriorYear": {
"description": "Federal line 417 for the group, when the per-member figures are not available. A member's own input.groupAaiiPriorYear still wins",
"minimum": 0,
"type": "number"
},
"members": {
"description": "The associated corporations (s.256). A member with no input still counts toward line 417. Order does not matter — the engine computes payers before recipients",
"examples": [
[
{
"id": "holdco",
"priorYearAaii": 75000
},
{
"id": "opco",
"input": {
"activeBusinessIncome": 500000,
"businessLimitAllocated": 500000,
"province": "ON",
"taxYear": {
"end": "2025-12-31",
"start": "2025-01-01"
},
"taxableIncome": 500000
},
"priorYearAaii": 0
}
],
[
{
"id": "opco",
"input": {
"activeBusinessIncome": 340000,
"aggregateInvestmentIncome": 60000,
"businessLimitAllocated": 400000,
"dividendsPaidNonEligible": 100000,
"dividendsPaidOfWhichConnected": 60000,
"province": "ON",
"taxYear": {
"end": "2025-12-31",
"start": "2025-01-01"
},
"taxableIncome": 400000
},
"priorYearAaii": 55000
},
{
"id": "holdco",
"input": {
"dividendsReceivedConnected": [
{
"amount": 60000,
"payerId": "opco"
}
],
"province": "ON",
"taxYear": {
"end": "2025-12-31",
"start": "2025-01-01"
}
},
"priorYearAaii": 20000
}
]
],
"items": {
"properties": {
"id": {
"description": "Your label for this corporation (any string); connected dividends refer to it by this id",
"minLength": 1,
"type": "string"
},
"input": {
"description": "This member's own taxation year. Omit for a member that only contributes to line 417",
"properties": {
"activeBusinessIncome": {
"description": "T2 line 400: income from an active business carried on in Canada",
"minimum": 0,
"type": "number"
},
"aggregateInvestmentIncome": {
"description": "T2 line 440: aggregate investment income (s.129(4))",
"minimum": 0,
"type": "number"
},
"allowableCapitalLosses": {
"description": "Sch 6: allowable capital losses of the year",
"minimum": 0,
"type": "number"
},
"businessLimitAllocated": {
"description": "Business limit allocated to this corporation (Sch 23 line 410 if associated, else the statutory limit). 0 = allocation zero",
"minimum": 0,
"type": "number"
},
"capitalGainsDividends": {
"description": "Capital-gains dividends received (full amount; half to CDA)",
"minimum": 0,
"type": "number"
},
"cdaOpening": {
"description": "Capital dividend account opening balance (returns cda_closing)",
"minimum": 0,
"type": "number"
},
"dividendsPaidEligible": {
"description": "Eligible dividends paid (designated) in the year",
"minimum": 0,
"type": "number"
},
"dividendsPaidNonEligible": {
"description": "Non-eligible taxable dividends paid in the year",
"minimum": 0,
"type": "number"
},
"dividendsPaidOfWhichConnected": {
"description": "How much OF the dividends paid above went to connected corporations — a portion of dividendsPaidEligible + dividendsPaidNonEligible, never an amount on top of them. Raises the cascade warning on the payer side. In a ccpcrate_group call the recipients' own dividendsReceivedConnected amounts govern the 186(1)(b) share; this field is then cross-checked against them",
"minimum": 0,
"type": "number"
},
"dividendsReceivedConnected": {
"description": "Dividends from connected corporations (s.186(4)) — Part IV only through the payer's refund",
"items": {
"properties": {
"amount": {
"description": "Taxable dividend received from the connected corporation",
"minimum": 0,
"type": "number"
},
"cascadeShare": {
"description": "Precomputed share of the payer's refund, when already known (overrides the two fields above)",
"minimum": 0,
"type": "number"
},
"payerDividendRefund": {
"description": "The payer's dividend refund for the year it paid the dividend (s.186(1)(b)); 0 = no refund → no cascade; omitted = unknown → cascade withheld with a warning",
"minimum": 0,
"type": "number"
},
"payerId": {
"description": "Id of the paying corporation when it is a member of the same ccpcrate_group call: its refund and total dividends paid are then taken from its own computation",
"minLength": 1,
"type": "string"
},
"payerTotalDividendsPaid": {
"description": "Total taxable dividends the payer paid that year (denominator of the recipient's share)",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"amount"
],
"type": "object"
},
"type": "array"
},
"dividendsReceivedPortfolioEligible": {
"description": "Eligible taxable dividends from non-connected payers (Part IV → ERDTOH)",
"minimum": 0,
"type": "number"
},
"dividendsReceivedPortfolioNonEligible": {
"description": "Non-eligible taxable dividends from non-connected payers (Part IV → NERDTOH)",
"minimum": 0,
"type": "number"
},
"foreignBusinessTaxCredit": {
"description": "T2 line 636: foreign business income tax credit",
"minimum": 0,
"type": "number"
},
"foreignInvestmentIncome": {
"description": "T2 line 445: foreign investment income",
"minimum": 0,
"type": "number"
},
"foreignNonBusinessTaxCredit": {
"description": "T2 line 632: foreign non-business income tax credit",
"minimum": 0,
"type": "number"
},
"groupAaiiPriorYear": {
"description": "T2 line 417: Σ Sch 7 line 745 of the associated group for taxation years ending in the preceding calendar year. REQUIRED whenever a business limit is claimed",
"minimum": 0,
"type": "number"
},
"lossesByYearOfOrigin": {
"additionalProperties": {
"minimum": 0,
"type": "number"
},
"description": "Sch 4 Part 6: opening balances by year of origin, e.g. {\"2011\": 263564}",
"propertyNames": {
"pattern": "^\\d{4}$",
"type": "string"
},
"type": "object"
},
"netIncomeAccounting": {
"description": "Holdco: net income per financial statements",
"type": "number"
},
"netIncomeForTax": {
"description": "Holdco: net income for tax purposes (Sch 1 result) — overrides the derivation",
"type": "number"
},
"nonCapitalLossesClaimedAgainstPartI": {
"description": "Non-capital losses claimed against Part I income",
"minimum": 0,
"type": "number"
},
"nonCapitalLossesClaimedAgainstPartIV": {
"description": "Non-capital / farm losses claimed against Part IV (s.186(1)(c),(d)) — the loss amount",
"minimum": 0,
"type": "number"
},
"nonCapitalLossesOpening": {
"description": "Sch 4: non-capital loss pool at the start of the year",
"minimum": 0,
"type": "number"
},
"otherPropertyIncome": {
"description": "Holdco: property income other than dividends and capital-gains dividends",
"minimum": 0,
"type": "number"
},
"propertyExpenses": {
"description": "Holdco: deductible property expenses of the year (total)",
"minimum": 0,
"type": "number"
},
"province": {
"description": "Province of the permanent establishment (two-letter code)",
"enum": [
"AB",
"BC",
"MB",
"NB",
"NL",
"NS",
"NT",
"NU",
"ON",
"PE",
"QC",
"SK",
"YT"
],
"type": "string"
},
"provincialProportion": {
"description": "Share of taxable income allocated to the province (Reg. 402). Default 1",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"qc": {
"description": "Québec inputs (CO-771)",
"properties": {
"capitalVerseGroupPriorYear": {
"description": "Capital versé of the associated group, prior year (CO-17 line 426a)",
"minimum": 0,
"type": "number"
},
"hours07aCurrentYear": {
"description": "CO-771 line 07a: remunerated hours, current year (required with 07b for the CO-771 layer)",
"minimum": 0,
"type": "number"
},
"hours07bGroupPriorYear": {
"description": "CO-771 line 07b: remunerated hours, associated group, prior year",
"minimum": 0,
"type": "number"
},
"instalmentsPaid": {
"description": "Acomptes provisionnels paid (CO-17 line 440) — enables the balance lines",
"minimum": 0,
"type": "number"
},
"plafondGroupAllocated": {
"description": "CO-771 plafond allocated to this corporation (defaults to businessLimitAllocated)",
"minimum": 0,
"type": "number"
},
"taxableIncomeQc": {
"description": "CO-17 taxable income when it differs from federal",
"type": "number"
}
},
"type": "object"
},
"rdtohOpening": {
"description": "Opening ERDTOH / NERDTOH in T2 terms. Omitted = 0 with a warning when it matters",
"properties": {
"erdtohLine520": {
"description": "Prior year's closing ERDTOH, T2 line 530 (printed before that year's refund)",
"minimum": 0,
"type": "number"
},
"erdtohRefundPrev": {
"description": "Prior year's dividend refund out of ERDTOH (line 570)",
"minimum": 0,
"type": "number"
},
"nerdtohLine535": {
"description": "Prior year's closing NERDTOH, T2 line 545",
"minimum": 0,
"type": "number"
},
"nerdtohRefundPrev": {
"description": "Prior year's dividend refund out of NERDTOH (line 575)",
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"taxYear": {
"properties": {
"end": {
"description": "Last day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"start": {
"description": "First day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"start",
"end"
],
"type": "object"
},
"taxableCapitalGains": {
"description": "Sch 6: taxable capital gains (the included half)",
"minimum": 0,
"type": "number"
},
"taxableCapitalGroupPriorYear": {
"description": "T2 line 415: taxable capital employed in Canada of the group, prior year. Omit when under 10 M",
"minimum": 0,
"type": "number"
},
"taxableIncome": {
"description": "Part I taxable income (T2 line 360). Omit for a holdco and supply the income lines instead; the engine derives it",
"type": "number"
}
},
"required": [
"taxYear",
"province"
],
"type": "object"
},
"priorYearAaii": {
"description": "This member's adjusted aggregate investment income (Sch 7 line 745) for its taxation year ending in the preceding calendar year — its contribution to every member's line 417",
"minimum": 0,
"type": "number"
}
},
"required": [
"id"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"taxYear": {
"description": "The group's taxation year, used to read the statutory business limit when no member computes",
"properties": {
"end": {
"description": "Last day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"start": {
"description": "First day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"start",
"end"
],
"type": "object"
}
},
"required": [
"members"
],
"type": "object"
},
"name": "ccpcrate_group",
"outputSchema": null
},
{
"description": "Compute the federal Part I / Part IV / refundable / RDTOH / dividend-refund lines and the provincial layer for one CCPC and one taxation year. Returns a readable summary plus the structured result: lines (rounded, as printed), unrounded audit values, facts, warnings, layers, balances carried forward, the inputs still missing, engine and rules versions and a request hash. Deductions are negative, taxes positive. A missing required input is an error, not a default. Paid: 0.25 USD per call in USDC over x402 (Base); without a payment the call returns the x402 payment requirements.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"activeBusinessIncome": {
"description": "T2 line 400: income from an active business carried on in Canada",
"minimum": 0,
"type": "number"
},
"aggregateInvestmentIncome": {
"description": "T2 line 440: aggregate investment income (s.129(4))",
"minimum": 0,
"type": "number"
},
"allowableCapitalLosses": {
"description": "Sch 6: allowable capital losses of the year",
"minimum": 0,
"type": "number"
},
"businessLimitAllocated": {
"description": "Business limit allocated to this corporation (Sch 23 line 410 if associated, else the statutory limit). 0 = allocation zero",
"minimum": 0,
"type": "number"
},
"capitalGainsDividends": {
"description": "Capital-gains dividends received (full amount; half to CDA)",
"minimum": 0,
"type": "number"
},
"cdaOpening": {
"description": "Capital dividend account opening balance (returns cda_closing)",
"minimum": 0,
"type": "number"
},
"dividendsPaidEligible": {
"description": "Eligible dividends paid (designated) in the year",
"minimum": 0,
"type": "number"
},
"dividendsPaidNonEligible": {
"description": "Non-eligible taxable dividends paid in the year",
"minimum": 0,
"type": "number"
},
"dividendsPaidOfWhichConnected": {
"description": "How much OF the dividends paid above went to connected corporations — a portion of dividendsPaidEligible + dividendsPaidNonEligible, never an amount on top of them. Raises the cascade warning on the payer side. In a ccpcrate_group call the recipients' own dividendsReceivedConnected amounts govern the 186(1)(b) share; this field is then cross-checked against them",
"minimum": 0,
"type": "number"
},
"dividendsReceivedConnected": {
"description": "Dividends from connected corporations (s.186(4)) — Part IV only through the payer's refund",
"items": {
"properties": {
"amount": {
"description": "Taxable dividend received from the connected corporation",
"minimum": 0,
"type": "number"
},
"cascadeShare": {
"description": "Precomputed share of the payer's refund, when already known (overrides the two fields above)",
"minimum": 0,
"type": "number"
},
"payerDividendRefund": {
"description": "The payer's dividend refund for the year it paid the dividend (s.186(1)(b)); 0 = no refund → no cascade; omitted = unknown → cascade withheld with a warning",
"minimum": 0,
"type": "number"
},
"payerId": {
"description": "Id of the paying corporation when it is a member of the same ccpcrate_group call: its refund and total dividends paid are then taken from its own computation",
"minLength": 1,
"type": "string"
},
"payerTotalDividendsPaid": {
"description": "Total taxable dividends the payer paid that year (denominator of the recipient's share)",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"amount"
],
"type": "object"
},
"type": "array"
},
"dividendsReceivedPortfolioEligible": {
"description": "Eligible taxable dividends from non-connected payers (Part IV → ERDTOH)",
"minimum": 0,
"type": "number"
},
"dividendsReceivedPortfolioNonEligible": {
"description": "Non-eligible taxable dividends from non-connected payers (Part IV → NERDTOH)",
"minimum": 0,
"type": "number"
},
"foreignBusinessTaxCredit": {
"description": "T2 line 636: foreign business income tax credit",
"minimum": 0,
"type": "number"
},
"foreignInvestmentIncome": {
"description": "T2 line 445: foreign investment income",
"minimum": 0,
"type": "number"
},
"foreignNonBusinessTaxCredit": {
"description": "T2 line 632: foreign non-business income tax credit",
"minimum": 0,
"type": "number"
},
"groupAaiiPriorYear": {
"description": "T2 line 417: Σ Sch 7 line 745 of the associated group for taxation years ending in the preceding calendar year. REQUIRED whenever a business limit is claimed",
"minimum": 0,
"type": "number"
},
"lossesByYearOfOrigin": {
"additionalProperties": {
"minimum": 0,
"type": "number"
},
"description": "Sch 4 Part 6: opening balances by year of origin, e.g. {\"2011\": 263564}",
"propertyNames": {
"pattern": "^\\d{4}$",
"type": "string"
},
"type": "object"
},
"netIncomeAccounting": {
"description": "Holdco: net income per financial statements",
"type": "number"
},
"netIncomeForTax": {
"description": "Holdco: net income for tax purposes (Sch 1 result) — overrides the derivation",
"type": "number"
},
"nonCapitalLossesClaimedAgainstPartI": {
"description": "Non-capital losses claimed against Part I income",
"minimum": 0,
"type": "number"
},
"nonCapitalLossesClaimedAgainstPartIV": {
"description": "Non-capital / farm losses claimed against Part IV (s.186(1)(c),(d)) — the loss amount",
"minimum": 0,
"type": "number"
},
"nonCapitalLossesOpening": {
"description": "Sch 4: non-capital loss pool at the start of the year",
"minimum": 0,
"type": "number"
},
"otherPropertyIncome": {
"description": "Holdco: property income other than dividends and capital-gains dividends",
"minimum": 0,
"type": "number"
},
"propertyExpenses": {
"description": "Holdco: deductible property expenses of the year (total)",
"minimum": 0,
"type": "number"
},
"province": {
"description": "Province of the permanent establishment (two-letter code)",
"enum": [
"AB",
"BC",
"MB",
"NB",
"NL",
"NS",
"NT",
"NU",
"ON",
"PE",
"QC",
"SK",
"YT"
],
"type": "string"
},
"provincialProportion": {
"description": "Share of taxable income allocated to the province (Reg. 402). Default 1",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"qc": {
"description": "Québec inputs (CO-771)",
"properties": {
"capitalVerseGroupPriorYear": {
"description": "Capital versé of the associated group, prior year (CO-17 line 426a)",
"minimum": 0,
"type": "number"
},
"hours07aCurrentYear": {
"description": "CO-771 line 07a: remunerated hours, current year (required with 07b for the CO-771 layer)",
"minimum": 0,
"type": "number"
},
"hours07bGroupPriorYear": {
"description": "CO-771 line 07b: remunerated hours, associated group, prior year",
"minimum": 0,
"type": "number"
},
"instalmentsPaid": {
"description": "Acomptes provisionnels paid (CO-17 line 440) — enables the balance lines",
"minimum": 0,
"type": "number"
},
"plafondGroupAllocated": {
"description": "CO-771 plafond allocated to this corporation (defaults to businessLimitAllocated)",
"minimum": 0,
"type": "number"
},
"taxableIncomeQc": {
"description": "CO-17 taxable income when it differs from federal",
"type": "number"
}
},
"type": "object"
},
"rdtohOpening": {
"description": "Opening ERDTOH / NERDTOH in T2 terms. Omitted = 0 with a warning when it matters",
"properties": {
"erdtohLine520": {
"description": "Prior year's closing ERDTOH, T2 line 530 (printed before that year's refund)",
"minimum": 0,
"type": "number"
},
"erdtohRefundPrev": {
"description": "Prior year's dividend refund out of ERDTOH (line 570)",
"minimum": 0,
"type": "number"
},
"nerdtohLine535": {
"description": "Prior year's closing NERDTOH, T2 line 545",
"minimum": 0,
"type": "number"
},
"nerdtohRefundPrev": {
"description": "Prior year's dividend refund out of NERDTOH (line 575)",
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"taxYear": {
"properties": {
"end": {
"description": "Last day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"start": {
"description": "First day of the taxation year",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"start",
"end"
],
"type": "object"
},
"taxableCapitalGains": {
"description": "Sch 6: taxable capital gains (the included half)",
"minimum": 0,
"type": "number"
},
"taxableCapitalGroupPriorYear": {
"description": "T2 line 415: taxable capital employed in Canada of the group, prior year. Omit when under 10 M",
"minimum": 0,
"type": "number"
},
"taxableIncome": {
"description": "Part I taxable income (T2 line 360). Omit for a holdco and supply the income lines instead; the engine derives it",
"type": "number"
}
},
"required": [
"taxYear",
"province"
],
"type": "object"
},
"name": "ccpcrate_resolve",
"outputSchema": null
},
{
"description": "The statutory rates and parameters the engine uses (14 jurisdictions, effective dates, application modes, sources, verification status), filterable by jurisdiction, key and date. Free.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"date": {
"description": "Only the rows in force on this date (default: every row, all periods)",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"jurisdiction": {
"description": "Jurisdiction; omit for all",
"enum": [
"FED",
"AB",
"BC",
"MB",
"NB",
"NL",
"NS",
"NT",
"NU",
"ON",
"PE",
"QC",
"SK",
"YT"
],
"type": "string"
},
"key": {
"description": "Row key (e.g. sbd_rate, business_limit, passive_income_grind); omit for all keys",
"type": "string"
}
},
"type": "object"
},
"name": "ccpcrate_rules",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:e4f0cc2b5fa5ef320eb1d9387863b7cda80a8d1ff665edc859e28a19d9b58d18 | sha256sum