Panduan migrasi harga Checkout
Pelajari cara memperbarui integrasi Anda untuk menggunakan harga dengan Stripe Checkout.
Prices API menambahkan fleksibilitas dan fitur baru pada cara Anda men-charge pelanggan. Integrasi baru ini menawarkan:
- Pemodelan yang lebih terpadu untuk item Checkout—bukan paket, SKU, dan item baris dalam baris, setiap item sekarang menjadi harga.
- Kemampuan untuk menampilkan gambar produk untuk item rutin.
- Buat katalog harga dan produk yang dapat digunakan kembali, bukan mata anggaran satu kali.
- Buat skema biaya dalam baris untuk langganan.
- Terapkan tarif pajak dinamis pada langganan dan pembayaran satu kali.
Tidak ingin melakukan migrasi? Anda dapat terus menggunakan integrasi saat ini, tetapi fitur yang baru tidak didukung. Anda dapat menggunakan paket baru atau harga rutin yang Anda buat di parameter plan
pada panggilan API yang ada.
Gambaran umum produk dan harga
Harga adalah entitas inti baru dalam Stripe yang berfungsi dengan langganan, invoice, dan Checkout. Setiap harga dikaitkan dengan satu Produk, dan setiap produk dapat memiliki beberapa harga. Barang fisik atau tingkat layanan yang berbeda harus diwakili oleh produk. Skema biaya produk itu harus diwakili oleh harga.
Harga menentukan harga dasar, mata uang, dan—untuk produk rutin—siklus tagihan. Hal ini memungkinkan Anda mengubah dan menambahkan harga tanpa perlu mengubah detail dari yang Anda tawarkan. Misalnya, Anda mungkin memiliki satu produk “emas” yang memiliki harga 10 USD/bulan, 100 USD/tahun, 9 EUR/bulan, dan 90 EUR/tahun. Atau Anda mungkin memiliki kaus biru dengan harga 20 USD dan 15 EUR.
Pembayaran satu kali
Integrasi untuk pembayaran satu kali memiliki beberapa perubahan sebagai berikut:
- Sebagai ganti item baris ad-hoc (yaitu, mengatur nama, jumlah, dan mata uang), pembuatan Sesi Checkout memerlukan pembuatan produk dan, biasanya, harga.
- mode sekarang diperlukan.
Kode sisi client tetap sama.
Tabel pemetaan
Sebagai ganti penentuan setiap bidang pada line_
, Checkout menggunakan objek harga dan produk pokok untuk menentukan nama, keterangan, jumlah, mata uang, dan gambar. Anda dapat membuat produk dan harga dengan API atau Dashboard.
Tanpa harga | Dengan harga |
---|---|
line_ | product. |
line_ | product. |
line_ |
|
line_ |
|
line_ | product. (menampilkan gambar pertama yang diberikan) |
Kode sisi server untuk item dalam baris
Sebelumnya, Anda hanya dapat membuat item satu kali dalam baris. Dengan harga, Anda dapat terus mengonfigurasi item dalam baris, tetapi juga dapat menentukan harga secara dinamis dengan price_data ketika Anda membuat Sesi Checkout.
Bila Anda membuat Sesi Checkout dengan price_
, referensikan identifikasi produk yang ada dengan price_data.product, atau tentukan detail produk Anda secara dinamis menggunakan price_data.product_data. Contoh berikut menunjukkan alur untuk membuat item satu kali.
Kode sisi server untuk harga satu kali
Dengan integrasi baru ini, Anda dapat membuat katalog produk dan harga di awal bukannya perlu menentukan jumlah, mata uang, dan nama setiap kali Anda membuat Sesi Checkout.
Anda dapat membuat produk dan harga dengan Prices API atau melalui Dashboard. Anda membutuhkan identifikasi harga untuk membuat Sesi Checkout. Contoh berikut menunjukkan cara membuat produk dan harga melalui API:
Subscriptions
Integrasi untuk pembayaran rutin memiliki beberapa perubahan sebagai berikut:
- Semua item diteruskan ke satu bidang line_items, bukan
subscription_
.data. items - mode sekarang diperlukan. Atur
mode=subscription
jika sesi menyertakan item rutin.
Kode sisi client tetap sama. Paket yang ada dapat digunakan di mana pun harga rutin disetujui.
Kode sisi server dengan paket
Berikut adalah contoh sebelum dan sesudah membuat Sesi Pembayaran dengan uji coba dan menggunakan paket yang ada, yang dapat digunakan secara bergantian dengan harga. Paket sekarang diteruskan ke line_
bukan subscription_
.
Kode sisi server untuk harga rutin dengan biaya penyiapan
Jika Anda memiliki paket rutin dengan biaya penyiapan satu kali, buat produk dan harga yang mewakili biaya satu kali tersebut sebelum membuat Sesi Checkout. Lihat tabel pemetaan untuk mengetahui cara bidang line_
yang lama memetakan ke integrasi baru. Anda dapat membuat produk dan harga melalui Prices API atau melalui Dashboard Stripe. Anda juga dapat membuat item satu kali dalam baris. Contoh berikut menggunakan identifikasi harga yang ada:
Perubahan objek respons
Sebagai ganti pencantuman item dengan display_
, objek Checkout Session menggunakan line_
. Bidang line_
tidak ditampilkan secara default seperti yang dilakukan display_
, tetapi Anda dapat menyertakannya menggunakan perluas ketika membuat Sesi Checkout:
Perubahan webhook
Karena line_
dapat termasuk, respons webhook checkout.
tidak lagi mencantumkan item secara default. Objek respons yang lebih kecil memungkinkan Anda menerima webhook Checkout lebih cepat. Anda dapat mengambil item dengan endpoint line_
yang baru:
Untuk detail selengkapnya, lihat pemenuhan pesanan dengan Checkout.