OpenAPI 3.1.02026-08-143874115.7 MB

a84d4905fdbb

Disputes

Dispute Created

Sent when a dispute is created

Required permissions:

  • payment:dispute:read
  • plan:basic:read
  • access_pass:basic:read
  • company:basic:read
  • payment:basic:read
  • member:email:read
  • member:basic:read
  • member:phone:read
  • webhook_receive:disputes
postWebhookdispute.created

Headers

webhook-idstring required

A unique identifier for this webhook request

Example:msg_xxxxxxxxxxxxxxxxxxxxxxxx
webhook-signaturestring required

The signature of the webhook request with the webhook version prepended

Example:v1,BASE64ENCODEDSIGNATURE
webhook-timestampstring required

The timestamp in seconds since the Unix epoch that the webhook was sent at on the server

Example:1727606400

Payload

api_version'v1' required

The API version for this webhook

api_version_datestring nullable required

The dated API version (Api-Version-Date) the payload is serialized to

company_idstring nullable

The account ID that this webhook event is associated with

idstring required

A unique ID for every single webhook request

timestampstring date-time required

The timestamp in ISO 8601 format that the webhook was sent at on the server

type'dispute.created' required

The webhook event type

Example payload

{
  "api_version": "v1",
  "api_version_date": "2026-07-20",
  "company_id": "biz_xxxxxxxxxxxxxx",
  "data": {
    "account_id": "biz_xxxxxxxxxxxxxx",
    "amount": 150,
    "buyer": {
      "email": "marcus@shinetime.example",
      "member_id": "mber_xxxxxxxxxxxxxx",
      "name": "Dana Whitfield",
      "user_id": "user_xxxxxxxxxxxxxx",
      "username": "danawhitfield"
    },
    "created_at": "2026-01-01T12:00:00.000Z",
    "currency": "usd",
    "evidence": {
      "access_activity_log": "Vehicle checked in 2026-01-04 09:02, released 2026-01-05 16:40. Signed release on file.",
      "billing_address": "4180 Burnet Rd, Austin, TX 78756, US",
      "cancellation_policy_attachment": {
        "content_type": "image/png",
        "filename": "booking-confirmation-email.png",
        "id": "file_xxxxxxxxxxxxxx",
        "url": "https://assets-2-rough.whop.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      },
      "cancellation_policy_disclosure": "Shown at checkout and again in the booking confirmation email.",
      "customer_communication_attachment": {
        "content_type": "image/png",
        "filename": "booking-confirmation-email.png",
        "id": "file_xxxxxxxxxxxxxx",
        "url": "https://assets-2-rough.whop.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      },
      "customer_email_address": "marcus@shinetime.example",
      "customer_name": "Dana Whitfield",
      "notes": "Two-day ceramic coating completed and collected. Before and after photos attached.",
      "product_description": "Two-stage paint correction with a three-year ceramic coating.",
      "refund_policy_attachment": {
        "content_type": "image/png",
        "filename": "booking-confirmation-email.png",
        "id": "file_xxxxxxxxxxxxxx",
        "url": "https://assets-2-rough.whop.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      },
      "refund_policy_disclosure": "Linked from the booking page and accepted at checkout.",
      "refund_refusal_explanation": "Work was completed and the vehicle collected, so the deposit is non-refundable.",
      "service_date": "2026-01-01",
      "uncategorized_attachment": {
        "content_type": "image/png",
        "filename": "booking-confirmation-email.png",
        "id": "file_xxxxxxxxxxxxxx",
        "url": "https://assets-2-rough.whop.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      }
    },
    "evidence_due_at": "2026-01-01T12:00:00.000Z",
    "evidence_locked_reason": "submitted",
    "evidence_submitted_at": "2026-01-01T12:00:00.000Z",
    "id": "dspt_xxxxxxxxxxxxxx",
    "issuer_comments": [
      {
        "received_at": "2026-01-01T12:00:00.000Z",
        "text": "Note: Cardholder states the ceramic coating appointment never took place\nCancellation method: By phone"
      }
    ],
    "payment": {
      "amount": 249,
      "card_brand": "visa",
      "card_last4": "4242",
      "created_at": "2026-01-01T12:00:00.000Z",
      "currency": "usd",
      "id": "pay_xxxxxxxxxxxxxx",
      "payment_method_type": "card",
      "payment_processor": "stripe"
    },
    "plan_id": "plan_xxxxxxxxxxxxxx",
    "product_id": "prod_xxxxxxxxxxxxxx",
    "reason": "other",
    "reason_code": "13.1",
    "status": "under_review",
    "updated_at": "2026-01-01T12:00:00.000Z"
  },
  "id": "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
  "timestamp": "2025-01-01T00:00:00.000Z",
  "type": "dispute.created"
}

Response

Return a 200 status to indicate that the data was received successfully