Tax Form

Extract taxpayer info, income, deductions, and amounts.

Schema Key

tax-form

Usage

Use this template when creating a schema via the API or SDK:

const schema = await client.schemas.create('my-workspace', {
  schemaKey: 'tax-form',
  name: 'Tax Form',
  definition: { /* see definition below */ },
});

Definition

{
  "type": "object",
  "properties": {
    "taxpayer": {
      "type": "object",
      "description": "Information about the taxpayer.",
      "properties": {
        "name": {
          "type": "string",
          "description": "Full legal name of the taxpayer."
        },
        "tax_id": {
          "type": "string",
          "description": "Tax identification number (e.g. SSN, TIN)."
        },
        "address": {
          "type": "object",
          "description": "Taxpayer address.",
          "properties": {
            "street": {
              "type": "string",
              "description": "Street address."
            },
            "city": {
              "type": "string",
              "description": "City."
            },
            "state": {
              "type": "string",
              "description": "State or province."
            },
            "country": {
              "type": "string",
              "description": "Country."
            },
            "postal_code": {
              "type": "string",
              "description": "Postal or ZIP code."
            }
          },
          "required": [
            "street",
            "city",
            "country"
          ],
          "additionalProperties": false
        },
        "filing_status": {
          "type": "string",
          "description": "Filing status (e.g. Single, Married Filing Jointly)."
        }
      },
      "required": [
        "name",
        "tax_id",
        "filing_status"
      ],
      "additionalProperties": false
    },
    "tax_year": {
      "type": "integer",
      "description": "Tax year this form covers (e.g. 2024)."
    },
    "form_type": {
      "type": "string",
      "description": "Type of tax form (e.g. 1040, W-2, 1099)."
    },
    "income": {
      "type": "object",
      "description": "Income breakdown.",
      "properties": {
        "wages": {
          "type": "number",
          "description": "Wages, salaries, and tips."
        },
        "interest": {
          "type": "number",
          "description": "Interest income."
        },
        "dividends": {
          "type": "number",
          "description": "Dividend income."
        },
        "business_income": {
          "type": "number",
          "description": "Business or self-employment income."
        },
        "capital_gains": {
          "type": "number",
          "description": "Capital gains or losses."
        },
        "other_income": {
          "type": "number",
          "description": "Other income not categorized above."
        },
        "total_income": {
          "type": "number",
          "description": "Total gross income."
        }
      },
      "required": [
        "total_income"
      ],
      "additionalProperties": false
    },
    "deductions": {
      "type": "object",
      "description": "Deductions and adjustments.",
      "properties": {
        "standard_deduction": {
          "type": "number",
          "description": "Standard deduction amount."
        },
        "itemized_deductions": {
          "type": "number",
          "description": "Total itemized deductions, if applicable."
        },
        "total_deductions": {
          "type": "number",
          "description": "Total deductions applied."
        }
      },
      "required": [
        "total_deductions"
      ],
      "additionalProperties": false
    },
    "taxable_income": {
      "type": "number",
      "description": "Income after deductions."
    },
    "tax_owed": {
      "type": "number",
      "description": "Total tax liability."
    },
    "tax_paid": {
      "type": "number",
      "description": "Total tax already paid (withholdings, estimated payments)."
    },
    "refund_or_amount_due": {
      "type": "number",
      "description": "Refund amount (positive) or amount due (negative)."
    }
  },
  "required": [
    "taxpayer",
    "tax_year",
    "income",
    "deductions",
    "taxable_income",
    "tax_owed"
  ],
  "additionalProperties": false
}