WWooshPayment docs
Payments

Connect Whop to WooshPayment

Click-by-click guide to link Whop to WooshPayment with a one-time product, Product ID, Company API Key and webhook signing secret.

10 min read

Connect Whop to WooshPayment โ€” visual 2026 guide

Whop is the payment processor WooshPayment uses to accept cards and, when account/domain/device conditions are compatible, wallets such as Apple Pay and Google Pay. The technical connection requires every step below: API key, Product ID, webhook signing secret and a real test before traffic.

What you'll end up with: three 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
  3. Webhook signing secret (ws_xxx...) โ€” copied from the Whop webhook that points to WooshPayment

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 Business 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
  • Administrator permissions on the Company (Owner works too)
  • 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 "Administrator"

Whop "Create API key" modal with Name field "WooshPayment" and "Inherit permissions from role" dropdown highlighted. Use Administrator or Owner to give the key the Company permissions it needs.

  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. Leave Administrator selected, or choose Owner if you prefer
  4. Do NOT tick individual permissions โ€” inherit everything from the role
  5. Click Create at the bottom right

The key must inherit sufficient Company permissions. If the Whop /v5/company endpoint returns 401 โ€” does not have permission to access this route, come back here and recreate the key with Administrator or 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 the API key and Product ID 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 fields:
    • Whop API Key: paste apik_... (the key you just copied)
    • Product ID: paste prod_... (the ID from the product URL)
    • Webhook signing secret: if you already created it, paste ws_...; otherwise complete step 10 and save the secret right after
  4. Click Connect Whop

Response in ~1 second:

  • โœ… The API key is validated and the Business ID is saved
  • โš ๏ธ The card still needs completion until you add the webhook signing secret from step 10
  • โŒ 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, optional whopWebhookSecret, whopConnected=true
  • For Apple Pay, a best-effort domain registration attempt may run, but treat Apple Pay as ready only after verifying the domain in your Whop dashboard by following 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.
  6. Open the webhook you just created, copy the Signing secret (ws_...) and paste it into WooshPayment โ†’ Dashboard โ†’ Integrations โ†’ Whop โ†’ Webhook signing secret.
  7. Save the secret in WooshPayment. The Whop card should turn green/ready.

If the webhook is not configured, or if the signing secret is not saved in WooshPayment, sessions may stay PENDING/in recovery and orders are not created in real time. A merchant is considered ready only when API key, Product ID and webhook secret are all present.

11. Verify the money-path

WooshPayment checkout success page with large green checkmark, title "Checkout complete!", order details, COMPLETED status and link to WooshPayment Dashboard Orders

Quick end-to-end test:

  1. Open your test checkout at {your-slug}.wooshpayment.com/checkout/...
  2. Fill in email + address
  3. If you are in production, complete a small real payment from the live cart. Use test cards only if support explicitly enabled the Whop sandbox on your merchant.
  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
  7. Before traffic, also verify the Shopify/Woo store order, customer/merchant emails, pixel/CAPI and return page

If you are in sandbox and the test card is declined, check that the Whop sandbox environment is actually enabled on the merchant. If you are in production, a test card does not certify the money-path: use a small real payment.

Troubleshooting

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

The API key was generated with a role that is too low or custom permissions that are insufficient. Go back to step 7, recreate it with Administrator or Owner role, then 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

Do not send traffic relying on payouts until the verification requested by Whop is completed or clarified in your account.

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)

Whop fees are set by Whop and can vary by country, category, risk profile, payout method and currency conversion. Check the live fee table in your Whop account before sending traffic.

WooshPayment fees depend on your active plan; Whop fees remain separate and must be checked in your Whop account.

FAQ

Can I use Stripe instead of Whop?

Not in the current public product. WooshPayment uses Whop for cards/wallets; alternatives are evaluated only as custom integrations.

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 Company role from the user that created it
  • Whop revokes your account (TOS violation)

In all these cases, reconnect by following this guide.

Next steps