# Hatalar

Hata yanıtı `{ "status": false, "message": "..." }` biçimindedir; ücretle ilgili hatalarda ayrıca `error.code` gelir.

| HTTP | `message` / `error.code` | Neden |
| --- | --- | --- |
| 401 | Geçersiz kullanıcı adı, şifre veya API erişim izni yok. | Kimlik yok ya da yanlış |
| 404 | Bu kullanıcıya bağlı WhatsApp numarası bulunamadı. | Kullanıcı henüz numara kurmamış |
| 400 | Gönderen numara bu kullanıcıya ait değil. | `from` başka bir kullanıcının numarası |
| 404 | not found | Açık olmayan işlem |
| 400 | Template PENDING ve benzeri | WhatsApp'ın reddettiği istek; bazı numaralarda HTTP 500 döner (şablon onaysız, yanlış parametre, 24 saat dışında serbest mesaj) |
| 402 | Hesabınızda OTP Whatsapp Paketi tanımlı değildir. | Doğrulama şablonu; OTP paketi yok ya da bitti |
| 402 | `INSUFFICIENT_FUNDS` | Bakiye yetersiz |
| 422 | `BILLING_NO_ACCOUNT` · `BILLING_REJECTED` | Hesap bulunamadı / ödeme reddedildi |
| 503 | `BILLING_UNAVAILABLE` | Ödeme servisine ulaşılamadı, tekrar denenebilir |
| 413 | — | Dosya boyut sınırı aşıldı |
| 501 | — | İşlem bu numarada desteklenmiyor (iki adımlı doğrulama PIN'i) |

Bakiye yetersiz örneği:

```json
{
  "status": false,
  "message": "Yetersiz bakiye: mesaj gönderilmedi. Lütfen bakiyenizi kontrol edin.",
  "error": { "code": "INSUFFICIENT_FUNDS", "message": "Yetersiz bakiye: mesaj gönderilmedi. Lütfen bakiyenizi kontrol edin." }
}
```
