Referencia del SDK
Cada método devuelve una promesa con los datos del recurso. Abre su referencia para consultar la firma completa, los argumentos, todos los campos de entrada y salida y un ejemplo.
El cliente se crea con createFactuCatSdk({ apiKey }) o new FactuCatSdk({ apiKey }). Instala y conecta.
| Método | Devuelve | Para qué sirve |
|---|---|---|
getMe() | PublicMe | Consulta la identidad de la integración, la cuenta propietaria y los permisos de la API key. |
Clientes
Sección titulada «Clientes»| Método | Devuelve | Para qué sirve |
|---|---|---|
listCustomers() | CustomerRecord[] | Busca clientes de la cuenta con un filtro de texto y paginación por offset. |
createCustomer() | CustomerRecord | Guarda un receptor que puedes reutilizar al crear borradores. |
getCustomer() | CustomerRecord | Obtiene los datos guardados de un cliente de la cuenta. |
Borradores y conceptos
Sección titulada «Borradores y conceptos»| Método | Devuelve | Para qué sirve |
|---|---|---|
listDrafts() | DraftListItem[] | Lista documentos editables en estado draft o error. Cada resultado es un resumen, sin conceptos. |
createDraft() | DraftRecord | Crea un borrador vacío o precargado con los datos de un cliente. Todavía no emite un CFDI. |
getDraft() | DraftRecord | Obtiene el borrador completo con sus conceptos y totales. |
setDraftReceiver() | DraftRecord | Modifica los datos del receptor dentro de un borrador editable. |
setDraftMeta() | DraftRecord | Actualiza uso de CFDI, pago, moneda, tipo de cambio y presentación del borrador. |
addDraftItem() | DraftRecord | Agrega un concepto al borrador y devuelve el documento completo con los totales actualizados. |
updateDraftItem() | DraftRecord | Corrige un concepto existente y recalcula los totales del borrador. |
removeDraftItem() | DraftRecord | Elimina un concepto del borrador y devuelve el documento con sus totales actualizados. |
discardDraft() | { id: string } | Elimina un borrador editable. No es una cancelación fiscal. |
Timbrado, consulta y cancelación
Sección titulada «Timbrado, consulta y cancelación»| Método | Devuelve | Para qué sirve |
|---|---|---|
stampDraft() | InvoiceRecord | Valida y timbra un borrador con el CSD de la cuenta. En producción emite un CFDI y registra consumo. |
listInvoices() | InvoiceListItem[] | Lista documentos de la cuenta y permite filtrar por texto y estado. Devuelve resúmenes, sin conceptos. |
getInvoice() | InvoiceRecord | Consulta un documento completo por su ID de FactuCat, con estado, UUID fiscal, conceptos y totales. |
cancelInvoice() | InvoiceCancelOutput | Solicita la cancelación de una factura emitida de la cuenta y devuelve el resultado de confirmación. |
cancelExternalInvoice() | ExternalInvoiceCancelOutput | Solicita la cancelación de un CFDI emitido fuera de FactuCat usando su UUID fiscal y el emisor de la cuenta. |
Archivos
Sección titulada «Archivos»| Método | Devuelve | Para qué sirve |
|---|---|---|
downloadInvoiceXml() | InvoiceXmlOutput | Obtiene el XML como un objeto JSON con nombre de archivo, MIME y contenido base64. |
downloadInvoicePdf() | InvoicePdfOutput | Obtiene la representación PDF como un objeto JSON con nombre de archivo, MIME y contenido base64. |
Nómina y empleados
Sección titulada «Nómina y empleados»Consulta la guía de nómina para employees.list/get, payroll.batches.list/get/create/duplicate y payroll.receipts.list/get/getXml/getPdf. Crear y duplicar guarda borradores sin timbrar.
Opciones y comportamiento compartido
Sección titulada «Opciones y comportamiento compartido»- Configuración del cliente y opciones por solicitud.
- Tipos, paginación y descarga de archivos.
- Errores, cancelación de solicitudes y reintentos.
Los métodos usan la API pública existente. La configuración fiscal y del CSD se hace en la webapp. El SDK no incluye métodos para productos, carga de CSD ni actualización o eliminación de clientes.
Los métodos employees.list/get, payroll.batches.list/get/create/duplicate y payroll.receipts.list/get/getXml/getPdf se describen en la guía de nómina. Sus listados devuelven los registros y el cursor de la siguiente página.