Skip to main content

¿Cuándo usar el complemento de pago?

Cuando emites una factura con método de pago PPD (Pago en Parcialidades o Diferido), estás indicando que el cliente pagará después. Por cada pago que recibas, debes emitir un Complemento de Pago.
Si el cliente paga al momento de la compra, usa PUE y no necesitas complemento de pago.

Flujo completo

1

Emite la factura con PPD

Usa PaymentForm: "99" (por definir) cuando aún no sabes cómo pagará el cliente.
2

El cliente realiza el pago

Ya sea por transferencia, cheque, tarjeta, etc.
3

Emite el Complemento de Pago

Crea un CFDI de tipo P relacionado con la factura original.
Consideraciones a tomar en cuenta en el nodo general del CFDI:
  • No incluyas conceptos ni Items.
  • No incluyas PaymentMethod.
  • No incluyas PaymentForm.
  • No incluyas Currency.
  • CfdiType debe ser "P" (Pago).
  • En el nodo Receiver, el atributo CfdiUse debe ser "CP01".

Emitir el complemento de pago

Ejemplo usando API web.
Ejemplo completo
El valor NameId: "14" define el nombre del PDF como “Complemento de pago”.
Facturama identifica una operación por la combinación de Folio y Date. Para evitar comprobantes duplicados, genera ambos valores una sola vez al iniciar la operación y reutilízalos sin cambios en cada reintento. Consulta Idempotencia y reintentos para más información.

Elementos del complemento de pago

string
requerido
Fecha y hora en la que el beneficiario recibe el pago.
string
requerido
Clave de la forma en que se realiza el pago.
string
requerido
Clave de la moneda utilizada para realizar el pago conforme a la especificación ISO 4217.
number
Tipo de cambio de la moneda a la fecha en que se realizó el pago. Atributo condicional: es requerido cuando Currency es distinta de MXN.
number
requerido
Importe del pago.
string
Número de cheque, número de autorización, número de referencia, clave de rastreo en caso de ser SPEI, línea de captura o algún número de referencia análogo que identifique la operación que ampara el pago efectuado.

Información extra

string
Clave RFC de la entidad emisora de la cuenta origen, es decir, la operadora, el banco, la institución financiera o el emisor de monedero electrónico. Si la entidad es extranjera, registra XEXX010101000.
string
Número de la cuenta con la que se realizó el pago.
string
Número de cuenta en donde se recibió el pago.
string
Nombre del banco ordenante.
string
Clave RFC de la entidad operadora de la cuenta destino, es decir, la operadora, el banco, la institución financiera o el emisor de monedero electrónico.

Pagos en moneda extranjera

Si el pago es en USD u otra moneda, usa Currency e incluye el tipo de cambio en ExchangeRate:

Elementos del documento relacionado

string
requerido
Atributo requerido para expresar el identificador del documento relacionado con el pago.
number
requerido
Atributo requerido para expresar el número de parcialidad que corresponde al pago.
string
Atributo opcional para precisar la serie del comprobante para control interno del contribuyente.
string
Atributo opcional para precisar el folio del comprobante para control interno del contribuyente.
string
requerido
Atributo requerido para identificar la clave de la moneda utilizada en los importes del documento relacionado.
number
Atributo condicional para expresar el tipo de cambio conforme con la moneda registrada en el documento relacionado. Es requerido cuando la moneda del documento relacionado es distinta de la moneda de pago.
number
requerido
Atributo requerido para expresar el monto del saldo insoluto de la parcialidad anterior.
number
requerido
Atributo requerido para expresar el importe pagado para el documento relacionado.
number
requerido
Atributo requerido para expresar la diferencia entre el importe del saldo anterior y el monto del pago.
string
requerido
Atributo requerido para expresar si el pago del documento relacionado es objeto o no de impuesto.
object[]