Skip to main content

Pendahuluan

Metadata memungkinkan Anda untuk menyimpan informasi tambahan yang terstruktur tentang objek Anda di Dodo Payments. Anda dapat melampirkan metadata ke sebagian besar objek Dodo Payments, termasuk pembayaran, langganan, dan lainnya.

Ikhtisar

  • Kunci metadata dapat memiliki panjang hingga 40 karakter
  • Nilai metadata dapat berupa string, integer, number, atau boolean; string dapat memiliki panjang hingga 500 karakter
  • Object, array, dan null tidak diterima sebagai nilai metadata
  • Anda dapat memiliki hingga 50 pasangan kunci-nilai metadata per object
  • Kunci hanya boleh berisi karakter alfanumerik, tanda hubung, dan garis bawah
  • Metadata tidak dapat dicari menggunakan API kami, tetapi dikembalikan dalam respons API dan webhook

Kasus Penggunaan

Metadata berguna untuk:
  • Menyimpan ID atau referensi eksternal
  • Menambahkan anotasi internal
  • Menghubungkan objek Dodo Payments ke sistem Anda
  • Mengkategorikan transaksi
  • Menambahkan atribut kustom untuk pelaporan

Menambahkan Metadata

Anda dapat menambahkan metadata saat membuat atau memperbarui objek melalui API. Untuk produk, Anda juga memiliki opsi untuk menambahkan metadata langsung dari UI dasbor.

Melalui API

Melalui UI Dasbor (Hanya Produk)

Untuk produk, Anda juga dapat menambahkan metadata langsung dari dasbor Dodo Payments saat membuat atau mengedit produk. Bagian metadata memungkinkan Anda untuk dengan mudah menambahkan pasangan kunci-nilai kustom tanpa menulis kode.
Product metadata interface in Dodo Payments dashboard
Menggunakan UI dashboard untuk metadata produk sangat berguna bagi anggota tim non-teknis yang perlu mengelola informasi produk dan kategori.

Mengambil Metadata

Metadata disertakan dalam respons API saat mengambil objek:
Mengambil checkout session (GET /checkouts/{id}) tidak mengembalikan metadata. Respons status session hanya berisi id, created_at, payment_id, payment_status, customer_email, dan customer_name. Sebagai gantinya, baca metadata yang Anda lampirkan saat pembuatan session dari payment yang dihasilkan, menggunakan payment_id yang dikembalikan oleh endpoint tersebut.

Mencari dan Memfilter

Meskipun metadata tidak dapat dicari secara langsung melalui API kami, Anda dapat:
  1. Menyimpan identifier penting dalam metadata
  2. Mengambil object menggunakan ID utamanya
  3. Memfilter hasilnya dalam kode aplikasi Anda

Praktik Terbaik

Lakukan:

  • Gunakan konvensi penamaan yang konsisten untuk kunci metadata
  • Dokumentasikan skema metadata Anda secara internal
  • Pertahankan nilai agar singkat dan bermakna
  • Gunakan metadata hanya untuk data statis
  • Pertimbangkan penggunaan awalan untuk sistem yang berbeda (misalnya, crm_id, inventory_sku)

Jangan:

  • Menyimpan data sensitif dalam metadata
  • Menggunakan metadata untuk nilai yang sering berubah
  • Mengandalkan metadata untuk logika bisnis yang penting
  • Menyimpan informasi duplikat yang tersedia di tempat lain dalam object
  • Menggunakan karakter khusus dalam kunci metadata

Object yang Didukung

Metadata didukung pada object berikut:

Webhook dan Metadata

Metadata disertakan dalam event webhook, sehingga memudahkan penanganan notifikasi dengan data khusus Anda:
Terakhir diubah pada 6 Agustus 2026