Ir al contenido
Facturalo

Código de producto SUNAT

Encuentra el código de producto SUNAT (catálogo UNSPSC de 8 dígitos) a partir de la descripción del ítem. Búsqueda semántica sobre el CUBSO del Estado peruano.

GEThttps://api.facturalo.pe/api/v3/catalogos/productos-sunat

Query

Campo
Descripción
q
stringrequerido
Descripción del producto o servicio, como la escribes en el comprobante (2 a 120 caracteres).Ej: laptop core i5
tipo
stringopcional
Filtra por bien, servicio, obra o consultoria_obra.
limite
integeropcional
Candidatos a devolver, de 1 a 10 (default 5).

El código de producto SUNAT va en items[].codigoProductoSunat al emitir. No es obligatorio en todas las operaciones, pero SUNAT lo exige en algunas (por ejemplo, exportaciones y ciertas ventas al Estado) y ayuda a clasificar tus ventas. Este endpoint lo encuentra a partir de la descripción: no necesitas conocer el catálogo.

CampoDescripción
codigoCódigo de producto SUNAT de 8 dígitos (UNSPSC). Es el que va en codigoProductoSunat.
nombreNombre genérico del código.
descripcionÍtem del CUBSO más parecido a tu búsqueda.
codigoCubsoCódigo CUBSO de 16 dígitos (Catálogo Único de Bienes, Servicios y Obras del Estado).
tipobien, servicio, obra o consultoria_obra.
ejemplosÍtems reales del CUBSO con ese código, para confirmar que es el correcto.
similitudQué tan parecido es a tu búsqueda (0 a 1). Muestra los 2 o 3 mejores y deja elegir a la persona.

modo es semantico (búsqueda por significado) o palabras (respaldo por coincidencia de texto, si el servicio de IA no responde). No necesita token y tiene un límite de consultas por minuto. También está en los SDKs (consultas.codigoProductoSunat) y en el MCP (find_sunat_product_code). Para buscarlo a mano: buscador de códigos SUNAT.

Language

Credentials

Header

Authorization

Token de la empresa · HTTP directo

Fetch Request
$ # Node 18+ fetch
const response = await fetch("https://api.facturalo.pe/api/v3/catalogos/productos-sunat", {
  method: "GET",
  headers: {
    "Authorization": "sk_test_…"
  }
});

const data = await response.json();
console.log(data);
HTTP directo · funciona con cualquier cliente HTTP
Response

Elige un ejemplo de respuesta:

application/json
200OK
{
  "success": true,
  "data": {
    "consulta": "laptop core i5",
    "modo": "semantico",
    "resultados": [
      {
        "codigo": "43211503",
        "nombre": "Computadora personal portatil",
        "descripcion": "Computadora personal portatil core i5 2.50 ghz",
        "codigoCubso": "4321150300378604",
        "tipo": "bien",
        "ejemplos": [
          "COMPUTADORA PERSONAL PORTATIL CORE I5 2.50 GHZ, MEMORIA RAM 4 GB, DISCO DURO 500 GB, PANTALLA LCD 15.6 in",
          "COMPUTADORA PERSONAL PORTATIL CORE I5 1.70 GHZ, MEMORIA RAM 8 GB, DISCO DURO 500 GB, PANTALLA LCD 15.6 in"
        ],
        "similitud": 0.751
      }
    ]
  }
}