RequestXMLCFDICompleto

El método RequestXMLCFDICompleto es el principal endpoint de integración de Quiero Mi Factura. Permite registrar órdenes de venta, almacenar operaciones y emitir CFDI conforme a la normativa vigente.

Es el método principal para enviar a Quiero Mi Factura una operación con toda la información necesaria para su almacenamiento o emisión como CFDI. En este método, el sistema integrador es responsable de construir correctamente la operación, incluyendo conceptos, importes, impuestos, descuentos y totales.

¿Para qué sirve?

  • Registrar órdenes en la plataforma.
  • Facturar automáticamente una operación.
  • Almacenar órdenes para facturación posterior.
  • Enviar información fiscal completa.

Endpoint y autenticación

Endpoint:

http://159.203.10.206/QA2/web_services/servidorMarket.php?wsdl

Método: POST

Tipo de contenido: XML

Autenticación:

Se realiza mediante el campo USUARIO, proporcionado por Quiero Mi Factura.

Solo se aceptan solicitudes desde direcciones IP previamente autorizadas.

El endpoint es QA (Sandbox). el Endpoint productivo se entrega al final de pruebas exitosas.

Parámetros clave

USUARIO

Llave de integración proporcionada por QMF.

<USUARIO>TU_USUARIO</USUARIO>

STATUS

  • ALMACENAR: guarda la orden para facturación posterior
  • FACTURAR: genera el CFDI inmediatamente

OrderStatus

Define el estado operativo de la orden.

  • Pending
  • Paid
  • Completed
  • Shipped
  • Unshipped
  • Canceled / Cancelado
  • InhabilitadoNotas importantes

Campos que deben existir en el Request

Una integración exitosa requiere al menos los siguientes campos:
  • USUARIO
  • STATUS
  • RFC
  • NombreReceptor
  • RegimenFiscalReceptor
  • codigoPostal
  • SellerOrderId
  • PurchaseDate
  • OrderStatus
  • SalesChannel
  • Moneda
  • OrderTotal
  • OrderSubTotal
  • OrderItemId
  • NumberOfItemsShipped
  • BuyerEmail
  • UsoCFDI
  • FormaPago

Notas muy importantes

  • Los productos deben existir previamente en el método PRODUCTOS y contener sus campos obligatorios.
  • Es importante conocer las Reglas fiscales y de funcionamiento para evitar errores fiscales que puedan colocar la orden en estatus ERROR
  • Los impuestos no se mencionan pero en la mayoría de los casos son requeridos.
  • Se debe observar de manera rigurosa la “Sustitución de caracteres” ya que ciertas letras no pueden ser consumidas por el Portal Quiero Mi Factura ni por las timbradoras fiscales.

RequestXMLCFDICompleto

Ejemplo del Request

<USUARIO>TU_USUARIO</USUARIO>
<STATUS>ALMACENAR</STATUS>
<Order>
  <RFC>XAXX010101000</RFC>
  <NombreReceptor></NombreReceptor>
  <RegimenFiscalReceptor></RegimenFiscalReceptor>
  <codigoPostal></codigoPostal>
  <SellerOrderId>12345</SellerOrderId>
  <PurchaseDate>2026-03-26T04:41:58</PurchaseDate>
  <OrderStatus>Paid</OrderStatus>
  <SalesChannel>MITIENDAENLINEA</SalesChannel>
  <Moneda>MXN</Moneda>
  <Descuento>
    <Amount/>
  </Descuento>
  <OrderTotal>
    <Amount>290</Amount>
  </OrderTotal>
  <OrderSubTotal>
    <Amount>250</Amount>
  </OrderSubTotal>
  <NumberOfItemsShipped>1</NumberOfItemsShipped>
  <BuyerEmail>[email protected]</BuyerEmail>
  <UsoCFDI>G03</UsoCFDI>
  <FormaPago>01</FormaPago>
</Order>

Notas importantes

  • Los productos deben existir previamente en el método PRODUCTOS
  • Se deben aplicar sustituciones de caracteres antes del envío
  • Errores fiscales colocan la orden en estatus ERROR

¿Cuándo debe usarse este método?

 

Úsalo para integrar facturación electrónica CFDI automatizada a tus sistemas. Puedes usarlo en:

  • Apps
  • Tiendas en línea o ecommerce personalizados
  • Sistemas de cobros únicos o recurrentes.
  • Plataformas que ya calculan de forma correcta sus operaciones.
“Este método está pensado para integraciones donde el origen envía la operación ya estructurada y calculada.”

Flujo mínimo de integración:

Construir la petición (Request) Completa.

  • Dentro del propio Request definir correctamente el STATUS (ALMACENAR o FACTURAR).
  • Enviar la orden.
  • Recibir y validar respuesta.

Errores comunes

 
  • No se solicita agregar la IP desde la que se envía el Request a los firewalls.
  • No se cuenta con un usuario válido en Quiero Mi Factura
  • No se ha creado el Canal de venta (SalesChannel) en la plataforma para operar
  • No sustituir correctamente los caracteres especiales.
  • En el campo de usuario utilizar el RFC del emisor en vez del usuario asignado por QMF USER_ USUARIO
  • No enviar los datos completos del receptor cuando se utiliza OrderStatus=”FACTURAR”
  • No enviar el correo electrónico del cliente final cuando OrderStatus=”ALMACENAR”
  • Utilizar la fecha en EL CAMPO PurchaseDate un formato diferente a YYYY-MM-DDThh:mm:ss
  • No haber enviado los datos de los productos en forma previa a mandar las órdenes.
  • Hacer mal uso de los decimales.
  • Importes que no “cuadren” (aritmética incorrecta)
  • Los campos FormaPago y UsoCFDI deben llenarse conforme al Catálogo del SAT.

Cálculos fiscales, reglas y decimales

 

Para la correcta emisión de un CFDI, el SAT, el la Guía de Llenado del CFDI 4.0 establece una serie de reglas respecto a la cantidad de decimales que pueden usarse en  los distintos nodos y campos del CFDI. 

  • QMF recibe la operación con los cálculos ya realizados por el integrador.
  • El integrador es responsable de que importes, descuentos, impuestos y totales sean consistentes.
  • Los cálculos deben respetar las reglas fiscales aplicables y las validaciones necesarias para que los importes cuadren correctamente.
  • Si los cálculos fiscales no son correctos, el comprobante no podrá ser emitido, La validación se genera hasta el momento en que se intenta el timbrado del comprobante. Por esa razón es muy importante que, para las pruebas con el método “ALMACENAR” se lleven a cabo pruebas de que el comprobante puede ser emitido con la liga generada dentro del ambiente Quiero Mi Factura.

Ejemplo de Response

SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
xmlns:tns="urn:http://159.203.10.206/PROD/web_services/servidorMarket.php"><SOAP-ENV:Body>
<ns1:RequestXMLCFDICompletoResponse xmlns:ns1="http://159.203.10.206">
<return xsi:type="tns:ResponseXMLCFDICompleto"><Estatus xsi:type="xsd:string">EXITO</Estatus>
<CFDI xsi:type="xsd:string"></CFDI>
<Descripcion xsi:type="xsd:string">
fue almacenada la peticion </Descripcion></return></ns1:RequestXMLCFDICompletoResponse>
</SOAP-ENV:Body></SOAP-ENV:Envelope>
 

Recuperación de los comprobantes fiscales “CFDI” emitidos por la plataforma de forma posterior.


En el caso de utilizar el STATUS = “FACTURAR“,  El XML Fiscal y el PDF con la representación impresa, se recuperan de forma inmediata en el response desde el mismo endpoint.

En el caso de utilizar el STATUS = “ALMACENAR”, el comprador o receptor del comprobante, obtendrá su CFDI en un momento posterior de tiempo. Por tanto, la respuesta solo indicará “ÉXITO” o “ERROR” y los CFDI generados podrán recuperarse posteriormente utilizando el método DESCARGACFDI.

Utilizando el método DESCARGACFDI es posible recuperar todos los CFDI emitidos en un rango de tiempo en la plataforma.

Validaciones importantes

  • El total debe coincidir con la suma de conceptos e impuestos.
  • Los impuestos deben calcularse con precisión conforme a reglas fiscales.
  • Los datos del receptor deben ser válidos para CFDI 4.0.
  • El SalesChannel debe existir previamente en la configuración.
Scroll al inicio