Skip to main content
Il SDK TypeScript fornisce un accesso conveniente al server all’API REST di Dodo Payments per applicazioni TypeScript e JavaScript. Presenta definizioni di tipo complete, gestione degli errori, ritentativi, timeout e auto-paginazione per un’elaborazione dei pagamenti senza soluzione di continuità.

Installazione

Installa l’SDK utilizzando il gestore di pacchetti che preferisci:

Inizio Veloce

Inizializza il client con la tua chiave API e inizia a elaborare i pagamenti:
Conserva sempre le chiavi API in modo sicuro utilizzando variabili d’ambiente. Non committarle mai nel controllo di versione né esporle nel codice client-side.

Caratteristiche Principali

TypeScript First

Supporto completo per TypeScript con definizioni di tipo esaustive per tutti gli endpoint API

Auto-Pagination

La paginazione automatica per le risposte di elenco rende semplice lavorare con dataset di grandi dimensioni

Error Handling

Tipi di errore integrati con messaggi dettagliati per diversi scenari di fallimento

Smart Retries

Ritentativi automatici configurabili con backoff esponenziale per errori temporanei

Configurazione

Variabili di Ambiente

Imposta variabili di ambiente per una configurazione sicura:
.env

Configurazione del Timeout

Configura i timeout delle richieste globalmente o per richiesta:

Configurazione dei Ritenti

Configura il comportamento dei ritentativi automatici:
Lo SDK ritenta automaticamente le richieste che falliscono a causa di errori di rete o problemi lato server (risposte 5xx) con backoff esponenziale.

Operazioni Comuni

Crea una Sessione di Checkout

Genera una sessione di checkout per raccogliere informazioni di pagamento:

Gestisci i Clienti

Crea e recupera informazioni sui clienti:

Gestisci Abbonamenti

Crea e gestisci abbonamenti ricorrenti:
POST /subscriptions (il metodo subscriptions.create dell’SDK) è deprecato. Continua a funzionare per le integrazioni esistenti, ma per le nuove integrazioni è consigliabile creare le sottoscrizioni tramite una Checkout Session.
billing richiede almeno il codice paese ISO di due lettere. customer è un’unione di { customer_id } (per collegare un customer esistente) o { email, name? } (per crearne uno nuovo). product_price è espresso nella denominazione più piccola della valuta.

Fatturazione basata sull’utilizzo

Acquisizione degli eventi di utilizzo

Tieni traccia degli eventi personalizzati per la fatturazione basata sull’utilizzo:
Gli eventi devono avere valori event_id univoci per garantire l’idempotenza. Gli ID duplicati all’interno della stessa richiesta vengono rifiutati, mentre le richieste successive con ID già esistenti vengono ignorate.

Recuperare gli eventi di utilizzo

Recupera informazioni dettagliate sugli eventi di utilizzo:

Configurazione proxy

Configura le impostazioni del proxy per diversi runtime:

Node.js (utilizzando undici)

Bun

Deno

Logging

Controlla il livello di dettaglio dei log utilizzando le variabili d’ambiente o le opzioni del client:
Livelli di log disponibili:
  • 'debug' - Mostra i messaggi di debug, le informazioni, gli avvisi e gli errori
  • 'info' - Mostra le informazioni, gli avvisi e gli errori
  • 'warn' - Mostra gli avvisi e gli errori (predefinito)
  • 'error' - Mostra solo gli errori
  • 'off' - Disabilita completamente il logging
Al livello di debug, tutte le richieste e le risposte HTTP vengono registrate, inclusi header e body. Alcuni header di autenticazione vengono oscurati, ma i dati sensibili nei body potrebbero essere comunque visibili.

Migrazione dall’SDK Node.js

Se stai effettuando l’upgrade dal legacy SDK Node.js, l’SDK TypeScript offre una sicurezza dei tipi e funzionalità migliorate:

View Migration Guide

Scopri come eseguire la migrazione dall’SDK Node.js all’SDK TypeScript

Paginazione automatica

I metodi di elenco nell’API DodoPayments sono paginati. Puoi utilizzare la sintassi for await … of per scorrere gli elementi di tutte le pagine:
In alternativa, puoi richiedere una singola pagina alla volta:

Requisiti

Sono supportati i seguenti runtime:
  • Browser web (versioni aggiornate di Chrome, Firefox, Safari, Edge e altri)
  • Node.js 20 LTS o versioni successive (non-EOL)
  • Deno v1.28.0 o versioni successive
  • Bun 1.0 o versioni successive
  • Cloudflare Workers
  • Vercel Edge Runtime
  • Jest 28 o versioni successive con l’ambiente "node"
  • Nitro v2.6 o versioni successive
È supportato TypeScript >= 4.9.

Risorse

GitHub Repository

Visualizza il codice sorgente e contribuisci

API Reference

Documentazione completa dell’API

Discord Community

Ottieni assistenza e connettiti con gli sviluppatori

Report Issues

Segnala bug o richiedi funzionalità

Supporto

Hai bisogno di aiuto con l’SDK TypeScript?

Contribuire

Accogliamo con piacere i contributi! Consulta le linee guida per i contributi per iniziare.
Ultima modifica il 17 agosto 2026