Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.payven.com.tr/llms.txt

Use this file to discover all available pages before exploring further.

Payven API’sinin tüm yanıtları ortak bir zarf içinde döner. Bu yapı; başarı durumu, mesaj, kod ve veri alanlarından oluşur.

Standart yanıt yapısı

{
  "isSuccess": true,
  "message": "Başarılı.",
  "code": "200",
  "data": { ... }
}
AlanTipAçıklama
isSuccessbooleanİşlemin başarılı olup olmadığı. Bu alan, HTTP durum kodundan bağımsız olarak nihai başarı sonucunu belirtir.
messagestringTürkçe açıklama mesajı. Müşteriye gösterilebilir.
codestringPayven hata/başarı kodu. HTTP koduyla aynı olabilir veya domain-spesifik bir kod (örn. PAYMENT_INSUFFICIENT_FUNDS).
dataobject veya nullEndpoint’e özgü yanıt payload’u. Hata durumlarında null gelir.

Sayfalı liste yanıtı

Liste döndüren endpoint’ler data alanında sayfalama bilgisi de taşır:
{
  "isSuccess": true,
  "message": "Başarılı.",
  "code": "200",
  "data": {
    "items": [
      { "id": "...", "amount": 15000 },
      { "id": "...", "amount": 25000 }
    ],
    "pageNumber": 1,
    "pageSize": 25,
    "totalCount": 248,
    "totalPages": 10,
    "hasPreviousPage": false,
    "hasNextPage": true
  }
}
AlanAçıklama
itemsGeçerli sayfadaki kayıtlar.
pageNumberGeçerli sayfa numarası (1-tabanlı).
pageSizeSayfa başına kayıt sayısı.
totalCountToplam kayıt sayısı.
totalPagesToplam sayfa sayısı.
hasPreviousPage / hasNextPageÖnceki/sonraki sayfa olup olmadığı.

Hata yanıtı

Hata durumunda isSuccess: false döner ve data boş olur. Validasyon hataları için ek errors alanı bulunabilir:
{
  "isSuccess": false,
  "message": "Tutar 100 kuruşun altında olamaz.",
  "code": "VALIDATION_AMOUNT_TOO_LOW",
  "data": null,
  "errors": [
    {
      "field": "amount",
      "message": "Tutar 100 kuruşun altında olamaz."
    }
  ]
}
Hata kodlarının tam listesi: Hata Yönetimi.

HTTP durum kodları

Payven, REST standartlarına uygun HTTP kodları kullanır:
KodAnlam
200Başarılı (senkron işlem tamamlandı)
201Yeni kayıt oluşturuldu
202İstek alındı, asenkron işleniyor (örn. 3D Secure init)
400İstek formatı hatalı veya validasyon hatası
401Kimlik doğrulama hatası
403Yetki yok
404Kayıt bulunamadı
409Çakışma (örn. idempotency-key zaten kullanılmış)
422İş kuralı ihlali (örn. iade tutarı orijinali aşıyor)
429Rate limit aşıldı
5xxSunucu hatası — yeniden deneyebilirsiniz
Önemli: Bir HTTP 200 her zaman ödeme başarılı demek değildir. Banka tarafında reddedilen bir ödeme de HTTP 200 ile dönebilir; bu durumda yanıttaki data.status alanına bakın. Asıl başarı kararını data.status ve isSuccess belirler.

Tarih ve zaman

Tüm tarih alanları ISO-8601 formatında ve UTC zaman diliminde döner:
2026-05-03T12:34:56.789Z
İstek gönderirken de UTC kullanmanız önerilir. Yerel zaman göndermek istiyorsanız offset belirtin: 2026-05-03T15:34:56+03:00.

Tutarlar

Tüm tutarlar kuruş cinsinden, tam sayı (integer) olarak gönderilir ve dönülür.
Görünen tutarAPI değeri
1,00 ₺100
150,00 ₺15000
1.999,99 ₺199999
Detay: Tutarlar ve Para Birimleri.