Stripe integration

Three ways to wire Partli into your Stripe billing — pick the one that matches your stack.

Most Partli customers charge end users via Stripe. Three integration paths, listed easiest first.

Path A — JS snippet + Connect Stripe (no code)

Best for non-technical merchants using Stripe Checkout or Payment Links.

  1. Paste partli.js into your site's <head>.
  2. Click Connect your Stripe in Partli — sign in to your existing Stripe account, click Authorize.

After this, every paid checkout that came from a partner referral is automatically attributed. No webhook code, no API keys.

Connect ≠ onboarding

“Connect Stripe” here means OAuth — you sign in to your existing Stripe account and click Authorize. You do not create a new account, and you don't do any KYC. Same flow as “Sign in with Google.”

Path B — JS snippet + your own webhook

Best if you want to keep webhook handling inside your own backend (for logging, side-effects, etc.) but still want zero-friction click capture.

  1. Install partli.js.
  2. In your existing Stripe webhook for checkout.session.completed, read session.client_reference_id and forward to Partli — see REST API install.

Path C — Pure REST API

Best for fully custom checkout flows or stacks that don't use Stripe Checkout directly. See REST API install.

Refunds and disputes

With Stripe connected (Path A), Partli listens for charge.refunded and charge.dispute.created. A full refund or a new dispute claws back the related commission automatically, as long as it is still pending or approved, and the partner gets an email explaining why. Partial refunds are left for you to review, because only you know whether the commission should shrink.

Commissions are held for the program's holding period before they can be paid, so a refund inside that window never costs you money. If you forward events yourself (Paths B and C), mark refunded commissions as clawed back in the dashboard; billing providers connected by webhook (Paddle, Polar, Creem, Dodo) claw back automatically like Stripe.