PUE vs PPD: choosing the payment method on a CFDI
PUE and PPD are the two payment method codes on a Mexican CFDI invoice. PUE (Pago en Una sola Exhibición) means the invoice is paid in full at once, at or near issue. PPD (Pago en Parcialidades o Diferido) means it will be paid later or in parts. The code matters because every payment against a PPD invoice requires a separate payment receipt.
The two codes side by side
A CFDI is the electronic invoice that every Mexican issuer registers with the tax authority, the SAT. Among its required fields is the payment method (método de pago), which accepts one of two values.
| PUE | PPD | |
|---|---|---|
| Spanish name | Pago en una sola exhibición | Pago en parcialidades o diferido |
| When it fits | The customer pays in full immediately | Payment comes later or in instalments |
| Payment form on the invoice | The real form, e.g. 03 transfer | 99, "por definir" (to be defined) |
| Payment receipt needed | No | Yes, one for each payment |
| Typical use | Point-of-sale, prepaid orders | Credit terms, instalment plans |
The payment receipt is called a complemento de pago. It is explained in the complemento de pago guide.
Four questions to answer before issuing
Ask the person who issues invoices to work through these in order:
- Has the customer already paid in full? If yes, and you know how they paid, use PUE.
- Will they pay in full in a single payment? If not, use PPD.
- Do you know when the money will arrive? If it will arrive after the window the current rules allow for PUE, use PPD.
- Is there an advance, a deposit or a mixed scheme? Do not decide alone; ask your accountant. Advances follow their own invoicing procedure.
Trust in the customer does not change the answer. A reliable customer on 30-day terms is still PPD.
How the choice changes the XML file
A CFDI is an XML file. The payment method sits in one attribute, and the payment form in another. With PUE, the payment form names how the money arrived, for example 03 for electronic transfer. With PPD, the payment form is 99, because the issuer does not yet know how the customer will pay.
Later, each complemento de pago records the actual form, date and amount of each payment, and points back to the invoice through its UUID (folio fiscal, the unique ID the SAT system assigns).
What happens when the wrong code is used
PUE on an invoice that is paid late. The invoice claims a payment that has not happened. The usual fix is to cancel it with the correct cancellation reason and issue a replacement with PPD, then issue receipts as payments arrive. Your customer must accept some cancellations, which adds friction.
PPD on an invoice that was paid immediately. Less harmful, but you now owe a payment receipt for a payment that is already settled. Issue it promptly.
Either way, confirm the procedure with your accountant before cancelling, because cancellation rules have their own conditions and deadlines.
The underlying cause is usually a mapping problem, not a person. If your ERP sets the code from payment terms, one wrong rule produces dozens of wrong invoices before anyone notices. Review a sample of issued invoices each month against the terms on the customer master.
An illustrative month for a subsidiary on credit terms
A Mexican subsidiary invoices five customers in October. Figures are invented.
| Customer | Terms | Code | Receipts expected |
|---|---|---|---|
| Comercial Uno | Prepaid by transfer | PUE | 0 |
| Grupo Dos | Net 30 | PPD | 1 in November |
| Servicios Tres | Three monthly instalments | PPD | 3 |
| Tienda Cuatro | Card payment at checkout | PUE | 0 |
| Fábrica Cinco | Net 60 | PPD | 1 in December |
The AR team now knows to expect five payment receipts across the next quarter, each tied to a deposit.
Why the PPD workload lands on collections
Every PPD invoice turns into at least one future reconciliation task: find the deposit, decide which invoice it pays, then issue the receipt. A subsidiary with many PPD customers needs a dependable way to match deposits first. Meses (meses.ai) focuses on that matching step. Meses reads your bank statement PDF and your records in Google Sheets, Excel or CSV; AI proposes which customer and period each deposit belongs to, your team reviews the proposals, and Meses writes approved payments back to your sheet, with undo. The sequence for a month is described in how to reconcile a month.
Frequently asked questions
Our standard terms are net 30. Which code do we use?
Net 30 invoices are usually PPD, because payment is deferred beyond the moment of issue. Your Mexican accountant can confirm whether any of your flows fit the window the current rules allow for PUE.
Does the customer care which code we use?
Yes. Their accounts payable team relies on the code to know whether to expect a payment receipt, and their own tax position depends on it. Wrong codes generate requests to cancel and reissue.
Can our ERP set the code automatically?
Usually yes, based on payment terms. Review the mapping once with your accountant, especially for advances, card payments and intercompany invoices.