Facturas de Ingresos


URL PRUEBAS: POST https://facturacion.789.mx/api/test/factura/crear

URL PRODUCCIÓN: POST https://facturacion.789.mx/api/factura/crear

Argumento Tipo Default Descripción
main Contiene los datos generales de la factura y los datos del emisor.
razonSocial string none Nombre ó Razón social del emisor.
rfc
requerido
string none RFC del emisor.
12 dígitos para persona moral y 13 dígitos para persona física.
tipo
requerido
string none Tipo de comprobante (ingreso, egreso, traslado, nomina, pago).
Para este tipo de comprobante enviar ingreso
moneda string MXN Código de la moneda, acorde al estándar ISO 4217
cambio decimal 1.0 Tipo de cambio conforme a la moneda usada. Representa el número de pesos mexicanos que equivalen a una unidad de la moneda señalada.
formaDePago
requerido
string none Código de la forma de pago según el catálogo del SAT.
metodoDePago
requerido
string none Código del método de pago según el catálogo del SAT.
PUE. Pago en una sola exhibición
PPD. Pago en parcialidades o diferido
condicionesDePago string none Expresa las condiciones comerciales aplicables para el pago del comprobante fiscal digital por Internet. Este atributo puede ser condicionado mediante atributos o complementos
folio string '' Número de folio asignado por la empresa para control interno.
serie string '' Serie. De 1 a 25 caracteres designados por la empresa para control interno y sin validez fiscal.
total
requerido
decimal none Importe total facturado con impuestos incluido.
subtotal
requerido
decimal none Importe total facturado antes de impuestos.
uso
requerido
string none Clave del uso comprobante según el catálogo del SAT.
fechaEmision date now()
2025-04-18T15:27:58
Campo opcional para indicar la FECHA de EMISIÓN de la factura, puede ser hasta 48hrs hacia atras de la fecha actual.
Debe cumplir el siguiente formato "Y-m-d\TH:i:s"
observaciones string none Campo exclusivo para la representación impresa (PDF), se puede enviar un HTML básico como negritas y/o saltos de linea "<br>"
direccionFiscal string '' Domicilio fiscal del emisor.
direccionFiscal.calle string '' Calle del emisor.
direccionFiscal.num_ext string '' Número exterior (númerio visible desde la calle) del domicilio del emisor.
direccionFiscal.num_int string '' Número interior del domicilio del emisor.
direccionFiscal.colonia string '' Colonia del domicilio del emisor.
direccionFiscal.cp
requerido
string '' Código Postal del domicilio del emisor.
direccionFiscal.ciudad string '' Ciudad del domicilio del emisor.
direccionFiscal.localidad string '' Delegación o Municipio del domicilio del emisor.
direccionFiscal.estado string '' Estado del domicilio del emisor.
direccionFiscal.pais string '' País del domicilio del emisor.
receptor Datos del Receptor
razon_social string none Nombre o Razón social del receptor
rfc
requerido
string none RFC del receptor.
12 dígitos para persona moral y 13 dígitos para persona física.
email string none Correo electrónico del receptor, debe ser válido.
direccion string '' Domicilio fiscal del receptor.
direccion.calle string '' Calle del receptor.
direccion.num_ext string '' Número exterior (númerio visible desde la calle) del domicilio del receptor.
direccion.num_int string '' Número interior del domicilio del receptor.
direccion.colonia string '' Colonia del domicilio del receptor.
direccion.codigo_postal
requerido
string '' Código Postal del domicilio del receptor.
direccion.ciudad string '' Ciudad del domicilio del receptor.
direccion.estado string '' Estado del domicilio del receptor.
direccion.pais string '' País del domicilio del receptor.
conceptos Conjuto de datos de los productos o conceptos a facturar
conceptos[].nombre
requerido
string none Nombre del producto o servicio
conceptos[].unidad string none Descripción de la unidad de medida
conceptos[].medidaKey
requerido
string none Clave de la unidad de medida segun el catálogo del SAT
conceptos[].productKey
requerido
string none Clave del producto segun el catálogo del SAT
conceptos[].cantidad integer, decimal 1 Cantidad de productos o servicios vendidos, debe ser mayor a 0
conceptos[].precioUnitario
requerido
decimal none Precio unitario del producto o servicio, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
conceptos[].descuento decimal none Descuento que se aplicará al producto o servicio, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
conceptos[].total
opcional
decimal conceptos[].cantidad * conceptos[].precioUnitario Importe total a factura del producto o servicio antes de impuestos, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
conceptos[].impuestos Conjunto [] Conjuto de datos con los impuestos federales a aplicar, este nodo puede omitirse sí no es necesario deducir impuestos.
conceptos[].impuestos[].tasa
requerido
decimal none Tasa del impuesto a aplicar, debe ser en decimal, ej. 16% se debe enviar como 0.16
conceptos[].impuestos[].tipo
requerido
string none Indica el tipo de impuesto a aplicar (IVA, ISR, IEPS)
conceptos[].impuestos[].factor string Tasa Indica el factor del impuesto a aplicar (Tasa, Cuota, Exento)
conceptos[].impuestos[].importe
opcional
string (conceptos[].total - conceptos[].descuento ) * conceptos[].impuestos[].tasa Importe total del impuesto, debe ser mayor a 0, solo se permiete el número de decimales que indica el catálogo de monedas del SAT
conceptos[].impuestos[].retencion
requerido
boolean none Indica si se trata de una retención
relation string none Código de tipo relación entre facturas según el catálogo del SAT.
related array none Conjunto de datos con uno o más folios fiscales (UUID) de las facturas relacionadas.
Este campo es obligatorio si el campo 'relation' existe.
data: {
    "main":{
        "razonSocial":"EMISOR SA DE CV",
        "rfc":"IIA040805DZ4",
        "tipo": "ingreso",
        "moneda": "MXN",
        "cambio": "1",
        "formaDePago": "03",
        "metodoDePago": "PUE",
        "folio": "88",
        "serie": "B",
        "total": "1.16",
        "subtotal": "1.00",
        "uso": "G01",
        "direccionFiscal":{
            "calle":"1RO DE MAYO",
            "num_ext":"153-A",
            "num_int":null,
            "colonia":"SAN LUIS TLATILCO",
            "ciudad":"NAUCALPAN DE JUAREZ",
            "cp":"53580",
            "estado":"Estado de México",
            "pais":"MÉXICO",
            "localidad":"NAUCALPAN DE JUAREZ",
        }
    },
    "receptor": {
        "razon_social": "RECEPTOR, S.A. DE C.V.",
        "rfc": "FGM830830749",
        "email": "facturas@receptor.mx",
        "direccion": {
            "calle": "JUAN PEREZ",
            "colonia": "TRANSITO",
            "ciudad": "CIUDAD DE MEXICO",
            "estado": "Ciudad de México",
            "codigo_postal": "06820",
            "pais": "MEXICO",
            "num_ext": "39",
            "num_int": "0"
        }
    },
    "conceptos": [
        {
            "nombre": "Prueba factura de ingreso",
            "unidad": "kg",
            "medidaKey": "58",
            "productKey": "13111205",
            "precioUnitario": "1.00",
            "cantidad": "1",
            "total": "1",
            "descuento": "0.00",
            "impuestos": [
                {
                    "tasa": 0.16,
                    "tipo": "IVA",
                    "retencion": false,
                    "importe": 0.16
                }
            ]
        }
    ],
}
            


Código de respuesta: 200 OK

{
    id: 1,
    success: "Exito",
    uuid: "6B558DD0-D8B2-4C42-9445-68CCB2BE2C12",
    url_xml: "./6B558DD0-xxxxx.xml",
    url_pdf: "./6B558DD0-xxxxx.pdf"
}
            


Código de respuesta: 406 Not Acceptable
Nota: este tipo de error hace indicación a que uno de los datos no es valido o esta mal llenado

[
    0: "El RFC del receptor no tiene un valor valido"
]
            


Código de respuesta: 403 Forbidden
Nota: este tipo de error hace indicación a la falta de datos obligatorios dentro de la solicitud

{
    error: "Undefined property: stdClass::$rfc"
}