Skip to navigation

PreCFDI - Listado paginado de peticiones

View as Markdown

Este endpoint permite consultar de forma paginada las peticiones de facturación registradas en Fénix.

Está diseñado para:

  • Obtener listados por bloques de registros

  • Aplicar ordenamiento

  • Filtrar resultados por datos clave de la petición.

Es útil para integraciones que necesiten consultar el estado de peticiones PreCFDI, revisar errores, identificar facturas enviadas o localizar órdenes específicas.


Parámetros de consulta (Query Params)

Estos parámetros son opcionales y se envían por URL.

ParámetroTipoRequeridoDescripción
orderNostringNoFiltra por un número de orden específico.
statusstringNoFiltra por el estado actual de la petición.
customerRfcstringNoFiltra las peticiones por RFC del cliente receptor.

Query Param status

ParámetroTipoRequeridoDescripción
statusstringNoFiltra las peticiones por su estado actual dentro del flujo PreCFDI. Solo acepta valores definidos en el catálogo de estados.

Valores permitidos para status

ValorDescripción
NUEVALa petición fue registrada en el sistema y está pendiente de procesamiento.
ERRORLa petición presentó un error durante alguna etapa del proceso.
ENVIADA_AL_SELLERLa petición fue enviada al seller y está en espera de la carga del CFDI por parte del Seller
FACTURADALa petición ya fue procesada y facturada correctamente.

Body de ejemplo

{
"lazyState": {
"first": 0,
"page": 0,
"rows": 10,
"sortField": null,
"sortOrder": "asc"
}
}

Descripción del body

Objeto raíz

CampoTipoRequeridoDescripción
lazyStateobjectSíContiene la configuración de paginación y ordenamiento de la consulta.

Objeto lazyState

CampoTipoRequeridoDescripción
firstintegerSíÍndice del primer registro a recuperar. Normalmente se usa como desplazamiento para paginación.
pageintegerSíNúmero de página actual. Generalmente inicia en 0.
rowsintegerSíNúmero de registros que se desean recuperar por página.
sortFieldstring / nullNoCampo por el cual se ordenarán los resultados. Si se envía null, no se aplica orden por un campo específico.
sortOrderstringSíDirección del ordenamiento. Valores esperados: asc o desc.

Descripción del response

Objeto raíz

CampoTipoDescripción
total_recordsintegerNúmero total de registros que coinciden con la búsqueda, independientemente del tamaño de página solicitado.
recordsarrayLista de peticiones PreCFDI recuperadas en la página actual.

Detalle de cada registro en records

Datos generales de la petición

CampoTipoDescripción
idstringIdentificador único interno de la petición en Fénix.
reqTransactionIdstringIdentificador de transacción agrupadora de la petición. Puede representar un lote o conjunto relacionado de líneas.
reqTransactionLineIdstringIdentificador único de la línea de transacción. Se usa para distinguir una petición específica dentro de una transacción.
purposestringPropósito de la petición. Ejemplo: ORIGINAL, REFACTURA, REENVIO
dateInvoicedstring (ISO 8601)Fecha asociada a la peticion.
invoiceIdstringIdentificador de la factura o referencia principal de negocio.
orderNostringNúmero de orden asociado a la petición.
sellerIdstringIdentificador del vendedor o emisor relacionado con la petición.
autoMotorbooleanIndica si la petición pertenece a flujo automotriz. Valores: true o false.

Objeto payload

Contiene datos funcionales para la generación del comprobante.

CampoTipoDescripción
usoCDFIstringClave de uso CFDI del receptor. Ejemplo: G03.
paymentMethodsobjectInformación de método o tipo de pago reportado en la petición.

payload.paymentMethods

CampoTipoDescripción
paymentTypestringTipo de pago recibido en la petición. Ejemplos: CREDIT, DEBIT.

Objeto customer

Datos del cliente o receptor del CFDI.

CampoTipoDescripción
rfcstringRFC del cliente receptor.
namestringNombre o razón social del cliente.
regimenFiscalReceptorstringClave del régimen fiscal del receptor.
addressobjectDomicilio fiscal o domicilio asociado al receptor.

customer.address

CampoTipoDescripción
addressTypestringTipo de dirección. Ejemplo observado: INVOICE.
addressLineOnestringPrimera línea de dirección.
addressLineTwostringSegunda línea de dirección o número exterior/interior.
localitystringLocalidad del domicilio.
subLocalitystringColonia, zona o subdivisión de la localidad.
citystringCiudad o municipio descriptivo.
statestringNombre del estado.
countryCodestringCódigo de país. Ejemplo: MX.
zipCodestringCódigo postal del receptor.
stateCodestringCódigo interno o abreviado del estado.
localityCodestringCódigo interno de localidad.
municipalityCodestringCódigo interno de municipio.

Objeto seller

Datos del emisor o vendedor.

CampoTipoDescripción
namestringNombre o razón social del vendedor.
rfcstringRFC del vendedor o emisor.
zipCodestringCódigo postal fiscal del vendedor.

Objeto lineDetail

Describe el detalle de la línea o concepto de la petición.

CampoTipoDescripción
primeLineNostringNúmero de línea principal dentro de la orden o transacción.
unitOfMeasurestringUnidad de medida del producto.
quantitynumberCantidad de unidades solicitadas o facturadas.
unitPricenumberPrecio unitario del concepto antes de totales finales.
objetoImpstringClave SAT que indica si el concepto es objeto de impuesto.
itemobjectInformación descriptiva y fiscal del producto.
chargesarrayLista de cargos o descuentos asociados a la línea.
taxesobjectImpuestos calculados para la línea.
lineTotalsobjectTotales monetarios consolidados de la línea.

lineDetail.item

CampoTipoDescripción
descriptionstringDescripción comercial del producto o servicio.
taxProductCodestringClave SAT del producto o servicio.
upcstringCódigo UPC o identificador comercial del artículo.

lineDetail.charges[]

CampoTipoDescripción
codestringCódigo del cargo o descuento aplicado. Ejemplos observados: COUPON_DISC, SHIPPING_CH, SHIP_DISC.
amountnumberMonto del cargo o descuento.

lineDetail.taxes

CampoTipoDescripción
totalnumberTotal de impuestos de la línea.
rawarrayDesglose individual de impuestos calculados.

lineDetail.taxes.raw[]

CampoTipoDescripción
taxnumberImporte del impuesto.
taxNamestringNombre interno del impuesto. Ejemplos observados: IVA_TAX, SHIP_IVA_TAX.
categorystringCategoría sobre la que aplica el impuesto. Ejemplos observados: PRICE, SHIPPING.
taxPercentagenumberPorcentaje del impuesto aplicado.

lineDetail.lineTotals

CampoTipoDescripción
subTotalnumberSubtotal del concepto antes de impuestos finales.
discountTotalnumberTotal de descuentos aplicados a la línea.
shippingTotalnumberTotal de envío asociado a la línea.
taxTotalnumberTotal de impuestos de la línea.
totalnumberTotal final de la línea.

Objeto metadata

Información operativa de la petición dentro de Fénix.

CampoTipoDescripción
statusstringEstado actual de la petición. Ejemplos observados: ERROR, FACTURADA, ENVIADA_AL_CLIENTE.
creationDatestring (ISO 8601)Fecha de creación del registro en el sistema.

Objeto lastLog

Último evento o bitácora asociado a la petición.

CampoTipoDescripción
titlestringTítulo resumido del último evento registrado.
messagestringDescripción detallada del último evento o error.
levelstringNivel del log. Ejemplos observados: INFO, ERROR.
datestring (ISO 8601)Fecha y hora en que ocurrió el último evento.

Request

This endpoint expects an object.
lazyStateobjectRequired

Response

OK
total_recordsinteger
recordslist of objects

Errors

400
Bad Request Error