WWooshPayment docs
Payments

Connect Whop to WooshPayment

Click-by-click guide to link your Whop to WooshPayment in 10 minutes. Includes creating the Access Pass product, copying the prod_xxx ID from the URL, generating an Owner-role API key, and the connect form.

9 min read

Connect Whop to WooshPayment โ€” visual 2026 guide

Whop is the payment processor WooshPayment uses to accept cards, Apple Pay, and Google Pay on your branded checkout. Setup in 10 minutes โ€” no Apple Developer Account, no document verification until you process more than $500/month.

What you'll end up with: two values to paste into WooshPayment Dashboard โ†’ Integrations โ†’ Whop:

  1. API Key (apik_xxx...) โ€” generated from Developer โ†’ Company API keys
  2. Product ID (prod_xxx...) โ€” taken from the URL of the Access Pass product you'll create

Why you need a Product ID

WooshPayment creates each checkout as a "sale" of your Whop product. So you need a dedicated Whop product where all your store's sales land. The product must be:

  • One-time payment, not recurring
  • With no fixed pricing plan: we set the price at runtime from the customer's cart

Without a Product ID, the Whop iframe in the checkout doesn't know where to create the invoice and stalls with an error.

The whop.com screenshots (steps 1โ€“8, 10) are illustrative renderings of the Whop UI (those would require Whop Owner credentials we can't ship here). Step 9 is a real screenshot of the live WooshPayment Dashboard Integrations page; step 11 is the real WooshPayment checkout page.

Prerequisites

  • Whop Business account (not Personal) with a Company already created
  • Owner role on the Company (Admins are not enough โ€” see Troubleshooting)
  • Verified email + basic legal data filled in (required for payouts > $500/month)

If you don't have a Whop account yet: sign up here, then come back to this guide.

1. Open the Products section in your Whop

Whop dashboard Products page for Demo Company with full sidebar nav and "+ Create product" button highlighted top-right

  1. Go to whop.com/dashboard and select the right Company in the top-left
  2. Sidebar โ†’ Products (in the "Featured" section)

You'll see your product list (empty if it's your first). At the top right is the + Create product button.

2. Click "+ Create product" and fill in details

Whop "Add product" form with Name field "WooshPayment Checkout", optional Title blank, and 3 pricing cards with "Free access" selected by default

  1. Click + Create product at the top right
  2. The Add product page opens with:
    • Name (required): write something like WooshPayment Checkout โ€” internal name, your customers don't see it
    • Title (optional): you can leave it blank
  3. Pricing section below: default is "Free access" โ† we change this in the next step

3. Click "Paid access"

Whop form with "Paid access" card selected + default payment plan 29.99 USD/month Recurring and orange warning "DO NOT LEAVE IT LIKE THIS โ€” change type in next step"

In the Pricing section, click the Paid access card (second one, dollar icon).

Whop immediately shows a price card with default values: 29.99 USD / month, type Recurring.

โš  DO NOT LEAVE IT LIKE THIS. If you leave "Recurring", Whop will charge your customers the recurring plan amount instead of the WooshPayment cart total. Change the type in the next step.

4. Change the type from "Recurring" to "One-time"

Whop Add product form with Type dropdown set to "One-time โœ“" highlighted in purple, green confirmation banner, and preview on right showing purple "Buy now" button

  1. Click the Recurring dropdown (below the price)
  2. Select One-time payment
  3. Verify the preview on the right now shows the "Buy now" button (no longer "Join now") โ€” that's the signal that the type changed correctly
  4. The default 29.99 USD price doesn't matter โ€” WooshPayment overrides it with the customer's actual cart total โ€” leave it
  5. Leave the other toggles off: no "Include free trial", no "Accept payments in local currency"

Top right click Next to reach the App step (skip: WooshPayment doesn't use Whop apps) โ†’ Next again โ†’ Page step (skip) โ†’ finally Save product at the top right.

5. Copy the Product ID (prod_xxx) from the URL

Browser address bar on whop.com/dashboard with prod_QrSt456UvWx12 highlighted in yellow, and card below distinguishing Company ID from Product ID

After saving, Whop takes you to the page of the product you just created. Look at the browser address bar: it contains the product ID in the format prod_xxxxxxxxxxxxx.

Example URL:

https://whop.com/dashboard/biz_eKNqey9jlu9Qe0/products/prod_79AacrnFwMXjs/
                                                       ^^^^^^^^^^^^^^^^^^
                                                       this is your Product ID

Copy it โ€” you'll need it later in WooshPayment.

Alternatively you can grab the prod_xxx from the Products list: hover the row โ†’ three-dot menu on the right โ†’ often exposes "Copy ID". The URL method is the most reliable.

6. Generate the API Key

Whop Developer page with "Company API keys" tab active, empty list, and "+ Create" button highlighted top-right

  1. Whop sidebar โ†’ Developer (bottom, above Settings)
  2. You land on the Company API keys page
  3. You see the list of existing keys (empty if it's your first time) + a + Create button top right

7. Click "+ Create" โ†’ role "Owner"

Whop "Create API key" modal with Name field "WooshPayment" and "Inherit permissions from role" dropdown set to "Owner โœ“" highlighted, with an orange "MUST be Owner, NOT Administrator" warning banner below

  1. Click the + Create button in the Company API keys section
  2. The Create API key modal opens with:
    • Name: write something like WooshPayment (this is just an internal label so you remember where you used it)
    • Inherit permissions from role: dropdown defaults to Administrator
  3. Change it to "Owner" โ† this is critical
  4. Do NOT tick individual permissions โ€” inherit everything from the role
  5. Click Create at the bottom right

The role MUST be Owner. With Administrator or lower, the Whop /v5/company endpoint we use to validate the key returns 401 โ€” does not have permission to access this route. If you see that error when connecting, come back here and regenerate the key with Owner role.

8. Copy the API Key

"API key created" modal with green checkmark, apik_DEMO_xxxxx key visible in a box with Copy button, and red banner "This key is shown ONLY ONCE"

After clicking Create, Whop shows you the key in format apik_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx. Copy it now โ€” Whop only shows it once. If you lose it, delete and create a new one.

9. Paste both values into WooshPayment

Real screenshot of the WooshPayment Dashboard Integrations page: Whop card in "Not connected" state with empty API Key and Product ID fields, step-by-step instructions and green "Connect Whop" button. Below, the WooCommerce card with its Consumer Key/Secret fields and the Connect button

Now go to the WooshPayment Dashboard:

  1. Go to Dashboard โ†’ Integrations (wooshpayment.com/dashboard/integrations)
  2. Scroll to the purple Whop card
  3. Fill in the two fields:
    • Whop API Key: paste apik_... (the key you just copied)
    • Product ID: paste prod_... (the ID from the product URL)
  4. Click Connect Whop

Response in ~1 second:

  • โœ… Green "Whop account connected: {your Company name}!" + "Connected" badge
  • โŒ If red: see the Troubleshooting section below

What the backend does behind the scenes:

  • Tests the API key against https://api.whop.com/v5/company (6s timeout)
  • Tests that prod_xxx exists and belongs to your Company (api.whop.com/api/v2/products/{prod_xxx})
  • If both 200 โ†’ saves everything encrypted (AES-256-GCM): whopApiKey, whopBusinessId, whopAccessPassId, whopConnected=true
  • Fires the Apple Pay domain registration on your Whop (see Apple Pay)

10. Configure the webhook (one-time, manual)

Whop "+ Create webhook" modal with Endpoint URL pre-filled at api.wooshpayment.com/webhooks/whop/payment-update and all 6 events (invoice_paid, payment_succeeded, membership_activated, membership_went_valid, payment_failed, payment_refunded) checked

To receive payment notifications, the Whop webhook must point to us:

  1. Whop Dashboard โ†’ Developer โ†’ scroll to Webhooks
  2. Click + Create webhook
  3. Endpoint URL: https://api.wooshpayment.com/webhooks/whop/payment-update
  4. Events to check (minimum required):
    • invoice_paid
    • payment_succeeded
    • membership_activated
    • membership_went_valid
    • payment_failed
    • payment_refunded
  5. Save. Whop signs every payload with HMAC-SHA256 (the secret stays on your account, we verify it)

Without webhook configured, sessions stay PENDING until Whop notifies us.

11. Verify everything works

WooshPayment checkout success page with large green checkmark, title "Checkout complete!", order details with test card 4242 4242 4242 4242 and amount $50.00 USD, COMPLETED status and link to WooshPayment Dashboard Orders

Quick end-to-end test (3 minutes):

  1. Open your test checkout at {your-slug}.wooshpayment.com/checkout/...
  2. Fill in email + address
  3. In the Whop iframe use the test card:
    • Number: 4242 4242 4242 4242
    • Expiry: any future month/year (e.g. 12/30)
    • CVV: any (e.g. 123)
  4. Click Pay
  5. You should see the checkout marked COMPLETED in WooshPayment Dashboard โ†’ Orders
  6. On Whop Dashboard โ†’ Payments you'll see the invoice with the right total

If you see "Card declined": Whop Dashboard โ†’ Settings โ†’ Test mode active.

Troubleshooting

401 โ€” does not have permission to access this route

The API key was generated with Administrator role (or lower) instead of Owner. Go back to step 7, regenerate with Owner role, replace the old key in WooshPayment.

Invalid Product ID โ€” prod_xxx not found

The ID is from a product belonging to a different Company, or you mistyped it. Verify:

  • The URL whop.com/dashboard/biz_xxx/products/prod_xxx/ should have biz_xxx equal to the Business ID shown in WooshPayment Dashboard
  • No leading/trailing spaces
  • The prefix is prod_, not prd_ or product_

Wrong amount charged (e.g. $29.99 instead of $50)

The Whop product was saved with Recurring type instead of One-time. Go back to the Whop product โ†’ Edit โ†’ change the dropdown to One-time โ†’ Save. No need to reconnect on WooshPayment.

Whop asks me to verify my identity

Whop blocks payouts > $500/month if you haven't uploaded:

  • ID (passport or ID card)
  • Address (utility bill or bank statement)
  • For companies: business registration

Checkouts work anyway, but money stays in your Whop wallet until you complete verification.

I regenerated the API Key and now everything is broken

The old one stops working immediately. Go to WooshPayment Dashboard โ†’ Integrations โ†’ Whop โ†’ Disconnect โ†’ paste the new key + same prod_xxx โ†’ Connect Whop.

Whop iframe loads empty / Apple Pay doesn't show up

Three possible causes:

  1. Apple Pay: only visible on Safari with a Wallet card configured. On Chrome/Firefox/other it doesn't appear.
  2. Domain not verified: your checkout subdomain ({slug}.wooshpayment.com or your custom domain) is not registered as an Apple Pay domain on your Whop. See Setup Apple Pay.
  3. Webhook missing: see step 10 above. Without webhook, sessions get stuck.

Detailed fees (Whop)

ItemCost
EU card transaction5% + โ‚ฌ0.30
US card transaction5% + $0.30
Apple Pay / Google PaySame as card
Chargeback$15 (refunded if you win the dispute)
RefundFree
SEPA payoutFree
International SWIFT payout$15
Currency conversion2% above spot

WooshPayment adds no fees on top during beta.

FAQ

Can I use Stripe instead of Whop?

Not yet. Stripe Connect is on the roadmap for Q3 2026 once you have volumes high enough that the 5% becomes painful.

Can I use an existing Whop product that already has fixed plans?

No. WooshPayment requires a dedicated product with One-time type and no plans. Create a new product just for WooshPayment following this guide.

What if I add a second Product to WooshPayment?

For now WooshPayment uses one Product ID per merchant. Multi-product is on the roadmap for merchants with multiple brands under the same Whop Company.

Does the Whop connection auto-renew? Does it expire?

The API Key doesn't expire. It stays valid until:

  • You regenerate it manually
  • You remove the Owner role from the user that created it
  • Whop revokes your account (TOS violation)

In all these cases, reconnect by following this guide.

Next steps