1. Non-Secure Ödeme
Sipay API Documentation
TR
  • EN
  • TR
  • Genel Bakış
    • Başlangıç
    • Test Kartları
  • Kimlik Doğrulama
    • Token Oluşturma
      POST
  • Non-Secure Ödeme
    • Non-Secure Ödeme Akışı
    • Non-Secure Kart Ödemesi
      POST
    • Non-Secure Tekrarlayan Ödeme
      POST
    • Non-Secure Sigorta Ödemesi
      POST
    • Non-Secure Ön Provizyon Ödemesi
      POST
    • Ödeme Onaylama
      POST
  • 3D Secure Ödemesi
    • 3D Secure Ödeme Akışı
    • 3D Secure Kredi Kart Ödemesi
      POST
    • 3D Secure Tekrarlayan Ödeme
      POST
    • 3D Secure Ön Provizyon Ödemesi
      POST
    • Ödeme Tamamlama
      POST
    • Ödeme Onaylama
      POST
    • 3D Secure Tarım Ödemesi
      POST
  • Sipay ile Non-Secure ve 3D Ödeme
    • Purchase Link Örneği
    • Sipay ile Non-Secure ve 3D Secure Ödeme
      POST
  • Ödeme Durumu Sorgulama
    • Durum Sorgulama
      POST
  • Taksitler & Komisyonlar
    • Taksit Bilgisi Sorgulama
      POST
    • Komisyon Bilgisi Sorgulama
      POST
    • Üye İşyeri Taksit Bilgisi Sorgulama
      POST
  • HASH
    • Hash Oluşturma
    • Hash Doğrulama
  • Kayıtlı Kart ile Ödeme
    • 3D Secure Kart Token ile Ödeme
    • Kart Kaydetme
    • Kayıtlı Kart Bilgilerini Sorgulama
    • Kayıtlı Kart Düzenleme
    • Kayıtlı Kart Silme
    • Non-Secure Kart Token ile Ödeme
  • Tekrarlayan Ödeme
    • Tekrarlayan Ödeme Sorgulama
    • Tekrarlayan Ödeme Plan Süreci
    • Tekrarlayan Ödeme Planı Güncelleme
  • İade
    • İade
  • Para Dağıtımı
    • Banka Hesabına Para Aktarımı
  • Webhook
    • Webhook
  • Hata Statü Kodları
    • Statü Kodları
  1. Non-Secure Ödeme

Non-Secure Ön Provizyon Ödemesi

Testing
POST
/ccpayment/api/paySmart2D
Ön provizyon, kartın kullanılabilir limitinin bir ödeme işlemi için geçici olarak rezerve edilmesi sürecidir.
Tutar karttan hemen tahsil edilmez, ancak kart sahibinin kullanılabilir bakiyesinde bloke edilir.

1. Ön Provizyonun Başlatılması#

Non-Secure ödemelerde gerekli tüm parametreler gönderilmelidir.
Ön provizyon işlemini başlatmak için transaction_type parametresi PreAuth olarak ayarlanmalıdır.
Müşteri, ödeme ile birlikte ön provizyon talebini gönderir:
Bloke edilecek tutar belirtilir.
Kart bilgileri gönderilir.

Ön Provizyon Ödemesini Onaylama#

Ödeme durumu Pre-Authorization olacaktır.
Ardından Ödeme Onaylama Endpoint’i çağrılmalıdır.
Ödeme Onaylama işlemi yaklaşık 20 gün içinde tamamlanmalı veya iptal edilmelidir. Bu süre içinde tamamlanmayan ya da iptal edilmeyen ödeme otomatik olarak iptal edilir.
Ödeme Onaylama endpoint’i çağrıldığında ödeme durumu aşağıdakilerden biri olarak güncellenir:
Pre-Auth Approved: Ödeme başarıyla onaylandıysa.
Pre-Auth Declined: Ödeme onayı başarısız olduysa.

İstekte hash anahtarı gönderilmelidir.
Seçilen programlama diline ait örnek hash anahtarları, yan taraftaki istek örnekleri panelinde bulunabilir.

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/jsonRequired

Examples

Responses

🟢200Başarılı
application/json
Bodyapplication/json

⚪1Başarısız
Request Request Example
Shell
JavaScript
Java
Swift
HASH
generate_hash_key() {
  local total="$1"
  local installment="$2"
  local currency_code="$3"
  local merchant_key="$4"
  local invoice_id="$5"
  local app_secret="$6"

  local data="${total}|${installment}|${currency_code}|${merchant_key}|${invoice_id}"

  local rand1
  rand1=$(openssl rand -hex 16)
  local iv
  iv=$(printf "%s" "$rand1" | openssl sha1 | awk '{print $2}' | cut -c1-16)

  local password
  password=$(printf "%s" "$app_secret" | openssl sha1 | awk '{print $2}')

  local rand2
  rand2=$(openssl rand -hex 16)
  local salt
  salt=$(printf "%s" "$rand2" | openssl sha1 | awk '{print $2}' | cut -c1-4)

  local salt_with_password
  salt_with_password=$(printf "%s" "${password}${salt}" | openssl sha256 | awk '{print $2}' | cut -c1-32)

  local key_hex
  key_hex=$(printf "%s" "$salt_with_password" | xxd -p -c 256)

  local iv_hex
  iv_hex=$(printf "%s" "$iv" | xxd -p -c 256)

  local encrypted_base64
  encrypted_base64=$(printf "%s" "$data" | openssl enc -aes-256-cbc -K "$key_hex" -iv "$iv_hex" -base64)

  local msg_encrypted_bundle="${iv}:${salt}:${encrypted_base64}"
  msg_encrypted_bundle="${msg_encrypted_bundle//\//__}"

  echo "$msg_encrypted_bundle"
}

#Parameters

total=""
installment=""
currency_code=""
merchant_key=""
invoice_id=""
app_secret=""

result=$(generate_hash_key "$total" "$installment" "$currency_code" "$merchant_key" "$invoice_id" "$app_secret")
echo "$result"
Response Response Example
200 - Success
{
    "status_code": 100,
    "status_description": "Payment process successful",
    "data": {
        "sipay_status": 1,
        "order_no": "VP17743537462607531",
        "order_id": "VP17743537462607531",
        "invoice_id": "preauth-deneme12345",
        "sipay_payment_method": 1,
        "credit_card_no": "450803****4509",
        "transaction_type": "Pre-Authorization",
        "payment_status": 1,
        "payment_method": 1,
        "error_code": 100,
        "error": "",
        "auth_code": "P38522",
        "merchant_commission": 0.1,
        "user_commission": 0,
        "merchant_commission_percentage": 2,
        "merchant_commission_fixed": 0,
        "installment": 1,
        "amount": 5,
        "payment_reason_code": "",
        "payment_reason_code_detail": "",
        "hash_key": "731092f9125b0a94:4678:3daVYe4QTo5HfV5n48E7Cb42u2LPIY0lpz+KP+ABA5aR0NxMKsBN11yuOx9IJtdR",
        "original_bank_error_code": "",
        "original_bank_error_description": "",
        "host_reference_id": "608300512593",
        "authorization_expires_at": "2026-05-15T10:00:00Z",
        "authorization_duration_days": 30
    }
}
Modified at 2026-07-10 12:07:33
Previous
Non-Secure Sigorta Ödemesi
Next
Ödeme Onaylama
Built with