Debt) es un cargo puntual a un deudor conocido: un importe fijo que se cobra a una persona o entidad identificada, con una fecha de vencimiento y medios de pago configurables. Es el caso de uso más común de la API.
Tú indicas quién paga, cuánto y cuándo vence. TapiPay resuelve internamente toda la complejidad (tu organización, las modalidades y los datos internos del sistema de cobranzas) y te devuelve un contrato limpio que siempre incluye la URL de pago.
Cuándo usar una deuda
Deuda
Un cobro único a alguien que conoces: una factura, una cuota, un servicio puntual.
Suscripción
Si el cobro se repite en el tiempo (mensualidades, cuotas).
Liga de pago
Si no conoces al deudor de antemano (donaciones, ventas sueltas).
Crear una deuda
Para crear una deuda necesitas, como mínimo, identificar al deudor, el monto y la fecha de vencimiento.Identificar al deudor
Debes enviar uno de estos dos campos (no ambos, no ninguno):
Ver Contactos para el detalle del deudor reutilizable.
Campos principales
number
requerido
Monto en pesos, con hasta 2 decimales (mínimo
0.01). Por ejemplo, 1500.50 equivale a $1,500.50 MXN.string
requerido
Fecha de vencimiento en formato
YYYY-MM-DD.string
Código de moneda. Valores permitidos:
MXN, ARS, PEN, COP, CLP, USD. Si no lo envías, se usa el default de tu organización (con respaldo en MXN).string
Nombre de un producto para categorizar el cobro. Si no existe, se crea en línea; si ya existe, se reutiliza. Ver Productos.
boolean
predeterminado:"true"
Habilita pagos parciales. Con
true, la deuda pasa a PARTIALLY_PAID hasta saldarse.boolean
predeterminado:"true"
Si es
false, la deuda no puede pagarse después del dueDate.boolean
predeterminado:"false"
Domiciliación. No puede coexistir con
paymentMethods. Ver Medios de pago.array
Medios habilitados para esta deuda:
CASH, CARD, TRANSFER, WALLET, BANK_TRANSFER. Solo válido cuando autopay es false.Nunca envías ni recibes datos internos del sistema (organización, modalidades,
generationData). Trabajas solo con conceptos de negocio.La respuesta
La respuesta de creación y de consulta siempre incluyepaymentUrl (la URL lista para compartir con tu deudor) y amountPaid (el acumulado pagado).
Deep link de pago
ElpaymentUrl es un deep link: incluye el externalRequestId de la deuda como query param (?externalRequestId=...), así apunta directo a esa deuda puntual. Compártelo tal cual con tu deudor; no necesitas construir la URL a mano. Las deudas generadas por una suscripción también traen su propio deep link (lo ves en GET /subscriptions/{id}/debts).
Ciclo de vida
Actualizar y cancelar
Actualizar (PATCH /debts/{id})
Actualizar (PATCH /debts/{id})
Solo se puede actualizar una deuda en estado
PENDING. Intentarlo en otro estado devuelve 422 BUSINESS_RULE_VIOLATION.Campos editables: amount, dueDate. Enviar cualquier otro campo devuelve 400 INVALID_REQUEST.Cancelar (POST /debts/{id}/cancel)
Cancelar (POST /debts/{id}/cancel)
Se puede cancelar una deuda en estado
PENDING, PARTIALLY_PAID u OVERDUE. No se puede cancelar una deuda ya PAID o CANCELLED (devuelve 422 BUSINESS_RULE_VIOLATION).Endpoints
Pruébalo en el API Reference
Explora cada endpoint con su playground interactivo.

