Commet
  • Precios
Iniciar SesiónRegistrarse
Introducción

Eventos de Suscripción

subscription.createdsubscription.activatedsubscription.canceledsubscription.updatedsubscription.plan_changedsubscription.cancellation_scheduledsubscription.cancellation_revokedsubscription.plan_change_scheduledsubscription.plan_change_revokedsubscription.past_due

Eventos de Prueba

trial.startedtrial.convertedtrial.expiredtrial.will_endtrial.checkout_ready

Eventos de Checkout

checkout.ready

Eventos de Pago

payment.receivedpayment.failedpayment.recoveredpayment.refundedpayment.disputedpayment.dispute_resolved

Eventos de Recibo

invoice.createdinvoice.upcominginvoice.overdueinvoice.voided

Eventos de Método de Pago

payment_method.attachedpayment_method.updated

Eventos de Cliente

customer.createdcustomer.updatedcustomer.state_changed

Eventos de Créditos y Saldo

credits.grantedcredits.purchasedcredits.lowcredits.depletedcredits.expiredbalance.topped_upbalance.lowbalance.depleted

Eventos de Cuota y Uso

quota.threshold_reachedquota.exceededusage.recorded

Eventos de Asientos

seats.updatedseats.limit_reached

Eventos de Complementos

addon.activatedaddon.deactivated

Eventos de Payout

payout.availablepayout.createdpayout.paidpayout.failed
DocumentaciónRecursosConstruir con AIAPI ReferenceWebhooks

payment.dispute_resolved

Una disputa de pago se resolvió como ganada o perdida.

Payload

All webhook payloads follow a consistent top-level structure with event-specific data nested within the data object.

paymentTransactionIdstring

The disputed payment transaction ID.

invoiceIdstring | null

The invoice the payment collected, or null for payments without an invoice.

invoiceNumberstring | null

The human-readable invoice number, if available.

customerIdstring | null

The customer ID, when the payment is linked to an invoice. Returns your externalId if you provided one when creating the customer, otherwise returns the Commet publicId.

subscriptionIdstring | null

The subscription ID, if the invoice is linked to a subscription.

disputeAmountnumber

The contested amount in cents (100 = $1.00).

currencystring

The dispute currency code.

disputeReasonstring | null

The provider's reason code, or null when none is given.

outcomestring

The resolution: "won" or "lost".

{
  "event": "payment.dispute_resolved",
  "timestamp": "2026-05-20T13:30:00.000Z",
  "organizationId": "org_abc123",
  "mode": "live",
  "apiVersion": "2026-06-10",
  "data": {
    "paymentTransactionId": "ptx_q7r8s9",
    "invoiceId": "inv_n4o5p6",
    "invoiceNumber": "INV-0043",
    "customerId": "user_123",
    "subscriptionId": "sub_1a2b3c4d",
    "disputeAmount": 9900,
    "currency": "usd",
    "disputeReason": "fraudulent",
    "outcome": "won"
  }
}

Cuándo se dispara

Cuando el proveedor de pagos cierra una disputa que previamente disparó payment.disputed. El payload incluye los mismos identificadores más el outcome:

  • won — la disputa se resolvió a tu favor; el monto congelado se restituye a tu saldo de payout y el pago vuelve a estar exitoso.
  • lost — el contracargo se mantiene; el monto disputado queda descontado.

Úsalo para cerrar la marca interna que abriste en payment.disputed, y en lost para revocar aquello que el pago original estaba financiando.

¿Cómo está esta guía?

payment.disputed

Un cliente abrió una disputa contra un pago.

invoice.created

Se dispara cuando se genera un nuevo recibo