> ## Documentation Index
> Fetch the complete documentation index at: https://docs.syntage.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Extracciones

Las extracciones son tareas que recuperan datos de una entidad desde una fuente de datos. Se utilizan para recopilar facturas, declaraciones fiscales, situación fiscal, opiniones de cumplimiento, registros del RPC, garantías del RUG, reportes de Buró de Crédito y otros registros respaldados por fuentes de datos.

Una extracción se ejecuta de forma asíncrona. Crear una inicia o encola el trabajo, y el recurso Extraction devuelto rastrea su estado, opciones, tiempos, errores y la cantidad de recursos creados o actualizados.

## Cómo funcionan las extracciones

1. Crea o recupera la entidad de la que quieres extraer datos.
2. Inicia la extracción con la fuente de datos y las opciones seleccionadas.
3. Almacena el ID de extracción devuelto.
4. Consulta la extracción hasta que su `status` sea `finished` o `failed`.
5. Lee los datos extraídos desde los endpoints de recursos relacionados, como facturas o declaraciones fiscales.

Si una extracción equivalente ya está `pending` o `running` para la misma entidad, extractor y opciones, Syntage devuelve `409 Conflict` en lugar de iniciar el mismo trabajo nuevamente. La respuesta incluye `conflictingExtractors`, la lista de extractores cuya extracción equivalente ya está en curso. Consulta o espera a que esas extracciones terminen, o quita los extractores indicados de la solicitud antes de reintentar.

Para detalles de implementación, consulta los [Ejemplos de solicitudes de extracción](/es/developers/extraction-request-examples) o [Crear una extracción](/api-reference/extractions/create-an-extraction).

## Extracciones programadas

Usa los planificadores cuando la misma extracción deba ejecutarse repetidamente, como una extracción diaria de facturas o una extracción mensual de declaraciones fiscales. Un planificador controla si la automatización está habilitada, y las reglas del planificador definen el extractor, las opciones y la expresión cron.

Los nombres y opciones de los extractores son específicos de los datos que estás extrayendo. Para recursos respaldados por extracciones, usa la página del recurso para entender qué datos se recopilan y los ejemplos para desarrolladores para los cuerpos de las solicitudes.

## Estado de la extracción

| Estado    | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| pending   | El estado inicial de la extracción. La extracción está encolada y esperando ser procesada.                                                                                                                                                                                                                                                                                                                                                                    |
| waiting   | La extracción todavía no puede ejecutarse porque un requisito previo sigue bloqueándola, como información faltante de la entidad, autorización, una credencial no disponible o una dependencia interna.                                                                                                                                                                                                                                                       |
| running   | El proceso de extracción comenzó y actualmente está en ejecución. El tiempo de ejecución varía dependiendo del tipo de extractor y el volumen transaccional de la entidad. Pueden estar disponibles datos parciales desde los endpoints de recursos relacionados durante este tiempo.                                                                                                                                                                         |
| finished  | La extracción finalizó exitosamente. Los datos extraídos están disponibles desde los endpoints de recursos relacionados.                                                                                                                                                                                                                                                                                                                                      |
| failed    | La extracción no pudo iniciar o falló durante el proceso. Nuestras políticas internas de reintento no lograron finalizar la extracción exitosamente. Puede haber datos parciales disponibles, pero se deben crear nuevas extracciones para garantizar que todos los datos de la entidad estén disponibles. Puedes revisar el [código de error de la extracción](#extraction-error-codes) para entender por qué falló y determinar si puede reintentarse o no. |
| stopping  | El usuario solicitó detener la extracción. Está en proceso de ser detenida.                                                                                                                                                                                                                                                                                                                                                                                   |
| stopped   | La extracción fue detenida por el usuario después de iniciar su ejecución. Esta extracción se incluye en la facturación.                                                                                                                                                                                                                                                                                                                                      |
| cancelled | La extracción fue detenida por el usuario antes de iniciar su ejecución. Esta extracción no se incluye en la facturación.                                                                                                                                                                                                                                                                                                                                     |

## Códigos de error de extracción

| Código               | Descripción                                                                              | Reintentable |
| -------------------- | ---------------------------------------------------------------------------------------- | ------------ |
| invalid\_credentials | La [Credential](/api-reference/ds-mx-sat-credentials) del contribuyente ya no es válida. | No           |
| login\_failed        | No pudimos autenticar al contribuyente con la fuente de datos.                           | Sí           |
| unrecoverable        | El proceso de extracción falló muchas veces y se alcanzó el número máximo de reintentos. | Sí           |
| sat\_unavailable     | Detectamos que el SAT está caído o no responde.                                          | Sí           |
| internal\_error      | Detectamos un error interno en nuestra propia infraestructura.                           | Sí           |
| undefined            | No pudimos determinar la causa del error y nuestro equipo interno lo investigará.        | Sí           |
