Tidak ingin melakukan migrasi? Anda dapat terus menggunakan integrasi saat ini, tetapi fitur yang baru tidak didukung. Paket baru atau harga rutin yang Anda buat dapat digunakan 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.
Paket dan SKU (hanya-client) dapat digunakan dengan integrasi baru di mana pun Harga disetujui. Anda dapat membuat produk dan harga melalui API atau melalui Dashboard.
Pembayaran satu kali
Integrasi client dan server memiliki perubahan berikut untuk pembayaran satu kali:
Sebagai ganti item baris ad-hoc (yaitu, mengatur nama, jumlah, dan mata uang), pembuatan Sesi Checkout memerlukan pembuatan produk dan, biasanya, harga.
Sebagai ganti penentuan setiap bidang pada line_items, 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_items.name
product.name
line_items.description
product.description
line_items.amount
price.unit_amount
price_data.unit_amount (jika ditentukan bila Sesi Checkout dibuat)
line_items.currency
price.currency
price_data.currency (jika ditentukan bila Sesi Checkout dibuat)
line_items.images
product.images (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_data, 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.
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:
Integrasi client dan server memiliki perubahan berikut untuk pembayaran rutin:
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_items bukan subscription_data.items.
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_items 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:
Sebagai ganti pencantuman item dengan display_items, objek Checkout Session menggunakan line_items. Bidang line_items tidak ditampilkan secara default seperti yang dilakukan display_items, tetapi Anda dapat menyertakannya menggunakan perluas ketika membuat Sesi Checkout:
Karena line_items dapat termasuk, respons webhookcheckout.session.completed 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_items yang baru:
Welcome to the Stripe Shell!
Stripe Shell is a browser-based shell with the Stripe CLI pre-installed. Log in to your
Stripe account and press Control + Backtick (`) on your keyboard to start managing your Stripe
resources in test mode.
- View supported Stripe commands:
- Find webhook events:
- Listen for webhook events:
- Call Stripe APIs: stripe [api resource] [operation] (e.g., )