Implementazione: disponibile tramite pacchetto npm | Codice sorgente: GitHub
Cosa puoi sincronizzare?
La nostra funzionalità di sincronizzazione del database supporta la sincronizzazione delle seguenti entità Dodo Payments nel tuo database:Payments
Sincronizza tutte le transazioni di pagamento, inclusi i pagamenti una tantum, i rimborsi e gli aggiornamenti dello stato dei pagamenti.
Customers
Mantieni sincronizzati i dati dei tuoi clienti, inclusi profili, informazioni di contatto e metadati.
Subscriptions
Sincronizza i dati degli abbonamenti, inclusi gli abbonamenti attivi, i cicli di fatturazione e le modifiche allo stato degli abbonamenti.
Licenses
Sincronizza le informazioni sulle licenze, incluse le chiavi di licenza, le attivazioni e gli aggiornamenti dello stato delle licenze.
scopes. Tutte le operazioni di sincronizzazione sono incrementali e trasferiscono solo i record nuovi o aggiornati, per prestazioni ottimali.
Supporto dei database
Attualmente supportiamo MongoDB, PostgreSQL, MySQL e ClickHouse. Stiamo lavorando attivamente per estendere il supporto a:- Database: Snowflake e altri.
- Pipeline: pipeline ETL, sincronizzazione in tempo reale.
Per iniziare
Puoi utilizzare la nostra funzionalità di sincronizzazione del database tramite la CLI o a livello programmatico nel tuo codice. Entrambi i metodi offrono le stesse funzionalità: scegli quello più adatto al tuo flusso di lavoro.Utilizzo della CLI
Lo strumento CLI offre un modo rapido per configurare ed eseguire la sincronizzazione del database. Installalo globalmente per utilizzarlo da qualsiasi posizione nel terminale:Esecuzione della CLI
La CLI supporta due modalità: Modalità interattiva per una configurazione guidata e Modalità manuale per la configurazione diretta. Modalità interattiva: esegui semplicemente il comando senza argomenti per avviare la procedura guidata interattiva.Argomenti della CLI
number
Intervallo di sincronizzazione in secondi. Determina la frequenza di esecuzione dell’operazione di sincronizzazione. Se non viene fornito, la sincronizzazione verrà eseguita una sola volta e terminerà.
string
obbligatorio
Tipo di database da utilizzare. Valori supportati:
"mongodb", "postgres", "mysql" o "clickhouse".string
obbligatorio
URI di connessione al database:
- MongoDB:
mongodb://localhost:27017omongodb+srv://user:pass@cluster.mongodb.net/ - PostgreSQL:
postgresql://user:password@localhost:5432/mydb - MySQL:
mysql://user:password@localhost:3306/mydb - ClickHouse:
http://localhost:8123
string
obbligatorio
Elenco separato da virgole delle entità di dati da sincronizzare. Ambiti disponibili:
licences, payments, customers, subscriptions. Esempio: "payments,customers".string
obbligatorio
La tua chiave API Dodo Payments. Deve iniziare con
dp_live_ per la modalità live o con dp_test_ per la modalità di test.string
obbligatorio
Target dell’ambiente. Deve essere
"live_mode" o "test_mode". Determina da quale ambiente Dodo Payments sincronizzare.number
Limite di richieste al secondo. Controlla la velocità con cui il motore di sincronizzazione effettua le richieste API per evitare di sovraccaricare l’API Dodo Payments.
Utilizzo nel codice
Per il controllo a livello programmatico, integra direttamente la funzionalità di sincronizzazione nella tua applicazione. Installala come dipendenza nel tuo progetto:Sincronizzazione automatica (basata su intervallo)
Utilizza la sincronizzazione automatica quando desideri eseguire la sincronizzazione continuamente a intervalli regolari:Sincronizzazione manuale
Utilizza la sincronizzazione manuale quando desideri attivare le operazioni di sincronizzazione su richiesta, ad esempio da un cron job o da un endpoint API:Esempio PostgreSQL
Ecco come utilizzaredodo-sync con PostgreSQL:
Esempio MySQL
Ecco come utilizzaredodo-sync con MySQL:
Esempio ClickHouse
Ecco come utilizzaredodo-sync con ClickHouse:
Opzioni del costruttore
string
obbligatorio
Nome del database da utilizzare. Valori supportati:
"mongodb", "postgres", "mysql" o "clickhouse".string
obbligatorio
Stringa di connessione al database:
- MongoDB:
mongodb://localhost:27017omongodb+srv://... - PostgreSQL:
postgresql://user:password@localhost:5432/mydb - MySQL:
mysql://user:password@localhost:3306/mydb - ClickHouse:
http://localhost:8123
string[]
obbligatorio
Array di entità da sincronizzare. Opzioni disponibili:
"licences", "payments", "customers", "subscriptions". Puoi includere qualsiasi combinazione di queste entità.object
obbligatorio
Configurazione API Dodo Payments per l’autenticazione e la selezione dell’ambiente. Consulta i tipi dell’SDK TypeScript per l’elenco completo delle opzioni.Proprietà obbligatorie:
bearerToken: la tua chiave API Dodo Paymentsenvironment:"test_mode"o"live_mode"
number
Tempo in secondi tra le sincronizzazioni automatiche. Obbligatorio quando si utilizza
.start() per la sincronizzazione automatica. Facoltativo quando si utilizza .run() per la sincronizzazione manuale.number
Numero di richieste al secondo. Controlla la velocità con cui il motore di sincronizzazione effettua le richieste API per evitare di sovraccaricare l’API Dodo Payments.
Informazioni importanti
Il motore di sincronizzazione tiene traccia delle modifiche e sincronizza solo i record nuovi o aggiornati, rendendo efficienti le sincronizzazioni successive anche con dataset di grandi dimensioni.
Risorse aggiuntive
GitHub Repository
Visualizza il codice sorgente, segnala problemi o contribuisci con miglioramenti
npm Package
Visualizza i dettagli del pacchetto e le istruzioni di installazione