> For the complete documentation index, see [llms.txt](https://referral-rocket.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://referral-rocket.gitbook.io/docs/faq.md).

# FAQ

## Setup & Installation

**Where do I find my Campaign ID?**\
Go to **Campaigns** in the left navigation. The Campaign ID is shown in the campaigns table. See [Where to find Campaign ID?](/docs/faq/where-to-find-campaign-id.md) for a screenshot walkthrough.

**Where do I find my API key?**\
Go to **Settings > API Key** in your Referral Rocket dashboard. Keep it private — never expose it in client-side code or public repositories. REST API access requires the Pro plan.

**Why isn't `window.Rocket` available after adding the script?**\
The script uses the `defer` attribute, so it loads after the HTML is parsed. Make sure you're calling `window.Rocket` after the page has fully loaded (e.g. inside a `DOMContentLoaded` listener or at the bottom of the `<body>`). Open the browser console and type `window.Rocket` to verify — it should return the Referral Rocket object, not `undefined`.

**Can I install the widget on multiple pages?**\
Yes. Add the script tag to every page where referral tracking should be active. The widget will only render visually on pages where the `<div id="referral-rocket-widget">` element is present.

**Can I run multiple campaigns at the same time?**\
Yes, on paid plans. The Starter (free) plan is limited to one campaign. If you have multiple campaigns, pass the campaign ID explicitly: `window.Rocket.getCampaign("YOUR-CAMPAIGN-ID")`.

***

## Referral Tracking

**What's the difference between `addParticipant` and `qualifyParticipant`?**\
`addParticipant` registers a new user in your campaign — call it at sign up. `qualifyParticipant` marks their qualifying event as complete (e.g. first payment) and triggers the referrer's reward — call it after a successful payment or other qualifying action.

**How does the referral cookie work?**\
When a visitor arrives via a referral link, Referral Rocket sets a first-party cookie with the referral code. When `addParticipant` is called later (e.g. on sign up), the SDK reads this cookie automatically and links the new participant to the referrer. You don't need to manually pass the referral code.

**What happens if a referred user signs up without clicking the referral link?**\
The referral won't be attributed automatically. You can manually pass `referredByCode` or `referredByEmail` to `addParticipant` if you have the referral code from another source (e.g. a promo code field in your sign up form).

**Can a participant refer themselves?**\
No. Referral Rocket detects self-referrals and does not attribute them.

**Why is a referral showing as unqualified even after payment?**\
Make sure `qualifyParticipant` is being called after the payment succeeds — not before. It should be called in a payment success callback, a Stripe webhook handler, or a post-purchase confirmation page, not on the payment page itself.

***

## Rewards

**What triggers a reward for the referrer?**\
Calling `qualifyParticipant` for a referred participant marks their qualifying event as complete and makes the referrer eligible for their reward. The specific qualifying event (sign up, first payment, etc.) is configured per campaign under **Campaign Details**.

**How do I reward both the referrer and the new user (referee)?**\
When calling `qualifyParticipant` via the JavaScript SDK, set `rewardReferee: true`. This generates a reward for both the referrer and the referred user. Note: `rewardReferee` is not available via the REST API — use the JS SDK for double-sided rewards.

**How do I issue rewards?**\
Go to **Reward Management** in your campaign dashboard. Referral Rocket supports issuing rewards via Tremendous (gift cards), PayPal Mass Payments, Wise Batch Payments, Stripe, RazorPayX, and Shopify discount codes.

**Can I set percentage-based rewards instead of fixed amounts?**\
Yes. Pass `amountPaid` when calling `qualifyParticipant` and configure a percentage-based reward in your campaign settings. Referral Rocket will calculate the reward amount from the value you pass.

***

## Plans & Billing

**What is the Starter (free) plan limited to?**\
The Starter plan allows 1 campaign, up to 3 referrers, and up to 5 tracked referrals. It is designed for testing only — not for production use. See [Understanding the Test Plan](/docs/faq/understanding-the-test-plan-perfect-for-testing-limited-for-production.md) for the full breakdown.

**Will my data be lost if I upgrade from the Starter plan?**\
No. All existing campaign data is preserved when you upgrade. There is no downtime during the transition.

***

## Support

**How do I get help?**\\

* **In-app chat** — available from any page in your Referral Rocket dashboard
* **Email** — <support@referralrocket.io>
* **Docs** — browse the sidebar for guides on setup, integrations, and rewards
