> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pruff.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtener detalle de un documento

> Devuelve el detalle de un documento financiado: datos del documento, solicitud que lo financió, vencimiento vigente y prórrogas, saldos, mora e historial de abonos.

Obtén el `documentId` del campo `id` de `GET /reporting/portfolio` o del campo `documentId` de `GET /reporting/collection`.

Usa el `documentId` de un documento de tu empresa que esté financiado por una solicitud aceptada.



## OpenAPI

````yaml openapi/clients.yaml GET /reporting/document/{documentId}
openapi: 3.1.0
info:
  title: API de clientes de Pruff
  version: '1'
  description: >-
    Endpoints que tus sistemas llaman para leer y operar los datos de tu empresa
    en Pruff. Todas las solicitudes van por HTTPS y se autentican con el header
    `x-api-key`. Las convenciones de formato, paginación y errores se describen
    en https://docs.pruff.com/api/introduccion.
servers:
  - url: https://api.pruff.com/api/clients
security:
  - ApiKeyAuth: []
tags:
  - name: Facturas
    description: Consulta de facturas electrónicas, facturas transables y cesiones.
  - name: Documentos
    description: Consulta y creación de documentos asociados a tus clientes.
  - name: Archivos
    description: Carga de archivos a operaciones y a los requerimientos de tus documentos.
  - name: Financiamiento
    description: >-
      Simula créditos, crea solicitudes de factoring y consulta las prórrogas de
      tu empresa.
  - name: Comité
    description: >-
      Consulta las aprobaciones de una solicitud en los comités de riesgo y de
      operaciones, y registra nuevas firmas.
  - name: Chat
    description: Exporta y envía mensajes del chat de una solicitud.
  - name: Reportes
    description: >-
      Reportes de operaciones, cartera, recaudaciones, cuentas pendientes y
      flujos de tu empresa.
  - name: Datahub
    description: >-
      Consulta de la información tributaria, financiera y de riesgo que Pruff
      tiene de tus clientes y deudores.
  - name: Mercado Público
    description: >-
      Licitaciones y órdenes de compra de Mercado Público (ChileCompra) cargadas
      en Pruff.
  - name: CRM
    description: >-
      Datos comerciales de tu CRM en Pruff: empresas con su ficha, pipeline,
      prospectos, gestiones y simulaciones.
  - name: SGR
    description: Operaciones SGR (garantías) de tu empresa.
  - name: Sincronizador
    description: >-
      Pide sincronizar a un cliente con el SII o la TGR para obtener su
      información más actualizada, y consulta el estado de esas
      sincronizaciones.
  - name: Usuarios
    description: >-
      Administra los usuarios de tu empresa en Pruff (crear, editar, eliminar,
      consultar su perfil y asignar subordinados) y consulta las cuentas
      (empresas conectadas) a las que cada usuario tiene acceso.
  - name: Contactos
    description: Crea contactos asociados a las empresas de tu cartera.
paths:
  /reporting/document/{documentId}:
    get:
      tags:
        - Reportes
      summary: Obtener detalle de un documento
      description: >-
        Devuelve el detalle de un documento financiado: datos del documento,
        solicitud que lo financió, vencimiento vigente y prórrogas, saldos, mora
        e historial de abonos.


        Obtén el `documentId` del campo `id` de `GET /reporting/portfolio` o del
        campo `documentId` de `GET /reporting/collection`.


        Usa el `documentId` de un documento de tu empresa que esté financiado
        por una solicitud aceptada.
      operationId: getDocumentReport
      parameters:
        - name: documentId
          in: path
          required: true
          description: Identificador del documento.
          schema:
            type: string
            format: uuid
          example: 00123456-dd49-43ae-8429-f5ef123456f2
      responses:
        '200':
          description: Detalle del documento.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportDocument'
              example:
                id: 00123456-dd49-43ae-8429-f5ef123456f2
                folio: '12673'
                amount: 1045631
                code: '33'
                type: Factura electrónica
                confirmDate: null
                issuedDate: '2026-01-29T00:00:00.000Z'
                cancelDate: null
                creditNoteAmount: 0
                businessName: Cliente Ejemplo SpA
                stakeholderName: Deudor Ejemplo Ltda.
                startingPaymentDate: '2026-03-01T00:00:00.000Z'
                lastExtensionDate: '2026-03-20T00:00:00.000Z'
                extensions:
                  - id: 12
                    rate: 1.5
                    startDate: '2026-03-01T00:00:00.000Z'
                    dueDate: '2026-03-20T00:00:00.000Z'
                    status: ACTIVE
                    statusEsp: Activa
                    observation: null
                    createdAt: '2026-02-27T14:30:00.000Z'
                    paid: Pagado
                daysToCount: 46
                paidAt: null
                amountConciliated: 500000
                arrearConciliation: 0
                documentConciliation: 500000
                documentRemainingAmountNet: 490000
                documentRemainingAmount: 545631
                conciliations:
                  - requestId: 4521
                    typeEsp: Pago recibido
                    type: payIn
                    amount: 500000
                    conciliationDocumentAmount: 500000
                    conciliationArrearAmount: 0
                    conciliationAmount: 500000
                    date: '2026-03-25T00:00:00.000Z'
                    payInDate: '2026-03-25T00:00:00.000Z'
                    accountingDate: '2026-03-25T00:00:00.000Z'
                    conciliationDate: '2026-03-26T10:15:00.000Z'
                    documentAmountDebtBefore: 1045631
                    arrearAmountDebtBefore: 0
                    documentAmountDebtAfter: 545631
                    arrearAmountDebtAfter: 0
                    paidBy: Deudor
                    arrearRate: 3
                paymentDate: '2026-03-20T00:00:00.000Z'
                requestId: 5634
                rate: 1.8
                advance: 99
                arrearRate: 3
                operationDate: '2026-02-02T00:00:00.000Z'
                requestType: factoring
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalError'
        '504':
          $ref: '#/components/responses/Timeout'
components:
  schemas:
    ReportDocument:
      type: object
      description: Detalle de un documento financiado.
      properties:
        id:
          type: string
          description: Identificador del documento.
          format: uuid
          example: 00123456-dd49-43ae-8429-f5ef123456f2
        folio:
          type: string
          description: Folio del documento.
          example: '12673'
        amount:
          type: number
          description: Monto del documento.
          example: 1045631
        code:
          type: string
          description: >-
            Código del tipo de documento (por ejemplo `33` para factura
            electrónica afecta, `34` para exenta). `33` si el documento no
            informa subtipo.
          example: '33'
        type:
          type: string
          description: Tipo de documento en español.
          example: Factura electrónica
        confirmDate:
          type:
            - string
            - 'null'
          description: Fecha del acuse de recibo. `null` si no tiene.
          format: date-time
          example: null
        issuedDate:
          type: string
          description: Fecha de emisión del documento.
          format: date-time
          example: '2026-01-29T00:00:00.000Z'
        cancelDate:
          type:
            - string
            - 'null'
          description: Fecha de rechazo del documento. `null` si no fue rechazado.
          format: date-time
          example: null
        creditNoteAmount:
          type: number
          description: Monto neto de notas de crédito asociadas al documento.
          example: 0
        businessName:
          type: string
          description: Nombre del cliente o acreedor (emisor del documento).
          example: Cliente Ejemplo SpA
        stakeholderName:
          type:
            - string
            - 'null'
          description: Nombre del deudor del documento.
          example: Deudor Ejemplo Ltda.
        startingPaymentDate:
          type: string
          description: Vencimiento original del documento en la solicitud, sin prórrogas.
          format: date-time
          example: '2026-03-01T00:00:00.000Z'
        lastExtensionDate:
          type:
            - string
            - 'null'
          description: >-
            Vencimiento fijado por la última prórroga. `null` si el documento no
            tiene prórrogas.
          format: date-time
          example: '2026-03-20T00:00:00.000Z'
        extensions:
          type: array
          items:
            $ref: '#/components/schemas/ReportDocumentExtension'
          description: Prórrogas del documento. Arreglo vacío si no tiene.
        daysToCount:
          type: integer
          description: >-
            Días entre la fecha de operación y el vencimiento vigente del
            documento.
          example: 25
        paidAt:
          type:
            - string
            - 'null'
          description: >-
            Fecha y hora en que el documento quedó pagado. `null` si aún no está
            pagado.
          format: date-time
          example: null
        amountConciliated:
          type: number
          description: Monto total abonado al documento, redondeado al entero más cercano.
          example: 500000
        arrearConciliation:
          type: number
          description: >-
            Parte de lo abonado que se aplicó a la mora, redondeada al entero
            más cercano.
          example: 0
        documentConciliation:
          type: number
          description: >-
            Parte de lo abonado que se aplicó al documento, redondeada al entero
            más cercano.
          example: 500000
        documentRemainingAmountNet:
          type: number
          description: >-
            Saldo financiado del documento, redondeado al entero más cercano. 0
            si está pagado.
          example: 565631
        documentRemainingAmount:
          type: number
          description: Saldo del documento, redondeado al entero más cercano.
          example: 545631
        conciliations:
          type: array
          items:
            $ref: '#/components/schemas/ReportDocumentConciliation'
          description: Historial de abonos aplicados al documento.
        paymentDate:
          type: string
          description: >-
            Vencimiento vigente del documento, incluyendo la última prórroga si
            existe.
          format: date-time
          example: '2026-03-20T00:00:00.000Z'
        requestId:
          type: integer
          description: Identificador de la solicitud que financió el documento.
          example: 5634
        rate:
          type: number
          description: Tasa de la solicitud (%).
          example: 1.8
        advance:
          type: number
          description: >-
            Porcentaje de anticipo de la solicitud (%). En créditos y confirming
            es 100.
          example: 99
        arrearRate:
          type:
            - number
            - 'null'
          description: >-
            Tasa de mora aplicable al documento (%). `null` si la mora se
            calcula por tabla o no está definida.
          example: 3
        operationDate:
          type: string
          description: Fecha de operación de la solicitud.
          format: date-time
          example: '2026-02-02T00:00:00.000Z'
        requestType:
          type: string
          description: Producto de la solicitud que financió el documento.
          enum:
            - factoring
            - credit
            - confirming
          example: factoring
      required:
        - id
        - folio
        - amount
        - code
        - type
        - issuedDate
        - creditNoteAmount
        - businessName
        - extensions
        - daysToCount
        - amountConciliated
        - arrearConciliation
        - documentConciliation
        - documentRemainingAmountNet
        - documentRemainingAmount
        - conciliations
    ReportDocumentExtension:
      type: object
      description: >-
        Prórroga del vencimiento del documento. Solo se informan las prórrogas
        activas o completadas. Usa solo los campos documentados aquí.
      properties:
        id:
          type: integer
          description: Identificador de la prórroga.
          example: 12
        rate:
          type: number
          description: Tasa de la prórroga (%).
          example: 1.5
        startDate:
          type: string
          description: Fecha desde la que rige la prórroga.
          format: date-time
          example: '2026-03-20T00:00:00.000Z'
        dueDate:
          type: string
          description: Nuevo vencimiento que fija la prórroga.
          format: date-time
          example: '2026-04-20T00:00:00.000Z'
        status:
          type: string
          description: Estado de la prórroga (`ACTIVE` o `COMPLETED`).
          example: ACTIVE
        statusEsp:
          type: string
          description: Estado de la prórroga en español.
          example: Activa
        observation:
          type:
            - string
            - 'null'
          description: Observación de la prórroga.
          example: null
        createdAt:
          type: string
          description: Fecha y hora de creación de la prórroga.
          format: date-time
          example: '2026-03-18T14:30:00.000Z'
        paid:
          type: string
          description: Indica si los cobros generados por la prórroga están pagados.
          enum:
            - Pagado
            - Pendiente
          example: Pendiente
      required:
        - id
        - rate
        - startDate
        - dueDate
        - status
        - statusEsp
        - paid
    ReportDocumentConciliation:
      type: object
      description: Una línea del historial de abonos del documento, en orden cronológico.
      properties:
        requestId:
          description: >-
            Identificador del abono o pago de origen, según el tipo de
            conciliación. Vacío en la línea de excedentes retenidos.
          type:
            - integer
            - string
          example: 4521
        typeEsp:
          type: string
          description: >-
            Tipo de conciliación en español (por ejemplo `Pago recibido` o
            `Excedentes retenidos`).
          example: Pago recibido
        type:
          type: string
          description: >-
            Tipo de conciliación: `payIn`, `fund`, `quote`, `credit`, `passive`,
            `creditNote`, `discount` o `surplus`.
          example: payIn
        amount:
          type: number
          description: Monto del abono.
          example: 500000
        conciliationDocumentAmount:
          type: number
          description: Parte del abono aplicada al documento, sin considerar la mora.
          example: 480000
        conciliationArrearAmount:
          type: number
          description: Parte del abono aplicada a la mora.
          example: 20000
        conciliationAmount:
          type: number
          description: Monto total conciliado en esta línea.
          example: 500000
        date:
          description: Fecha del abono (ISO 8601).
          type: string
          example: '2026-03-25T00:00:00.000Z'
        payInDate:
          description: Fecha del pago recibido (ISO 8601).
          type: string
          example: '2026-03-25T00:00:00.000Z'
        accountingDate:
          description: Fecha contable del abono (ISO 8601).
          type: string
          example: '2026-03-25T00:00:00.000Z'
        conciliationDate:
          description: Fecha y hora en que se registró la conciliación (ISO 8601).
          type: string
          example: '2026-03-26T10:15:00.000Z'
        documentAmountDebtBefore:
          type: number
          description: Deuda del documento antes de aplicar el abono.
          example: 1045631
        arrearAmountDebtBefore:
          type: number
          description: Deuda por mora antes de aplicar el abono.
          example: 20000
        documentAmountDebtAfter:
          type: number
          description: Deuda del documento después de aplicar el abono.
          example: 565631
        arrearAmountDebtAfter:
          type: number
          description: Deuda por mora después de aplicar el abono.
          example: 0
        paidBy:
          type: string
          description: >-
            Rol de quien pagó: `Deudor`, `Emisor`, `Cliente`, `Factoring` o `-`
            (origen no identificado).
          example: Deudor
        arrearRate:
          type: number
          description: Tasa de mora aplicada a este abono (%).
          example: 3
      required:
        - requestId
        - typeEsp
        - type
        - amount
        - conciliationDocumentAmount
        - conciliationArrearAmount
        - paidBy
    Error:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: >-
            Identifica el error. En algunos casos es un texto en inglés con
            valores variables. Para tu lógica, usa el código HTTP y, cuando
            exista, `data.code`.
        displayMessage:
          type: string
          description: >-
            Mensaje pensado para mostrarlo a una persona. Normalmente en
            español; algunos mensajes de validación vienen en inglés.
        data:
          description: Detalle adicional del error, cuando existe.
  responses:
    Unauthorized:
      description: >-
        Falta el header `x-api-key`, su valor no es válido o la cuenta de API de
        tu empresa no está habilitada.
      content:
        application/json:
          schema:
            type: object
            required:
              - message
            properties:
              message:
                type: string
          example:
            message: 'Unauthorized: Invalid API Key'
    TooManyRequests:
      description: >-
        Tu empresa superó el límite de solicitudes. Todas las API keys de tu
        empresa comparten el mismo límite. Espera los segundos que indica el
        header `Retry-After` (o `data.retryAfterSeconds`) antes de reintentar.
      headers:
        Retry-After:
          description: Segundos que debes esperar antes de reintentar.
          schema:
            type: integer
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: >-
              Rate limit exceeded: 501 requests in the current 60s window, limit
              is 500. Retry in 12s.
            displayMessage: >-
              Superaste el límite de 500 solicitudes cada 60 segundos. Vuelve a
              intentarlo en 12 segundos.
            data:
              code: RATE_LIMIT_EXCEEDED
              scope: All API keys of your company share this budget.
              limit: 500
              used: 501
              windowSeconds: 60
              retryAfterSeconds: 12
              resetAt: '2026-11-04T15:00:12.000Z'
              hint: >-
                Wait until resetAt (or honor the Retry-After header) before
                retrying. Avoid repeating identical requests: reuse responses
                you already fetched, use filters and larger pageSize values
                instead of one request per item, and cap your client
                concurrency.
    InternalError:
      description: >-
        Error inesperado en Pruff. El texto de `message` puede variar (por
        ejemplo en mayúsculas); no dependas de él.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Internal server error
    Timeout:
      description: >-
        La solicitud superó el tiempo máximo de 55 segundos. La operación puede
        haberse completado igual: antes de reintentar una solicitud que crea o
        modifica datos, verifica su estado.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: request_timeout
            displayMessage: La solicitud excedió el tiempo máximo permitido
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key que Pruff entrega a tu empresa.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.