Platform dan marketplace
Beri setiap pengguna alamat deposit kripto sendiri
Satu alamat untuk semua orang justru masalahnya: uang masuk dan tidak ada yang memberi tahu itu milik siapa. Buat satu customer dengan id pengguna Anda sendiri dan Anda mendapat alamat deposit permanen yang diturunkan dari dompet Anda — jadi setiap pembayaran mengidentifikasi dirinya, dan tidak ada yang lewat kami.
Kenapa satu alamat bersama tidak cukup
Setiap platform yang menerima kripto menabrak tembok yang sama dengan urutan yang sama, biasanya setelah tiket dukungan pertama soal pembayaran yang tidak ketemu.
- Satu alamat memberi tahu jumlah dan pengirim, tidak pernah milik pengguna yang mana. Mencocokkan lewat nominal langsung rusak begitu dua orang mengirim angka yang sama.
- Akal-akalan yang biasa dipakai adalah menampung semuanya lalu membayarkan belakangan — dan itu mengubah fitur pembayaran menjadi menyimpan uang orang lain, hal terberat yang bisa dipikul sebuah platform.
- Meminta pengguna menempelkan memo atau referensi berhasil sampai ada yang lupa, dan setelah itu ada manusia yang mencocokkan blockchain dengan tangan.
Satu panggilan per pengguna, sekali saja
Anda mengirim id pengguna Anda sendiri. Anda menerima alamat yang tidak pernah berubah, jadi panggilan itu terjadi saat pendaftaran dan tidak pernah lagi.
- 01
Buat customer dengan id Anda sendiri
Kirim id pengguna yang sudah Anda punya di `external_ref`. Unheld tidak membuat identitas baru yang harus Anda simpan dan petakan lagi — datanya diindeks dengan id yang sudah dipakai basis data Anda.
- 02
Simpan alamat yang dikembalikan
Responsnya membawa alamat deposit pengguna tersebut, diturunkan dari dompet Anda sendiri. Alamat itu permanen, jadi bisa Anda tampilkan, jadikan kode QR, atau biarkan pengguna menyimpannya dan mengirim dari mana saja.
- 03
Kreditkan akun saat webhook tiba
Pembayaran ke alamat itu dikaitkan ke customer pemiliknya, dan notifikasinya membawa kembali `externalRef` milik Anda. Aplikasi Anda mengkredit id pengguna yang sudah dikenalnya, tanpa mencocokkan nominal atau membaca rantai.
Panggilan yang sebenarnya
Permintaan
curl -X POST https://api.unheld.io/api/v1/customers \
-H "Authorization: Bearer $UNHELD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"external_ref": "user_8412",
"label": "Ada Lovelace",
"supported_assets": ["ETH", "USDC"],
"evm": true
}'Respons
{
"id": "c7f1…",
"external_ref": "user_8412",
"label": "Ada Lovelace",
"evm_address": "0x…",
"supported_assets": ["ETH", "USDC"],
"receive_method": "auto"
}Perlu API key dengan scope `customers:write`; membacanya kembali perlu `customers:read`. Alamat untuk setiap chain tempat pengguna bisa membayar tersedia di `GET /api/v1/customers/:id/addresses`.
Bagaimana pembayaran menemukan penggunanya
Alamatnya ADALAH identitasnya. Karena hanya milik satu customer dan tidak pernah berubah, pembayaran yang masuk langsung dikaitkan tanpa memo, tanpa kolom referensi, dan tanpa pencarian nominal — tiga hal yang rusak di produksi.
Invoice juga bisa ditautkan ke customer lewat `customerId`, sehingga tagihan sekali jalan dan alamat deposit tetap dikaitkan ke pengguna yang sama, baik di dasbor maupun di webhook Anda.
Di mana uangnya benar-benar berada
Dana masuk ke alamat yang diturunkan dari dompet Anda sendiri. Unheld hanya menyimpan bagian publik yang read-only, jadi tidak bisa memindahkan, membekukan, atau menghilangkannya, dan tidak ada saldo tertahan di sini untuk dibayarkan ke Anda nanti.
Yang tidak dijawab oleh itu adalah apakah platform Anda sendiri menyimpan dana milik pengguna Anda. Kemungkinan besar iya, kalau pembayaran masuk ke alamat yang Anda kendalikan dan Anda berutang nilainya ke pengguna. Itu pertanyaan tentang skema dan yurisdiksi Anda, dan bukan yang bisa kami jawab untuk Anda — carilah nasihat. Kami hanya bisa menyatakan sisi kami: uangnya tidak pernah lewat Unheld.
Merancang di atas ini
Setiap poin ini lebih mudah dirancang sekarang daripada ditemukan saat produksi.
- Semua alamat pengguna diturunkan dari satu dompet: milik Anda. Itu menyisakan satu frasa pemulihan untuk dijaga, bukan satu per pengguna, dan berarti dana tidak dipisahkan per pengguna lewat kunci.
- Alamat permanen memang dipakai berulang, dan justru itu yang membuat pengaitan bekerja. Artinya juga riwayat pembayaran seorang pengguna kepada Anda bisa dirangkai on-chain oleh siapa pun yang tahu alamatnya.
- Alamat pengguna tetap per keluarga chain: alamat EVM yang sama menerima di semua jaringan EVM yang Anda aktifkan. Mengaktifkan chain baru tidak menuntut penerbitan ulang alamat.
- Menghapus customer menghentikan pemantauan alamatnya; itu tidak — dan tidak bisa — memindahkan apa pun yang sudah dikirim ke sana. Uang yang datang setelah penghapusan tetap milik Anda, tetapi tidak ada yang akan memberi tahu Anda.
Pertanyaan
Apakah Unheld menyimpan dana pengguna saya?
Tidak. Pembayaran masuk ke alamat yang diturunkan dari dompet Anda sendiri dan Unheld hanya menyimpan kunci publik read-only, jadi tidak ada saldo di sini dan tidak ada yang bisa ditarik. Apakah platform Anda sendiri menyimpan nilai milik penggunanya adalah pertanyaan lain tentang skema Anda, dan itu layak dimintakan nasihat hukum, bukan dijawab halaman pemasaran.
Berapa banyak pengguna yang bisa punya alamat sendiri?
Tidak ada batas alamat per pengguna — alamat diturunkan, bukan diambil dari sebuah pool, jadi membuat customer ke sejuta adalah operasi yang sama dengan yang pertama. Yang dihitung adalah kuota customer dan jumlah transaksi paket Anda, yang tertera di halaman harga.
Bisakah alamat seorang pengguna berubah?
Tidak. Justru sifat itulah yang menopang seluruh rancangannya: alamat mengidentifikasi pengguna, jadi diterbitkan sekali dan tetap. Anda bisa menampilkannya, menaruhnya di kode QR, atau membiarkan pengguna menyimpannya di dompetnya, dan setahun kemudian masih benar.
Bagaimana kalau dua pengguna membayar jumlah sama pada saat yang sama?
Tidak ada yang ambigu, karena nominal tidak pernah dipakai untuk mengenali siapa pun. Setiap pembayaran masuk ke alamat milik tepat satu customer, dan webhook membawa referensi Anda sendiri untuk customer itu — nominal sama, waktu sama, dan pengirim sama sama-sama tidak relevan.
Buat satu customer di testnet
Lakukan panggilannya dengan API key uji, terima alamat sungguhan, dan kirim pembayaran testnet ke salah satunya untuk melihat pengaitannya tiba — sebelum ada uang sungguhan.
Mulai gratisDeveloper · Langganan · Harga · Non-kustodian · Dijawab lugas.