{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://vrutaz.com/schemas/incorporation-intent.v1.json",
  "title": "Vrutaz incorporation intent",
  "description": "Versioned discovery schema for US formation intent (state, entity, proposed name, owners). Validate locally or in a CLI. This is not a filing endpoint: there is no URL that submits Articles or an SS-4 because an agent posted this JSON. A human customer must create a Vrutaz account. Staff complete Secretary of State and IRS work. Unattended filing stays false. Unknown fields are rejected.",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "schema_version",
    "unattended_filing",
    "state",
    "entity",
    "proposed_name",
    "owners"
  ],
  "properties": {
    "schema_version": {
      "const": "1.0",
      "description": "Must be the string 1.0 for this document."
    },
    "unattended_filing": {
      "const": false,
      "description": "Must be false. Intent documents never authorize unattended SOS or IRS filing."
    },
    "capability_id": {
      "const": "incorporation_intent_schema",
      "description": "Optional. If present, must equal incorporation_intent_schema."
    },
    "state": {
      "type": "string",
      "description": "USPS two-letter code. LLC formation is offered in all 50 states and DC. C-Corp is offered in Wyoming and Delaware only.",
      "enum": [
        "AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL",
        "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME",
        "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH",
        "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI",
        "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI",
        "WY"
      ]
    },
    "entity": {
      "type": "string",
      "enum": ["LLC", "C-Corp"]
    },
    "proposed_name": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "Company name without the entity ending (LLC / Inc.). Staff still run the state name check."
    },
    "designator": {
      "type": "string",
      "enum": [
        "LLC",
        "L.L.C.",
        "Limited Liability Company",
        "Inc.",
        "Corp.",
        "Corporation",
        "Incorporated"
      ]
    },
    "owners": {
      "type": "array",
      "minItems": 1,
      "maxItems": 20,
      "description": "Beneficial owners. Ownership percents must total 100. Do not include SSN/ITIN.",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["legal_name", "ownership_percent"],
        "properties": {
          "legal_name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 120
          },
          "ownership_percent": {
            "type": "number",
            "minimum": 0,
            "maximum": 100
          },
          "country": {
            "type": "string",
            "maxLength": 80
          },
          "email": {
            "type": "string",
            "maxLength": 254
          },
          "phone": {
            "type": "string",
            "maxLength": 32,
            "description": "Digits, +, spaces, and ()- only. No letters."
          }
        }
      }
    },
    "industry": {
      "type": "string",
      "maxLength": 80
    },
    "description": {
      "type": "string",
      "maxLength": 2000,
      "description": "Short business description. Used later on the IRS application by staff — not a filing payload."
    },
    "contact_phone": {
      "type": "string",
      "maxLength": 32
    },
    "mailing_address": {
      "type": "string",
      "maxLength": 500
    },
    "authorized_shares": {
      "type": "integer",
      "minimum": 1,
      "description": "C-Corp only. Ignored for LLC."
    },
    "par_value": {
      "type": "string",
      "maxLength": 24,
      "description": "C-Corp par value as a decimal string, e.g. 0.0001."
    },
    "notes": {
      "type": "string",
      "maxLength": 2000,
      "description": "Optional context for staff. Not instructions to file."
    }
  }
}
