Integrations — Replit

Affiliate tracking for your Replit app. One snippet, ten minutes.

Replit is a real dev environment, so there's no settings panel to hunt for — the tracking snippet is a normal line of code in your app's entry file. Paste it yourself in the file tree, or ask Replit's Agent to add it, then redeploy. Keep the ?via= links your affiliates already share and Qanary starts tracking through to checkout.

it's just code. one <script> tag in your entry html, then redeploy.

Beyond a homemade pixel

Replit gives you the whole codebase. Coupon fallback and fraud checks are still the hard part.

However you're tracking referrals in a Replit app today — a spreadsheet, a generic pixel, or nothing yet — attribution needs to survive ad blockers, the commission math needs to survive an audit, and the payout needs to go out on a rail you already use. Here's what one script tag adds:

Tracking it yourself

Basic click tracking at best — no coupon-code fallback for ad blockers or podcasts, no fraud check before a commission is owed, and payouts mean a manual spreadsheet.

Qanary

One script tag in your entry HTML. Coupon-code fallback, fraud checks before commission, and payouts through Wise or PayPal — the same system whether you're on Replit or anywhere else.

How it works

Paste, stamp, verify. Three steps.

1. Paste the tracking snippet — open your entry file (usually index.html, or the root layout for your framework) in Replit's file tree and paste the tag into <head>. Or ask Replit's Agent: "add this script tag to the head of my entry page."

2. Carry the referral into checkout — wherever your server code calls Stripe Checkout, read Qanary.checkoutStamp() client-side and send stamp.ref into client_reference_id.

3. Verify — open your deployed app with a test ?via=, run a test-mode checkout, and confirm the conversion lands attributed — or ask your coding agent to run the MCP diagnose_attribution tool.

entry html <head> · replit
<script src="https://app.qanary.cloud/qanary.js"
  data-qanary="YOUR_PROGRAM_SLUG" async></script>

Paste this exact tag into your entry file's <head>, redeploy, and it's live. Swap YOUR_PROGRAM_SLUG for the program slug from your Qanary dashboard.

What the snippet does

One tag. Three jobs.

Sets the attribution cookie

Reads ?via=AFFILIATE_CODE off the URL the moment a visitor lands and records the touchpoint — no configuration beyond the program slug.

Stamps your server call

Feeds stamp.ref into whatever code path creates the Stripe Checkout session — a Node/Express route, a Python backend, whatever stack you're running — so a sale still traces back to the right affiliate.

Verifiable end to end

Ask your coding agent to run diagnose_attribution and it walks visit → identify → webhook → attribution → ledger, so a stalled conversion is never a mystery.

Common Replit setups

Whatever stack you're running.

Node/Express or Python → Stripe Checkout

A server route creates the Checkout session directly. The snippet's stamp feeds straight into that call.

Replit Auth-gated app

Content gated behind Replit Auth or your own session logic — the snippet in the entry page keeps attributing independent of the access logic.

Marketing page on Replit, app elsewhere

A Replit-hosted landing page linking out to a separate app for checkout. Keep ?via= on the links and the cookie carries the referral across.

Migrating from another tool

Swap the old tracking snippet for Qanary's in the same entry file — existing ?via= links your affiliates already shared keep working.

At a glance

See it side by side.

Capability Tracking it yourself Qanary
Setup time on Replit Custom dev project ~10 minutes
Coupon-code fallback for ad blockers No Yes
Fraud checked before commission is owed No Yes
Falls back with no page to instrument No Yes, via coupon codes
Why this beats a spreadsheet

It works the day you deploy.

FAQ

Fair questions.

Where exactly does the snippet go in Replit?

Your app's entry file — index.html for a static or client-rendered app, or the root layout/template for a framework — inside <head>. It's a normal code edit, then redeploy.

Does the snippet slow down my app?

No — it loads with the async attribute, so it fetches in the background and never blocks page rendering.

How does attribution survive a server-side Stripe Checkout call?

Read Qanary.checkoutStamp() client-side before you call your own backend route, and forward stamp.ref into the request so your server can set it as client_reference_id when it creates the Checkout session.

Does this work regardless of the framework I picked in Replit?

Yes — the snippet is a plain <script> tag, so it works whether your Replit app is a static site, a React/Vite app, or a full Node/Python server rendering HTML.

Can an AI agent install this for me?

Yes — ask Replit's own Agent to add the script tag, or point Claude Code, Cursor, or Codex at Qanary's llms.txt and it can install the tracking snippet and wire a webhook from a single prompt.

Go deeper

Everything you need to start tracking.

Paste the snippet. Start tracking tonight.

Join the waitlist now; when registration opens, wire your Replit app in ten minutes.

Join the waitlist