Skip to Content
v1.0Documentación oficial de la API LX CloudPos · estable en producción
V1Modelo De DatosFacturaApiRequestDto

FacturaApiRequestDto

Schema completo del request body de POST /api/v1/facturas.

interface FacturaApiRequestDto { /** OBLIGATORIO. Tipo de comprobante a emitir. */ tipo: "FacturaElectronica" | "TiqueteElectronico" | "NotaCredito" | "NotaDebito"; /** Receptor. Obligatorio para FE/NC/ND. Opcional para TE. */ cliente?: FacturaApiClienteDto | null; /** Código condición de venta. Ver catálogo Hacienda. Default "01" (Contado). */ condicionVenta: string; /** Plazo en días si condicionVenta="02". */ plazoCredito?: number; /** Código medio de pago. Ver catálogo Hacienda. Default "01" (Efectivo). */ medioPago: string; /** Código moneda ISO. Default "CRC". */ moneda: string; /** Tipo de cambio. Si moneda="USD" y se omite, se consulta del BCCR. */ tipoCambio?: number | null; /** Código actividad económica del emisor. Si se omite, usa la principal del tenant. */ codigoActividad?: string | null; /** Código actividad económica del receptor. */ codigoActividadReceptor?: string | null; /** Texto libre con comentarios visibles en el PDF y XML. */ comentario?: string | null; /** OBLIGATORIO. Al menos 1 línea. */ lineas: FacturaApiLineaDto[]; /** OBLIGATORIO para NC/ND. Opcional para FE/TE. */ referencias: FacturaApiReferenciaDto[]; }

Validaciones por campo

CampoReglaError si falla
tipoDebe ser uno de los 4 valores del enum TipoComprobanteApi.400
clientePresente y con idCliente válido cuando tipo es FE, NC o ND.400 — Factura electrónica requiere cliente.
condicionVentaString de 2 caracteres según catálogo Hacienda.400 o validación Hacienda 9015
plazoCredito≥ 0. Se usa solo si condicionVenta = "02".
medioPagoString de 2 caracteres según catálogo Hacienda.400 o validación Hacienda
moneda"CRC", "USD" o código interno ("01" / "02").
tipoCambio> 0 si está presente.
lineasArray con al menos un elemento.400 — Debe incluir al menos una línea.
referenciasRequerido (≥ 1) cuando tipo es NC o ND.400