Lewati ke konten
Buat akun
atau
Masuk
Logo Dokumen Stripe
/
Tanya AI
Buat akun
Masuk
Mulai
Pembayaran
Pendapatan
Platform dan situs belanja online
Manajemen uang
Sumber daya pengembang
Gambaran Umum
Tentang pembayaran Stripe
Upgrade integrasi Anda
Analitik pembayaran
Pembayaran online
Gambaran umumTemukan contoh penggunaan AndaManaged Payments
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
Tangani beberapa mata uang
Alur pembayaran custom
Akuisisi fleksibel
Orkestrasi
Pembayaran di tempat
Terminal
    Gambaran umum
    Terima pembayaran di tempat
    Desain integrasi
    Pilih reader Anda
    Desain integrasi
    Mulai cepat
    Contoh aplikasi
    Pengujian
    Penyiapan Terminal
    Siapkan integrasi Anda
    Hubungkan ke reader
    Menerima pembayaran
    Pungut pembayaran kartu
    Metode pembayaran tambahan
    Terima pembayaran offline
    Pembayaran pesanan via pos dan telepon
    Pertimbangan wilayah
    Selama checkout
    Pungut tips
    Kumpulkan dan simpan detail pembayaran untuk penggunaan mendatang
    Otorisasi fleksibel
    Setelah checkout
    Transaksi pengembalian dana
    Berikan Resi
    Sesuaikan Checkout
    Tampilan keranjang
    Kumpulkan input di layar
    Kumpulkan data yang digesek
    Kumpulkan data yang diketukkan untuk instrumen NFC
    Aplikasi pada perangkat
    Kelola reader
    Pesan, kembalikan, ganti reader
    Daftarkan reader
    Kelola lokasi dan zona
    Konfigurasikan reader
    Pantau Reader
    Enkripsi
    Referensi
    Referensi API
    Reader seluler
    Reader cerdas
    Panduan migrasi SDK
    Daftar periksa penggunaan
    Lembar produk reader Stripe Terminal
Di luar pembayaran
Dirikan perusahaan Anda
Kripto
Financial Connections
Climate
Pahami penipuan
Perlindungan penipuan Radar
Kelola sengketa
Verifikasikan identitas
BerandaPembayaranTerminal

Refund transactions

Cancel or refund Stripe Terminal payments.

Stripe Terminal supports both automatic and manual capture.

When the SDK returns a confirmed PaymentIntent to your app, the payment is authorized but not captured. You can cancel payments that are authorized and not captured. If the PaymentIntent has already been captured, you must refund the underlying charge created by the PaymentIntent, using the refunds API or Dashboard.

We recommend reconciling payments on your backend after a day’s activity to prevent unintended authorizations and uncollected funds.

Availability

Canceling payments is available on Visa, Mastercard, American Express, Discover, and girocard. For single-message payment methods like Interac and eftpos, PaymentIntents are automatically captured. In lieu of canceling PaymentIntents, make sure your application can allow initiating a refund at the end of the checkout flow.

Online refunds are available on all card networks except for Interac.

In-person refunds are only available on Interac.

Cancel payments Client-sideServer-side

SDK Reference

  • cancelPaymentIntent (iOS)
  • cancelPaymentIntent (Android)
  • cancelPaymentIntent (React Native)
  • cancelPaymentIntent (Java)

You can cancel a card_present PaymentIntent at any time before it has been captured. Canceling a PaymentIntent releases all uncaptured funds, and a canceled PaymentIntent can no longer be used to perform charges.

Use this when, for example, your customer decides to use a different payment method or pay with cash after the payment has been processed. In your application’s UI, consider allowing the user to cancel after they confirm the payment, and before you finalize it and notify your backend to capture.

Client-side

Cancel a PaymentIntent from your client using the iOS, Android, or React Native SDK:

Catatan

Client-side PaymentIntent cancellation is possible with the iOS, Android, and React Native SDKs. If you’re using a server-driven integration, cancel the PaymentIntent server-side.

Server-side

API Reference

  • Cancel a PaymentIntent

The JavaScript SDK and server-driven integration require you to cancel the PaymentIntent on your server. For the other client SDKs, you can cancel the PaymentIntent on your server if the information required to start a payment isn’t readily available in your app.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl -X POST https://api.stripe.com/v1/payment_intents/pi_ANipwO3zNfjeWODtRPIg/cancel \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"

Perform refunds Server-side

When you use a PaymentIntent to collect payment from a customer, Stripe creates a charge behind the scenes. To refund the customer’s payment after the PaymentIntent has succeeded, create a refund by passing in the PaymentIntent ID or the charge ID. You can also optionally refund part of a payment by specifying an amount.

You can perform refunds with the API or through the Dashboard. For Interac transactions in Canada, you can provide in-person refunds on the BBPOS WisePOS E reader, Stripe Reader S700, or Tay to Pay on iPhone.

Online refunds don’t require a cardholder to present their card again at the point of sale. The following example shows how to create a full refund by passing in the PaymentIntent ID.

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/refunds \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d payment_intent=pi_Aabcxyz01aDfoo

To refund part of a PaymentIntent, provide an amount parameter, as an integer in cents (or the charge currency’s smallest currency unit):

Command Line
cURL
Stripe CLI
Ruby
Python
PHP
Java
Node.js
Go
.NET
No results
curl https://api.stripe.com/v1/refunds \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d payment_intent=pi_Aabcxyz01aDfoo \ -d amount=1000

Lihat juga

  • Cart display
  • Receipts
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