Implementasi: Tersedia melalui npm package | Source Code: GitHub
Apa yang Dapat Anda Sinkronkan?
Fitur sinkronisasi database kami mendukung sinkronisasi entitas Dodo Payments berikut ke database Anda:Payments
Sinkronkan semua transaksi pembayaran, termasuk pembayaran satu kali, refund, dan pembaruan status pembayaran.
Customers
Pertahankan sinkronisasi data pelanggan, termasuk profil pelanggan, informasi kontak, dan metadata.
Subscriptions
Sinkronkan data subscription, termasuk subscription aktif, siklus penagihan, dan perubahan status subscription.
Licenses
Sinkronkan informasi lisensi, termasuk kunci lisensi, aktivasi, dan pembaruan status lisensi.
scopes. Semua operasi sinkronisasi bersifat inkremental dan hanya mentransfer record baru atau yang diperbarui untuk performa optimal.
Dukungan Database
Saat ini kami mendukung MongoDB, PostgreSQL, MySQL, dan ClickHouse. Kami sedang aktif memperluas dukungan untuk:- Database: Snowflake dan lainnya.
- Pipeline: pipeline ETL, sinkronisasi Realtime.
Memulai
Anda dapat menggunakan fitur sinkronisasi database kami melalui CLI atau secara programatis dalam code Anda. Kedua metode menyediakan fungsi yang sama—pilih metode yang paling sesuai dengan workflow Anda.Menggunakan CLI
Tool CLI menyediakan cara cepat untuk menyiapkan dan menjalankan sinkronisasi database. Instal secara global agar dapat menggunakannya dari mana saja di terminal Anda:Menjalankan CLI
CLI mendukung dua mode: Interactive Mode untuk penyiapan terpandu, dan Manual Mode untuk konfigurasi langsung. Interactive Mode: Jalankan command tanpa argumen untuk memulai wizard penyiapan interaktif.Argumen CLI
number
Interval sinkronisasi dalam detik. Menentukan seberapa sering operasi sinkronisasi dijalankan. Jika tidak diberikan, sinkronisasi akan dijalankan sekali lalu berhenti.
string
wajib
Jenis database yang akan digunakan. Nilai yang didukung:
"mongodb", "postgres", "mysql", atau "clickhouse".string
wajib
URI koneksi untuk database Anda:
- MongoDB:
mongodb://localhost:27017ataumongodb+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
wajib
Daftar entitas data yang akan disinkronkan, dipisahkan dengan koma. Scope yang tersedia:
licences, payments, customers, subscriptions. Contoh: "payments,customers".string
wajib
API key Dodo Payments Anda. Harus dimulai dengan
dp_live_ untuk live mode atau dp_test_ untuk test mode.string
wajib
Target environment. Harus berupa
"live_mode" atau "test_mode". Ini menentukan environment Dodo Payments mana yang akan disinkronkan.number
Rate limit dalam request per detik. Mengontrol seberapa cepat sync engine membuat request API agar tidak membebani API Dodo Payments.
Menggunakan dalam Code Anda
Untuk kontrol programatis, integrasikan fitur sinkronisasi langsung ke aplikasi Anda. Instal sebagai dependency dalam project Anda:Sinkronisasi Otomatis (Berbasis Interval)
Gunakan sinkronisasi otomatis jika Anda ingin sinkronisasi berjalan terus-menerus pada interval reguler:Sinkronisasi Manual
Gunakan sinkronisasi manual jika Anda ingin memicu operasi sinkronisasi sesuai kebutuhan (misalnya, dari cron job atau endpoint API):Contoh PostgreSQL
Berikut cara menggunakandodo-sync dengan PostgreSQL:
Contoh MySQL
Berikut cara menggunakandodo-sync dengan MySQL:
Contoh ClickHouse
Berikut cara menggunakandodo-sync dengan ClickHouse:
Opsi Constructor
string
wajib
Nama database yang akan digunakan. Nilai yang didukung:
"mongodb", "postgres", "mysql", atau "clickhouse".string
wajib
Connection string untuk database Anda:
- MongoDB:
mongodb://localhost:27017ataumongodb+srv://... - PostgreSQL:
postgresql://user:password@localhost:5432/mydb - MySQL:
mysql://user:password@localhost:3306/mydb - ClickHouse:
http://localhost:8123
string[]
wajib
Array entitas yang akan disinkronkan. Opsi yang tersedia:
"licences", "payments", "customers", "subscriptions". Anda dapat menyertakan kombinasi apa pun dari opsi tersebut.object
wajib
Konfigurasi API Dodo Payments untuk autentikasi dan pemilihan environment. Lihat TypeScript SDK types untuk opsi lengkap.Properti yang diperlukan:
bearerToken: API key Dodo Payments Andaenvironment:"test_mode"atau"live_mode"
number
Waktu dalam detik di antara sinkronisasi otomatis. Diperlukan saat menggunakan
.start() untuk sinkronisasi otomatis. Opsional saat menggunakan .run() untuk sinkronisasi manual.number
Jumlah request per detik. Mengontrol seberapa cepat sync engine membuat request API agar tidak membebani API Dodo Payments.
Informasi Penting
Sync engine melacak perubahan dan hanya menyinkronkan record baru atau yang diperbarui, sehingga sinkronisasi berikutnya tetap efisien bahkan dengan dataset besar.
Referensi Tambahan
GitHub Repository
Lihat source code, laporkan masalah, atau kontribusikan perbaikan
npm Package
Lihat detail package dan instruksi instalasi