Facturas Recepción de pago


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

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

Argumento Tipo Default Descripción
main Contiene los datos generales de la factura y los datos del emisor.
NUEVO regimen
requerido
string none Incorpora la clave del régimen del contribuyente emisor al que aplicará el efecto fiscal de este comprobante
NUEVO exportacion
requerido
string 01 Expresa si el comprobate ampara una operación de exportación.
razonSocial string none Nombre ó Razón social del emisor.
Nota: en la version 4.0 debe ser el nombre tal cual como fueron registrados ante el SAT
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 pago
moneda string none Código de la moneda, acorde al estándar ISO 4217.
Para este tipo de comprobante enviar xxx
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 Por disposición de SAT en este tipo de documento siempre se debe de enviar 0.
subtotal
requerido
decimal none Por disposición de SAT en este tipo de documento siempre se debe de enviar 0.
fechaEmision date now()
2025-04-16T04:51:09
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"
NUEVO fac_atr_adquirente string none Expresa el número de operación proporcionado por el SAT cuando se trate de un comprobante a través de un PCECFDI o un PCGCFDISP.
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.
NUEVO 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
NUEVO razon_social
requerido
string none Nombre o Razón social del receptor
Nota: en la version 4.0 debe ser el nombre tal cual como fueron registrados ante el SAT
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.
NUEVO num_reg_id_trib string none Expresa el número de registro de identidad fiscal del receptor cuando sea residente en el extranjero. Es requerido cuando se incluya el complemento de comercio exterior.
NUEVO residencia_fiscal string none Registra la clave del país de residencia para efectos fiscales del receptor del comprobante, cuando se trate de un extranjero, y que es conforme con la especificación ISO 3166-1 alpha-3. Es requerido cuando se incluya el complemento de comercio exterior o se registre el atributo num_reg_id_trib.
NUEVO regimen
requerido
string none Incorpora la clave del régimen fiscal del contribuyente receptor al que aplicará el efecto fiscal de este comprobante.
NUEVO uso
requerido
string none Clave del uso comprobante según el catálogo del SAT.
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.
NUEVO 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 Por disposición de SAT en este tipo de documento solo se debe de enviar UN concepto.
conceptos[].nombre
requerido
string none Nombre del producto o servicio.
Para este tipo de comprobante se debe enviar Pago
conceptos[].medidaKey
requerido
string none Clave de la unidad de medida segun el catálogo del SAT.
Por disposición de SAT en este tipo de documento siempre se debe de enviar 'ACT'.
conceptos[].productKey
requerido
string none Clave del producto segun el catálogo del SAT.
Por disposición de SAT en este tipo de documento siempre se debe de enviar '84111506'.
NUEVO conceptos[].no_id string none Expresa el número de parte, identificador del producto o del servicio, la clave de producto o servicio, SKU o equivalente, propia de la operación del emisor, amparado por el presente concepto. Opcionalmente se puede utilizar claves del estándar GTIN.
conceptos[].precioUnitario
requerido
decimal none Por disposición de SAT en este tipo de documento siempre se debe de enviar '0'.
conceptos[].cantidad integer, decimal 1 Cantidad de productos o servicios vendidos, debe ser mayor a 0
conceptos[].total
requerido
decimal none Por disposición de SAT en este tipo de documento siempre se debe de enviar '0'.
NUEVO conceptos[].objeto_imp
requerido
decimal none Expresa si la operación comercial es objeto o no de impuesto
complementos Contiene los datos de los complementos a agregar al CFDI.
recepcion_pago
requerido
object none Datos detallados de la recepción de pago
NUEVO totales
requerido
object none Especifica el monto total de los pagos y el total de los impuestos, deben ser expresados en MXN
NUEVO totales.retenciones_iva decimal none Expresar el total de los impuestos retenidos de IVA que se desprenden de los pagos. No se permiten valores negativos.
NUEVO totales.retenciones_isr decimal none Expresar el total de los impuestos retenidos de ISR que se desprenden de los pagos. No se permiten valores negativos.
NUEVO totales.retenciones_ieps decimal none Expresar el total de los impuestos retenidos de IEPS que se desprenden de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_base_iva16 decimal none Expresar el total de la base de IVA trasladado a la tasa del 16% que se desprende de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_impuesto_iva16 decimal none Expresar el total de los impuestos de IVA trasladado a la tasa del 16% que se desprenden de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_base_iva8 decimal none Expresar el total de la base de IVA trasladado a la tasa del 8% que se desprende de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_impuesto_iva8 decimal none Expresar el total de los impuestos de IVA trasladado a la tasa del 8% que se desprenden de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_base_iva0 decimal none Expresar el total de la base de IVA trasladado a la tasa del 0% que se desprende de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_impuesto_iva0 decimal none Expresar el total de los impuestos de IVA trasladado a la tasa del 0% que se desprenden de los pagos. No se permiten valores negativos.
NUEVO totales.traslados_base_iva_exento decimal none Expresar el total de la base de IVA trasladado exento que se desprende de los pagos. No se permiten valores negativos.
NUEVO totales.monto_total_pagos
requerido
decimal none Expresar el total de los pagos que se desprenden de los nodos Pago. No se permiten valores negativos.
forma_pago
requerido
string none Código de la forma de pago según el catálogo del SAT.
moneda
requerido
string none Código de la moneda, acorde al estándar ISO 4217
cambio decimal none 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.
Es requerido cuando la moneda es diferente a MXN
fecha
requerido
date none Fecha en que se recibio el pago, debe llevar el formato 'Y-m-d'T'H:i:s'
num_operacion
requerido
string none Representa la forma en que se puede identificar el pago, puede ser, número de deposito, número de rastreo, número de cheque, u otro idenficador del pago.
monto
requerido
decimal none Importe total del pago recibido
rfc_emisor_banco string none RFC del banco emisor, (banco de donde sale el pago).
Es requerdio cuando la forma de pago es bancarizado segun catálogo de SAT
nombre_emisor_banco string none Nombre del banco emisor, (banco de donde sale el pago).
Es requerdio cuando el RFC del banco emisor es 'XEXX010101000'
cta_ordenante string none Número de cuenta del banco emisor, (banco de donde sale el pago).
Es requerdio cuando la forma de pago es bancarizado y debe cumplir con el patron segun catálogo de SAT
rfc_receptor_banco string none RFC del banco receptor, (banco donde ingresa el pago).
Es requerdio cuando la forma de pago es bancarizado segun catálogo de SAT
cta_beneficiario string none Número de cuenta del banco receptor, (banco donde ingresa el pago).
Es requerdio cuando la forma de pago es bancarizado y debe cumplir con el patron segun catálogo de SAT
related
requerido
array none Conjunto de datos con los documentos relacionados
related[].fecha
requerido
date none Fecha de emisión del CFDI relacional, debe llevar el formato 'Y-m-d'T'H:i:s'
related[].uuid
requerido
string none UUID del CFDI relacional
related[].numero_pago
requerido
integer none Número de pago o parcialidad correspondiente al CFDI relacional
related[].saldo_anterior
requerido
decimal none Saldo del CFDI relacional, considerando los pagos anteriores
related[].monto
requerido
decimal none Importe total del pago realizado al CFDI relacional
related[].saldo_insoluto
requerido
decimal none Saldo total del CFDI relacional, despues de descontar el pago actual
related[].metodoDePago
requerido
string none Código del método de pago del CFDI relacional.
PUE. Pago en una sola exhibición
PPD. Pago en parcialidades o diferido.
related[].moneda
requerido
string none Moneda del CFDI relacional.
related[].equivalencia decimal 1.00 Tipo de cambio conforme con la moneda registrada en el documento relacionado.
related[].cambio string none Tipo de cambio del CFDI relacional.
Es requerido cuando la moneda es diferente a XXX
related[].folio string none Folio del CFDI relacional.
related[].serie string none Serie del CFDI relacional.
NUEVO related[].objeto_imp_dr
requerido
string none Expresar si el pago del documento relacionado es objeto o no de impuesto.
NUEVO related[].impuesto_dr object none Registra los impuestos aplicables conforme al monto del pago recibido, expresados a la moneda del documento relacionado.
NUEVO related[].impuesto_dr.retenciones array none Captura los impuestos retenidos aplicables conforme al monto del pago recibido
NUEVO related[].impuesto_dr.retenciones[].base
requerido
decimal none Señala la base para el cálculo de la retención conforme al monto del pago, aplicable al documento relacionado, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.
NUEVO related[].impuesto_dr.retenciones[].impuesto
requerido
string none Señala la clave del tipo de impuesto retenido conforme al monto del pago, aplicable al documento relacionado.
NUEVO related[].impuesto_dr.retenciones[].factor
requerido
string none Señala la clave del tipo de factor que se aplica a la base del impuesto.
NUEVO related[].impuesto_dr.retenciones[].tasa
requerido
decimal none Señala el valor de la tasa o cuota del impuesto que se retiene.
Nota: Enviar siempre 6 decimales
NUEVO related[].impuesto_dr.retenciones[].importe
requerido
decimal none Señala el importe del impuesto retenido conforme al monto del pago, aplicable al documento relacionado. No se permiten valores negativos.
NUEVO related[].impuesto_dr.traslados array none Captura los impuestos trasladados aplicables conforme al monto del pago recibido.
NUEVO related[].impuesto_dr.traslados[].base
requerido
decimal none Señala la base para el cálculo del impuesto trasladado conforme al monto del pago, aplicable al documento relacionado, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.
NUEVO related[].impuesto_dr.traslados[].impuesto
requerido
string none Señala la clave del tipo de impuesto trasladado conforme al monto del pago, aplicable al documento relacionado.
NUEVO related[].impuesto_dr.traslados[].factor
requerido
string none Señala la clave del tipo de factor que se aplica a la base del impuesto.
NUEVO related[].impuesto_dr.traslados[].tasa
requerido
decimal none Señala el valor de la tasa o cuota del impuesto que se traslada. Es requerido cuando el atributo TipoFactorDR contenga una clave que corresponda a Tasa o Cuota.
Nota: Enviar siempre 6 decimales
NUEVO related[].impuesto_dr.traslados[].importe
requerido
decimal none Señala el importe del impuesto trasladado conforme al monto del pago, aplicable al documento relacionado. No se permiten valores negativos. Es requerido cuando el tipo factor sea Tasa o Cuota.
NUEVO impuestos object none Registra el resumen de los impuestos aplicables conforme al monto del pago recibido, expresados a la moneda de pago.
NUEVO impuestos.retenciones array none Señala los impuestos retenidos aplicables conforme al monto del pago recibido. Es requerido cuando en los documentos relacionados se registre algún impuesto retenido.
NUEVO impuestos.retenciones[].impuesto
requerido
string none Señala la clave del tipo de impuesto retenido conforme al monto del pago
NUEVO impuestos.retenciones[].importe
requerido
decimal none Señala el importe del impuesto retenido conforme al monto del pago. No se permiten valores negativos.
NUEVO impuestos.traslados array none Captura los impuestos trasladados aplicables conforme al monto del pago recibido. Es requerido cuando en los documentos relacionados se registre un impuesto trasladado.
NUEVO impuestos.traslados[].base
requerido
decimal none Señala la suma de los atributos BaseDR de los documentos relacionados del impuesto trasladado. No se permiten valores negativos
NUEVO impuestos.traslados[].impuesto
requerido
string none Señala la clave del tipo de impuesto trasladado conforme al monto del pago.
NUEVO impuestos.traslados[].factor
requerido
string none Señala la clave del tipo de factor que se aplica a la base del impuesto.
NUEVO impuestos.traslados[].tasa
requerido
decimal none Señala el valor de la tasa o cuota del impuesto que se traslada en los documentos relacionados.
Nota: Enviar siempre 6 decimales
NUEVO impuestos.traslados[].importe
requerido
decimal none Señala la suma del impuesto trasladado, agrupado por ImpuestoP, TipoFactorP y TasaOCuotaP. No se permiten valores negativos.