Skip to main content

Introduction

Dub is a powerful link management platform that helps you create, share, and track short links. By integrating Dodo Payments with Dub, you can automatically track sale conversion events when customers complete purchases, enabling you to measure the ROI of your marketing campaigns and referral programs. A “sale” event is recorded in Dub when a customer:
  • Completes a one-time payment
  • Subscribes to a paid plan
  • Makes a recurring subscription payment
This integration requires a Dub account with conversion tracking enabled on your links.
Affiliate Program Integration: This integration also works seamlessly with Dub Partners for tracking affiliate referrals and commissions. Use Dub’s conversion tracking to attribute sales to your affiliate links and measure partner performance. Learn more about setting up affiliate programs in our Affiliates feature guide.

How It Works

Dub tracks visitors through a unique click ID (dub_id) stored in a cookie when users click your Dub short links. To attribute sales to your links, you need to:
  1. Capture Dub’s click ID from the dub_id cookie when creating checkout sessions
  2. Store the click ID in your payment metadata along with the customer’s external ID
  3. Send sale data to Dub when payments succeed using their Track API
This allows Dub to match successful sales with the original link click, giving you complete conversion attribution.

Prerequisites

Before setting up this integration, ensure you have:
  1. A Dub account with a workspace
  2. Conversion tracking enabled for your links
  3. Your Dub API key (available in your Dub dashboard under Settings → API Keys)

Getting Started

1

Enable Conversion Tracking in Dub

In your Dub dashboard, enable conversion tracking for the links you want to track sales for. This allows Dub to record sale events when customers complete purchases.
Learn more about enabling conversion tracking in the Dub documentation.
2

Get Your Dub API Key

Navigate to your Dub dashboard → Settings → API Keys and create a new API key with conversions.write scope.
Keep your API key secure and never expose it in client-side code.
3

Capture Click ID in Checkout

When creating a checkout session, capture the Dub click ID from the cookie and add it to your payment metadata.
4

Send Sale Data via Webhook

Configure a webhook to send sale data to Dub’s Track API when payments succeed.
5

Done!

Sale conversion events will now appear in your Dub analytics dashboard with full attribution to your links.

Implementation Guide

Step 1: Add Click ID and Customer ID to Checkout Metadata

When creating a checkout session, capture the Dub click ID from the cookie and include it in your payment metadata along with your customer’s external ID.
Gli esempi di seguito utilizzano POST /payments, che è deprecato. Funziona ancora per le integrazioni esistenti, ma per le nuove integrazioni è consigliato usare Checkout Sessions (POST /checkouts) — metadata viene passato nello stesso modo.

Passaggio 2: invia i dati delle vendite a Dub

Configura un endpoint webhook per inviare i dati delle vendite all’API Track di Dub quando i pagamenti vanno a buon fine.
1

Open the Webhook Section

Nella dashboard di Dodo Payments, vai a Webhooks → + Add Endpoint ed espandi il menu a discesa delle integrazioni.
Add Endpoint and integrations dropdown
2

Select Dub

Seleziona la scheda dell’integrazione Dub.
3

Enter API Key

Inserisci la tua chiave API di Dub nel campo di configurazione.
Add API Key
4

Configure Transformation

Modifica il codice di trasformazione per formattare i dati dei pagamenti per l’API Track Sale di Dub.
5

Test & Create

Esegui un test con payload di esempio e fai clic su Create per attivare l’integrazione.

Esempi di codice di trasformazione

Monitoraggio di base delle vendite

Monitora le vendite quando i pagamenti vanno a buon fine:
basic_sale.js

Monitoraggio delle vendite degli abbonamenti

Monitora sia gli abbonamenti iniziali sia i pagamenti ricorrenti:
subscription_sale.js

Monitoraggio delle vendite con esclusione delle imposte

Invia a Dub solo l’importo al netto delle imposte per un monitoraggio accurato dei ricavi:
sale_without_tax.js

Monitoraggio delle vendite con nomi di eventi personalizzati

Utilizza nomi di eventi personalizzati per classificare diversi tipi di vendite:
custom_events.js

Alternativa: implementazione lato client

Se preferisci monitorare le vendite dal tuo server invece di utilizzare i webhook, puoi chiamare direttamente l’API Track di Dub dopo un pagamento completato con successo:

Procedure consigliate

Acquisisci presto il click ID: salva il click ID di Dub il prima possibile nel flusso di checkout per garantire un’attribuzione accurata, anche se l’utente abbandona la pagina e torna in un secondo momento.
  • Includi sempre il click ID nei metadati: senza il click ID, Dub non può attribuire i ricavi ai tuoi link
  • Utilizza gli ID esterni in modo coerente: passa lo stesso ID cliente che utilizzi nel tuo sistema per ottenere analisi accurate a livello di cliente
  • Gestisci correttamente il traffico organico: imposta webhook.cancel = true quando non è presente alcun click ID, per evitare chiamate API non necessarie
  • Esegui test con pagamenti di esempio: verifica che l’integrazione funzioni correttamente prima di renderla operativa
  • Monitora la dashboard di Dub: verifica che le vendite vengano visualizzate correttamente con la giusta attribuzione

Note importanti

  • Formato dell’importo: Dub si aspetta gli importi in centesimi (ad es., $10.00 = 1000)
  • Valuta: utilizza i codici valuta ISO 4217 (USD, EUR, GBP, ecc.)
  • Prove gratuite: i pagamenti di $0 non vengono monitorati come vendite
  • Rimborsi: valuta la possibilità di monitorare separatamente i rimborsi, se necessario, per una rendicontazione accurata dei ricavi

Risoluzione dei problemi

  • Verifica che la chiave API di Dub sia corretta e disponga dell’ambito conversions.write
  • Verifica che dub_click_id venga acquisito e memorizzato nei metadati del pagamento
  • Assicurati che la trasformazione del webhook formatti correttamente il payload
  • Verifica che il webhook venga attivato sugli eventi payment.succeeded
  • Conferma che il monitoraggio delle conversioni sia abilitato per i tuoi link Dub
  • Conferma che gli utenti facciano clic sui tuoi short link Dub prima del checkout
  • Verifica che il cookie dub_id venga impostato correttamente sul tuo dominio
  • Verifica che i click ID coincidano tra la creazione del checkout e il completamento del pagamento
  • Assicurati di acquisire il click ID prima di creare la sessione di checkout
  • Convalida che la struttura JSON corrisponda al formato dell’API Track Sale di Dub
  • Verifica che siano presenti tutti i campi obbligatori (clickId, externalId, amount)
  • Assicurati che l’importo sia espresso in centesimi (intero, non decimale)
  • Verifica che l’URL dell’endpoint API sia corretto: https://api.dub.co/track/sale
  • Testa la trasformazione con payload webhook di esempio
  • Assicurati di monitorare solo gli eventi payment.succeeded, non payment.processing
  • Utilizza valori invoiceId univoci per ogni vendita
  • Per gli abbonamenti, aggiungi timestamp o il periodo di fatturazione per evitare duplicati nei rinnovi

Risorse aggiuntive

Dub Conversions Documentation

Scopri di più sulle funzionalità di monitoraggio delle conversioni e analisi di Dub.

Dub Track Sale API

Consulta la documentazione API completa per l’endpoint Track Sale di Dub.

Dub Dashboard

Accedi alla dashboard di Dub per visualizzare i dati sulle analisi delle conversioni e sull’attribuzione.

Webhook Events Guide

Scopri tutti gli eventi webhook disponibili di Dodo Payments.
Hai bisogno di aiuto? Contatta il supporto di Dodo Payments all’indirizzo support@dodopayments.com per ricevere assistenza con l’integrazione.
Ultima modifica il 6 agosto 2026