---
title: "Catálogos, tarifario, cuentas y consentimiento"
method: GET
path: "/solicitudes-firma/config"
tags: ["solicitudes-firma"]
---

# Catálogos, tarifario, cuentas y consentimiento

`GET /solicitudes-firma/config`

## Request

- Base URL: `https://contadeo.com/api`
- URL: `https://contadeo.com/api/solicitudes-firma/config`
- Auth: HTTP bearer

Todo lo que hace falta para pintar el asistente sin duplicar catálogos ni el texto legal. Roles: owner, admin, emisor, contador o lector. Responde 404 cuando NEWBEST_HABILITADO no está encendido: es la señal de que el módulo no existe en este despliegue.

## Response `200`

Configuración del módulo

- SolicitudFirmaConfig: Catálogos, tarifario, cuentas de pago y texto del consentimiento. El dashboard renderiza lo que reciba: no hay copia de estos datos en el front.
  - `habilitado` boolean: Siempre true: con NEWBEST_HABILITADO apagado el módulo no existe y la ruta responde 404.
  - `enlaceRegistro` string, uri, nullable: URL del asistente hospedado de NewBest donde el titular consiente, valida su cédula y sube sus fotos. Null si NEWBEST_ENLACE_REGISTRO no está configurada.
  - `tarifarioConfirmado` boolean: false mientras NewBest no entregue el tarifario definitivo: los importes son referenciales y la UI debe decirlo.
  - `consentimiento` object: Texto que el usuario acepta al enviar. Se guarda su versión como evidencia LOPDP.
    - `version` string
    - `texto` string
  - `tiposFirma` object[]
    - `id` 1 | 2 | 3
    - `nombre` string: Literal de NewBest (PERSONA NATURAL, …).
    - `etiqueta` string
    - `documentos` object[]
      - `tipoArchivo` integer
      - `nombre` string
      - `etiqueta` string
      - `origen` 'asistente' | 'contadeo': asistente = el titular ya lo entregó en NewBest y Contadeo no lo pide ni lo ve; contadeo = se sube por POST /solicitudes-firma/{id}/documentos.
      - `obligatorio` boolean
      - `formatos` string[]: Extensiones admitidas, sin punto.
      - `maxBytes` integer
  - `vigencias` object[]: Combinaciones vendibles: solo las que tienen precio vigente. Se filtra por tipoFirma y esRenovacion.
    - `tipoFirma` integer
    - `esRenovacion` boolean
    - `vigencia` integer
    - `nombre` string
    - `dias` integer
    - `valorOriginalCentavos` integer
    - `descuentoPorcentaje` integer
    - `valorRealCentavos` integer
    - `vigenteDesde` string, date
  - `cuentasBancarias` object[]: Cuentas de NewBest a las que el titular transfiere. Vacío mientras no las entreguen: sin cuentas el dashboard no muestra la sección de pago.
    - `banco` string
    - `tipoCuenta` string
    - `numero` string
    - `titular` string
    - `identificacion` string
  - `provincias` object[]: Árbol provincia → cantón → ciudad del catálogo de NewBest. Vacío mientras falte su anexo: el dashboard usa texto libre.
    - `id` integer
    - `nombre` string
    - `cantones` object[]
      - `id` integer
      - `nombre` string
      - `ciudades` object[]
        - `id` integer
        - `nombre` string

## Other responses

- `404`: Recurso inexistente (o de otra cuenta — aislamiento multi-tenant)

---

[API](https://skmtc.dev/contadeo/apis/api-de-contadeo.md) · [All operations](https://skmtc.dev/contadeo/apis/api-de-contadeo/llms.txt) · [OpenAPI document](https://skmtc.dev/contadeo/apis/api-de-contadeo/revisions/461bbb9a74ce?raw)
