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 UmumJelajahi semua produk
Mulai membangun
Mulai mengembangkan
Proyek sampel
Tentang API
    Tur API
    Payment Intents API
    Setup Intents API
    Metode Pembayaran
    API lama
      Charge
        Migrasi ke API baru
        Terima pembayaran kartu
        Simpan kartu
        Lakukan penahanan kartu
        Charge dengan Connect
      Sumber
    Fase rilis
Membangun dengan LLM
Gunakan Stripe tanpa kode
Siapkan Stripe
Buat akun
Produk dan harga
Dashboard Web
Dashboard Seluler
Migrasikan ke Stripe
Migrasikan data pelanggan
Migrasikan data pembayaran
Migrasikan langganan
Kelola risiko penipuan
Pahami penipuan
Perlindungan penipuan Radar
Kelola sengketa
Verifikasikan identitas
Dukungan terhadap peraturan
BerandaMulaiAbout the APIsOlder APIs

Pembayaran kartu di Charges APITerdahulu

Pelajari cara men-charge, menyimpan, dan mengautentikasi kartu dengan API terdahulu Stripe.

Salin halaman

API terdahulu

The content of this section refers to a Legacy feature. Use the Payment Intents API instead.

Charges API tidak mendukung fitur berikut, banyak di antaranya diperlukan untuk kepatuhan kartu kredit:

  • Merchant di India
  • Bank requests for card authentication
  • Strong Customer Authentication

Charge dan Token API adalah API terdahulu yang digunakan dalam integrasi Stripe lama untuk menerima pembayaran kartu debit serta kredit. Gunakan PaymentIntents untuk integrasi baru.

Charges API membatasi kemampuan Anda untuk memanfaatkan fitur-fitur Stripe. Untuk mendapatkan fitur terbaru, gunakan Stripe Checkout atau lakukan migrasi ke Payment Intents API.

Alur pembayaran

Dalam kebanyakan kasus, PaymentIntents API menawarkan lebih banyak fleksibilitas dan opsi integrasi.

Charges APIPayment Intents API
  1. Kumpulkan informasi pembayaran pelanggan di browser dengan Elements.
  2. Buat token dari informasi pembayaran dengan Stripe.js.
  3. Lakukan permintaan untuk mengirim token ke server Anda.
  4. Gunakan token untuk membuat charge di server Anda dengan jumlah dan mata uang yang diinginkan.
  5. Penuhi pesanan pelanggan jika pembayaran berhasil.
  1. Buat PaymentIntent di server Anda dengan jumlah dan mata uang yang diinginkan.
  2. Kirim client secret PaymentIntent ke sisi client.
  3. Kumpulkan informasi pembayaran pelanggan di browser dengan Elements.
  4. Gunakan Stripe.js atau SDK seluler untuk menangani 3D Secure dan menyelesaikan pembayaran pada client.
  5. Gunakan webhook untuk memenuhi pesanan pelanggan jika pembayaran berhasil.

Pengembalian dana

To refund a payment through the API, create a Refund and provide the ID of the charge to be refunded.

Command Line
cURL
curl https://api.stripe.com/v1/refunds \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d charge={{CHARGE_ID}}

Untuk mengembalikan sebagian dana pembayaran, berikan parameter amount, berupa bilangan bulat dalam sen (atau satuan mata uang terkecil dari mata uang charge).

Command Line
cURL
curl https://api.stripe.com/v1/refunds \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d charge={{CHARGE_ID}} \ -d amount=1000

Apple Pay

Bila pelanggan Anda menerima pembayaran, aplikasi Anda akan menerima instance PKPayment berisi detail kartu terenkripsi mereka dengan mengimplementasikan berbagai metode PKPaymentAuthorizationViewControllerDelegate.

  1. Gunakan metode SDK createTokenWithPayment untuk mengubah PKPayment menjadi Token Stripe
  2. Gunakan Token ini untuk membuat charge.
CheckoutViewController.swift
Swift
extension CheckoutViewController: PKPaymentAuthorizationViewControllerDelegate { func paymentAuthorizationViewController(_ controller: PKPaymentAuthorizationViewController, didAuthorizePayment payment: PKPayment, handler: @escaping (PKPaymentAuthorizationResult) -> Void) { // Convert the PKPayment into a Token STPAPIClient.shared.createToken(withPayment: payment) { token, error in guard let token = token else { // Handle the error return } let tokenID = token.tokenId // Send the token identifier to your server to create a Charge... // If the server responds successfully, set self.paymentSucceeded to YES } } func paymentAuthorizationViewControllerDidFinish(_ controller: PKPaymentAuthorizationViewController) {

Keterangan rekening koran dinamis

Secara default, keterangan rekening koran akun Stripe Anda muncul pada rekening koran pelanggan setiap kali Anda men-charge kartu mereka. Selain itu, Anda dapat mengatur keterangan rekening koran secara dinamis pada setiap permintaan charge dengan argumen statement_descriptor pada objek Charge.

Command Line
curl
curl https://api.stripe.com/v1/charges \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "amount"=999 \ -d "currency"="usd" \ -d "description"="Example charge" \ -d "source"="tok_visa" \ -d "statement_descriptor"="Custom descriptor"

Deskriptor pernyataan dibatasi hingga 22 karakter, tidak dapat menggunakan karakter khusus <, >, ', ", atau *, dan tidak boleh hanya terdiri dari angka.

Saat mengatur keterangan rekening koran secara dinamis pada charge kartu kredit dan debit, bagian dinamis ditambahkan ke keterangan rekening koran penyelesaian merchant (dipisahkan oleh * dan spasi kosong). Misalnya, keterangan rekening koran untuk bisnis, bernama FreeCookies, yang menyertakan jenis kukis yang dibeli mungkin terlihat seperti FREECOOKIES* SUGAR.

* dan spasi kosong dihitung terhadap batas 22 karakter dan Stripe secara otomatis mengalokasikan 10 karakter untuk keterangan rekening koran dinamis. Artinya, keterangan penyelesaian merchant mungkin terpotong jika lebih dari 10 karakter (dengan asumsi keterangan rekening koran dinamis juga lebih dari 10 karakter). Jika keterangan rekening koran dinamis juga lebih dari 10 karakter, kedua keterangan akan dipotong menjadi 10 karakter.

Jika Anda mengalami masalah dengan batas karakter, Anda dapat mengatur keterangan singkat di Dashboard Stripe untuk mempersingkat keterangan penyelesaian merchant. Ini memungkinkan lebih banyak ruang untuk keterangan rekening koran dinamis. Keterangan singkat:

  • Mengganti keterangan rekening koran penyelesaian merchant saat menggunakan keterangan dinamis.
  • Bisa antara 2 dan 10 karakter.

Catatan

Jika deskripsi pernyataan akun Anda lebih dari 10 karakter, setel deskriptor singkat di Dashboard atau gunakan statement_descriptor_prefix. Ini mencegah deskriptor pernyataan Anda terpotong dengan cara yang tidak terduga.

Jika Anda tidak yakin seperti apa keterangan rekening koran itu ketika digabungkan, Anda dapat memeriksanya di Dashboard Stripe.

Menyimpan informasi dalam metadata

Menggunakan Payment Intents

Jika menggunakan Payment Intents API, ambil serta perbarui saja bidang metadata dan description pada objek Payment Intent. Jika menggunakan objek Payment Intent maupun Charge, Anda tidak dijamin akan melihat nilai yang konsisten bagi bidang-bidang ini.

Stripe mendukung penambahan metadata ke permintaan paling umum yang Anda buat, seperti pemrosesan charge. Metadata tidak diperlihatkan kepada pelanggan atau diperhitungkan apakah charge ditolak atau diblokir oleh sistem pencegahan penipuan kami.

Melalui metadata, Anda dapat mengaitkan informasi lain—yang berarti bagi Anda—dengan aktivitas Stripe. Metadata yang Anda sertakan dapat dilihat di Dashboard (misalnya, saat melihat halaman untuk masing-masing charge), juga tersedia dalam laporan umum dan ekspor. Misalnya, identifikasi pesanan toko Anda dapat dilampirkan pada charge yang digunakan untuk membayar pesanan itu. Dengan melakukan hal itu memungkinkan Anda, akuntan, atau tim keuangan Anda merekonsiliasikan charge dengan mudah di Stripe untuk pesanan di sistem.

Jika Anda menggunakan Radar, pertimbangkan penerusan informasi pelanggan tambahan dan informasi pesanan sebagai metadata. Dengan melakukannya, Anda dapat menulis aturan Radar menggunakan atribut metadata serta memiliki informasi selengkapnya tentang pembayaran yang tersedia dalam Dashboard yang dapat mempercepat proses peninjauan Anda.

Command Line
curl
curl https://api.stripe.com/v1/charges \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "amount"=999 \ -d "currency"="usd" \ -d "description"="Example charge" \ -d "source"="tok_visa" \ -d "metadata[order_id]"=6735

Peringatan

Jangan menyimpan informasi sensitif (informasi yang dapat mengenali pribadi, detail kartu, dan lain-lain) sebagai metadata atau dalam parameter description charge.

Penolakan

Jika ingin integrasi merespons kegagalan pembayaran secara otomatis, Anda dapat mengakses outcome charge dengan dua cara.

  • Tangani kesalahan API yang dikembalikan bila pembayaran gagal. Untuk pembayaran yang ditolak oleh penerbit kartu dan diblokir, kesalahannya menyertakan identifikasi charge, yang kemudian dapat Anda gunakan untuk mengambil charge tersebut.
  • Gunakan webhook untuk memantau pembaruan status. Misalnya, kejadian charge.failed terpicu bila pembayaran tidak berhasil.
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