> 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.

# Credit Registry

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

The credit registry is the Bank of Spain's record of the person's debts: every loan, credit
line and guarantee above the reporting threshold, entity by entity. It is the reference document
for indebtedness analysis, and the official PDF report travels as an
[attachment](/data-models/attachments).

### Schema (`EUCreditRegistryDataSchema`)

```yaml
components:
  schemas:
    EuCreditRegistryDataSchemaSubFamily:
      type: string
      enum:
        - credit_registry_data:es_cirbe_detailed
        - credit_registry_data:es_cirbe_aggregated
      description: The sub-family specifying detailed or aggregated registry data.
      title: EuCreditRegistryDataSchemaSubFamily
    IdentificationNumberSchemaType:
      type: string
      enum:
        - unknown
        - es:dni
        - es:nie
        - es:cif
        - es:ssn
        - co:cc
        - co:ce
        - co:nit
        - co:ti
      description: >-
        Kind of document the number belongs to (e.g. a national ID, passport,
        tax ID, or Social

        Security number).
      title: IdentificationNumberSchemaType
    IdentificationNumberSchema:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/IdentificationNumberSchemaType'
          description: >-
            Kind of document the number belongs to (e.g. a national ID,
            passport, tax ID, or Social

            Security number).
        value:
          type: string
          description: The number itself, as reported by the source.
        validated:
          type: boolean
          description: >-
            True when the value passed the platform's format and check-digit
            validation. It vouches for

            the NUMBER being well-formed — not for the official status of the
            document behind it.
        country:
          type: string
          format: country
          description: Country that issued the number, as a two-letter ISO code.
        valid_until:
          type: string
          format: date
          description: Expiry date of the document, when the source reports it.
      required:
        - type
        - value
        - validated
      description: >-
        One identification document: its type, its value, and whether the value
        passed validation.
      title: IdentificationNumberSchema
    CurrencyAmount-Output:
      type:
        - object
        - 'null'
      additionalProperties:
        type: string
      title: CurrencyAmount-Output
    CurrencyAmountInputCurrency:
      oneOf:
        - type: string
          format: currency
        - type: string
          enum:
            - '***'
      title: CurrencyAmountInputCurrency
    CurrencyAmount-Input:
      type: object
      properties:
        currency:
          $ref: '#/components/schemas/CurrencyAmountInputCurrency'
          default: '***'
        amount:
          type: string
          format: number
          default: NaN
          description: Decimal number with 2 digits precision
      title: CurrencyAmount-Input
    OperationSchema:
      type: object
      properties:
        entity_name:
          type:
            - string
            - 'null'
        entity_code:
          type:
            - string
            - 'null'
        operation_code:
          type:
            - string
            - 'null'
        product_type:
          type: string
        intervention_nature:
          type: string
        collective_status:
          type:
            - string
            - 'null'
        participants_number:
          type:
            - integer
            - 'null'
        currency:
          type: string
          format: currency
        maturity_type:
          type:
            - string
            - 'null'
        real_guarantee_type:
          type:
            - string
            - 'null'
        real_guarantee_coverage:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        personal_guarantee_type:
          type:
            - string
            - 'null'
        personal_guarantee_coverage:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        operation_status:
          type:
            - string
            - 'null'
        total_drawn:
          $ref: '#/components/schemas/CurrencyAmount-Input'
        overdue:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        arrears:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        risk_available:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
      required:
        - product_type
        - intervention_nature
        - currency
        - total_drawn
      title: OperationSchema
    MinorRiskSchema:
      type: object
      properties:
        entity_name:
          type: string
        entity_code:
          type:
            - string
            - 'null'
        limit_amount:
          $ref: '#/components/schemas/CurrencyAmount-Input'
      required:
        - entity_name
        - limit_amount
      title: MinorRiskSchema
    ProductAttachmentType:
      type: string
      enum:
        - attachment:attachment
        - attachment:supplier_invoice
        - attachment:client_invoice
        - attachment:es-tgss-life-report
        - attachment:es-tgss-contribution-base-report
        - attachment:es-aeat-model-100
        - attachment:es-cirbe-report
        - attachment:sepa-direct-debit-bill
      description: Product Attachment Type
      title: ProductAttachmentType
    FileAttachmentSchema:
      type: object
      properties:
        product:
          type: string
          enum:
            - attachment
          default: attachment
          description: The product type identifier. Always `attachment`.
        sub_family:
          $ref: '#/components/schemas/ProductAttachmentType'
          description: >-
            What kind of document this is (e.g.
            `attachment:es-tgss-life-report`).
        id:
          type: string
          format: ObjectId
          description: >-
            Attachment identifier — use it to download the file through the
            execution's attachments

            endpoint.
        content_name:
          type: string
          description: File name of the document.
        content_hash:
          type: string
          description: Fingerprint of the content, to verify its integrity.
        content_type:
          type: string
          format: mime-type
          description: MIME type of the content.
        metadata:
          type: object
          additionalProperties:
            description: Any type
          description: >-
            Extra facts about the document, as simple key-value pairs (e.g. its
            official verification

            code, its issue date).
      required:
        - sub_family
        - id
        - content_name
        - content_type
        - metadata
      description: >-
        A document attached to a result — an official report, a receipt, an
        invoice... The entry

        describes the file; its bytes are downloaded through the execution's
        attachments endpoint

        using `id`.
      title: FileAttachmentSchema
    EUCreditRegistryDataSchema:
      type: object
      properties:
        product:
          type: string
          enum:
            - credit_registry_data
          description: The product type identifier.
        sub_family:
          $ref: '#/components/schemas/EuCreditRegistryDataSchemaSubFamily'
          description: The sub-family specifying detailed or aggregated registry data.
        fetch_date:
          type: string
          format: datetime
          description: Date this product was fetched.
        country:
          type: string
          format: country
          description: Country of the credit registry.
        holder_code:
          type:
            - string
            - 'null'
          description: Identification code of the holder in the registry.
        holder_name:
          type: string
          description: Full name or business name of the holder.
        identifier:
          oneOf:
            - $ref: '#/components/schemas/IdentificationNumberSchema'
            - type: 'null'
          description: National identifier of the holder.
        report_month:
          type: string
          description: Target month and year of the operation report in MM-YYYY format.
        consultation_date:
          type:
            - string
            - 'null'
          format: datetime
          description: Timestamp when the report was issued/consulted.
        total_drawn:
          $ref: '#/components/schemas/CurrencyAmount-Output'
          description: Total active drawn risk amount in the system.
        total_overdue:
          $ref: '#/components/schemas/CurrencyAmount-Output'
          description: Total risk amount that is overdue in the system.
        total_arrears:
          $ref: '#/components/schemas/CurrencyAmount-Output'
          description: Total overdue interest and expenses in the system.
        total_risk_available:
          $ref: '#/components/schemas/CurrencyAmount-Output'
          description: Total available risk amount in the system.
        operations:
          type: array
          items:
            $ref: '#/components/schemas/OperationSchema'
          default: []
          description: List of operations reported in the registry.
        minor_risks:
          type: array
          items:
            $ref: '#/components/schemas/MinorRiskSchema'
          default: []
          description: List of entities with accumulated risks below the threshold.
        attachments:
          type: array
          items:
            $ref: '#/components/schemas/FileAttachmentSchema'
          default: []
          description: List of attached original documents (e.g. PDF).
      required:
        - product
        - sub_family
        - fetch_date
        - country
        - holder_name
        - report_month
      title: EUCreditRegistryDataSchema
```

## Operations

One entry per reported operation:

### Schema (`OperationSchema`)

```yaml
components:
  schemas:
    CurrencyAmountInputCurrency:
      oneOf:
        - type: string
          format: currency
        - type: string
          enum:
            - '***'
      title: CurrencyAmountInputCurrency
    CurrencyAmount-Input:
      type: object
      properties:
        currency:
          $ref: '#/components/schemas/CurrencyAmountInputCurrency'
          default: '***'
        amount:
          type: string
          format: number
          default: NaN
          description: Decimal number with 2 digits precision
      title: CurrencyAmount-Input
    OperationSchema:
      type: object
      properties:
        entity_name:
          type:
            - string
            - 'null'
        entity_code:
          type:
            - string
            - 'null'
        operation_code:
          type:
            - string
            - 'null'
        product_type:
          type: string
        intervention_nature:
          type: string
        collective_status:
          type:
            - string
            - 'null'
        participants_number:
          type:
            - integer
            - 'null'
        currency:
          type: string
          format: currency
        maturity_type:
          type:
            - string
            - 'null'
        real_guarantee_type:
          type:
            - string
            - 'null'
        real_guarantee_coverage:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        personal_guarantee_type:
          type:
            - string
            - 'null'
        personal_guarantee_coverage:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        operation_status:
          type:
            - string
            - 'null'
        total_drawn:
          $ref: '#/components/schemas/CurrencyAmount-Input'
        overdue:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        arrears:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
        risk_available:
          oneOf:
            - $ref: '#/components/schemas/CurrencyAmount-Input'
            - type: 'null'
      required:
        - product_type
        - intervention_nature
        - currency
        - total_drawn
      title: OperationSchema
```

## Minor risks

Positions below the detailed-reporting threshold, aggregated:

### Schema (`MinorRiskSchema`)

```yaml
components:
  schemas:
    CurrencyAmountInputCurrency:
      oneOf:
        - type: string
          format: currency
        - type: string
          enum:
            - '***'
      title: CurrencyAmountInputCurrency
    CurrencyAmount-Input:
      type: object
      properties:
        currency:
          $ref: '#/components/schemas/CurrencyAmountInputCurrency'
          default: '***'
        amount:
          type: string
          format: number
          default: NaN
          description: Decimal number with 2 digits precision
      title: CurrencyAmount-Input
    MinorRiskSchema:
      type: object
      properties:
        entity_name:
          type: string
        entity_code:
          type:
            - string
            - 'null'
        limit_amount:
          $ref: '#/components/schemas/CurrencyAmount-Input'
      required:
        - entity_name
        - limit_amount
      title: MinorRiskSchema
```