Saltar a contenido

Directorio de facturadores electrónicos

Responde la pregunta que decide cómo se entrega un comprobante: ¿el comprador es receptor electrónico? Si lo es, hay que transmitirle el e-CF a su propio servicio de recepción; si no, se le entrega la representación impresa.

Los datos son de la DGII: "retornar en el ambiente productivo los contribuyentes electrónicos autorizados y las URLs de sus servicios de recepción de e-CF, aprobación comercial y autenticación".

Requiere el permiso directory:read y, como toda llamada que actúa por una empresa, el token y el parámetro emisor_rnc con su empresa (tokens-y-permisos.md).

No confunda los dos RNC. El de la ruta (/directory/{rnc}) es el consultado: el comprador del que quiere saber si es receptor electrónico. emisor_rnc es su empresa, la que hace la consulta: GET /api/v1/directory/131880738?emisor_rnc=133802074.

GET /api/v1/directory/{rnc}

El caso normal: consultar un comprador concreto.

{
  "status": "success",
  "message": "Consulta exitosa.",
  "data": {
    "receptor_electronico": true,
    "nombre": "COMERCIO, SRL",
    "rnc": "131880738",
    "recepcion": "https://comercio.do/fe/recepcion/api/ecf",
    "aprobacion": "https://comercio.do/fe/aprobacioncomercial/api/ecf",
    "autenticacion": "https://comercio.do/fe/autenticacion"
  }
}

Si el RNC no figura como autorizado:

{
  "status": "success",
  "message": "El RNC no figura como facturador electrónico autorizado: al comprador hay que entregarle la representación impresa.",
  "data": { "rnc": "131888888", "receptor_electronico": false }
}

Fíjese en que no es un error (200, status: "success"): no estar en el directorio es una respuesta legítima y accionable; el message lo dice con palabras y receptor_electronico con un dato que su sistema puede leer.

Campo Qué es
receptor_electronico true si está autorizado. Es el dato que decide el camino de entrega.
recepcion URL de su servicio de recepción de e-CF.
aprobacion URL de su servicio de aprobación comercial.
autenticacion URL de su servicio de autenticación, si lo tiene (la DGII la llama urlOpcional).

GET /api/v1/directory

El listado completo de facturadores autorizados. Útil para sincronizar un maestro de clientes; para resolver una emisión concreta es mejor la consulta por RNC. Devuelve «Consulta exitosa.» y la lista en data (cada elemento con nombre, rnc, recepcion, aprobacion y autenticacion, como arriba).

Notas

  • Se cachea 6 horas. El directorio cambia poco y se consultaría en cada emisión.
  • Si la DGII no responde se devuelve 503, no un 4xx: el problema no es de su petición. El cuerpo es el de siempre (status: "error", «No se pudo consultar el directorio de la DGII en este momento.» y la explicación en data.detalle), sin el texto técnico de lo que falló (cómo leerlo).
  • Sólo se acepta la ficha del RNC consultado. Si el servicio devolviera la de otro contribuyente, se responde receptor_electronico: false en lugar de dar por bueno un dato ajeno.
  • En pre-certificación este servicio devuelve las URLs del emisor-receptor simulado que habilita la DGII "para simular ser otro contribuyente", que son las que se usan en las pruebas de comunicación del set de certificación.

Referencias