Ir al contenido

listDrafts()

Lista documentos editables en estado draft o error. Cada resultado es un resumen, sin conceptos.

Permiso: invoice:read

listDrafts(
input?: DraftListQuery,
options?: RequestOptions
): Promise<DraftListItem[]>

Referencia HTTP: GET /invoice-drafts

  • Devuelve un arreglo, sin meta.pagination ni hasMore. El límite del servidor es 50 por defecto, con máximo de 100. Para recorrer páginas, aumenta offset y termina cuando recibas menos elementos que limit; consulta la guía de paginación del SDK.
ArgumentoTipoObligatorioUso
inputDraftListQueryNoSe puede omitir; el valor predeterminado es {}.
optionsRequestOptionsNosignal e idempotencyKey; consulta las opciones por solicitud.

Opciones por solicitud: signal e idempotencyKey.

Los campos siguientes corresponden a input en TypeScript. Un campo opcional se puede omitir; null solo se admite cuando aparece en su tipo. Las validaciones de negocio se ejecutan en el servidor.

CampoTipoObligatorioDescripción
querystringNoTexto de búsqueda. No es un identificador exacto ni un cursor.Mínimo 1 carácter. Máximo 120 caracteres
limitnumber (entero)NoCantidad máxima de elementos por página. El servidor usa 50 si se omite.Mínimo: 1. Máximo: 100
offsetnumber (entero)NoCantidad de elementos que se saltan. El servidor usa 0 si se omite.Mínimo: 0. Máximo: 1000000

Usa el cliente factucat de Instala y conecta. Los IDs y datos fiscales de este ejemplo son ilustrativos: reemplázalos por los registros de tu cuenta y ambiente.

const resultado = await factucat.listDrafts(
{
"limit": 50,
"offset": 0
},
)
console.log(resultado)

Resuelve una Promise<DraftListItem[]>. El valor recibido es directamente data, sin el envoltorio HTTP ni sus metadatos.

Elemento del arreglo

CampoTipoObligatorioDescripción
idstringSíID de FactuCat del recurso. No es el UUID fiscal.Formato: uuid
foliostringSíFolio del documento.
status"draft" | "error"SíEstado del recurso o resultado de la cancelación; consulta las notas del método.
receiverLegalNamestringSíNombre fiscal del receptor guardado en el documento.
receiverEmailstringNoCorreo del receptor guardado en el documento.Formato: email
currency"MXN" | "USD" | "EUR"SíMoneda del cliente o del comprobante.
totalnumberSíImporte total del documento. En cancelaciones externas se envía como string.
createdAtstringSíFecha y hora de creación en formato ISO 8601; se devuelve como string.Formato: date-time
updatedAtstringSíFecha y hora de última actualización en formato ISO 8601.Formato: date-time
issuedAtstringNoFecha y hora de emisión, cuando está disponible.Formato: date-time
errorMessagestringNoMensaje asociado a un error del documento, cuando está disponible.

Ejemplo de respuesta

[
{
"id": "00112233-4455-4677-8899-aabbccddeeff",
"folio": "A-1001",
"receiverLegalName": "EMPRESA DE EJEMPLO",
"currency": "MXN",
"total": 1160,
"createdAt": "2026-09-08T12:00:00Z",
"updatedAt": "2026-09-08T12:00:00Z",
"status": "draft"
}
]

Las fechas se entregan como cadenas ISO 8601. Un campo opcional puede estar ausente. Tipos, paginación y archivos.

La promesa se rechaza si la API devuelve un error, falla la conexión o los datos no cumplen el contrato. Cómo manejar los errores.