# business.incorporate

Record an incorporation that already occurred, using its certificate and contract-assignment evidence. Carries project balances into successor ledgers; does not form or register a legal entity.

## What it does

Records an incorporation that already occurred; does not form or register a legal entity with any authority. Incorporate a project (or a sole proprietorship) in place, effective at the incorporation date and evidenced by the certificate and the assignment of the project's contracts (source_document).

The same business continues: the project's GAAP ledger closes and stays readable, a successor ledger in the same currency opens as primary with every asset and liability at carrying value (open receivables, payables and deferred revenue per claim), and the project's equity becomes the founder's contribution for the shares — parValue to share capital, the rest to paid-in capital (negative when the project owes more than it owns). The project must have a single capital holder.

Every other currency ledger the project kept closes and is succeeded in its own currency with the same balances; a token's ledger stays open, its equity and earnings moved to the founder's paid-in capital. The legal name, form and jurisdiction change as of that date; incorporating in another country clears the facts that held only in the project's (register number, framework election, reporting package, sales-tax registrations). Contracts, products and parties are unchanged. Record the founder shares' units afterwards with an ownership recipe's authorize and allocate.

Owner-only by default; appends business.incorporated and the successor's opening journal.

## Before you send it

Requires an interactive OAuth connection; headless credentials are refused. Effective membership, application grant and token permissions still apply. Describe `business.incorporate` through `GET /v1/catalog/commands/{name}` before acting.

The envelope may reference a registered source document of kind `source_document`; this is separate from any evidence required by the input.

## Inputs

Put these fields inside the envelope's `input` object. The outer envelope names the command, a stable `idempotency_key` and `effective_at`; [request and recovery rules](/docs/api/) explain those separately. Use exact minor-unit integer strings for monetary fields. Take existing IDs from prior reads or command results; choose a new identity only where the command asks for one.

Required means required within its containing object; an optional parent can be omitted.

| Field | Type | Required | Meaning and accepted values |
|---|---|---|---|
| `name` | string | No | The company's legal name. Omitted, the project's public name becomes it; a public name that differed from the project's legal name is kept. Minimum length: `1`. Maximum length: `500`. Pattern: `"^[^\\r\\n]*\\S[^\\r\\n]*$"`. Example: `"Tidewater Studio, Inc."`. |
| `legalEntityType` | string | Yes | The incorporated form; it must exist in the jurisdiction. Choose `"llc"`, `"c_corp"`, `"s_corp"`, `"private_limited_company"`, `"corporation"`, `"stock_corporation"`. Example: `"c_corp"`. |
| `jurisdiction` | string | No | Where the company is incorporated. Omitted, the project's jurisdiction. In another country, the facts that held only in the project's country are cleared. Choose `"US"`, `"US-AL"`, `"US-AK"`, `"US-AZ"`, `"US-AR"`, `"US-CA"`, `"US-CO"`, `"US-CT"`, `"US-DE"`, `"US-DC"`, `"US-FL"`, `"US-GA"`, `"US-HI"`, `"US-ID"`, `"US-IL"`, `"US-IN"`, `"US-IA"`, `"US-KS"`, `"US-KY"`, `"US-LA"`, `"US-ME"`, `"US-MD"`, `"US-MA"`, `"US-MI"`, `"US-MN"`, `"US-MS"`, `"US-MO"`, `"US-MT"`, `"US-NE"`, `"US-NV"`, `"US-NH"`, `"US-NJ"`, `"US-NM"`, `"US-NY"`, `"US-NC"`, `"US-ND"`, `"US-OH"`, `"US-OK"`, `"US-OR"`, `"US-PA"`, `"US-RI"`, `"US-SC"`, `"US-SD"`, `"US-TN"`, `"US-TX"`, `"US-UT"`, `"US-VT"`, `"US-VA"`, `"US-WA"`, `"US-WV"`, `"US-WI"`, `"US-WY"`, `"SG"`, `"CA"`, `"CA-AB"`, `"CA-BC"`, `"CA-MB"`, `"CA-NB"`, `"CA-NL"`, `"CA-NS"`, `"CA-NT"`, `"CA-NU"`, `"CA-ON"`, `"CA-PE"`, `"CA-QC"`, `"CA-SK"`, `"CA-YT"`, `"GB"`, `"GB-EAW"`, `"GB-SCT"`, `"GB-NIR"`, `"CH"`, `"AT"`, `"BE"`, `"BG"`, `"HR"`, `"CY"`, `"CZ"`, `"DK"`, `"EE"`, `"FI"`, `"FR"`, `"DE"`, `"GR"`, `"HU"`, `"IE"`, `"IT"`, `"LV"`, `"LT"`, `"LU"`, `"MT"`, `"NL"`, `"PL"`, `"PT"`, `"RO"`, `"SK"`, `"SI"`, `"ES"`, `"SE"`. Example: `"US-DE"`. |
| `ownerPartyId` | string | No | The founder who receives the shares: the one party holding the project's capital. Needed only when no party holds it; naming anyone else is refused, and so is a project whose capital more than one party holds (move it to the founder first). Minimum length: `1`. |
| `parValue` | string | No | Minor units of the contributed net assets booked to share capital at par (3100); the rest is paid-in capital (3110), negative for a project that owes more than it owns. The net assets must cover a nonzero par value. Default 0. Maximum length: `38`. Pattern: `"^(0\|[1-9][0-9]*)$"`. Example: `"100"`. |
| `reason` | string | Yes |  Maximum length: `2000`. Pattern: `".*\\S.*"`. Example: `"Incorporated in Delaware; the project's assets, liabilities and contracts are assigned to the corporation"`. |

## After acceptance

When the command emits events, its documented effects and receipt are recorded in the command transaction. The response returns `commandId`, `replayed`, the command-specific `result` below and emitted `events` with their IDs and CIDs. A command is not automatically a cash movement or revenue recognition: use the behavior above to determine what this command records.

Inspect `result` and the affected records or reports before continuing. Save returned identifiers for later calls. Fetch `GET /v1/commands/{id}` with `commandId` to recover the accepted receipt; retry the same intent with the same idempotency key if the response was lost. Some commands can succeed with `events: []` and return a transient result and `commandId` without persisting a receipt. A lookup of that ID can return null; retain the returned result and verify the affected record. Retrying can re-evaluate the current state rather than replay a stored result. A domain `no_change` is a separate success outcome with no persisted receipt.

### Result fields

Required means required within its containing object; an optional parent can be omitted.

| Field | Type | Required | Meaning and accepted values |
|---|---|---|---|
| `name` | string | Yes |   |
| `legalEntityType` | string | Yes |   |
| `jurisdiction` | string | Yes |   |
| `ownerPartyId` | string | Yes |   |
| `predecessorLedgerId` | string | Yes |   |
| `primaryLedgerId` | string | Yes |   |
| `contributedCapital` | string | Yes |   |
| `parValue` | string | Yes |   |
| `openingLines` | integer | Yes |   |
| `successorLedgers` | array | Yes |  Items: object. |
| `successorLedgers[].currency` | string | Yes |   |
| `successorLedgers[].predecessorLedgerId` | string | Yes |   |
| `successorLedgers[].successorLedgerId` | string | Yes |   |


[All commands](/docs/command-reference/) · [Operation and errors](/docs/api-reference/operations/commands-execute/) · [Reusable schemas](/docs/api-reference/components/)

Keep credentials out of prompts; rehearse writes only in a disposable sandbox.

## Exact request schema


```json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "name": {
      "const": "business.incorporate"
    },
    "input": {
      "type": "object",
      "required": [
        "legalEntityType",
        "reason"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1,
          "maxLength": 500,
          "pattern": "^[^\\r\\n]*\\S[^\\r\\n]*$",
          "description": "The company's legal name. Omitted, the project's public name becomes it; a public name that differed from the project's legal name is kept."
        },
        "legalEntityType": {
          "enum": [
            "llc",
            "c_corp",
            "s_corp",
            "private_limited_company",
            "corporation",
            "stock_corporation"
          ],
          "description": "The incorporated form; it must exist in the jurisdiction."
        },
        "jurisdiction": {
          "enum": [
            "US",
            "US-AL",
            "US-AK",
            "US-AZ",
            "US-AR",
            "US-CA",
            "US-CO",
            "US-CT",
            "US-DE",
            "US-DC",
            "US-FL",
            "US-GA",
            "US-HI",
            "US-ID",
            "US-IL",
            "US-IN",
            "US-IA",
            "US-KS",
            "US-KY",
            "US-LA",
            "US-ME",
            "US-MD",
            "US-MA",
            "US-MI",
            "US-MN",
            "US-MS",
            "US-MO",
            "US-MT",
            "US-NE",
            "US-NV",
            "US-NH",
            "US-NJ",
            "US-NM",
            "US-NY",
            "US-NC",
            "US-ND",
            "US-OH",
            "US-OK",
            "US-OR",
            "US-PA",
            "US-RI",
            "US-SC",
            "US-SD",
            "US-TN",
            "US-TX",
            "US-UT",
            "US-VT",
            "US-VA",
            "US-WA",
            "US-WV",
            "US-WI",
            "US-WY",
            "SG",
            "CA",
            "CA-AB",
            "CA-BC",
            "CA-MB",
            "CA-NB",
            "CA-NL",
            "CA-NS",
            "CA-NT",
            "CA-NU",
            "CA-ON",
            "CA-PE",
            "CA-QC",
            "CA-SK",
            "CA-YT",
            "GB",
            "GB-EAW",
            "GB-SCT",
            "GB-NIR",
            "CH",
            "AT",
            "BE",
            "BG",
            "HR",
            "CY",
            "CZ",
            "DK",
            "EE",
            "FI",
            "FR",
            "DE",
            "GR",
            "HU",
            "IE",
            "IT",
            "LV",
            "LT",
            "LU",
            "MT",
            "NL",
            "PL",
            "PT",
            "RO",
            "SK",
            "SI",
            "ES",
            "SE"
          ],
          "description": "Where the company is incorporated. Omitted, the project's jurisdiction. In another country, the facts that held only in the project's country are cleared."
        },
        "ownerPartyId": {
          "type": "string",
          "minLength": 1,
          "description": "The founder who receives the shares: the one party holding the project's capital. Needed only when no party holds it; naming anyone else is refused, and so is a project whose capital more than one party holds (move it to the founder first)."
        },
        "parValue": {
          "type": "string",
          "pattern": "^(0|[1-9][0-9]*)$",
          "maxLength": 38,
          "description": "Minor units of the contributed net assets booked to share capital at par (3100); the rest is paid-in capital (3110), negative for a project that owes more than it owns. The net assets must cover a nonzero par value. Default 0."
        },
        "reason": {
          "type": "string",
          "pattern": ".*\\S.*",
          "maxLength": 2000
        }
      },
      "additionalProperties": false
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256
    },
    "effective_at": {
      "type": "string",
      "format": "date-time",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
    },
    "source_document_id": {
      "description": "A registered document of kind source_document that caused this command.",
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "name",
    "input",
    "idempotency_key",
    "effective_at"
  ],
  "additionalProperties": false
}
```

## Accepted command receipt


```json
{
  "type": "object",
  "required": [
    "commandId",
    "replayed",
    "result",
    "events"
  ],
  "properties": {
    "commandId": {
      "type": "string"
    },
    "replayed": {
      "type": "boolean"
    },
    "imported": {
      "const": true,
      "description": "The command's events are history from before the business joined Economico, recorded as an import: free of monthly events."
    },
    "result": {
      "type": "object",
      "required": [
        "name",
        "legalEntityType",
        "jurisdiction",
        "ownerPartyId",
        "predecessorLedgerId",
        "primaryLedgerId",
        "contributedCapital",
        "parValue",
        "openingLines",
        "successorLedgers"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "legalEntityType": {
          "type": "string"
        },
        "jurisdiction": {
          "type": "string"
        },
        "ownerPartyId": {
          "type": "string"
        },
        "predecessorLedgerId": {
          "type": "string"
        },
        "primaryLedgerId": {
          "type": "string"
        },
        "contributedCapital": {
          "type": "string"
        },
        "parValue": {
          "type": "string"
        },
        "openingLines": {
          "type": "integer"
        },
        "successorLedgers": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "currency",
              "predecessorLedgerId",
              "successorLedgerId"
            ],
            "properties": {
              "currency": {
                "type": "string"
              },
              "predecessorLedgerId": {
                "type": "string"
              },
              "successorLedgerId": {
                "type": "string"
              }
            }
          }
        }
      }
    },
    "events": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "cid": {
            "type": "string"
          }
        }
      }
    }
  }
}
```

## Example request


```json
{
  "name": "business.incorporate",
  "input": {
    "name": "Tidewater Studio, Inc.",
    "legalEntityType": "c_corp",
    "jurisdiction": "US-DE",
    "parValue": "100",
    "reason": "Incorporated in Delaware; the project's assets, liabilities and contracts are assigned to the corporation"
  },
  "effective_at": "2026-09-01T00:00:00Z",
  "idempotency_key": "business.incorporate-example-0"
}
```


