# Penolakan

Pelajari penolakan pembayaran dan cara menurunkan rasio penolakan Anda.

> #### Lacak rasio penolakan
> 
> Lacak rasio penolakan Anda dari waktu ke waktu guna mengidentifikasi potensi masalah integrasi atau penipuan. Untuk mendapatkan gambaran umum yang lebih jelas mengenai rasio otorisasi Anda, lakukan analisis penolakan unik dan kecualikan coba ulang yang gagal dari analisis.

Anda perlu menangani setiap tipe kegagalan pembayaran secara berbeda. Bagi setiap kegagalan, Anda dapat menggunakan [Dashboard](https://dashboard.stripe.com/payments) atau API untuk meninjau detail pembayaran. Ketika menggunakan API, lihat [hasil](https://docs.stripe.com/api/charges/object.md#charge_object-outcome) objek `Charge`. Atribut ini mencakup tipe kegagalan pembayaran dan memberikan informasi tentang penyebabnya.

Payments dapat gagal karena berbagai alasan, termasuk beberapa alasan yang membantu mencegah terjadinya transaksi penipuan. Stripe berusaha untuk mengurangi rasio penolakan di semua metode pembayaran yang didukung. Kami bekerja sama dengan penerbit dan jaringan untuk meningkatkan rasio penerimaan, sering kali tanpa memengaruhi integrasi Anda.

Ada tiga alasan pembayaran dapat gagal:

- [Kegagalan penerbit](https://docs.stripe.com/declines.md#issuer-declines)
- [Pembayaran yang diblokir](https://docs.stripe.com/declines.md#blocked-payments)
- [Panggilan API tidak valid](https://docs.stripe.com/declines.md#invalid-api-calls)

## Penerbit menolak

Ketika penerbit kartu atau penyedia pembayaran pelanggan Anda menerima sebuah transaksi, sistem dan model otomatis mereka akan memutuskan apakah transaksi tersebut akan disetujui. Alat-alat ini menganalisis sinyal seperti kebiasaan belanja, saldo akun, dan data kartu (tanggal kedaluwarsa, informasi alamat, dan CVC).

Stripe menangani penolakan metode pembayaran nonkartu sama seperti penolakan kartu. Stripe mengirimi Anda kode respons yang menyertakan informasi tentang penolakan, misalnya, jika disebabkan oleh dana yang tidak mencukupi, kartu hilang atau dicuri, atau alasan lain.

Jika penerbit kartu atau penyedia pembayaran menolak pembayaran, Stripe membagikan kepada Anda informasi kegagalan yang diterimanya melalui [kode kegagalan Stripe](https://docs.stripe.com/declines/codes.md). Informasi ini tersedia di Dashboard dan melalui API.

Saat penerbit memberikan penjelasan spesifik, seperti nomor kartu yang salah atau dana rendah, penjelasan ini kembali ke Stripe sebagai [kode kegagalan jaringan](https://docs.stripe.com/declines/network-codes.md).

## Pembayaran yang diblokir

*Stripe Radar* (Stripe Radar helps detect and block fraud for any type of business using machine learning that trains on data across millions of global companies. It’s built into Stripe and requires no additional setup to get started) memblokir pembayaran berisiko tinggi, termasuk pembayaran yang melanggar aturan custom Anda atau memiliki skor risiko tinggi. Produk pencegahan penipuan otomatis ini mengevaluasi setiap pembayaran, tanpa memerlukan tindakan apa pun dari Anda.

Ketika Stripe memblokir pembayaran, Stripe tidak mendapatkan otorisasi dari penerbit kartu. Tindakan pencegahan ini membantu mencegah potensi pembayaran palsu yang dapat menyebabkan sengketa.

Untuk sebagian tipe kartu, pelanggan mungkin melihat otorisasi penerbit kartu untuk jumlah pembayaran pada rekening korannya. Namun, Stripe belum men-charge jumlah ini atau menarik dana. Penerbit kartu biasanya menghapus otorisasi ini dari rekening koran pelanggan dalam beberapa hari.

Jika aturan yang Anda konfigurasikan memblokir pembayaran yang Anda kenali sebagai sah, Anda dapat mencabut blokir dengan mencari pembayaran di Dashboard dan mengeklik **Tambahkan ke daftar izinkan**. Tindakan ini tidak mencoba ulang pembayaran. Sebagai gantinya, ini mengesampingkan semua aturan Anda yang lain agar tidak memblokir upaya pembayaran mendatang yang cocok dengan atribut daftar.

> Tidak melihat tombol **Tambahkan ke daftar izin** pada halaman detail pembayaran? [Hubungi Stripe](https://support.stripe.com/email) untuk menambahkan fitur ini ke akun Radar Anda.

Ketika menggunakan API, `outcome` pembayaran yang diblokir mencerminkan tipe kegagalan pembayaran dan alasannya, beserta tingkat risiko yang dievaluasi.

```json
...
"outcome": {
  "network_decline_code": null,
  "network_advice_code": null,
  "network_status": "not_sent_to_network",
  "reason": "highest_risk_level",
  "advice_code": "do_not_try_again",
  "risk_level": "highest",
  "seller_message": "Stripe blocked this charge as too risky.",
  "type": "blocked"
},
...
```

Untuk pengguna dengan [skema biaya IC+](https://support.stripe.com/questions/understanding-blended-interchange-pricing), Adaptive Acceptance memblokir pembayaran tertentu untuk membantu Anda menghindari biaya jaringan yang tidak perlu. Misalnya, Adaptive Acceptance membantu Anda menghindari penalti percobaan ulang yang berlebihan.  Adaptive Acceptance juga dapat membantu Anda menghindari biaya jaringan dengan memblokir pembayaran yang memiliki kemungkinan otorisasi rendah.

```json
...
"outcome": {
  "network_decline_code": null,
  "network_advice_code": null,
  "network_status": "not_sent_to_network",
  "reason": "low_probability_of_authorization",
  "advice_code": "do_not_try_again",
  "risk_level": "normal",
  "seller_message": "Stripe blocked this payment as it is unlikely to be authorized.",
  "type": "blocked"
},
...
```

## Panggilan API yang tidak valid

Dalam API, Anda mungkin melihat panggilan API yang tidak valid seperti berikut ini:

```curl
curl https://api.stripe.com/v1/payment_intents \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d amount=2000 \
  -d currency=usd \
  -d payment_method=pm_card_chargeDeclinedIncorrectCvc \
  -d confirm=true
```

Panggilan API yang tidak valid menghasilkan respons kesalahan yang mungkin tampak seperti ini:

```json
{
  "error": {
    "code": "incorrect_cvc",
    "doc_url": "https://docs.stripe.com/error-codes#incorrect-cvc",
    "message": "Your card's security code is incorrect.",
    "param": "cvc",
    "type": "card_error"
  }
}
```

Hasil dari pembayaran yang ditolak mencakup jenis kegagalan pembayaran dan alasannya, berdasarkan kode kegagalan jaringan kartu. Alasan tersebut mungkin berisi informasi selain kode respons jaringan kartu, misalnya, jika evaluasi aturan Radar memblokir charge.

```json
...
"outcome": {
  "network_decline_code": "54",
  "network_advice_code": "03",
  "network_status": "declined_by_network",
  "reason": "expired_card",
  "advice_code": "confirm_card_data",
  "risk_level": "normal",
  "seller_message": "The bank returned the decline code `expired_card`.",
  "type": "issuer_declined"
},
...
```

Saat Anda mengembangkan integrasi Stripe, terus lakukan [percobaan](https://docs.stripe.com/testing.md) untuk mengidentifikasi potensi bug yang dapat menyebabkan panggilan API tak valid. Panggilan API yang tidak valid biasanya tidak menyebabkan pembayaran muncul di Dashboard. Namun, Anda mungkin akan melihat pembayaran muncul dalam beberapa kasus.

```json
...
"outcome": {
  "network_decline_code": null,
  "network_advice_code": null,
  "network_status": "not_sent_to_network",
  "type": "invalid"
},
...
```

## See also

- [Penolakan kartu](https://docs.stripe.com/declines/card.md)
- [Uji pembayaran yang ditolak](https://docs.stripe.com/testing.md#declined-payments)
- [Kembalikan dana dan batalkan pembayaran](https://docs.stripe.com/refunds.md)
