Docs v2.0

Native Deposit


Native API üzerinden yatırım işlemi oluşturur.


Bu endpoint, belirtilen banka veya banka hesabı üzerinden yatırım talebi oluşturur. Sistem, limit ve uygunluk kontrollerini otomatik olarak gerçekleştirir.


Base URL


https://new.galaxypay.dev

Endpoint


POST /payment/native/deposit

Full URL


https://new.galaxypay.dev/payment/native/deposit

Headers


HeaderZorunluAçıklama
Content-TypeEvetapplication/json
AcceptEvetapplication/json

Request Parameters


ParametreZorunluTipAçıklama
api_idEvetintegerSiteye ait API ID
api_keyEvetstringSiteye ait API Key
user_idEvetinteger/stringSite tarafındaki kullanıcı ID
usernameEvetstringKullanıcı adı
first_nameHayırstringKullanıcı adı
last_nameHayırstringKullanıcı soyadı
emailHayırstringKullanıcı e-posta adresi
phone_numberHayırstringTelefon numarası
external_transaction_idHayırstringSite tarafındaki benzersiz işlem ID
amountEvetnumericYatırım tutarı
bank_idEvetintegerBanka ID
bank_account_idHayırintegerBelirli banka hesabı ID
langHayırstring`tr` veya `en`
currencyHayırstring`TRY`, `USD`, `EUR`

Example Request


{
  "api_id": 621,
  "api_key": "SITE_API_KEY",
  "user_id": 1001,
  "username": "testuser",
  "first_name": "Test",
  "last_name": "User",
  "email": "[email protected]",
  "phone_number": "905551112233",
  "external_transaction_id": "TX-123456",
  "amount": 6000,
  "bank_id": 9,
  "bank_account_id": 532,
  "lang": "tr",
  "currency": "TRY"
}

cURL Example


curl --location 'https://new.galaxypay.dev/payment/native/deposit' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
  "api_id": 621,
  "api_key": "SITE_API_KEY",
  "user_id": 1001,
  "username": "testuser",
  "first_name": "Test",
  "last_name": "User",
  "email": "[email protected]",
  "phone_number": "905551112233",
  "external_transaction_id": "TX-123456",
  "amount": 6000,
  "bank_id": 9,
  "bank_account_id": 532,
  "lang": "tr",
  "currency": "TRY"
}'

Success Response


{
  "code": 200,
  "type": "success",
  "message": "Talebiniz Alınmıştır.",
  "transaction_id": 12345,
  "hash": "transaction_hash",
  "amount": 6000,
  "bank_id": 9,
  "status": "pending",
  "bank_account": {
    "id": 532,
    "bank_id": 9,
    "account_owner": "AHMET AKÇARA",
    "iban": "TR720001009010623120505015",
    "account_number": "998998989",
    "branch_code": "778768",
    "deposit_range": {
      "id": 81,
      "min": 5001,
      "max": 10000
    },
    "limits": {
      "process_limit": 10,
      "process_used": 2,
      "process_remaining": 8,
      "daily_limit": 100000,
      "daily_used": 25000,
      "daily_remaining": 75000,
      "total_limit": 500000,
      "total_used": 120000,
      "total_remaining": 380000,
      "pending_amount": 10000
    }
  }
}

Response Fields


Main Response


AlanTipAçıklama
codeintegerİşlem durum kodu
typestring`success` veya `error`
messagestringİşlem mesajı
transaction_idintegerSistem transaction ID
hashstringİşlem hash değeri
amountnumericİşlem tutarı
bank_idintegerBanka ID
statusstringİşlem durumu
bank_accountobjectKullanılan banka hesabı

Bank Account Object


AlanTipAçıklama
idintegerBanka hesap ID
bank_idintegerBanka ID
account_ownerstringHesap sahibi
ibanstring/nullIBAN bilgisi
account_numberstring/nullHesap numarası
branch_codestring/nullŞube kodu
deposit_rangeobject/nullYatırım aralığı
limitsobjectHesap limit bilgileri

Deposit Range Object


AlanTipAçıklama
idintegerYatırım aralığı ID
minnumericMinimum yatırım tutarı
maxnumericMaksimum yatırım tutarı

Limits Object


AlanTipAçıklama
process_limitnumeric/nullİşlem limiti
process_usednumericKullanılan işlem sayısı
process_remainingnumeric/nullKalan işlem limiti
daily_limitnumeric/nullGünlük limit
daily_usednumericGünlük kullanılan tutar
daily_remainingnumeric/nullGünlük kalan limit
total_limitnumeric/nullToplam limit
total_usednumericKullanılan toplam tutar
total_remainingnumeric/nullKalan toplam limit
pending_amountnumericBekleyen işlem tutarı

Error Response - Validation Error


{
  "code": 1001,
  "type": "error",
  "message": "Geçersiz istek.",
  "errors": {
    "amount": [
      "Amount alanı zorunludur."
    ],
    "bank_id": [
      "Bank ID alanı zorunludur."
    ]
  }
}

Error Response - Invalid API Credentials


{
  "code": 1002,
  "type": "error",
  "message": "API bilgileri hatalı."
}

Error Response - Site Not Found


{
  "code": 1003,
  "type": "error",
  "message": "Site bulunamadı."
}

Error Response - Pending Transaction Exists


{
  "code": 1007,
  "type": "error",
  "message": "Kullanıcının bekleyen işlemi bulunmaktadır.",
  "transaction_id": 12345,
  "hash": "transaction_hash"
}

Error Response - Duplicate External Transaction


{
  "code": 1009,
  "type": "error",
  "message": "Bu işlem daha önce oluşturulmuş."
}

Error Response - Invalid Bank


{
  "code": 1010,
  "type": "error",
  "message": "Geçersiz banka seçimi."
}

Error Response - Invalid Bank Account


{
  "code": 1011,
  "type": "error",
  "message": "Geçersiz banka hesabı."
}

Error Response - Account Not Available


{
  "code": 1012,
  "type": "error",
  "message": "Seçilen banka hesabı şu anda uygun değil."
}

Error Response - No Available Account


{
  "code": 1013,
  "type": "error",
  "message": "Bu API için kullanılabilir banka hesabı bulunamadı."
}

Error Response - Amount Range Error


{
  "code": 1014,
  "type": "error",
  "message": "Yatırım tutarı hesap limitleri dışında."
}

Error Response - Routing Failed


{
  "code": 1015,
  "type": "error",
  "message": "Uygun hesap bulunamadı.",
  "debug": []
}

Notes


  • `bank_account_id` gönderilmezse sistem otomatik uygun hesap seçer.
  • `external_transaction_id` benzersiz olmalıdır.
  • Aynı kullanıcı için bekleyen işlem varsa yeni işlem oluşturulamaz.
  • İşlem oluşturulduktan sonra status başlangıçta `pending` olur.
  • Sistem otomatik olarak:
  • Günlük limit
  • Toplam limit
  • İşlem limiti
  • Bekleyen işlem tutarı
  • Yatırım aralığı

kontrollerini gerçekleştirir.

  • Kullanılabilir hesap bulunamazsa hata döner.
  • `hash` değeri işlem sorgulama işlemlerinde kullanılabilir.
  • `bank_account` nesnesi, işlemin yönlendirildiği gerçek hesabı içerir.