# section-84-1

Section 84.1 surplus strip

- Kind: rollover
- Program: Filemark T2 rollover and reorganization preview
- Supported tax years: —
- Strict profile: rollover_preview_exact_v1
- Payload schema version: 8.0.0

## Example request

Send this body to `POST /api/v1/computations/rollovers/section-84-1`. This example works with or without `payloadContract`.

```json
{
  "inputs": {
    "subject_shares": {
      "acb": 100,
      "puc": 100,
      "fmv": 1000,
      "vDayValueBump": 0,
      "cgdClaimedGrossedUp": 0
    },
    "consideration": {
      "bootFmv": 100,
      "newShareLegalStatedCapital": 900,
      "newShareFmv": 900,
      "section85ElectedAmount": 100,
      "purchaserShareClasses": null
    },
    "party": {
      "transferorIsIndividualResident": true,
      "dealsAtArmsLength": false,
      "subjectConnectedToPurchaser": true,
      "concurrentSection85Election": true,
      "subjectSharesAreCapitalProperty": true,
      "subjectCorporationResidentInCanada": true,
      "dispositionDate": null,
      "intergenerationalTransfer": "none",
      "intergenerationalTransferConditions": null
    }
  }
}
```

## Input cells (45)

Paths are relative to the request's `inputs` object. `[]` marks an array element.

Cells marked **always** require a non-null value in every request. Cells marked **strict** are required when you supply this target's `payloadContract`. See [Run computations](https://docs.filemark.ca/run-computations).

Unknown cells and JSON type mismatches return `400` with the affected cells in the error details.

| Cell | Types | Required | Description |
| --- | --- | --- | --- |
| `consideration` | array \| boolean \| null \| number \| object \| string |  |  |
| `consideration.bootFmv` | null \| number \| string |  |  |
| `consideration.giftToRelatedPerson` | null \| number |  |  |
| `consideration.newShareFmv` | null \| number \| string |  |  |
| `consideration.newShareLegalStatedCapital` | null \| number \| string |  |  |
| `consideration.outlaysAndExpenses` | null \| number \| string |  |  |
| `consideration.purchaserShareClasses` | array \| null |  |  |
| `consideration.purchaserShareClasses[].label` | array \| boolean \| null \| number \| object \| string |  |  |
| `consideration.purchaserShareClasses[].pucIncrease` | null \| number \| string |  |  |
| `consideration.section85ElectedAmount` | null \| number \| string |  |  |
| `party` | array \| boolean \| null \| number \| object \| string |  |  |
| `party.benefitDesiredForRelatedPerson` | boolean \| null |  |  |
| `party.concurrentSection85Election` | boolean \| null |  |  |
| `party.dealsAtArmsLength` | boolean \| null |  |  |
| `party.dispositionDate` | null \| string |  |  |
| `party.intergenerationalTransfer` | null \| string |  |  |
| `party.intergenerationalTransferConditions` | null \| object |  |  |
| `party.intergenerationalTransferConditions.childControlAndEngagementFor36Months` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.childControlAndEngagementForGreaterOf60MonthsAndFinalSale` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.jointElectionFiledByFilingDueDate` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.managementTransferredWithin36Months` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.managementTransferredWithin60Months` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.noPriorIntergenerationalExceptionSought` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.purchaserControlledByAdultChildren` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.residualInterestBelowThresholdWithin10Years` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.subjectSharesAreQsbcOrFamilyFarmOrFishing` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.taxpayerDoesNotControlAfterDisposition` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.taxpayerEquityWoundDownWithin36Months` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.taxpayerIsIndividualNotTrust` | boolean \| null |  |  |
| `party.intergenerationalTransferConditions.taxpayerOwnsUnder50PercentAfterDisposition` | boolean \| null |  |  |
| `party.subjectConnectedToPurchaser` | boolean \| null |  |  |
| `party.subjectCorporationResidentInCanada` | boolean \| null |  |  |
| `party.subjectSharesAreCapitalProperty` | boolean \| null |  |  |
| `party.transferorIsIndividualResident` | boolean \| null | always |  |
| `subject_shares` | array \| boolean \| null \| number \| object \| string |  |  |
| `subject_shares.acb` | null \| number \| string |  |  |
| `subject_shares.cgdClaimedGrossedUp` | null \| number \| string |  |  |
| `subject_shares.fmv` | null \| number \| string |  |  |
| `subject_shares.lots` | array \| null |  |  |
| `subject_shares.lots[].acb` | null \| number \| string |  |  |
| `subject_shares.lots[].cgdClaimedGrossedUp` | null \| number \| string |  |  |
| `subject_shares.lots[].label` | array \| boolean \| null \| number \| object \| string |  |  |
| `subject_shares.lots[].vDayValueBump` | null \| number \| string |  |  |
| `subject_shares.puc` | null \| number \| string |  |  |
| `subject_shares.vDayValueBump` | null \| number \| string |  |  |

### Strict profile accepted values (19 of 45 cells)

These constraints apply when you supply this target's `payloadContract`. Cells marked **pinned** must equal the listed value. A pinned cell that is not required may be left out.

| Cell | Accepted values |
| --- | --- |
| `consideration` | `one of null, false, 0, "", []` |
| `consideration.bootFmv` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `consideration.giftToRelatedPerson` | `0 to 600000000000` |
| `consideration.newShareFmv` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `consideration.newShareLegalStatedCapital` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `consideration.outlaysAndExpenses` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `consideration.purchaserShareClasses[].pucIncrease` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `consideration.section85ElectedAmount` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `party` | `one of null, false, 0, "", []` |
| `party.intergenerationalTransfer` | `one of "none", "immediate", "gradual"` |
| `subject_shares` | `one of null, false, 0, "", []` |
| `subject_shares.acb` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.cgdClaimedGrossedUp` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.fmv` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.lots[].acb` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.lots[].cgdClaimedGrossedUp` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.lots[].vDayValueBump` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.puc` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |
| `subject_shares.vDayValueBump` | `matches ^\s*[+-]?(?:[0-9]+(?:\.[0-9]*)?\|\.[0-9]+)(?:[eE][+-]?[0-9]+)?\s*$; 0 to 600000000000` |

## Output cells (47)

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

| Cell | Types | Description |
| --- | --- | --- |
| `applies` | boolean |  |
| `blocking` | boolean |  |
| `boot` | number |  |
| `capitalGain` | number |  |
| `citations[].description` | string |  |
| `citations[].key` | string |  |
| `citations[].section` | string |  |
| `citations[].source_url` | string |  |
| `citations[].verified_at` | string |  |
| `citationsApplied[]` | string |  |
| `deemedDividend` | number |  |
| `greaterOfPucHardAcb` | number |  |
| `hardAcbByLot[].acb` | number |  |
| `hardAcbByLot[].cgdClaimedGrossedUp` | number |  |
| `hardAcbByLot[].hardAcb` | number |  |
| `hardAcbByLot[].label` | array \| boolean \| null \| number \| object \| string |  |
| `hardAcbByLot[].vDayValueBump` | number |  |
| `intergenerationalTransfer` | array \| boolean \| null \| number \| object \| string |  |
| `newShareLegalStatedCapital` | number |  |
| `proceedsForCapitalGain` | number |  |
| `provisional` | boolean |  |
| `pucByClass[].label` | array \| boolean \| null \| number \| object \| string |  |
| `pucByClass[].pucFinal` | number |  |
| `pucByClass[].pucIncrease` | number |  |
| `pucByClass[].pucReduction` | number |  |
| `pucNewShares` | number |  |
| `pucReduction` | number |  |
| `ready` | boolean |  |
| `subjectShares.acb` | number |  |
| `subjectShares.cgdClaimedGrossedUp` | number |  |
| `subjectShares.fmv` | number |  |
| `subjectShares.hardAcb` | number |  |
| `subjectShares.puc` | number |  |
| `subjectShares.vDayValueBump` | number |  |
| `traps[].body` | string |  |
| `traps[].citationKey` | string |  |
| `traps[].filingDisposition` | string |  |
| `traps[].findingCode` | string |  |
| `traps[].severity` | string |  |
| `traps[].title` | string |  |
| `warnings[]` | object |  |
| `warnings[].citationKey` | string |  |
| `warnings[].code` | string |  |
| `warnings[].message` | string |  |
| `warnings[].severity` | string |  |
| `warnings[].filingDisposition` | string |  |
| `warnings[].findingCode` | string |  |
