debt-forgiveness

Filemark T2 rollover and reorganization preview

Kind
rollover
Supported tax years
Strict profile
rollover_preview_exact_v1
Payload schema version
9.0.0

Example request

Send this body to POST /api/v1/computations/rollovers/debt-forgiveness. It satisfies the strict profile, so it works with or without the payloadContract selector.

{
  "inputs": {
    "forgiven_amount": 100000,
    "attributes": {
      "nonCapitalLossesOrdinary": 15000,
      "nonCapitalLossesAbilByYear": [
        {
          "year": 1995,
          "amount": 2500,
          "applicableFraction": null
        },
        {
          "year": 2002,
          "amount": 2500,
          "applicableFraction": null
        }
      ],
      "farmLosses": 0,
      "restrictedFarmLosses": 0,
      "netCapitalLossesByYear": null,
      "netCapitalLosses": 10000,
      "netCapitalLossesYear": 1995,
      "netCapitalLossesFraction": null,
      "ccaUcc": 20000,
      "cumulativeEligibleCapital": 0,
      "resourcePools": 0,
      "abilAndOtherAcb": 0,
      "section80_9CapitalPropertyAcb": 0,
      "section80_10SpecifiedShareholderPropertyAcb": 0,
      "currentYearCapitalLosses": 0,
      "subsection88_1_2Amount": 0,
      "currentYearCapitalGains": 0,
      "priorSubsection80_12Gains": 0,
      "unrecognizedLosses": 0,
      "priorDReductions": 0,
      "totalSection80_13InclusionsForYear": 100000,
      "assetsFmvAtYearEnd": 90000,
      "totalLiabilitiesAtYearEnd": 40000,
      "taxesPaidForYear": 0,
      "nonArmsLengthDistributions12Months": 0,
      "distressPreferredSharePrincipal": 0,
      "incomeBefore61_3And61_4": 100000,
      "paragraph80_15_a_deductions": 0,
      "section61_4ReserveClaimed": 50000,
      "section56_3InclusionForYear": 0,
      "section61_4PriorYearAmountsComplete": true,
      "section61_4PriorYearAmounts": []
    },
    "designations": {
      "applyToPoolsAmount": null,
      "s80_5Amount": 20000,
      "s80_8Amount": null,
      "s80_9Amount": null,
      "s80_10Amount": null,
      "s80_11Amount": null,
      "residualBalance": null,
      "section80_04AgreementAmount": 0
    },
    "party": {
      "isPartnership": false,
      "isResidentInCanadaThroughoutYear": true,
      "isExemptFromTaxUnderPartI": false,
      "subsection61_3_3Applies": false,
      "carriedOnBusinessThroughFixedPlaceInCanadaAtYearEnd": null,
      "commencedWindUpInYear": false,
      "subsection88_1AppliesToWindUp": null
    }
  }
}

Input cells (55)

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 debt-forgiveness
CellTypesRequired
attributes.abilAndOtherAcbnumberstrict
attributes.assetsFmvAtYearEndnumberstrict
attributes.ccaUccnumberstrict
attributes.cumulativeEligibleCapitalITA 80(7) was repealed by S.C. 2016, c. 12, s. 23; there is no cumulative-eligible-capital designation. Must be 0 — a legacy balance belongs in ccaUcc under 80(5).numberstrict
attributes.currentYearCapitalGainsnumberstrict
attributes.currentYearCapitalLossesnull | numberstrict
attributes.distressPreferredSharePrincipalnumberstrict
attributes.farmLossesnumberstrict
attributes.incomeBefore61_3And61_4numberstrict
attributes.netCapitalLossesnumberstrict
attributes.netCapitalLossesByYear[].amountnumberstrict
attributes.netCapitalLossesByYear[].applicableFractionnull | numberstrict
attributes.netCapitalLossesByYear[].yearinteger | nullstrict
attributes.netCapitalLossesFractionnull | numberstrict
attributes.netCapitalLossesYearinteger | nullstrict
attributes.nonArmsLengthDistributions12Monthsnumberstrict
attributes.nonCapitalLossesAbilByYear[].amountnumberstrict
attributes.nonCapitalLossesAbilByYear[].applicableFractionnull | numberstrict
attributes.nonCapitalLossesAbilByYear[].yearintegerstrict
attributes.nonCapitalLossesOrdinaryOrdinary non-capital-loss component, excluding the ABIL element in the s.111(8) definition. Applied 1:1 under 80(3)(a); enter 0 only after reviewing the balance as nil.numberstrict
attributes.paragraph80_15_a_deductionsnumberstrict
attributes.priorDReductionsnumberstrict
attributes.priorSubsection80_12Gainsnumberstrict
attributes.resourcePoolsnumberstrict
attributes.restrictedFarmLossesnumberstrict
attributes.section56_3InclusionForYearnull | numberstrict
attributes.section61_4PriorYearAmountsCompleteboolean | nullstrict
attributes.section61_4PriorYearAmounts[].paragraph80_15_aDeductionsnumberstrict
attributes.section61_4PriorYearAmounts[].section61_3Deductionsnumberstrict
attributes.section61_4PriorYearAmounts[].section80_13Inclusionsnumberstrict
attributes.section61_4PriorYearAmounts[].yearsBeforeCurrentintegerstrict
attributes.section61_4ReserveClaimednull | numberstrict
attributes.section80_10SpecifiedShareholderPropertyAcbnumberstrict
attributes.section80_9CapitalPropertyAcbnumberstrict
attributes.subsection88_1_2Amountnumberstrict
attributes.taxesPaidForYearnumberstrict
attributes.totalLiabilitiesAtYearEndnumberstrict
attributes.totalSection80_13InclusionsForYearnumberstrict
attributes.unrecognizedLossesnumberstrict
designations.applyToPoolsAmountnull | numberstrict
designations.residualBalancenull | numberstrict
designations.s80_10Amountnull | numberstrict
designations.s80_11Amountnull | numberstrict
designations.s80_5Amountnull | numberstrict
designations.s80_8Amountnull | numberstrict
designations.s80_9Amountnull | numberstrict
designations.section80_04AgreementAmountnumberstrict
forgiven_amountnumberstrict
party.carriedOnBusinessThroughFixedPlaceInCanadaAtYearEndboolean | nullstrict
party.commencedWindUpInYearboolean | nullstrict
party.isExemptFromTaxUnderPartIboolean | nullstrict
party.isPartnershipThe debtor is a partnership rather than a corporation; omitted, the engine keeps the corporate-debtor posture.booleanstrict
party.isResidentInCanadaThroughoutYearboolean | nullstrict
party.subsection61_3_3Appliesboolean | nullstrict
party.subsection88_1AppliesToWindUpboolean | nullstrict
Strict profile accepted values (47 of 55 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 debt-forgiveness
CellAccepted values
attributes.abilAndOtherAcb0 to 600000000000
attributes.assetsFmvAtYearEnd0 to 600000000000
attributes.ccaUcc0 to 600000000000
attributes.cumulativeEligibleCapital0 to 0
attributes.currentYearCapitalGains0 to 600000000000
attributes.currentYearCapitalLosses0 to 600000000000
attributes.distressPreferredSharePrincipal0 to 600000000000
attributes.farmLosses0 to 600000000000
attributes.incomeBefore61_3And61_4-600000000000 to 600000000000
attributes.netCapitalLosses0 to 600000000000
attributes.netCapitalLossesByYear[].amount0 to 600000000000
attributes.netCapitalLossesByYear[].applicableFractionmore than 0; at most 1
attributes.netCapitalLossesByYear[].year1972 to 2100
attributes.netCapitalLossesFractionmore than 0; at most 1
attributes.netCapitalLossesYear1972 to 2100
attributes.nonArmsLengthDistributions12Months0 to 600000000000
attributes.nonCapitalLossesAbilByYear[].amount0 to 600000000000
attributes.nonCapitalLossesAbilByYear[].applicableFractionmore than 0; at most 1
attributes.nonCapitalLossesAbilByYear[].year1972 to 2100
attributes.nonCapitalLossesOrdinary0 to 600000000000
attributes.paragraph80_15_a_deductions0 to 600000000000
attributes.priorDReductions0 to 600000000000
attributes.priorSubsection80_12Gains0 to 600000000000
attributes.resourcePools0 to 600000000000
attributes.restrictedFarmLosses0 to 600000000000
attributes.section56_3InclusionForYear0 to 600000000000
attributes.section61_4PriorYearAmounts[].paragraph80_15_aDeductions0 to 600000000000
attributes.section61_4PriorYearAmounts[].section61_3Deductions0 to 600000000000
attributes.section61_4PriorYearAmounts[].section80_13Inclusions0 to 600000000000
attributes.section61_4PriorYearAmounts[].yearsBeforeCurrent1 to 200
attributes.section61_4ReserveClaimed0 to 600000000000
attributes.section80_10SpecifiedShareholderPropertyAcb0 to 600000000000
attributes.section80_9CapitalPropertyAcb0 to 600000000000
attributes.subsection88_1_2Amount0 to 600000000000
attributes.taxesPaidForYear0 to 600000000000
attributes.totalLiabilitiesAtYearEnd0 to 600000000000
attributes.totalSection80_13InclusionsForYear0 to 600000000000
attributes.unrecognizedLosses0 to 600000000000
designations.applyToPoolsAmount0 to 600000000000
designations.residualBalance0 to 600000000000
designations.s80_10Amount0 to 600000000000
designations.s80_11Amount0 to 600000000000
designations.s80_5Amount0 to 600000000000
designations.s80_8Amount0 to 600000000000
designations.s80_9Amount0 to 600000000000
designations.section80_04AgreementAmount0 to 600000000000
forgiven_amount0 to 600000000000

Output cells (68)

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

Output cells for debt-forgiveness
CellTypes
forgivenAmountnumber
isPartnershipboolean
orderedReductions.nonCapitalLossesnumber
orderedReductions.farmLossesnumber
orderedReductions.restrictedFarmLossesnumber
orderedReductions.nonCapitalLossesAbilnumber
orderedReductions.netCapitalLossesnumber
orderedReductions.poolsnumber
orderedReductions.acbnumber
orderedReductions.deemedCapitalGain80_12number
poolDesignations.ccaUccnumber
poolDesignations.resourcePoolsnumber
poolDesignations.abilAndOtherAcbnumber
poolDesignations.subsection80_11number
poolDesignations.totalnumber
abilNonCapitalLossBalanceReducednumber
abilNonCapitalLossDetail[].yearinteger
abilNonCapitalLossDetail[].applicableFractionstring
abilNonCapitalLossDetail[].balanceReducednumber
abilNonCapitalLossDetail[].forgivenAmountConsumednumber
netCapitalLossBalanceReducednumber
netCapitalLossDetail[].yearinteger | null
netCapitalLossDetail[].applicableFractionstring
netCapitalLossDetail[].balanceReducednumber
netCapitalLossDetail[].forgivenAmountConsumednumber
undesignatedRoomExplanation[].subsectionstring
undesignatedRoomExplanation[].poolstring
undesignatedRoomExplanation[].balancenumber
undesignatedRoomExplanation[].designatednumber
undesignatedRoomExplanation[].roomDeclinednumber
undesignatedRoomExplanation[].availabilityBasisstring
deemedCapitalGainSubsection80_12number
inclusionFormula.Anumber
inclusionFormula.Bnumber
inclusionFormula.Cnumber
inclusionFormula.Dnumber
inclusionFormula.Enumber
inclusionFormula.basenumber
section61_3Deductionnull | number
section61_4ReserveClaimednull | number
section61_4ReserveMaximumnull | number
section61_4ReserveDeductionnull | number
section61_4ParagraphACapnull | number
section61_4ParagraphBCapnull | number
section61_4WindUpNilCapAppliesboolean | null
residualnumber
incomeInclusionnumber
traps[].findingCodestring
traps[].filingDispositionstring
traps[].citationKeystring
traps[].severitystring
traps[].titlestring
traps[].bodystring
warnings[]string
warnings[].codestring
warnings[].findingCodestring
warnings[].filingDispositionstring
warnings[].messagestring
warnings[].severitystring
blockingboolean
readyboolean
provisionalboolean
citationsApplied[]string
citations[].keystring
citations[].sectionstring
citations[].descriptionstring
citations[].source_urlstring
citations[].verified_atstring
Filemark | debt-forgiveness cells