Seperti yang disebutkan beberapa orang lainnya, secara default saya adalah lawan yang sangat memusuhi pelanggan — sesuatu yang terkenal oleh industri perizinan. Jadi saya akan memperluas solusi yang baik untuk masalah Anda yang juga menawarkan UX pelanggan yang baik .
Sebagai permulaan, Anda menyebutkan bahwa Anda memiliki versi "terbatas" dari perangkat lunak yang Anda gunakan untuk mencoba dan mengonversi pelanggan untuk "meningkatkan" untuk fitur tambahan. Jadi yang Anda cari adalah lisensi fitur untuk produk Anda, misalnya pelanggan dapat membeli lisensi untuk fitur-X atau fitur-Y .
Saya membuat Keygen dengan mempertimbangkan jenis lisensi ini. Keygen adalah API REST lisensi yang memungkinkan Anda untuk mengelola akun pengguna, lisensi, dan juga melacak penggunaan / asosiasi mesin.
Apa yang akan saya lakukan adalah menyiapkan 2 jenis lisensi ( kebijakan di dalam Keygen) di mana satu adalah kebijakan dasar untuk versi gratis terbatas, dan yang lainnya adalah kebijakan untuk versi berbayar.
Saya tidak yakin apa yang Anda gunakan untuk pembayaran, tetapi mari kita asumsikan Anda menggunakan sesuatu seperti Stripe (cukup standar saat ini) yang menawarkan webhooks . Keygen juga memiliki webhooks (apakah Anda menggunakannya atau tidak, semua ini masih berlaku). Anda dapat mengintegrasikan Keygen untuk berbicara dengan penyedia pembayaran Anda menggunakan kait web dari kedua sisi (pikirkan: customer.created
-> buat lisensi dasar untuk pelanggan, license.created
-> biaya pelanggan untuk lisensi baru).
Jadi dengan memanfaatkan webhooks, kami dapat mengotomatisasi pembuatan lisensi untuk pelanggan baru. Jadi bagaimana dengan validasi lisensi dalam aplikasi itu sendiri? Ini dapat dilakukan dengan berbagai cara, tetapi cara yang paling populer adalah dengan meminta pelanggan Anda untuk memasukkan kunci lisensi yang panjang ke dalam bidang input yang kemudian dapat divalidasi; Saya pikir ini adalah cara yang mengerikan untuk menangani validasi lisensi di aplikasi Anda.
Kenapa aku berpikir begitu? Pertama-tama, Anda mewajibkan pelanggan Anda untuk memasukkan kunci lisensi yang sangat panjang yang dimaksudkan untuk konsumsi mesin, dan kedua Anda mengharuskan Anda dan pelanggan Anda untuk melacak kunci lisensi yang panjang dan membosankan itu .
Oke, jadi apa alternatifnya? Saya pikir alternatif terbaik adalah melakukan sesuatu yang biasa digunakan oleh pelanggan Anda: memungkinkan mereka membuat akun untuk produk Anda menggunakan email / kata sandi . Anda kemudian dapat mengaitkan semua lisensi dan mesin mereka dengan akun itu. Jadi sekarang alih-alih memasukkan kunci lisensi, mereka dapat masuk menggunakan kredensial mereka.
Apa manfaatnya bagi Anda? Pertama, ini menghilangkan kebutuhan Anda dan pelanggan Anda untuk melacak kunci lisensi, karena semuanya ditangani di belakang layar di dalam akun pengguna mereka dan yang paling penting: Anda sekarang dapat menawarkan pelanggan Anda lisensi dan mesin swalayan pengaktifan! yaitu karena semua lisensi dan mesin mereka terkait dengan akun pengguna mereka, Anda dapat meminta mereka untuk membeli lisensi ketika mereka menjalankan aplikasi Anda pada mesin yang tidak dikenal.
Sekarang ke validasi lisensi : setiap kali pelanggan Anda masuk ke aplikasi Anda dengan email / kata sandi mereka, Anda dapat meminta akun pengguna mereka untuk lisensi yang mereka miliki untuk menentukan apakah mereka dapat menggunakan fitur-X atau fitur-Y . Dan karena aplikasi Anda sekarang melayani sendiri , Anda dapat memungkinkan pelanggan Anda untuk membeli fitur tambahan langsung dari dalam aplikasi Anda!
Jadi kami telah memperkenalkan satu ton otomatisasi ke sistem lisensi kami, kami dapat melisensikan fitur individual (yaitu versi terbatas vs lengkap), kami telah menawarkan UX yang luar biasa bagi pelanggan kami dan kami juga mengurangi salah satu alasan terbesar untuk permintaan dukungan: pemulihan kunci lisensi.
Ngomong-ngomong, ini lama sekali tapi mudah-mudahan ini membantu seseorang!