Set up Stripe as your payment processor with OAuth and configure webhooks for automatic conversion tracking.
Before connecting Stripe, you need an active Stripe account in live mode (or test mode for development). Make sure you have admin access to the Stripe dashboard, as you will need to authorize Icodrip to read your payment data.
Your Stripe account should have at least one product or price configured. Icodrip tracks conversions based on successful payments, so there needs to be something to sell. If you are still setting up your product, complete that first and come back to this guide.
You should also have your Icodrip program created with commission rules configured. The integration connects your payment events to Icodrip's attribution engine, so the program needs to exist first.
Navigate to Settings > Integrations in your Icodrip dashboard. Click the "Connect Stripe" button to start the OAuth flow. You will be redirected to Stripe where you can authorize Icodrip to access your account.
During the OAuth flow, Stripe asks you to select which account to connect (if you have multiple). Choose the account that receives payments for the product you want to track. Icodrip requests read-only access to your payment events — it never creates charges or modifies your Stripe data.
After authorizing, you are redirected back to Icodrip with a confirmation message. The integration status should show as "Connected" with your Stripe account ID displayed.
Icodrip automatically registers a webhook endpoint on your Stripe account during the OAuth flow. This webhook listens for payment events like checkout.session.completed, invoice.paid, and charge.refunded.
To verify the webhook is working, go to your Stripe dashboard > Developers > Webhooks. You should see an endpoint pointing to your Icodrip instance. The endpoint should be in an "Enabled" state with a recent successful delivery if any payments have occurred.
If the webhook is missing or shows errors, you can re-register it from the Icodrip integration settings. Click "Repair Webhooks" to trigger a fresh registration. Make sure your Stripe account's API version is compatible — Icodrip supports Stripe API version 2023-10-16 and later.
With Stripe connected, test the full flow. Create a test affiliate and generate a tracking link. Open the link in an incognito window to simulate a new visitor. You should see a click recorded in your dashboard.
Now complete a test purchase using Stripe's test card number (4242 4242 4242 4242). Within a few seconds, Icodrip should pick up the payment event via the webhook, match it to the click using the cookie or customer email, and create a conversion record.
Check the Conversions tab in your dashboard. The new conversion should show the correct sale amount, the calculated commission, and the attributed affiliate. If the conversion does not appear within 30 seconds, check the webhook logs in both Stripe and Icodrip for error messages.
If conversions are not being tracked, the most common issue is a webhook delivery failure. Check the Stripe webhook logs for any failed deliveries and review the error response. A 401 error usually means your webhook secret is incorrect — try re-registering the webhook.
Another common issue is attribution failure. The conversion arrives but is not matched to any affiliate. This happens when the visitor's cookie has expired or when the customer email does not match any tracked click. Make sure your cookie window is long enough for your typical sales cycle.
For Stripe Checkout sessions, ensure you are passing the client_reference_id or customer_email in your checkout session creation. Icodrip uses these fields to match the payment back to the original click. Without them, server-side attribution may fail.