# Gunakan Stripe CLI Bangun, uji, dan kelola integrasi Stripe Anda dari baris perintah. Untuk detail selengkapnya, lihat [referensi Stripe CLI](https://docs.stripe.com/cli.md). Stripe CLI memungkinkan Anda membangun, menguji, dan mengelola integrasi Stripe Anda dari baris perintah. Dengan CLI, Anda dapat membuat dan mengelola sumber daya Stripe, memicu peristiwa webhook, mengalirkan catatan permintaan API secara real-time, serta meneruskan peristiwa ke lingkungan pengembangan lokal Anda. ## Tentukan versi API saat menjalankan permintaan. Ketika Anda memanggil API Stripe di CLI, perintah ini menggunakan versi API bawaan Anda dalam semua permintaan, yang dapat Anda [identifikasi di Workbench](https://docs.stripe.com/workbench/guides.md#view-api-versions). Untuk mencoba versi API yang berbeda di CLI, gunakan flag berikut: | Flag | Deskripsi | Contoh | | ------------------------------------ | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | | `--stripe-version 2026-03-25.dahlia` | Gunakan flag `--stripe-version` dalam permintaan CLI apa pun untuk menentukan versi API. | `stripe products create --name=“My Product” --stripe-version 2026-03-25.dahlia` | | `--latest` | Gunakan flag `--latest` dalam permintaan CLI apa pun untuk menentukan versi API terbaru. | `stripe products create --name="My Product" --latest` | Anda juga dapat [melihat daftar versi API](https://docs.stripe.com/upgrades.md#api-versions). ## Pelajari tentang opsi perintah Untuk mempelajari tentang opsi untuk perintah tertentu, tambahkan `--help` ke perintah. ```bash stripe listen --help ``` ## Alirkan catatan permintaan Gunakan perintah `stripe logs tail` untuk mengalirkan catatan permintaan API. Biarkan jendela ini tetap terbuka. Jika terjadi kesalahan pada pemanggilan API Anda, terminal ini akan menampilkan pesan kesalahan API beserta alasan kesalahannya. ```bash stripe logs tail ``` ## Teruskan peristiwa ke endpoint webhook lokal Anda. Gunakan flag `--forward-to` untuk mengirim semua [peristiwa Stripe](https://docs.stripe.com/cli/trigger#trigger-event) dalam **sandbox** ke endpoint webhook lokal Anda. Untuk menonaktifkan verifikasi sertifikat HTTPS, gunakan flag `--skip-verify`. ```bash stripe listen --forward-to localhost:4242/webhooks ``` ```bash Ready! Your webhook signing secret is '{{WEBHOOK_SIGNING_SECRET}}' (^C to quit) ``` Untuk meneruskan peristiwa tertentu dalam daftar yang dipisahkan koma, gunakan flag`--events`. ```bash stripe listen --events payment_intent.created,customer.created,payment_intent.succeeded,charge.succeeded,checkout.session.completed,charge.failed \ --forward-to localhost:4242/webhook ``` Jika sudah [mendaftarkan endpoint Anda di Stripe](https://docs.stripe.com/webhooks.md#register-webhook), Anda dapat menggunakan flag `--load-from-webhooks-api` dan `--forward-to`. ```bash stripe listen --load-from-webhooks-api --forward-to localhost:4242 ``` Perintah ini meneruskan peristiwa yang dikirim ke endpoint webhook **publik** Anda yang terdaftar di Stripe ke endpoint webhook **lokal** Anda. Perintah ini memuat endpoint terdaftar Anda, mengurai jalur serta peristiwa yang terdaftar di dalamnya, lalu menambahkan jalur tersebut ke endpoint webhook lokal Anda pada jalur `--forward-to`. Jika Anda memeriksa tanda tangan webhook, gunakan `{{WEBHOOK_SIGNING_SECRET}}` dari keluaran awal perintah `listen`. ## Tampilkan semua peristiwa yang tersedia. Gunakan [flag bantuan ](https://docs.stripe.com/cli/help) (`--help`) untuk menampilkan semua peristiwa yang mungkin terjadi pada suatu kategori peristiwa. Sebagai contoh, untuk menampilkan semua peristiwa yang mungkin terjadi pada [halaman pembayaran siap pakai](https://docs.stripe.com/checkout/quickstart.md) untuk [Stripe Checkout](https://docs.stripe.com/payments/checkout.md): ```bash stripe trigger checkout --help ``` ## Buat produk dan harga satu kali. 1. Lakukan satu permintaan API untuk [Membuat produk](https://docs.stripe.com/api/products/create.md). ```bash stripe products create \ --name="My First Product" \ --description="Created with the Stripe CLI" ``` 1. Cari pengenal produk (dalam `id`) pada objek respons. Simpan untuk langkah berikutnya. Jika semua berjalan dengan baik, baris perintah akan menampilkan respons berikut: ```json { "id": "prod_LTenIrmp8Q67sa", // Pengenalnya terlihat seperti ini. "object": "product", "active": true, "attributes": [], "created": 1668198126, "default_price": null, "description": "Created with the Stripe CLI", "identifiers": {}, "images": [], "livemode": false, "metadata": {}, "name": "My First Product", "package_dimensions": null, "price": null, "product_class": null, "shippable": null, "sku": "my-first-product-10", "statement_descriptor": null, "tax_code": null, "type": "service", "unit_label": null, "updated": 1668198126, "url": null } ``` 1. Panggil [Create a price](https://docs.stripe.com/api/prices/create.md) untuk menetapkan harga sebesar 30 USD. Ganti placeholder pada `product` dengan pengenal produk Anda (misalnya, `prod_LTenIrmp8Q67sa`). ```bash stripe prices create \ --unit-amount=3000 \ --currency=usd \ --product="{{PRODUCT_ID}}" ``` 1. Jika semua berjalan dengan baik, baris perintah akan menampilkan respons berikut: ```json { "id": "price_1KzlAMJJDeE9fu01WMJJr79o", // Pengenalnya terlihat seperti ini. "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1652636348, "currency": "usd", "livemode": false, "lookup_key": null, "metadata": {}, "nickname": null, "product": "prod_Lh9iTGZhb2mcBy", "recurring": null, "tax_behavior": "unspecified", "tiers_mode": null, "transform_quantity": null, "type": "one_time", "unit_amount": 3000, "unit_amount_decimal": "3000" } ``` ## Picu peristiwa webhook saat pengujian. Picu peristiwa `checkout.session.completed` untuk membuat objek API yang dihasilkan dari sesi checkout yang berhasil diselesaikan. ```bash stripe trigger checkout.session.completed ``` Terminal `stripe listen` Anda menampilkan keluaran berikut: ```bash Setting up fixture for: checkout_session Running fixture for: checkout_session Setting up fixture for: payment_page Running fixture for: payment_page Setting up fixture for: payment_method Running fixture for: payment_method Setting up fixture for: payment_page_confirm Running fixture for: payment_page_confirm Trigger succeeded! ```