Crear CFDI 4.0 mediante API Multiemisor

Esta documentación está enfocada en CFDI 4.0,
si deseas conocer los cambios más relevantes para esta versión del comprobante visita nuestra sección: Migrar de CFDI 3.3 a 4.0

Al usar la API Multiemisor, se tiene la ventaja de poder crear CFDIs desde diferentes Emisores,
siempre y cuando se tengan los sellos digitales (CSD) de cada uno de los RFCs con los que se desea emitir CFDIs

La creación de un CFDI en la modalidad multiemisor es muy similar (casi identica) que el API Web ver en la guía
Solo se diferencían en:

  • Aquí se agrega el Nodo Issuer, que contiene la información del Emisor
    El RFC del emisor debe tener cargados los sellos digitales CSD ver en la guía
  • Aquí se agrega el campo de Folio para especificar el folio
    El folio tiene que ser especificado, ya que no se asigna automáticamente
Puedes incluir datos adicionales no fiscales, pero si útiles para su representacion impresa tales cómo
  • Logo
  • Direccion del emisor
  • Direccion del receptor
  • Observaciones

Para más informacion puedes verlo en la Referencia API

URL para la petición

POST

https://api.facturama.mx/api-lite/3/cfdis
    

Datos generales

Se puede especificar el folio según se desee. (El único campo que se diferencía respecto ala API Web)
URL del logo que se desea colocar en el PDF, esquina superior izquierda

Datos Generales

	"CfdiType": "I",
	"PaymentForm": "01",
	"PaymentMethod": "PUE",
	"ExpeditionPlace" : "78240",
	"Date" : "2022-03-14 14:00:00",
	"Folio": 120,

Emisor

Es quien expide el CFDI. Principal característica de la API Multiemisor

En la estructura es representado por un nodo que se coloca en el atributo Issuer
puedes ver en la documentación de la API

Regimenes Fiscales ver en la guía
Nombre del Emisor
Clave del Registro Federal de Contribuyentes del Emisor (recuerda que debes tener los CSD del RFC cargados) ver en la guía

Datos del emisor

    "Issuer": {
        "FiscalRegime": "601",
        "Rfc": "EKU9003173C9",
        "Name": "ESCUELA KEMPER URGATE"
    },

La forma completa del ejemplo es

CFDI Factura de Ingreso 4.0 para API Multiemisor con Impuestos

{	    
	"CfdiType": "I",
	"PaymentForm": "01",
	"PaymentMethod": "PUE",
	"ExpeditionPlace" : "78240",
	"Date" : "2022-03-14 14:00:00",
	"Folio": 120,
    "Issuer": {
        "FiscalRegime": "601",
        "Rfc": "EKU9003173C9",
        "Name": "ESCUELA KEMPER URGATE"
    },
	"Receiver": {
		"Rfc": "URE180429TM6",
		"CfdiUse": "G03",
		"Name": "UNIVERSIDAD ROBOTICA ESPAÑOLA",
		"FiscalRegime": "601",
		"TaxZipCode" : "65000",
		"Address": {
			"Street" : "Guadalcazar del receptor",
			"ExteriorNumber" : "300",
			"InteriorNumber" : "A",
			"Neighborhood": "Las lomas",
			"ZipCode" : "65000",
			"Municipality" : "San Luis Potosi",
			"State" : "San Luis Potosi",
			"Country" : "México"
		}
	},
	"Items": [{        
		"ProductCode": "25173108",
		"Description": "GPS estandar pruebas",
		"UnitCode": "E48",
		"Quantity": 1.0,
		"UnitPrice": 100.0,
		"Subtotal": 100.00,
		"TaxObject" : "02",
		"Taxes": [{
			"Total": 16,
            "Name": "IVA",
            "Base": 100,
            "Rate": 0.16,
            "IsRetention": false
		}],
		"Total": 116
	}]	
}


CFDI Factura de Ingreso 4.0 para API Multiemisor sin Impuestos

{	    
	"CfdiType": "I",
	"PaymentForm": "01",
	"PaymentMethod": "PUE",
	"ExpeditionPlace" : "78240",
	"Date" : "2022-03-14 14:00:00",
	"Folio": 120,
    "Issuer": {
        "FiscalRegime": "601",
        "Rfc": "EKU9003173C9",
        "Name": "ESCUELA KEMPER URGATE"
    },
	"Receiver": {
		"Rfc": "URE180429TM6",
		"CfdiUse": "G03",
		"Name": "UNIVERSIDAD ROBOTICA ESPAÑOLA",
		"FiscalRegime": "601",
		"TaxZipCode" : "65000",
		"Address": {
			"Street" : "Guadalcazar del receptor",
			"ExteriorNumber" : "300",
			"InteriorNumber" : "A",
			"Neighborhood": "Las lomas",
			"ZipCode" : "65000",
			"Municipality" : "San Luis Potosi",
			"State" : "San Luis Potosi",
			"Country" : "México"
		}
	},
	"Items": [{        
		"ProductCode": "25173108",
		"Description": "GPS estandar pruebas",
		"UnitCode": "E48",
		"Quantity": 1.0,
		"UnitPrice": 100.0,
		"Subtotal": 100.00,
		"TaxObject" : "01",
		"Total": 116
	}]	
}