Docs Rivya AI

Panduan Payment Checkout Rivya

Pahami checkout plan dan credit-pack Rivya, redirect Stripe, bridge /payment, webhook, pembaruan billing, dan pemeriksaan pembelian.

Terakhir ditinjau pada 2026/04/28

Gunakan panduan payment checkout ini ketika Anda perlu memahami apa yang terjadi setelah membeli plan atau credit pack di Rivya.

Hal yang paling sering disalahpahami tentang pembayaran di Rivya adalah ini:

Stripe yang menyelesaikan pembayaran bukan berarti langkah terakhir. Produk masih harus mengejar dan merefleksikan perubahan itu dengan benar.

Itulah sebabnya alur checkout tidak berakhir di Stripe, dan juga tidak berakhir begitu browser kembali.

Alur Pembayaran Punya Tiga Tahap Nyata

Saat ini, checkout lebih mudah dipahami jika dipecah menjadi tiga tahap:

  1. Rivya membuat checkout session
  2. pengguna menyelesaikan Stripe Checkout
  3. Rivya menunggu state produk menjadi tepercaya lagi

Tahap ketiga itulah alasan /payment ada.

Dari Mana Checkout Bisa Dimulai

Checkout saat ini dimulai dari tempat yang sudah sesuai dengan intent pengguna:

  • Pricing
  • /settings/billing
  • /settings/credits

Dan dua bentuk pembelian utamanya adalah:

  • checkout paket langganan
  • checkout paket kredit sekali bayar

Keduanya adalah keputusan komersial yang berbeda, tetapi tetap bertemu di jalur konfirmasi yang sama.

Checkout Plan dan Credit-Pack Mirip, tapi Tidak Sama

Checkout plan berbentuk subscription.

Checkout credit-pack berbentuk top-up wallet satu kali.

Perbedaan ini penting karena setelah pembayaran Rivya perlu tahu apakah yang harus di-refresh adalah:

  • subscription state
  • atau wallet state

Itulah sebabnya momen sukses yang sama dari Stripe masih bisa membawa Anda kembali ke surface produk yang berbeda.

Mengapa /payment Ada

/payment bukan halaman receipt dalam arti biasa.

Ini adalah processing bridge.

Tugasnya adalah:

  • membaca session_id dari Stripe
  • memeriksa apakah payment record di sisi produk sudah settled
  • terus polling sebentar jika perlu
  • baru kemudian mengarahkan Anda kembali ke bagian app yang tepat

Jadi ini lebih mirip halaman sinkronisasi state daripada halaman konten.

Kapan Pembayaran Benar-Benar Selesai dari Perspektif Produk?

Dari sudut pandang pengguna, pembayaran terasa selesai begitu Stripe mengatakan berhasil.

Dari sudut pandang produk, pembayaran baru benar-benar selesai ketika state akun sudah diperbarui secara terlihat di Rivya.

Biasanya itu berarti:

  • payment record sudah ditandai sebagai paid atau completed
  • efek subscription atau wallet sudah terlihat
  • Anda bisa kembali ke billing atau credits tanpa melihat state lama

Itulah alasan nyata produk menunggu di /payment, alih-alih langsung melempar pengguna kembali ke app.

Mengapa Webhook Tetap Penting Walaupun /payment Melakukan Polling

/payment tidak menggantikan Stripe webhook.

Webhook tetaplah yang memperbarui durable backend state.

Halaman /payment ada agar pengalaman bisa menunggu sampai state itu cukup tercermin sebelum redirect.

Itulah perbedaan antara:

  • "Stripe sudah memproses sesuatu"
  • dan "Rivya sekarang jelas merefleksikan perubahan itu"

Setelah Pembayaran, Ke Mana Anda Pergi

Jalur kembali sengaja mengikuti apa yang berubah.

Jika pembelian terkait subscription, Anda biasanya diarahkan kembali ke billing.

Jika pembelian berupa credit pack, Anda biasanya diarahkan kembali ke credits.

Ini bukan routing kosmetik. Itu cocok dengan pertanyaan yang biasanya dimiliki pengguna tepat setelah membayar:

  • apakah plan saya sudah berubah?
  • atau wallet saya yang sudah berubah?

Apa Arti Timeout atau Failure Sebenarnya

Jika /payment timeout atau gagal, itu tidak otomatis berarti pembayaran hilang.

Lebih sering, itu berarti salah satu dari ini:

  • payment record di sisi produk belum benar-benar settled
  • redirect sedang menunggu state yang masih mengejar
  • halaman akun masih akan terlihat lama jika pengguna dipindahkan terlalu cepat

Itulah sebabnya state timeout lebih baik daripada fake success state. Setidaknya itu memberi tahu pengguna bahwa yang belum lengkap adalah konfirmasi produk, bukan selalu pembayaran itu sendiri.

Cara Terbaik Memeriksa Apakah Pembayaran Benar-Benar Masuk

Setelah checkout, jalur verifikasi yang paling bersih adalah:

  1. biarkan /payment menyelesaikan alurnya
  2. cek /settings/billing jika pembeliannya adalah plan
  3. cek /settings/credits jika pembeliannya adalah pack
  4. cek Panduan Notifications Center Rivya jika akun masih terlihat tidak sinkron

Ini biasanya lebih baik daripada me-refresh halaman acak dan menebak.

Payment Juga Menjadi Memori Akun

Payment bukan hanya aksi checkout. Ia juga menjadi bagian dari history akun melalui event yang tahan lama seperti:

  • subscription started
  • subscription renewed
  • payment failed
  • credit package added

Itulah sebabnya notifikasi tetap penting di sini juga. Menutup tab Stripe bukan akhir dari cerita akun.

Model Mental yang Lebih Baik

Cara termudah memikirkan checkout Rivya adalah:

  • Stripe menangani perpindahan uang
  • /payment menangani re-entry ke sisi produk

Jika Anda memisahkan dua peran itu, seluruh alurnya jadi lebih mudah dipahami.

Baca Selanjutnya

Checklist State Checkout

Ketika sebuah pembelian terlihat belum selesai atau membingungkan, periksa:

  • Konfirmasi Checkout dimulai dari mana: public pricing, billing settings, atau credits settings.
  • Periksa apakah Stripe menyelesaikan pembayaran dan mengembalikan pengguna ke /payment.
  • Tunggu Rivya me-refresh subscription, pack, invoice, dan wallet state sebelum memulai task berbayar lain.
  • Gunakan billing page untuk subscription dan credits page untuk pack atau wallet history.
  • Jangan menganggap redirect browser sebagai bukti bahwa webhook dan state akun sudah settled.

Cek Ulang Sebelum Retry Payment

Cek ulang sebelum retry jika pengguna melihat plan lama, credits hilang, jendela Checkout ganda, payment failed, atau receipt Stripe yang sukses tetapi belum tercermin di Rivya.

Daftar Isi