Kunci API
Gunakan kunci API untuk mengautentikasi permintaan API.
Stripe melakukan autentikasi permintaan API Anda menggunakan kunci API akun. Jika permintaan tidak menyertakan kunci yang valid, Stripe akan mengembalikan kesalahan permintaan yang tidak valid. Jika permintaan menyertakan kunci yang dihapus atau kedaluwarsa, Stripe akan mengembalikan kesalahan autentikasi.
Gunakan Dashboard Pengembang untuk membuat, memperlihatkan, menghapus, dan merotasikan kunci API. Anda dapat mengakses kunci API v1 di tab kunci API.
Tipe kunci
Secara default, semua akun memiliki total empat kunci API:
| Tipe | Deskripsi |
|---|---|
| Sandbox kunci rahasia | autentikasi permintaan di server Anda saat mencoba di sandbox. Secara default, Anda dapat menggunakan kunci ini untuk melakukan permintaan API tanpa pembatasan. cadangan kunci ini untuk pengujian dan pengembangan guna memastikan Anda tidak secara tidak sengaja memodifikasi pelanggan atau charge live. |
| Kunci Sandbox yang dapat diterbitkan | Coba permintaan di kode sisi klien web atau aplikasi seluler Anda. Cadangan kunci ini untuk pengujian dan pengembangan untuk memastikan Anda tidak secara tidak sengaja mengubah pelanggan atau charge live. |
| Mode live kunci rahasia | Gunakan kunci ini untuk mengautentikasi permintaan di server Anda saat dalam mode live. Secara default, Anda dapat menggunakan kunci ini untuk melakukan permintaan API apa pun tanpa batasan. |
| Kunci mode live yang dapat diterbitkan | Saat Anda siap meluncurkan aplikasi, saat Anda siap meluncurkan aplikasi, di kode sisi klien web atau aplikasi seluler Anda. |
Kunci rahasia Anda dan yang dapat dipublikasikan ada di tab Kunci API di Dashboard. Jika Anda tidak dapat melihat kunci API, mintalah pemilik akun Stripe Anda untuk menambahkan Anda ke tim mereka dengan izin yang sesuai.
Kunci API yang dibatasi
Anda dapat membuat kunci API yang dibatasi di Dashboard untuk mengaktifkan akses yang dapat disesuaikan dan terbatas ke API. Namun, Stripe tidak menawarkan kunci yang dibatasi secara default.
Jika Anda masuk ke Stripe, dokumentasi kami mengisi contoh kode dengan kunci API percobaan Anda. Hanya Anda yang dapat melihat nilai-nilai ini. Jika Anda tidak masuk, contoh kode kami mencakup kunci API yang dihasilkan secara acak yang dapat Anda ganti dengan kunci percobaan Anda. Atau Anda dapat masuk untuk melihat contoh kode yang diisi dengan kunci API percobaan Anda.
Contoh kunci API
Tabel berikut ini menunjukkan contoh yang dibuat secara acak dari kunci rahasia dan dapat dipublikasikan:
| Tipe | Nilai | Waktu menggunakan |
|---|---|---|
| Rahasia | sk_ | Di sisi server: Harus dirahasiakan dan disimpan dengan aman di kode sisi server web atau aplikasi seluler Anda (seperti dalam variabel lingkungan atau sistem manajemen kredensial) untuk memanggil Stripe API. Jangan memaparkan kunci ini di situs web atau menyematkannya di aplikasi seluler. |
| Dapat diterbitkan | pk_ | Di sisi client: Dapat diakses secara publik di kode sisi client web atau aplikasi seluler Anda (seperti checkout.js) untuk mengumpulkan informasi pembayaran dengan aman (seperti dengan Stripe Elements). Secara default, Stripe Checkout mengumpulkan informasi pembayaran dengan aman. |
| Dibatasi | String yang dimulai dengan rk_ | Dalam layanan mikro: Harus dirahasiakan dan disimpan dengan aman dalam kode layanan mikro Anda untuk memanggil Stripe API. Jangan mengungkapkan kunci ini di situs web atau menyematkannya di aplikasi seluler. |
Lindungi kunci Anda
Siapa saja dapat menggunakan kunci rahasia mode live Anda untuk melakukan segala panggilan API atas nama akun Anda, seperti membuat charge atau melakukan pengembalian dana. Tetap amankan Anda dengan mengikuti praktik terbaik berikut ini:
Sandbox versus mode live
Semua permintaan API Stripe terjadi dalam mode kotak pasir (sandbox) atau mode langsung (live mode). Anda dapat menggunakan mode kotak pasir untuk mengakses data uji, dan mode langsung untuk mengakses data akun yang sebenarnya. Setiap mode memiliki rangkaian kunci API sendiri, dan objek dalam satu mode tidak dapat diakses oleh mode yang lain. Misalnya, sebuah objek produk sandbox tidak dapat menjadi bagian dari pembayaran mode langsung.
Akses kunci mode live
Anda hanya dapat memperlihatkan kunci API yang dibatasi atau mode live dibatasi satu kali. Jika kehilangannya, Anda tidak dapat mengambilnya dari Dashboard. Dalam hal ini, cabut atau hapus kunci dan buat yang baru.
| Tipe | Waktu menggunakan | Objek | Cara menggunakan | Pertimbangan |
|---|---|---|---|---|
| Sandbox | Gunakan sandbox, dan kunci API percobaan yang terkait, saat Anda membuat integrasi. Di sandbox, jaringan kartu dan penyedia pembayaran tidak memproses pembayaran. | API memanggil kembali objek simulasi. Sebagai contoh, Anda dapat mengambil dan menggunakan objek account, payment, customer, charge, refund, transfer, balance, dan subscription percobaan. | Gunakan kartu kredit dan akun percobaan. Anda tidak dapat menerima metode pembayaran aktual atau menggunakan akun aktual. | Identitas tidak melakukan pemeriksaan verifikasi. Selain itu, objek akun Connect tidak mengembalikan bidang sensitif. |
| Mode live | Gunakan mode live, dan kunci API live yang terkait, saat Anda siap meluncurkan integrasi dan menerima uang aktual. Dalam mode live, jaringan kartu dan penyedia pembayaran akan memproses pembayaran. | API memanggil kembali objek aktual. Sebagai contoh, Anda dapat mengambil dan menggunakan objek account, payment, customer, charge, refund, transfer, balance, dan subscription aktual. | Terima kartu kredit aktual dan gunakan akun pelanggan. Anda dapat menerima otorisasi pembayaran, charge, dan penarikan aktual untuk kartu kredit dan akun. | Sengketa memiliki alur yang lebih bernuansa dan proses percobaan yang lebih sederhana. Selain itu, beberapa metode pembayaran memiliki alur yang lebih bernuansa dan memerlukan lebih banyak langkah. |
Kunci API organisasi
Jika Anda memiliki beberapa akun bisnis Stripe dalam satu organisasi, Anda dapat mengonfigurasikan satu kunci API di tingkat organisasi. Kunci API tingkat organisasi menyediakan fungsionalitas berikut:
- Akses ke semua Akun: Anda bisa menggunakan kunci API organisasi untuk mengakses sumber daya dari akun mana pun di dalam organisasi.
- Izin terperinci: Batasi kunci API organisasi untuk memberikan izin baca atau tulis hanya untuk sumber daya tertentu.
- Manajemen terpusat: Buat dan kelola kunci API organisasi di tab Kunci API di Dashboard organisasi Anda.
Perilaku
Kunci API organisasi berperilaku secara berbeda dari kunci API tingkat akun, termasuk:
- Tidak memiliki kunci yang dapat dipublikasikan. Perlakukan semua kunci API organisasi sebagai kunci rahasia.
- Semuanya memiliki awalan
sk_yang sama, apa pun tingkat izinnya.org - Semua permintaan API yang dibuat dengan kunci API organisasi harus menyertakan header
Stripe-Contextuntuk mengidentifikasi akun yang terpengaruh. - Semua permintaan API yang dibuat dengan kunci API organisasi harus menyertakan header
Stripe-Versionuntuk memastikan konsistensi dan prediktabilitas di seluruh integrasi organisasi Anda.
Gunakan kunci API organisasi
Saat menggunakan kunci API organisasi, Anda juga harus:
- Tentukan versi API dengan menyertakan header
Stripe-Version. Saat menggunakan Stripe SDK, SDK secara otomatis menetapkan versi API. - Identifikasi akun yang terpengaruh oleh permintaan API dengan menyertakan header
Stripe-Context.
Misalnya, diberikan struktur organisasi berikut:
Organization (org_6SD3oI0eSQemPzdmaGLJ5j6) ├── Platform account (acct_1R3fqDP6919yCiFv) | └── Connected account (acct_1032D82eZvKYlo2C) └── Standalone account (acct_1aTnTtAAB0hHJ26p)
Anda dapat menggunakan kunci API organisasi untuk mengakses saldo akun mandiri. Anda juga dapat menggunakan kunci yang sama untuk melakukan panggilan yang sama bagi akun terhubung platform.
Dalam contoh kode sebelumnya, ganti {{CONTEXT}} dengan nilai yang relevan:
- Untuk akun mandiri, gunakan
acct_.1aTnTtAAB0hHJ26p - Untuk akun terhubung, gunakan jalur yang mengidentifikasi platform dan akun terhubung, dengan mengikuti format
acct_.1R3fqDP6919yCiFv/acct_ 1032D82eZvKYlo2C
Anda harus menentukan akun yang relevan menggunakan konteks dan versi API dalam permintaan API apa pun yang menggunakan kunci organisasi.
Organisasi tidak memiliki kunci API yang dapat dipublikasikan karena mereka tidak dapat terima pembayaran. Anda dapat menggunakan kunci API yang dapat dipublikasikan karena tidak dapat menerima pembayaran. Ini berarti Anda dapat menggunakan kunci API Anda untuk membuat maksud pembayaran akun pun mana organisasi Anda, tetapi Anda harus menggunakan kunci yang dapat dipublikasikan khusus akun yang sudah ada untuk operasi sisi client.
Kunci yang dibatasi dan rahasia
Gunakan Dashboard untuk membuat, memperlihatkan, mengubah, menghapus, dan memutar kunci rahasia dan dibatasi.
Buat kunci API
Anda dapat membuat kunci API rahasia atau kunci API dibatasi. Kunci API dibatasi hanya mengizinkan tingkat akses yang Anda tentukan.
Untuk membuat kunci API rahasia:
- Di tab Kunci API, klik Buat kunci rahasia.
- Di dialog, masukkan kode verifikasi yang dikirim oleh Stripe melalui email atau pesan teks. Jika dialog tidak dilanjutkan secara otomatis, klik Lanjutkan.
- Masukkan nama di bidang Nama kunci, kemudian klik Buat.
- Klik nilai kunci untuk menyalinnya.
- Simpan nilai kunci. Anda tidak dapat mengambilnya nanti.
- Di bidang Tambahkan catatan, masukkan lokasi tempat Anda menyimpan kunci dan klik Selesai.
Untuk membuat kunci API yang dibatasi:
- Di tab Kunci API, lakukan salah satu hal berikut:
- Untuk membuat kunci dibatasi baru, klik Buat kunci dibatasi. Nilai default untuk semua izin adalah Tidak ada.
- Untuk melakukan kloning kunci yang sudah ada, klik menu perluasan (), kemudian pilih Buat duplikat kunci untuk kunci yang ingin Anda kloning. Dalam kasus ini, nilai default untuk setiap izin adalah nilainya dari kunci yang dikloning.
- Masukkan nama di bidang Nama kunci. Jika Anda menggandakan kunci yang sudah ada, nama default adalah nama kunci yang digandakan.
- Untuk setiap sumber daya yang Anda inginkan agar kunci yang baru dapat mengakses, pilih izin yang sesuai: Tidak Ada, Baca, atau Tulis. Jika Anda menggunakan Connect, Anda juga dapat memilih izin untuk diizinkan bagi kunci ini saat mengakses akun terhubung.
- Klik Buat kunci.
- Di dialog, masukkan kode verifikasi yang dikirim oleh Stripe melalui email atau pesan teks. Jika dialog tidak dilanjutkan secara otomatis, klik Lanjutkan.
- Klik nilai kunci untuk menyalinnya.
- Simpan nilai kunci. Anda tidak dapat mengambilnya nanti.
- Di bidang Tambahkan catatan, masukkan lokasi tempat Anda menyimpan kunci dan klik Selesai.
Perlihatkan kunci API
Anda dapat memperlihatkan kunci API rahasia atau kunci API dibatasi di Sandbox atau mode live.
Dalam mode live, Stripe hanya menampilkan kunci API satu kali (untuk tujuan keamanan). Simpan kunci di tempat Anda menang dan tidak kehilangan kunci. Untuk mengingatkan di mana Anda disimpan, Anda dapat menambahkan catatan pada kunci di Dashboard. Jika kehilangan kunci, Anda dapat mencabut atau menghapusnya dan membuat yang lain.
Perlihatkan kunci rahasia mode live
Setelah Anda membuat kunci API yang dibatasi atau rahasia dalam mode live, kami menampilkannya sebelum Anda menyimpannya. Anda harus menyalin kunci sebelum menyimpannya, karena Anda tidak dapat menyalinnya nanti. Anda hanya dapat memperlihatkan kunci rahasia default atau kunci yang dihasilkan oleh rotasi terjadwal.
Untuk menampilkan kunci API rahasia di Sandbox
- Di tab Kunci API, di daftar Kunci Standard, klik Perlihatkan kunci percobaan di baris Kunci rahasia. Anda dapat memperlihatkan kunci rahasia API sebanyak yang Anda inginkan.
- Klik nilai kunci untuk menyalinnya.
- Simpan nilai kunci.
- Klik Sembunyikan kunci percobaan.
Untuk menampilkan kunci API yang dibatasi atau rahasia dalam mode live
- Di tab Kunci API dalam mode live, di Kunci Standard atau Kunci dibatasi, klik Perlihatkan kunci Live untuk kunci yang ingin Anda perlihatkan.
- Klik nilai kunci untuk menyalinnya.
- Simpan nilai kunci.
- Klik Sembunyikan kunci percobaan.
- Klik menu perluasan (), kemudian pilih Edit kunci untuk kunci yang ingin Anda tambahkan catatan.
- Di bidang Catatan, masukkan lokasi tempat Anda menyimpan kunci, kemudian klik Simpan.
Catatan
Kunci yang Anda buat sebelum Stripe memperkenalkan fitur ini tidak secara otomatis disembunyikan saat diperlihatkan. Anda harus menyembunyikannya secara manual dengan mengklik Sembunyikan kunci live.
Batasi kunci API ke alamat IP tertentu
Anda dapat membatasi kunci API rahasia atau kunci API dibatasi ke rentang alamat IP, atau satu atau beberapa alamat IP tertentu.
Alamat IP harus menggunakan protokol IPv4. Anda dapat menentukan rentang CIDR yang valid. Sebagai contoh, rentang yang valid adalah 100., ditetapkan sebagai 100.. Semua alamat dalam rentang tersebut harus dimulai dengan 100..
Di daftar Kunci API, di daftar Kunci Standard atau Kunci yang dibatasi, klik menu perluasan (), dan pilih kunci yang ingin Anda perlihatkan.
Pilih Kelola pembatasan IP > Batasi penggunaan ke serangkaian alamat IP.
Lakukan salah satu hal berikut ini:
- Masukkan alamat IP perorangan dalam bidang Alamat IP.
- Untuk rentang alamat IP, masukkan alamat pertama dalam rentang (menggunakan notasi Classless Inter-Domain Routing (CIDR) di bidang Alamat IP. Masukkan ukuran prefiks jaringan tersebut di bidang CIDR.
Anda juga dapat memilih tiap-tiap alamat IP dan rentang (dipisahkan oleh spasi) di tab Kelola massal. Perubahan yang Anda buat di satu tab muncul di tab lain.
Untuk menambahkan alamat atau rentang lain, klik + Tambahkan.
Klik Simpan.
Mengubah nama atau catatan kunci API
- Di tab Kunci API, klik menu perluasan () untuk kunci yang ingin Anda ubah.
- Pilih Edit kunci.
- Lakukan hal berikut ini:
- Untuk mengubah nama, masukkan nama baru di bidang Nama kunci.
- Untuk mengubah teks catatan, masukkan teks catatan baru di bidang Catatan.
- Klik Simpan.
Hapus kunci API
Jika Anda menghapus kunci API rahasia atau kunci API dibatasi, Anda harus membuat kunci baru dan memperbarui kode yang menggunakan kunci yang dihapus. Kode yang menggunakan kunci yang dihapus tidak dapat lagi melakukan panggilan API.
Catatan
Anda tidak dapat menghapus kunci yang dapat dipublikasikan.
- Di daftar Kunci API, di daftar Kunci Standard atau Kunci yang dibatasi, klik menu perluasan (), dan pilih kunci yang ingin Anda hapus.
- Pilih Hapus kunci.
- Di dialog, klik Hapus kunci. Jika Anda tidak ingin lagi menghapus kunci, klik Batalkan.
Rotasikan kunci API
Rotasikan kunci API akan mencabutnya dan menghasilkan kunci pengganti yang siap digunakan segera. Anda juga dapat menjadwalkan kunci API untuk berotasi setelah waktu tertentu. Nama kunci pengganti adalah sebagai berikut:
- Nama kunci pengganti yang dapat dipublikasikan selalu berupa
Publishable key. - Nama kunci rahasia penggantian selalu berupa kunci
Secret key. - Nama kunci dibatasi penggantian sama dengan kunci yang dirotasi.
Anda dapat mengubah nama kunci API rahasia atau dibatasi dengan mengedit kunci.
Rotasikan kunci API dalam skenario seperti:
- Jika Anda kehilangan kunci API rahasia atau dibatasi dalam mode live, dan Anda tidak dapat memulihkannya dari Dashboard.
- Jika kunci API yang dibatasi atau rahasia diretas, Anda harus mencabutnya untuk memblokir permintaan API berpotensi berbahaya yang mungkin menggunakannya.
- Jika kebijakan Anda mengharuskan rotasi kunci pada interval tertentu.
Untuk merotasikan kunci API
- Di tab Kunci API, klik menu perluasan () untuk kunci yang ingin Anda putar.
- Pilih Rotasikan kunci.
- Pilih tanggal kedaluwarsa dari menu dropdown Kedaluwarsa. Jika Anda memilih Sekarang, kunci lama akan dihapus. Jika Anda menentukan waktu, sisa waktu hingga kunci kedaluwarsa ditampilkan di bawah nama kunci.
- Klik Rotasikan kunci API.
- Klik nilai kunci untuk menyalinnya.
- Simpan nilai kunci. Anda tidak dapat mengambilnya nanti.
- Di bidang Catatan, masukkan lokasi tempat Anda menyimpan kunci, kemudian klik Simpan atau Selesai.
Lihat log permintaan API
Untuk membuka log permintaan API, klik menu perluasan (), klik menu perluasan ({% icon type="overflow /%}) untuk mendapatkan kunci, kemudian pilih Lihat permintaan log. Membuka log akan mengalihkan Anda ke Dashboard Stripe.