Skip to content

Consultar RUC

http
GET /invoicing/ruc/info

Consulta información fiscal de un RUC (Registro Único de Contribuyente) en el registro de la DGI. Útil para validar datos fiscales de un cliente antes de emitir una factura.

Autenticación

Requiere header X-SOLERBA-TOKEN. Ver .

Query Parameters

ParámetroTipoRequeridoDescripción
rucstringNúmero de RUC a consultar
typeintegerTipo de contribuyente: 1 (persona natural) o 2 (persona jurídica)

Alias del parámetro type

También se acepta tipo como nombre del parámetro en lugar de type.

Ejemplo

bash
# Persona natural
curl -X GET "https://api.solerba.com/external-api/invoicing/ruc/info?ruc=4-797-2472&type=1" \
  -H "X-SOLERBA-TOKEN: tu-api-token-aqui"

# Persona jurídica
curl -X GET "https://api.solerba.com/external-api/invoicing/ruc/info?ruc=6-123-3123&type=2" \
  -H "X-SOLERBA-TOKEN: tu-api-token-aqui"

Ejemplo JS

javascript
// Persona natural
const response = await fetch(
  'https://api.solerba.com/external-api/invoicing/ruc/info?ruc=4-797-2472&type=1',
  {
    headers: {
      'X-SOLERBA-TOKEN': process.env.SOLERBA_TOKEN
    }
  }
);

const result = await response.json();
console.log(result);

Ejemplo Py

python
import requests

# Persona natural
response = requests.get(
    'https://api.solerba.com/external-api/invoicing/ruc/info',
    params={'ruc': '4-797-2472', 'type': 1},
    headers={'X-SOLERBA-TOKEN': 'tu-api-token-aqui'}
)

result = response.json()
print(result)

Respuesta exitosa

HTTP 200 OK

json
{
  "success": true,
  "result": {
    "ruc": "4-797-2472",
    "dv": 7,
    "name": "JUAN PABLO RIVERA LASSO",
    "type": 1
  }
}
CampoTipoDescripción
rucstringNúmero de RUC consultado
dvintegerDígito verificador
namestringNombre o razón social registrada ante la DGI
typeintegerTipo de contribuyente (1 = natural, 2 = jurídico)

Casos de uso

Validar datos antes de facturar

Consulta el RUC antes de crear una factura para asegurarte de que los datos fiscales del cliente son correctos:

javascript
// 1. Consultar RUC
const rucInfo = await fetch(
  'https://api.solerba.com/external-api/invoicing/ruc/info?ruc=6-123-3123&type=2',
  { headers: { 'X-SOLERBA-TOKEN': process.env.SOLERBA_TOKEN } }
).then(r => r.json());

// 2. Usar los datos en la factura
const invoice = await fetch(
  'https://api.solerba.com/external-api/invoicing/lite',
  {
    method: 'POST',
    headers: {
      'X-SOLERBA-TOKEN': process.env.SOLERBA_TOKEN,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      branchId: 1,
      client: {
        taxName: rucInfo.result.name,
        taxId: rucInfo.result.ruc,
        taxDv: rucInfo.result.dv,
        taxIdType: rucInfo.result.type,
        taxReceiverType: '01',
        email: '[email protected]'
      },
      items: [
        { description: 'Servicio', qty: 1, price: 100, taxes: [{ code: '01' }] }
      ],
      payments: [
        { type: '04', amount: 107 }
      ]
    })
  }
).then(r => r.json());

Buena práctica

Valida siempre el RUC antes de facturar a un contribuyente (tipo 01) o entidad de gobierno (tipo 03). Esto te asegura que los datos fiscales son correctos y evita rechazos en la emisión.

Problemas comunes

ErrorCausaSolución
401 UnauthorizedToken inválido o expiradoVerifica tu API Token
400 — ruc requeridoNo se envió el parámetro rucIncluye el RUC en los query parameters
400 — type requeridoNo se envió el parámetro typeIncluye type con valor 1 o 2
404 Not FoundRUC no encontrado en el registro de la DGIVerifica que el RUC y el tipo sean correctos

Siguientes pasos

  • — Usa los datos del RUC para facturar
  • — Tipos de receptor y datos requeridos
  • — Catálogos de tipos de identificación

Documentación oficial de Zelta