# Anulación

## Introducción

La anulación de un e-CF es un proceso electrónico utilizado en la República Dominicana, mediante el cual los contribuyentes autorizados por la Dirección General de Impuestos Internos (DGII) pueden dejar sin efecto comprobantes fiscales electrónicos previamente emitidos pero no enviados aún a la DGII o al receptor, así como secuencias autorizadas que no fueron utilizadas. Este proceso es importante para asegurar la correcta emisión y registro de documentos fiscales electrónicos.

* **Identificación Obligatoria:** Debe incluir la identificación fiscal del emisor (RNC - Registro Nacional de Contribuyente), así como la secuencia específica del e-CF a ser anulado.
* **Uso Habitual:** Utilizada principalmente para corregir errores antes del envío oficial de un e-CF a la DGII o al receptor, permitiendo mantener actualizados los registros fiscales electrónicos de forma precisa.
* **Montos Desglosados:** Al tratarse de una anulación, no se detalla información sobre impuestos o montos, ya que el objetivo es dejar sin efecto el documento previamente emitido o secuencias autorizadas no utilizadas.

## Autenticación

Para acceder al servicio de facturación electrónica a través de nuestra API REST, los usuarios deben autenticarse utilizando el método de Authorization Bearer Token. Este proceso implica dos pasos principales:<br>

1. **Autenticación Básica:** Los usuarios envían sus credenciales (usuario y contraseña) codificadas en base64 en el encabezado de la solicitud.
2. **Identificador del Servicio:** Junto con las credenciales, los usuarios deben especificar el identificador del servicio que desean utilizar.
3. **Generación del Token:** Los usuarios pueden generar el token enviando una solicitud \[GET] a `URL_API_AUTH/ServicioEDOC`, incluyendo el identificador del servicio deseado.

**Servicios Disponibles**

Cada servicio dentro de la plataforma tiene un identificador único que debe ser proporcionado durante la solicitud de autenticación. A continuación, se muestra una tabla con los identificadores y nombres de los servicios disponibles:

| ID | Servicio              | Descripción                                             |
| -- | --------------------- | ------------------------------------------------------- |
| 1  | Emisión Comprobante   | Servicio eDoc de emisión de comprobantes                |
| 2  | Recepción Comprobante | Servicio eDoc de recepción de comprobantes              |
| 3  | Consulta Emisión      | Servicio eDoc de consulta de comprobantes emitidos      |
| 4  | Consulta Recepción    | Servicio eDoc de consulta de comprobantes por recepción |
| 7  | Reenvío Mail          | Servicio eDoc de reenvío de documentos por correo       |
| 9  | Recepción Pago        | Servicio eDoc de recepción de pagos.                    |
| 10 | Consulta Pago         | Servicio eDoc de consulta de pagos realizados.          |

**Seguridad y Manejo del Token**

* **Almacenamiento Seguro:** Es esencial que el token se almacene de manera segura para evitar accesos no autorizados.
* **Caducidad y Renovación:** Los tokens tienen un período de validez limitado y deben ser renovados periódicamente.
* **Revocación de Tokens:** En caso de compromiso, el token debe ser revocado inmediatamente.

{% openapi src="<https://1262530701-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSy9wX2LMzjeLCSxKNQFS%2Fuploads%2FyppaSujc2p8dzYwhAjin%2Fswagger-auth.json?alt=media&token=eb58be41-c952-4005-9ee2-d91d9f6b619b>" path="/ServicioEDOC" method="get" %}
[swagger-auth.json](https://1262530701-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSy9wX2LMzjeLCSxKNQFS%2Fuploads%2FyppaSujc2p8dzYwhAjin%2Fswagger-auth.json?alt=media\&token=eb58be41-c952-4005-9ee2-d91d9f6b619b)
{% endopenapi %}

## Emisión

En esta sección, abordaremos los detalles técnicos específicos del proceso de emisión de Comprobante de pagos al Exterior Electrónico utilizando la tecnología REST. Exploraremos cómo este enfoque facilita la integración eficiente y segura de los sistemas de facturación dentro de las infraestructuras empresariales existentes, asegurando la conformidad con los estándares legales y fiscales relevantes. Nos centraremos en la implementación de REST para describir las interacciones entre los sistemas y los métodos empleados para la transmisión de datos de facturación electrónica.

## Estados eDoc

La gestión adecuada de los estados eDoc es crucial en el sistema de facturación electrónica, ya que cada estado refleja una etapa específica en el proceso de validación y envío de documentos a la entidad tributaria. A continuación, se presenta una tabla que describe cada uno de los estados eDoc, proporcionando claridad sobre las acciones necesarias según el estado en que se encuentre el documento.

<table data-full-width="false"><thead><tr><th width="102">Estado </th><th>Descripción del Estado	</th><th width="98">Reenviar</th><th width="108">Consultar</th><th>Acción Recomendada</th></tr></thead><tbody><tr><td>2</td><td>Documento autorizado, cumple con todo lo requerido por la DGII y el ente tributario.</td><td>NO</td><td>NO</td><td>No se requieren acciones adicionales.</td></tr><tr><td>3</td><td>No Autorizado</td><td>SI</td><td>NO</td><td>Corregir datos y volver a enviar con el siguiente secuencial de factura.adicionales</td></tr><tr><td>4</td><td>Error de procesamiento en eDoc, se debe radicar un ticket de atención en nuestra mesa de ayuda</td><td>NO</td><td>NO</td><td>Notificar a soporte técnico.</td></tr><tr><td>5</td><td>El documento fue recibido pero no hubo respuesta a la consulta del estado hacia la entidad tributaria.</td><td>NO</td><td>SI</td><td>No reenviar. Consultar el estado del documento nuevamente.</td></tr><tr><td>6</td><td>Documento devuelto por el ente tributario, no cumple con las especificaciones del XML en campos obligatorios. Se debe corregir datos y volver a enviar con el mismo secuencial del documento rechazado.</td><td>SI</td><td>NO</td><td>Corregir según indicaciones y luego reenviar manualmente con un secuencial diferente.</td></tr><tr><td>7</td><td>El documento no fue recibido por la entidad tributaria.</td><td>NO</td><td>SI</td><td>No reenviar. Consultar el estado del documento.</td></tr><tr><td>11</td><td>Documento anulado en el ente tributario.</td><td>NO</td><td>NO</td><td>No se requieren acciones adicionales.</td></tr><tr><td>12</td><td>Pendiente resumen</td><td>SI</td><td>NO</td><td>Automáticamente el proceso batch toma la factura y la vuelve a enviar a la Dgii.</td></tr><tr><td>15</td><td>Documento devuelto por eDoc previo a generación del XML por posible duplicidad, credenciales inválidas o Tipo de Documento no reconocido.</td><td>NO</td><td>SI</td><td>Si el documento es duplicado consultar el documento si ha sido autorizado previamente; Si las credenciales son invalidas verificar que se esté enviando la información correcta; y Si envía el documento en la clase equivocada se debe corregir y volver a enviar el mismo documento</td></tr><tr><td>18</td><td>No encontrado en eDoc</td><td>NO</td><td>NO</td><td>No hacer nada porque es resultado de la consulta.</td></tr></tbody></table>

* **Estado Autorizado (2):** Este estado indica que el documento ha sido autorizado por la entidad tributaria. En este punto, no se requiere ninguna acción adicional como reenvío o consulta del estado, pues el documento ya ha completado su proceso satisfactoriamente.
* **Estados Transitorios (5, 7):** Estos estados reflejan las fases intermedias en el proceso de envío y recepción de documentos con la entidad tributaria. En todos estos casos, no se deben reenviar los documentos, sino consultar su estado hasta que cambien a una situación definitiva.
* **Estados de Error y Corrección (3, 4, 6, 15, 18):** El estado 4 indica un error en el proceso de envío o procesamiento, y no debe reenviarse automáticamente; es necesario revisar el error específico y corregirlo si es posible. El estado 6 se asigna a documentos rechazados por la entidad tributaria y requiere corrección manual antes de un reenvío. El estado 15 sugiere que el documento fue devuelto por eDoc empresarial y debe ser analizado para determinar la causa y decidir las acciones correctivas apropiadas. En estos casos, la corrección de errores es fundamental antes de cualquier intento de reenvío.
* **Estado de Anulación (11):** Este estado indica que el documento ha sido anulado y, por lo tanto, ya no tiene validez legal o administrativa. No se requieren acciones adicionales para documentos en este estado, ya que han sido efectivamente retirados del proceso.

**Consideraciones Importantes**

* **Consultas de Estado:** Para los estados que sugieren consultar el estado del documento, es recomendable establecer un intervalo regular de consultas para evitar la saturación del sistema y asegurar la actualización oportuna del estado del documento.
* **Notificaciones a Soporte:** En casos de errores que no pueden ser resueltos directamente por el usuario, como el estado 4, es fundamental notificar al soporte técnico proporcionando todos los detalles necesarios para una rápida resolución del problema.

## Diccionario de datos

{% embed url="<https://wiki.edocnube.com/diccionario/Documentation/Swagger?p1=AJkuNFFcBIWlVZv9c+IMcfqd4+MhfhpjNd4SiFHWuZjUV7c4hQJ9vXCALmzNZN77cL7bVlMB7TuAmUgAAraKmYwNDi0fQ/uNTpbmS3BkjrjvQ3Ogy+8pB31WR/V7ZplmyOKlWfjqBhdZKsTKozflaA==&p2=EoWbYb/FBQ7+HIWWn+AakOb+8h0FOP3K&p3=YCc/wEVHlA8=&p4=L5lbnPmTSNE=&p5=zJ9Xe44igOU=&p6=0h6AVWZOsDA=>" %}

## Consumo

{% openapi src="<https://1262530701-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSy9wX2LMzjeLCSxKNQFS%2Fuploads%2FYSZKyU2kCkVEp4i59nFm%2Fswagger-anulacion.json?alt=media&token=2a8688d7-e1bb-4b45-b18b-9d253f99277f>" path="/Emitir" method="post" %}
[swagger-anulacion.json](https://1262530701-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSy9wX2LMzjeLCSxKNQFS%2Fuploads%2FYSZKyU2kCkVEp4i59nFm%2Fswagger-anulacion.json?alt=media\&token=2a8688d7-e1bb-4b45-b18b-9d253f99277f)
{% endopenapi %}

## Pruebas

```json
{
  "RNCEmisor": "131980899",
  "FechaEmision": "2025-04-01T00:00:00-04:00",
  "DetallesAnulacion": [
    { "TipoeCF": 46, "SecuenciaeNCFDesde": 80001, "SecuenciaeNCFHasta": 80001 }
  ]
}
```
