Consulta un comprobante emitido
const url = 'https://api.novafe.example/api/v1/ecf/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = {method: 'GET', headers: {'X-API-Key': '<X-API-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.novafe.example/api/v1/ecf/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'X-API-Key: <X-API-Key>'Devuelve el comprobante emitido y su estado.
Autenticación: requiere una API key (header X-API-Key) con rol admin_tenant, emisor o consultor.
Authorizations
Sección titulada «Authorizations»Parameters
Sección titulada «Parameters»Path Parameters
Sección titulada «Path Parameters»Responses
Sección titulada «Responses»OK
Vista de un comprobante emitido (respuesta de POST /ecf y GET /ecf/{id}).
Trae la identidad fiscal, el resumen comercial (comprador, monto total —
igual que EcfSummaryDto) y el resultado del intercambio con
la DGII (EcfDgiiExchange? EcfDto.Dgii). El desglose por línea y el resto del detalle
comercial siguen viviendo solo en el XML firmado (GET /ecf/{id}/xml).
object
Lo que pasó con la DGII: trackId, estado (texto y código), mensajes,
secuenciaUtilizada y los instantes de envío, recepción y resolución.
null mientras el comprobante no se haya enviado.
object
Identificador que la DGII asigna al recibir el comprobante.
El estado textual de la DGII (“Aceptado”, “Rechazado”, “En Proceso”…); en el idioma en que lo manda ella.
Código de estado de la DGII: 1 aceptado · 2 rechazado · 3 en proceso · 4 aceptado condicional.
secuenciaUtilizada de la DGII: false = el e-NCF no se consumió
(firma/XML inválidos); true o ausente = consumido.
Observaciones o motivo de rechazo que devolvió la DGII.
object
Instante en que la DGII confirmó la recepción (hay string? EcfDgiiExchange.TrackId).
La fechaRecepcion que informó la DGII; ausente si no la dio (p. ej. RFCE).
Instante en que la DGII dio un resultado definitivo.
El reintento automático en curso o ya hecho: cuántas veces NovaFE reenvió el mismo
comprobante tras un rechazo transitorio de la DGII, el tope, y cuándo es el próximo
intento. null mientras no haya habido ningún reintento.
object
Reenvíos automáticos que NovaFE ya hizo de este comprobante.
Tope de reenvíos automáticos. Al agotarse, el rechazo queda firme.
Cuándo es el próximo intento; null si no hay uno pendiente.
Enlaces a los recursos relacionados del comprobante.
object
El comprobante y su estado.
El XML firmado (<ECF>).
El resumen firmado (<RFCE>); solo cuando submitsRfce.
La Representación Impresa en PDF.
Vista de un comprobante emitido (respuesta de POST /ecf y GET /ecf/{id}).
Trae la identidad fiscal, el resumen comercial (comprador, monto total —
igual que EcfSummaryDto) y el resultado del intercambio con
la DGII (EcfDgiiExchange? EcfDto.Dgii). El desglose por línea y el resto del detalle
comercial siguen viviendo solo en el XML firmado (GET /ecf/{id}/xml).
object
Lo que pasó con la DGII: trackId, estado (texto y código), mensajes,
secuenciaUtilizada y los instantes de envío, recepción y resolución.
null mientras el comprobante no se haya enviado.
object
Identificador que la DGII asigna al recibir el comprobante.
El estado textual de la DGII (“Aceptado”, “Rechazado”, “En Proceso”…); en el idioma en que lo manda ella.
Código de estado de la DGII: 1 aceptado · 2 rechazado · 3 en proceso · 4 aceptado condicional.
secuenciaUtilizada de la DGII: false = el e-NCF no se consumió
(firma/XML inválidos); true o ausente = consumido.
Observaciones o motivo de rechazo que devolvió la DGII.
object
Instante en que la DGII confirmó la recepción (hay string? EcfDgiiExchange.TrackId).
La fechaRecepcion que informó la DGII; ausente si no la dio (p. ej. RFCE).
Instante en que la DGII dio un resultado definitivo.
El reintento automático en curso o ya hecho: cuántas veces NovaFE reenvió el mismo
comprobante tras un rechazo transitorio de la DGII, el tope, y cuándo es el próximo
intento. null mientras no haya habido ningún reintento.
object
Reenvíos automáticos que NovaFE ya hizo de este comprobante.
Tope de reenvíos automáticos. Al agotarse, el rechazo queda firme.
Cuándo es el próximo intento; null si no hay uno pendiente.
Enlaces a los recursos relacionados del comprobante.
object
El comprobante y su estado.
El XML firmado (<ECF>).
El resumen firmado (<RFCE>); solo cuando submitsRfce.
La Representación Impresa en PDF.
Examplegenerated
{ "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "status": "example", "encf": "example", "type": 1, "environment": "example", "sequenceExpiresOn": "2026-04-15", "issueDate": "2026-04-15", "issuedAt": "2026-04-15T12:00:00Z", "signedAt": "2026-04-15T12:00:00Z", "securityCode": "example", "qrUrl": "example", "submitsRfce": true, "internalNumber": "example", "toleranceWarning": "example", "signedDuringContingency": true, "montoTotal": 1, "buyerRnc": "example", "buyerName": "example", "documentHash": "example", "dgii": { "trackId": "example", "status": "example", "statusCode": 1, "sequenceUsed": true, "messages": [ { "code": 1, "value": "example" } ], "submittedAt": "2026-04-15T12:00:00Z", "receivedAt": "2026-04-15T12:00:00Z", "processedAt": "2026-04-15T12:00:00Z" }, "retry": { "count": 1, "max": 1, "nextAttemptAt": "2026-04-15T12:00:00Z" }, "links": { "self": "example", "xml": "example", "rfceXml": "example", "representation": "example" }}Vista de un comprobante emitido (respuesta de POST /ecf y GET /ecf/{id}).
Trae la identidad fiscal, el resumen comercial (comprador, monto total —
igual que EcfSummaryDto) y el resultado del intercambio con
la DGII (EcfDgiiExchange? EcfDto.Dgii). El desglose por línea y el resto del detalle
comercial siguen viviendo solo en el XML firmado (GET /ecf/{id}/xml).
object
Lo que pasó con la DGII: trackId, estado (texto y código), mensajes,
secuenciaUtilizada y los instantes de envío, recepción y resolución.
null mientras el comprobante no se haya enviado.
object
Identificador que la DGII asigna al recibir el comprobante.
El estado textual de la DGII (“Aceptado”, “Rechazado”, “En Proceso”…); en el idioma en que lo manda ella.
Código de estado de la DGII: 1 aceptado · 2 rechazado · 3 en proceso · 4 aceptado condicional.
secuenciaUtilizada de la DGII: false = el e-NCF no se consumió
(firma/XML inválidos); true o ausente = consumido.
Observaciones o motivo de rechazo que devolvió la DGII.
object
Instante en que la DGII confirmó la recepción (hay string? EcfDgiiExchange.TrackId).
La fechaRecepcion que informó la DGII; ausente si no la dio (p. ej. RFCE).
Instante en que la DGII dio un resultado definitivo.
El reintento automático en curso o ya hecho: cuántas veces NovaFE reenvió el mismo
comprobante tras un rechazo transitorio de la DGII, el tope, y cuándo es el próximo
intento. null mientras no haya habido ningún reintento.
object
Reenvíos automáticos que NovaFE ya hizo de este comprobante.
Tope de reenvíos automáticos. Al agotarse, el rechazo queda firme.
Cuándo es el próximo intento; null si no hay uno pendiente.
Enlaces a los recursos relacionados del comprobante.
object
El comprobante y su estado.
El XML firmado (<ECF>).
El resumen firmado (<RFCE>); solo cuando submitsRfce.
La Representación Impresa en PDF.
Examplegenerated
{ "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "status": "example", "encf": "example", "type": 1, "environment": "example", "sequenceExpiresOn": "2026-04-15", "issueDate": "2026-04-15", "issuedAt": "2026-04-15T12:00:00Z", "signedAt": "2026-04-15T12:00:00Z", "securityCode": "example", "qrUrl": "example", "submitsRfce": true, "internalNumber": "example", "toleranceWarning": "example", "signedDuringContingency": true, "montoTotal": 1, "buyerRnc": "example", "buyerName": "example", "documentHash": "example", "dgii": { "trackId": "example", "status": "example", "statusCode": 1, "sequenceUsed": true, "messages": [ { "code": 1, "value": "example" } ], "submittedAt": "2026-04-15T12:00:00Z", "receivedAt": "2026-04-15T12:00:00Z", "processedAt": "2026-04-15T12:00:00Z" }, "retry": { "count": 1, "max": 1, "nextAttemptAt": "2026-04-15T12:00:00Z" }, "links": { "self": "example", "xml": "example", "rfceXml": "example", "representation": "example" }}Not Found
object
object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}object
Examplegenerated
{ "type": "example", "title": "example", "status": 1, "detail": "example", "instance": "example"}