Codex · III

Langganan

Langganan

Coin Moebius bisa menjual langganan berulang di setiap penyedia fiat di menu Anda. Penjual mengonfigurasi harga dan interval sekali pada sebuah produk; tombol beli di situs tetap persis sama. Penyedia pembayaran menjalankan penagihan berulang, memegang kartu, mencoba ulang perpanjangan yang gagal, dan meng-host halaman pembatalan. Coin Moebius meneruskan event siklus hidup ke kode Anda.

Menyiapkan produk berulang

Di tab Produk dasbor, atur kolom Penagihan ke Bulanan atau Tahunan alih-alih Sekali bayar. Sebuah kolom opsional Uji coba gratis muncul untuk hari uji coba yang ingin Anda berikan sebelum tagihan pertama. Simpan produknya.

HTML tombol beli tidak berubah. Atribut product-id="pro-plan" yang sama berfungsi untuk sekali bayar atau berulang; worker memeriksa pengaturan penagihan produk saat checkout dan mengarahkannya lewat API langganan penyedia bila berlaku.

<coin-moebius-buy
  project-id="proj_YOUR_ID"
  product-id="pro-plan"
  label="Subscribe to Pro">
</coin-moebius-buy>

Apa yang tidak perlu Anda bangun

Penyedia menjalankan jadwalnya. Kami tidak menyimpan kartu. Kami tidak menjalankan cron job. Kami tidak mencoba ulang tagihan yang gagal. Kami tidak mengirim email dunning. Kami tidak meng-host halaman pembatalan. Seluruh sisi sistem itu tinggal di dalam Stripe (atau penyedia fiat mana pun yang Anda hubungkan). Anda mengalihdayakan bagian sulit penagihan berulang ke perusahaan yang sudah menjalankannya untuk jutaan penjual.

Event langganan

Perpanjangan dan pembatalan muncul sebagai event webhook yang bisa ditanggapi server Anda. Lima jenis ternormalkan mencakup siklus hidupnya:

EventKapan ia dipicu
subscription.createdPendaftaran baru. Membawa jumlah siklus pertama.
subscription.renewedSebuah siklus non-awal berhasil. Perpanjang akses hingga akhir periode baru.
subscription.payment_failedKartu sebuah siklus ditolak. Dunning penyedia mencoba ulang sesuai jadwalnya; biasanya Anda cukup mencatat ini untuk visibilitas.
subscription.canceledPembatalan terminal. Pembeli membatalkan, dunning habis, atau penjual membatalkan.
subscription.updatedPerubahan status, pembaruan kartu, perubahan paket. Periksa status barunya.

Mengenali pembeli tanpa menyimpannya

Coin Moebius adalah perute pembayaran, bukan basis data pelanggan. Kami tidak pernah menyimpan email, nama, alamat pembeli, atau id pelanggan internal penyedia. Jika aplikasi Anda punya akun pengguna (kebanyakan aplikasi langganan punya), kirim id pengguna buram Anda sendiri sebagai customer-ref pada tombol beli. Tombolnya meneruskannya ke worker sebagai metadata.customerRef, kami merangkainya ke penyedia, memunculkannya kembali pada setiap event, dan menyimpan hanya string buram itu. Bagi kami tak bermakna; bagi Anda itu kunci asing ke sistem pengguna Anda sendiri.

<coin-moebius-buy
  project-id="proj_YOUR_ID"
  product-id="pro-plan"
  customer-ref="user_bob_42">
</coin-moebius-buy>

Saat Anda butuh detail pembeli yang lebih dalam (email, empat digit terakhir kartu, catatan sengketa), dasbor menautkan setiap transaksi kartu keluar ke penyedia yang menanganinya (Stripe, PayPal, Square, atau Authorize.Net), tempat catatan pembeli sebenarnya tinggal. Anda klik untuk masuk; kami tidak pernah menggandakannya.

Pembatalan: tautkan keluar, jangan bangun

Pembeli membatalkan di portal terhosting penyedia: Stripe Customer Portal, halaman akun PayPal pembeli, dan seterusnya. Portalnya menangani pembatalan, pembaruan kartu, unduhan tanda terima, dan perubahan paket, semua antarmuka yang tidak perlu Anda bangun. Anda bisa mengantarkan pembeli ke portal dengan satu panggilan API:

const res = await fetch(
  `https://api.coinmoebius.com/api/subscriptions/${projectId}/${subId}/portal-url`,
  { method: 'POST', body: JSON.stringify({ returnUrl: 'https://you.example/account' }) },
);
const { url } = await res.json();
window.location.assign(url);

Penyedia mana yang mendukung langganan hari ini

Stripe dan PayPal berfungsi dari ujung ke ujung lewat tombol beli terhosting. Atur sebuah produk menjadi Bulanan atau Tahunan di dasbor Anda, tempel tombolnya di halaman Anda, dan klik memulai langganan sungguhan. Penyedia menjalankan perpanjangannya.

Langganan Square dan Authorize.Net tidak berjalan lewat tombol beli terhosting. Anda membuat langganannya lewat integrasi Anda sendiri dengan penyedia (untuk Authorize.Net, itu berarti mengumpulkan kartu di halaman Anda sendiri dengan Accept.js; Square punya checkout langganan terhosting sendiri yang bisa Anda pakai), lalu mengarahkan webhook penyedia ke kami. Dari sana sisa sistemnya (routing webhook, dasbor, endpoint status, penautan pelanggan) bekerja persis sama seperti untuk langganan Stripe dan PayPal. Lihat bagian berikutnya.

Penyedia kripto (NOWPayments) tidak mendukung penagihan berulang di produk ini. Kripto berulang penuh gesekan di setiap gateway yang sudah kami evaluasi; kami lebih memilih tidak merilis apa pun ketimbang merilis cerita yang setengah rusak untuk itu.

Siap merangkainya?

Tingkat gratis mencakup sebagian besar situs dan tidak pernah meminta kartu.