> For the complete documentation index, see [llms.txt](https://docs.nexus.bot/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nexus.bot/guides/whop-api.md).

# Whop API

Connect Whop to Nexus and automatically open a private Discord ticket when a member schedules their subscription to cancel.

> Whop is optional. Your normal tickets and ticket panels continue to work without a Whop connection.

### Before you start

* Access to the correct Whop business and permission to create API keys.
* Staff access to your server in the [Nexus dashboard](https://nexus.bot/servers).
* Nexus in your Discord server, with permission to create and manage ticket channels in your chosen category.
* Members must link their Discord account to Whop and still belong to your Discord server.

### 1. Create your Whop API key

1. Open your [Whop dashboard](https://whop.com/dashboard) and select the business whose memberships you want Nexus to monitor.
2. Open **Developer** in the sidebar.
3. Under **Company API keys**, click **Create API key**. Whop’s documentation also calls this an **Account API key**. You do not need to create a Whop app.
4. Name the key **Nexus cancellation tickets**.
5. Keep **Inherit permissions from role** set to **Custom**, then select the five permissions below. Use the search box to find each one; changing the search keeps your previous selections.

#### Which permissions do I select?

| Option in Whop              | Permission                   | Why Nexus needs it                                                                                                                                                                                         |
| --------------------------- | ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Read business information   | company:basic:read           | Basic business access. Balance-read is not required: Nexus identifies the business from the webhook response. The original five permissions were verified with a live restricted key on 28 September 2026. |
| Read members                | member:basic:read            | Read the membership and identify the member.                                                                                                                                                               |
| Read member emails          | member:email:read            | Required by Whop’s membership retrieval endpoint.                                                                                                                                                          |
| Read changes to memberships | webhook\_receive:memberships | Receive membership cancellation changes.                                                                                                                                                                   |
| Manage webhooks             | developer:manage\_webhook    | Let Nexus set up and manage its event connection.                                                                                                                                                          |

You should see **5 permissions selected**. Choose **Read changes to memberships**, not “Read changes to app memberships” or “webhook\_receive:members”. You do not need payment, refund, payout, or membership-cancellation permissions.

#### Other options

* **Expiration:** optional. A blank date creates a key that does not expire. If you set a date, replace the key in Nexus before it expires.
* **API version:** keep the default. Nexus supplies its own API-version header.
* **IP allow-list:** leave blank for the standard setup. Do not enter your home or Discord server IP; requests come from Nexus’s hosting. Contact Nexus support before restricting this.

Click **Create**, complete any security verification Whop requests, and copy the generated key. Use a key from the live Whop dashboard, not Sandbox.

> Keep your key private. Paste it only into the Nexus dashboard—not a Discord message, support ticket, or screenshot.

### 2. Connect Whop to Nexus

1. Open [Nexus](https://nexus.bot/servers) and select your Discord server.
2. Go to **Bot Settings** and find **Whop integration**.
3. Paste your key into **Whop API key**.
4. Click the **blue save icon on the right of the field**.
5. Wait for **Connected** and check that the displayed business is correct.

Nexus encrypts the saved key and does not display it again. It also creates the Whop webhook automatically; you do not need to enter a webhook URL or secret yourself.

### 3. Enable cancellation tickets

1. Open **Tickets** from the Nexus sidebar.
2. Make sure the main **Tickets module** is enabled.
3. Find **Cancellation tickets** and turn its toggle on.
4. Choose a **Ticket category**. This is required.
5. Set the **Ticket title** and **Opening message**. Optionally choose **Roles to mention** and an **Opening message image**.
6. Click **Save cancellation tickets** and wait for confirmation.

Example opening message: “We received your cancellation request. If there’s anything we can help with, let us know here and our team will be with you shortly.”

Cancellation tickets use your usual ticket controls, staff access, transcript and log settings, follow-ups, and automatic closing. Review those settings in the Tickets module too.

### What happens next?

When Whop reports that a membership is set to cancel at the end of its billing period, Nexus checks the membership and opens a private channel such as **ticket-cancellation-batch** for the linked Discord member.

* The member must have a Discord account connected to Whop and be in the selected server.
* Tickets open automatically; members do not need to press a ticket-panel button.
* Repeated notifications for the same cancellation in the same billing period do not create extra tickets.
* Reversing a cancellation does not open a cancellation ticket.
* Enabling the feature does not import older cancellation requests.

This opens a support conversation. It does not cancel, refund, or change the member’s subscription.

### Troubleshooting

* **The key will not connect:** check the business, key type, all five permissions, expiration and IP allow-list. Read the error shown below the Whop field.
* **The cancellation toggle is unavailable:** connect Whop in Bot Settings first, then reload Tickets.
* **Connected, but no ticket appears:** check both ticket toggles, the saved category, the bot’s channel permissions, and the member’s linked Discord account. Allow a short delay for the event to be processed, then refresh Bot Settings for any reported error.
* **A repeated test creates no new ticket:** duplicate cancellation requests within the same billing period are intentionally ignored.

To stop new cancellation tickets, switch off Cancellation tickets and save. To remove the Whop connection, use **Disconnect** in Bot Settings. Normal tickets keep working.

Need help? [Join the Nexus Discord](https://nexus.bot/join) and open a support ticket. Include the error message, but never your API key.

### Setup screenshots

Examples from Whop and Nexus, checked September 2026. The permission search only shows matching options; the selected total includes the other permissions you have already chosen.

<figure><img src="https://1501270559-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MLdEj1zzd3YvwG1ITZm%2Fuploads%2FNPVcqoaGhi8XQ6oHdo4L%2Fclipboard.png?alt=media&amp;token=399bf97a-891a-4791-bf2e-17f43ff97922" alt=""><figcaption></figcaption></figure>

Whop: create a Company API key with Custom permissions. The example shows the two member-read permissions selected.

<figure><img src="https://1501270559-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MLdEj1zzd3YvwG1ITZm%2Fuploads%2FapqA7L8yTEcy2TAgjIeu%2Fclipboard.png?alt=media&amp;token=6dfdf22e-ec4e-4739-bfef-b4ad63e7a1a2" alt=""><figcaption></figcaption></figure>

Whop: select Read changes to memberships so Nexus can receive cancellation updates.

<figure><img src="https://1501270559-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MLdEj1zzd3YvwG1ITZm%2Fuploads%2FDtr9fpkVyR4w0ZhUUO0R%2Fclipboard.png?alt=media&amp;token=947b99de-3a36-4f0d-ba3b-843c09866279" alt=""><figcaption></figcaption></figure>

Nexus Bot Settings: paste the key and click the blue save icon on the right.

<figure><img src="https://1501270559-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MLdEj1zzd3YvwG1ITZm%2Fuploads%2FFHFudFlEARU0Rg43L1Pj%2Fclipboard.png?alt=media&amp;token=a0a29ab4-0adf-40e9-a0c5-d5ebd732dac9" alt=""><figcaption></figcaption></figure>

Nexus Tickets: choose the category and opening message, enable the toggle, then save. This example shows the form before Whop is connected.

### Whop reference

For Whop’s own documentation, see [creating an API key](https://docs.whop.com/developer/quickstart), [API key types and permissions](https://docs.whop.com/developer/guides/auth-scoping), and [membership read permissions](https://docs.whop.com/api-reference/memberships/retrieve-membership).
