Lewati ke konten
Buat akun
atau
Masuk
Logo Dokumen Stripe
/
Tanya AI
Buat akun
Masuk
Mulai
Pembayaran
Otomatisasi keuangan
Platform dan situs belanja online
Manajemen uang
Alat bantu pengembang
Mulai
Pembayaran
Otomatisasi keuangan
Mulai
Pembayaran
Otomatisasi keuangan
Platform dan situs belanja online
Manajemen uang
Gambaran Umum
Tentang pembayaran Stripe
    Gambaran umum
    Mata uang
    Penolakan
    Payout
    Pembayaran rutin
    Autentikasi 3D Secure
    Kembalikan dana dan batalkan pembayaran
    Saldo dan waktu pelunasan
    Resi
    Tangani kejadian webhook
    Kesiapan SCA
Upgrade integrasi Anda
Analitik pembayaran
Pembayaran online
Gambaran umumTemukan contoh penggunaan AndaPembayaran Terkelola
Gunakan Payment Links
Buat halaman checkout
Bangun integrasi lanjutan
Bangun integrasi dalam aplikasi
Metode Pembayaran
Tambahkan metode pembayaran
Kelola metode pembayaran
Checkout lebih cepat dengan Link
Antarmuka pembayaran
Payment Links
Checkout
Web Elements
Elements dalam aplikasi
Skenario pembayaran
Alur pembayaran custom
Akuisisi fleksibel
Orkestrasi
Pembayaran di tempat
Terminal
Produk Stripe lainnya
Financial Connections
Kripto
Climate
BerandaPembayaranAbout Stripe payments

Memicu tindakan dengan webhook

Cara menggunakan webhook untuk menanggapi kejadian pembayaran offline.

Salin halaman

Webhook adalah endpoint HTTP yang menerima kejadian dari Stripe.

Webhook memungkinkan Anda diberi tahu tentang kejadian pembayaran di luar alur pembayaran seperti:

  • Pembayaran yang berhasil (payment_intent.succeeded)
  • Pembayaran yang dipersengketakan (charge.dispute.created)
  • Saldo yang tersedia di akun Stripe Anda (balance.available)

Anda dapat menggunakan Dashboard untuk tindakan satu kali seperti mengembalikan dana pembayaran atau memperbarui informasi pelanggan, sementara webhook membantu Anda menskalakan integrasi pembayaran dan memproses kejadian bisnis penting dalam volume besar.

Bangun webhook Anda sendiri

Anda dapat membuat webhook handler di server sendiri untuk mengelola semua alur pembayaran offline. Mulailah dengan mengungkapkan endpoint yang dapat menerima permintaan dari Stripe dan menggunakan CLI untuk mencoba integrasi secara lokal. Setiap permintaan dari Stripe berisi objek Event dengan referensi ke objek di Stripe yang telah dimodifikasi.

Buat endpoint webhook

Tambahkan endpoint baru di aplikasi Anda. Anda dapat bertindak atas kejadian tertentu dengan memeriksa bidang type objek kejadian yang dikirim dalam isi permintaan. Kemudian Anda dapat mencetak ke output standar untuk memastikan webhook berfungsi.

Mulai server Anda setelah menambahkan endpoint baru.

Ruby
# Set your secret key. Remember to switch to your live secret key in production. # See your keys here: https://dashboard.stripe.com/apikeys Stripe.api_key =
'sk_test_BQokikJOvBiI2HlWgH4olfQ2'
require 'stripe' require 'sinatra' require 'json' # Using the Sinatra framework set :port, 4242 post '/webhook' do payload = request.body.read event = nil begin event = Stripe::Event.construct_from( JSON.parse(payload, symbolize_names: true) ) rescue JSON::ParserError => e # Invalid payload status 400 return end # Handle the event case event.type when 'payment_intent.succeeded' payment_intent = event.data.object # contains a Stripe::PaymentIntent puts 'PaymentIntent was successful!' when 'payment_method.attached' payment_method = event.data.object # contains a Stripe::PaymentMethod puts 'PaymentMethod was attached to a Customer!' # ... handle other event types else puts "Unhandled event type: #{event.type}" end status 200 end

Instal dan siapkan Stripe CLI

Command Line
homebrew
# Install Homebrew to run this command: https://brew.sh/ brew install stripe/stripe-cli/stripe # Connect the CLI to your dashboard stripe login

For additional install options, see Get started with the Stripe CLI.

Setelah Anda menginstal Stripe CLI, jalankan stripe login di baris perintah untuk menghasilkan kode pemasangan yang akan ditautkan dengan akun Stripe Anda. Tekan Enter untuk membuka browser dan masuk ke akun Stripe Anda untuk mengizinkan akses. Kunci API yang dihasilkan berlaku selama 90 hari. Anda dapat mengubah atau menghapus kunci pada Kunci API di Dashboard.

Catatan

Anda dapat membuat konfigurasi khusus proyek dengan menyertakan bendera –project-name ketika masuk dan ketika menjalankan perintah untuk proyek tersebut.

Percobaan

Command Line
stripe login Your pairing code is: humour-nifty-finer-magic Press Enter to open up the browser (^C to quit)

Jika Anda ingin menggunakan kunci API yang ada, gunakan tanda --api-key:

Command Line
stripe login --api-key
sk_test_BQokikJOvBiI2HlWgH4olfQ2
Your pairing code is: humour-nifty-finer-magic Press Enter to
open up the browser (^C to quit)

Coba webhook Anda secara lokal

Gunakan CLI untuk meneruskan kejadian ke endpoint webhook lokal Anda menggunakan perintah listen.

Dengan asumsi aplikasi Anda berjalan di port 4242, jalankan:

Command Line
stripe listen --forward-to http://localhost:4242/webhook

Di tab terminal yang berbeda, gunakan perintah CLI trigger untuk memicu kejadian webhook rekaan.

Command Line
stripe trigger payment_intent.succeeded

Kejadian berikut ini muncul di tab listen:

Command Line
[200 POST] OK payment_intent.succeeded

“PaymentIntent berhasil!” muncul di tab terminal yang menjalankan server Anda.

OpsionalPeriksa tanda tangan webhook

Gunakan endpoint webhook Anda

Bila Anda siap menggunakan endpoint webhook ke produksi, Anda perlu melakukan:

  1. Gunakan kunci API mode live dan bukan kunci percobaan Anda.

  2. Konfigurasikan endpoint webhook Anda di Dashboard Stripe atau dengan API.

Untuk mengonfigurasi endpoint Anda di Dashboard, buka pengaturan webhook.

Klik Tambahkan endpoint dan masukkan URL endpoint Anda, versi API Stripe, dan kejadian spesifik yang Anda ingin agar dikirim oleh Stripe.

Ganti webhook endpoint secret di aplikasi Anda dengan secret baru yang ditampilkan di tampilan Dashboard endpoint.

Aplikasi Anda kini siap menerima kejadian live. Untuk informasi selengkapnya tentang mengonfigurasi endpoint webhook Anda, lihat Webhook Endpoint API. Untuk percobaan di sandbox, lihat panduan Pengembangan kami.

Apakah halaman ini membantu?
YaTidak
Butuh bantuan? Hubungi Tim CS.
Bergabunglah dengan program akses awal kami.
Lihat log perubahan kami.
Ada pertanyaan? Hubungi Bagian Penjualan.
LLM? Baca llms.txt.
Dijalankan oleh Markdoc