> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://infonite.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://infonite.dev/_mcp/server.

# Public Pensions

**Where it lives:** in the Spain Public Administration results, at `data.employment.pensions`. APIs with dedicated per-product results endpoints return this model directly.

One entry per public pension the person receives — retirement, incapacity, widowhood... An empty
list is a valid result: it means the Social Security pays this person no pension today.

### Schema (`TGSSSpainPublicPensionSchema`)

```yaml
components:
  schemas:
    CurrencyAmountSchemaCurrency:
      oneOf:
        - type: string
          format: currency
        - type: string
          enum:
            - '***'
      description: >-
        Three-letter ISO currency code — or `***` when the source did not
        disclose the currency.
      title: CurrencyAmountSchemaCurrency
    CurrencyAmountSchema:
      type: object
      properties:
        currency:
          $ref: '#/components/schemas/CurrencyAmountSchemaCurrency'
          description: >-
            Three-letter ISO currency code — or `***` when the source did not
            disclose the currency.
        amount:
          type: string
          format: number
          description: Decimal number with 2 digits precision
      required:
        - currency
        - amount
      description: A monetary amount together with its currency.
      title: CurrencyAmountSchema
    PublicPensionAmountsSchema:
      type: object
      properties:
        base:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: Base pension amount
        revaluation:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: Revaluation amount
        total:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: >-
            Total pension amount. Is the brut amount of the pension, before any
            deduction
        net_amount:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: Net amount of the pension, after all deductions
      required:
        - base
        - revaluation
        - total
        - net_amount
      title: PublicPensionAmountsSchema
    TGSSSpainPublicPensionSchema:
      type: object
      properties:
        product:
          type: string
          enum:
            - social_security
        sub_family:
          type: string
          enum:
            - social_security:spain_public_pension
        fetch_date:
          type: string
          format: datetime
          description: Date this product was fetched
        product_name:
          type: string
          description: Product name
        product_alias:
          type: string
          description: Product alias
        start_date:
          type: string
          format: date
          description: Pension start date *(If proceeds)*
        regime:
          type: string
          description: Pension regime
        amounts:
          $ref: '#/components/schemas/PublicPensionAmountsSchema'
          description: Pension amounts if is active
      required:
        - product
        - sub_family
        - fetch_date
        - product_name
        - start_date
        - amounts
      title: TGSSSpainPublicPensionSchema
```

## Amounts

The pension's money, broken down: the base, its revaluation, the gross total, and the net the
person actually receives after deductions.

### Schema (`PublicPensionAmountsSchema`)

```yaml
components:
  schemas:
    CurrencyAmountSchemaCurrency:
      oneOf:
        - type: string
          format: currency
        - type: string
          enum:
            - '***'
      description: >-
        Three-letter ISO currency code — or `***` when the source did not
        disclose the currency.
      title: CurrencyAmountSchemaCurrency
    CurrencyAmountSchema:
      type: object
      properties:
        currency:
          $ref: '#/components/schemas/CurrencyAmountSchemaCurrency'
          description: >-
            Three-letter ISO currency code — or `***` when the source did not
            disclose the currency.
        amount:
          type: string
          format: number
          description: Decimal number with 2 digits precision
      required:
        - currency
        - amount
      description: A monetary amount together with its currency.
      title: CurrencyAmountSchema
    PublicPensionAmountsSchema:
      type: object
      properties:
        base:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: Base pension amount
        revaluation:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: Revaluation amount
        total:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: >-
            Total pension amount. Is the brut amount of the pension, before any
            deduction
        net_amount:
          $ref: '#/components/schemas/CurrencyAmountSchema'
          description: Net amount of the pension, after all deductions
      required:
        - base
        - revaluation
        - total
        - net_amount
      title: PublicPensionAmountsSchema
```