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.

Solo aplica a contribuyentes panameños

Este endpoint consulta únicamente el registro de la DGI de Panamá. No aplica a clientes extranjeros (receptor 04): sus datos no existen en el registro panameño, no tienen dígito verificador y no pueden validarse por esta vía. Para facturar a un extranjero, envía su identificación (foreignTaxId o passport) directamente; country es obligatorio solo cuando la identificación es por passport. Ver .

Autenticación ​

Requiere header X-SOLERBA-TOKEN. Ver .

Query Parameters ​

ParámetroTipoRequeridoDescripción
rucstringSíNúmero de RUC a consultar
typeintegerSíTipo 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. Los receptores Consumidor Final (02) y Extranjero (04) no se validan por esta vía.

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