Skip to main content
These events tell you when money on a creator’s on-platform sale is returned or contested. They have no legacy flat equivalent — previously only checkout-link payments emitted refund and dispute events, so these close that gap for on-platform activity.
Event (type)ResourceFires when
creator.refund.createdrefundAn on-platform payment is refunded
creator.dispute.flaggeddisputeAn early pre-chargeback alert is raised
creator.dispute.createddisputeA formal dispute (chargeback) is opened
All three require the read:creator scope. Delivered in the Standard-Webhooks envelope; the fields below describe the data object.

Refund resource

Fanvue reverses the entire original payment (partial refunds are not modeled), so full_amount is always true and amount equals the original gross.
FieldTypeDescription
objectstringAlways "refund"
idstringReversal invoice identifier
payment_idstringIdentifier of the original (refunded) payment
amountintegerRefunded amount in minor units (positive)
currencystring | nullISO 4217 currency code
reasonstring | nullRefund reason, if recorded
full_amountbooleanAlways true
created_atstring | nullISO 8601 time the refund was created
purchaserobject{ uuid, email } of the buyer (email may be null)
creatorobject{ uuid } of the creator
metadataobjectYour passthrough metadata map

Example: creator.refund.created

{
  "id": "f1a2b3c4-9999-4a2b-9c3d-aaaaaaaaaaaa",
  "type": "creator.refund.created",
  "timestamp": "2026-06-09T08:40:00.000Z",
  "data": {
    "object": "refund",
    "id": "FVC-12345",
    "payment_id": "FV-12345",
    "amount": 1999,
    "currency": "USD",
    "reason": null,
    "full_amount": true,
    "created_at": "2026-06-09T08:40:00.000Z",
    "purchaser": { "uuid": "fan-uuid", "email": "fan@example.com" },
    "creator": { "uuid": "creator-uuid" },
    "metadata": { "campaign": "spring-promo" }
  }
}

Dispute resource

Both creator.dispute.flagged (an early warning, before a formal chargeback) and creator.dispute.created (the formal chargeback) share the dispute resource. Use source to identify the provider that reported it.
FieldTypeDescription
objectstringAlways "dispute"
idstringProcessor dispute / alert id
statusstring | nullProcessor status (e.g. needs_response)
amountinteger | nullDisputed amount in minor units
currencystring | nullISO 4217 currency code
reasonstring | nullDispute reason, if provided
sourcestringchargeback_help | primer
created_atstring | nullISO 8601 time the dispute was reported
paymentobjectThe disputed payment: { id, transaction_id, purchaser }
creatorobject{ uuid } of the creator
metadataobjectYour passthrough metadata map

Example: creator.dispute.created

{
  "id": "f1a2b3c4-aaaa-4a2b-9c3d-aaaaaaaaaaaa",
  "type": "creator.dispute.created",
  "timestamp": "2026-06-09T08:41:00.000Z",
  "data": {
    "object": "dispute",
    "id": "dp_abc123",
    "status": "needs_response",
    "amount": 1999,
    "currency": "USD",
    "reason": "fraudulent",
    "source": "chargeback_help",
    "created_at": "2026-06-09T08:41:00.000Z",
    "payment": {
      "id": "FV-12345",
      "transaction_id": "txn_abc",
      "purchaser": { "uuid": "fan-uuid", "email": "fan@example.com" }
    },
    "creator": { "uuid": "creator-uuid" },
    "metadata": { "campaign": "spring-promo" }
  }
}
The creator.dispute.flagged event uses the identical shape with "type": "creator.dispute.flagged"; treat it as an early heads-up to prepare evidence before a formal chargeback is filed.