Ir al contenido
Facturalo

Verificar Clave SOL

Prueba el Usuario SOL y la Clave SOL de una empresa iniciando sesión en SUNAT Operaciones en Línea y los guarda solo si SUNAT los acepta. Máximo 5 intentos por minuto. Usa el token de cuenta (user_sk_…).

POSThttps://api.facturalo.pe/api/v3/empresas/{uuid}/sol/verificar

Parámetros del request

Campo
Descripción
uuid
stringrequerido
En la URL. El id de la empresa que devuelve Crear empresa. El login se hace con el RUC de esa empresa.Ej: afcfac05-b5c2-45c4-90d9-7e6f03c9e863
usuario
stringrequerido
Usuario SOL (principal o secundario). Se guarda en mayúsculas. Máx. 50 caracteres.Ej: FACTURA1
clave
stringrequerido
Clave SOL de ese usuario. Se guarda cifrada y nunca se devuelve. Máx. 100 caracteres.Ej: ********
guardar_sin_verificar
booleanopcional
Si es true y SUNAT no responde (error_sunat), guarda la clave igual, sin verificar. Nunca guarda una clave que SUNAT rechazó.Ej:

Límite de intentos

Este endpoint hace un login real en SUNAT. Varios intentos fallidos seguidos pueden bloquear el usuario SOL del cliente en SUNAT, por eso Facturalo acepta como máximo 5 llamadas por minuto; la sexta responde 429 Too Many Requests. Ante un credenciales_invalidas no reintentes automáticamente: pide al cliente que revise sus datos.

Respuestas

estadoHTTPSignificado
ok200SUNAT aceptó el login. La clave quedó guardada y verificada es true.
error_sunat con guardar_sin_verificar: true200SUNAT no respondió, pero la clave se guardó igual. verificada es false.
credenciales_invalidas422SUNAT rechazó el usuario o la clave. No se guardó nada. Revisa que el usuario secundario exista y la clave sea correcta.
error_sunat503SUNAT no respondió o el portal falló. No se guardó nada. Reintenta más tarde o vuelve a llamar con guardar_sin_verificar: true.

Un 422 sin data.estado significa datos inválidos (falta usuario o clave); el detalle viene en errors. 404 si la empresa no existe o tu token no tiene acceso. 429 si superaste los 5 intentos por minuto.

¿Este endpoint o Actualizar empresa?

  • Usa este endpoint cuando el cliente escribe su Clave SOL en tu pantalla: le dices al momento si es correcta, antes de que falle una consulta de CDR o de SIRE.
  • Actualizar empresa con sunat.solUsuario y sunat.solClave guarda la clave sin probarla en SUNAT.
  • Para registrar el PSE en SUNAT usa Alta PSE, que pide el usuario SOL principal.

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/empresas/afcfac05-b5c2-45c4-90d9-7e6f03c9e863/sol/verificar", {
  method: "POST",
  headers: {
    "Authorization": "sk_test_…",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "usuario": "FACTURA1",
    "clave": "********"
  })
});

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,
  "message": "Clave SOL verificada con SUNAT y guardada.",
  "data": {
    "estado": "ok",
    "verificada": true
  }
}