Ana içeriğe geç

Payments

Ödeme işlemlerini gerçekleştirmek, sorgulamak ve yönetmek için kullanılan endpoint'ler.

Ödeme Yap

POST /api/v1/payment/pay

Kredi Kartı Ödemesi

{
"session_id": "ses_xxx",
"payment_type": "creditcard",
"card_holder_name": "AHMET YILMAZ",
"card_number": "5388880000000055",
"expire_month": "12",
"expire_year": "2030",
"cvc": "000",
"is_3d": true,
"installment_count": "1",
"save_card": false
}

Parametreler

ParametreTipZorunluAçıklama
session_idstringEvetCheckout session ID
payment_typestringEvetÖdeme yöntemi (creditcard, bank_transfer, wallet, shopping_credit)
card_holder_namestringEvet*Kart üzerindeki isim
card_numberstringEvet*Kart numarası
expire_monthstringEvet*Son kullanma ayı (2 hane)
expire_yearstringEvet*Son kullanma yılı (4 hane)
cvcstringEvet*CVC/CVV kodu
is_3dbooleanHayır3D Secure kullanılsın mı (önerilir: true)
installment_countstringHayırTaksit sayısı ("1" = tek çekim)
save_cardbooleanHayırKartı tokenize et
card_tokenstringHayırSaklanan kart token'ı (kart bilgileri yerine)

*Kart alanları card_token gönderilmediğinde zorunludur.

Başarılı Yanıt

{
"status": 0,
"message": "Odeme basarili",
"order_id": "ORD-xxx",
"amount": 15000,
"card_token": "tok_a1b2c3d4e5f6",
"card_last_four": "0055"
}

3D Secure Yönlendirme Yanıtı

{
"status": 1,
"message": "3D Secure dogrulama gerekli",
"redirect_url": "https://bankasi.com/3ds/verify?token=xxx",
"html_content": "<form>...</form>"
}

redirect_url veya html_content dönerse, müşteriyi 3D Secure doğrulama sayfasına yönlendirin.


Ödeme Durumu Sorgula

GET /api/v1/payment/status/{order_id}?session_id=ses_xxx

Yanıt

{
"success": true,
"order_id": "ORD-xxx",
"status": "completed",
"amount": 15000,
"currency": "TRY",
"payment_type": "creditcard",
"message": "Odeme basarili"
}
AlanAçıklama
statuscompleted, failed, authorized, refunded, pending

Taksit Sorgula

POST /api/v1/payment/installment
{
"session_id": "ses_xxx",
"bin_number": "538888",
"amount": 15000
}

Yanıt

{
"success": true,
"bank_name": "Garanti BBVA",
"card_brand": "mastercard",
"card_type": "credit",
"installments": [
{ "count": 1, "total_amount": 15000, "installment_amount": 15000, "commission_rate": 0 },
{ "count": 3, "total_amount": 15450, "installment_amount": 5150, "commission_rate": 3.0 },
{ "count": 6, "total_amount": 15900, "installment_amount": 2650, "commission_rate": 6.0 }
]
}

BIN Sorgula

POST /api/v1/payment/bin
{
"session_id": "ses_xxx",
"bin_number": "538888"
}
{
"success": true,
"bank_name": "Garanti BBVA",
"card_brand": "mastercard",
"card_type": "credit",
"card_category": "individual"
}

Havale / EFT

POST /api/v1/payment/pay
{
"session_id": "ses_xxx",
"payment_type": "bank_transfer"
}

Yanıtta banka hesap bilgileri döner. Müşteri havale yaptıktan sonra ödeme otomatik olarak doğrulanır.


Hata Kodları

KodAçıklama
0Başarılı
13D Secure yönlendirmesi gerekli
-1Genel hata
-2Yetersiz bakiye
-3Kart engelli
-4Session süresi dolmuş
-5Geçersiz kart numarası