---
title: "ResolutionCenterCase Decided"
method: POST
path: "resolution_center_case.decided"
tags: ["Resolution Center Cases"]
---

# ResolutionCenterCase Decided

`POST resolution_center_case.decided` (webhook)

Sent when a resolution center case is decided

Required permissions:
 - `payment:resolution_center_case:read`
 - `webhook_receive:resolutions`

## Headers

- `webhook-id` string, required — A unique identifier for this webhook request
- `webhook-signature` string, required — The signature of the webhook request with the webhook version prepended
- `webhook-timestamp` string, required — The timestamp in seconds since the Unix epoch that the webhook was sent at on the server

## Payload

- object
  - `api_version` 'v1', required — The API version for this webhook
  - `api_version_date` string, nullable, required — The dated API version (Api-Version-Date) the payload is serialized to
  - `company_id` string, nullable — The account ID that this webhook event is associated with
  - `data` ResolutionCenterCase, required
    - `account` AccountSummary, required
      - `id` string, required — Account ID, prefixed `biz_`.
      - `title` string, required — Account display name.
    - `amount` number, required — The amount in question, in whole units of `currency`.
    - `available_actions` string[], required
    - `buyer` ResolutionBuyer, required
      - `email` string, nullable, required — The customer's email address. Requires the `member:email:read` scope; `null` without it.
      - `member_id` string, nullable, required — The customer's member row on the account, prefixed `mem_`.
      - `name` string, nullable, required — The customer's display name.
      - `user_id` string, nullable, required — The customer's user ID, prefixed `user_`.
      - `username` string, nullable, required — The customer's Whop username.
    - `created_at` string, required — When the case was opened, as an ISO 8601 timestamp.
    - `currency` string, nullable, required — Three-letter ISO currency code of the amount.
    - `customer_appealed` boolean, required — Whether the customer has appealed a decision on this case.
    - `escalated` boolean, required — Whether Whop is involved — either reviewing the case, or waiting on the side named by `status` for something it asked for while reviewing.
    - `id` string, required — Resolution center case ID, prefixed `reso_`.
    - `outcome` 'customer_won' | 'merchant_won' | 'withdrawn' | 'null', nullable, required — Who prevailed on the claim. `null` until the case closes. Read `refund` for whether any money actually moved.
    - `payment` ResolutionPayment, required
      - `card_brand` string, nullable, required — Card brand, when the customer paid by card.
      - `card_last4` string, nullable, required — Last four digits of the card, when the customer paid by card.
      - `created_at` string, required — When the payment was made, as an ISO 8601 timestamp.
      - `id` string, required — Payment ID, prefixed `pay_`.
      - `payment_method_type` string, nullable, required — How the customer paid, such as `card` or `paypal`.
    - `plan_id` string, nullable, required — The plan the payment was made on, prefixed `plan_`.
    - `product_id` string, nullable, required — The product the payment was for, prefixed `prod_`.
    - `reason` 'fraudulent' | 'product_not_received' | 'not_as_described' | 'product_unacceptable' | 'subscription_canceled', required — What the customer says went wrong. Shares the `/disputes` vocabulary, so a case that later becomes a chargeback reports the same complaint.
    - `refund` 'none' | 'merchant' | 'platform' | 'null', nullable, required — Whether money moved and off whose balance: `none`, `merchant`, or `platform` (Whop refunded the customer and the merchant kept the funds). Independent of `outcome` — a case the merchant won can still carry a platform refund. `null` while the case is open, and on older closed cases that predate this being recorded.
    - `response_due_at` string, nullable, required — When the next response is due, as an ISO 8601 timestamp.
    - `status` 'awaiting_merchant' | 'awaiting_customer' | 'under_review' | 'closed', required — Who the case is waiting on. `awaiting_merchant` and `awaiting_customer` name the side that owes a response, `under_review` means Whop is deciding, and `closed` means it is settled — read `outcome` for how.
    - `updated_at` string, required — When the case was last changed, as an ISO 8601 timestamp.
  - `id` string, required — A unique ID for every single webhook request
  - `timestamp` string, date-time, required — The timestamp in ISO 8601 format that the webhook was sent at on the server
  - `type` 'resolution_center_case.decided', required — The webhook event type

## Acknowledgement `200`

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

---

[API](https://skmtc.net/whop/apis/whop-api.md) · [All operations](https://skmtc.net/whop/apis/whop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/whop/whop-api/versions/db0883548bc5/schema)
