Package: dodo-sync su npm | Source: GitHub
Cosa puoi sincronizzare?
Scegli una combinazione qualsiasi di queste entità:Payments
Tutte le transazioni di pagamento, inclusi i pagamenti una tantum, i rimborsi e gli aggiornamenti di stato.
Customers
Profili dei clienti, informazioni di contatto e metadati.
Subscriptions
Dati degli abbonamenti, cicli di fatturazione e modifiche di stato.
Licenses
Chiavi di licenza, attivazioni e aggiornamenti di stato.
scopes. A ogni esecuzione vengono recuperati tutti i record negli ambiti selezionati e scritti in base all’ID, quindi le righe esistenti vengono aggiornate direttamente invece di essere duplicate. In MongoDB, le chiavi di licenza vengono memorizzate in base all’ID dell’abbonamento, quindi un abbonamento con diverse chiavi di licenza ne conserva solo una.
Supporto dei database
Dodo Sync supporta MongoDB, PostgreSQL, MySQL e ClickHouse. Il supporto per Snowflake e altri database, le pipeline ETL e la sincronizzazione in tempo reale sono in fase di sviluppo. Per contribuire a una nuova integrazione con un database, invia una pull request al repository GitHub.Per iniziare
Usa Dodo Sync tramite la CLI per una configurazione rapida oppure direttamente nel tuo codice per integrarlo nella tua applicazione. Entrambi i metodi offrono le stesse funzionalità.Utilizzo della CLI
Installa la CLI a livello globale per eseguirla da qualsiasi posizione:Esecuzione della CLI
La CLI supporta due modalità: interattiva per una configurazione guidata e manuale per una configurazione diretta. Modalità interattiva: esegui il comando senza argomenti per avviare la procedura guidata di configurazione.Argomenti della CLI
number
obbligatorio
Intervallo di sincronizzazione in secondi. La CLI viene eseguita continuamente con questo intervallo. Per una sincronizzazione una tantum, usa
.run() nel tuo codice.string
obbligatorio
Tipo di database:
"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à da sincronizzare:
licences, payments, customers, subscriptions. Esempio: "payments,customers".string
obbligatorio
La tua chiave API di Dodo Payments da Developer → API Keys. Usa una chiave della stessa modalità di
--env.string
obbligatorio
Ambiente:
"live_mode" o "test_mode".number
Limite di frequenza in richieste al secondo. Controlla la velocità con cui il motore di sincronizzazione effettua le richieste API. Il valore predefinito è
10; i valori pari o superiori a 100 disattivano il throttling.Utilizzo nel codice
Integra direttamente la funzionalità di sincronizzazione nella tua applicazione. Installala come dipendenza:Sincronizzazione automatica (basata su intervallo)
Esegui la sincronizzazione continuamente a intervalli regolari:Sincronizzazione manuale
Avvia operazioni di sincronizzazione su richiesta, ad esempio da un cron job o da un endpoint API:Esempio PostgreSQL
Esempio MySQL
Esempio ClickHouse
Opzioni del costruttore
string
obbligatorio
Tipo di database:
"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:
"licences", "payments", "customers", "subscriptions". Includi qualsiasi combinazione.object
obbligatorio
Configurazione API di Dodo Payments. Consulta i tipi dell’SDK TypeScript per l’elenco completo delle opzioni.Proprietà obbligatorie:
bearerToken: la tua chiave API di Dodo Paymentsenvironment:"test_mode"o"live_mode"
number
Tempo in secondi tra le sincronizzazioni automatiche. Obbligatorio per
.start(), facoltativo per .run().number
Limite di frequenza in richieste al secondo. Il valore predefinito è
10; i valori pari o superiori a 100 disattivano il throttling.Informazioni importanti
Risorse aggiuntive
GitHub Repository
Visualizza il codice sorgente, segnala problemi o contribuisci con miglioramenti
npm Package
Visualizza i dettagli del package e le istruzioni di installazione