Go-Live Checklist
Follow this checklist when you are ready to move from test mode to live mode. Complete every item before enabling your programme for real partners and customers. All endpoints reference API version v1.
1. Swap test keys for live keys
Replace all test API keys in your codebase and configuration with their live counterparts:
| Replace | With |
|---|---|
pk_test_* (in the tracking snippet) | pk_live_* |
sk_test_* (in server-side code / env vars) | sk_live_* |
Your live public key already exists. The live secret key does not until you click Generate secret key under Live mode in Settings > API Keys — and it is shown only once, with no way to view it again, so store it before you close the dialogue.
Where to check:
- Tracking snippet
data-merchantattribute in your HTML / template - Server-side environment variables for the Conversion API
- CI/CD pipeline secrets or deployment configuration
- Any scripts or cron jobs that call the Selgeo API
Never commit live secret keys (sk_live_*) to source control. Use environment variables or a secrets manager.
2. Verify Stripe live connection
- In the Selgeo dashboard, go to Settings > Stripe.
- Confirm that your live Stripe account is connected (not just the test account).
- Confirm the Stripe webhook is registered. When you connect your live Stripe restricted key under Settings > Stripe, Selgeo automatically registers the webhook endpoint and subscribes it to the required events — you do not need to add it manually in the Stripe dashboard. Make sure your restricted key includes the
webhook_endpoints:writepermission, then confirm the connection shows Connected. The events Selgeo subscribes to are:checkout.session.completedinvoice.paidcharge.refundedcharge.dispute.createdcharge.dispute.closed
- Send a test event from the Stripe webhook dashboard and confirm the resulting conversion or commission appears in Analytics / Commissions. (The delivery log under Settings > Webhooks tracks your own outbound webhooks, not inbound Stripe events.)
3. Remove test data
Test-mode data is isolated from live mode, so it will not appear in live reports. However, it is good practice to clean up:
- Remove test partners that should not carry over
- Archive or delete test programmes that were used only for integration testing
- Clear test webhook endpoints if they point to localhost or development URLs
Test-mode data does not affect live-mode data in any way. This step is optional but helps keep your account tidy.
4. Verify webhook endpoints
- Go to Settings > Webhooks in the dashboard.
- Create (or verify) your live-mode webhook endpoints. Live endpoints must use HTTPS.
- Subscribe to the events your application needs. At minimum, consider:
conversion.created— to sync conversions to your systemcommission.created— to track new commissionsconversion.fraud_detected— to be alerted about fraudparticipant.approved— to provision access for new partners
- Click Send test ping for each endpoint to verify connectivity.
- Store the signing secret (
whsec_...) securely in your server's environment variables. - Verify that your server validates webhook signatures correctly.
5. Review rate limits
Confirm your integration stays within the API rate limits:
| Zone | Limit |
|---|---|
Tracking (POST /v1/clicks) | 1,000 req/min per pk_* key |
Conversion API (POST /api/v1/conversions) | 120 req/min per sk_* key |
| General API | 300 req/min per user |
If you expect higher traffic volumes, contact support before going live.
6. Review commission rules
- Go to Programmes > [Your Programme] > Commission Rules.
- Verify that commission percentages, flat amounts, hold periods, and auto-approval settings are correct for production.
- If you use net-basis commissions (commission calculated after Stripe fees), confirm that your Stripe live account has the correct fee structure.
7. Test the full flow one more time
Before announcing your programme to partners, run through the complete flow in live mode with a real (but small) transaction:
- Open your referral link in a browser.
- Complete a real purchase (you can refund it afterward).
- Verify that the click, conversion, and commission appear in the dashboard.
- Verify that webhook events were delivered to your endpoints.
- Refund the transaction in Stripe and confirm that the
commission.refundedevent fires.
8. Enable your programme
- Set your programme status to Active in the dashboard.
- Share programme invite links or the application form URL with your partners.
- Monitor the dashboard for the first real partner sign-ups and conversions.
Post-launch monitoring
After going live, keep an eye on:
- Webhook delivery log — check for failed or dead-lettered deliveries
- Attribution audit log — review attribution decisions for correctness
- Fraud alerts — monitor
conversion.fraud_detectedevents - Commission review queue — approve or reject commissions that require manual review (e.g., net-basis commissions flagged with
needs_review)