AHL Pay Vpos Entegrasyonu
  • 🎉AHL Pay Entegrasyonu
  • 🔐Üye İş Yeri Doğrulama
  • 🏪Satıcı İşlemleri
    • Satıcıları Listele
    • Üye İşyeri Banka Sorgulama
    • Üye İşyeri Sanal Pos Banka Sorgulama
    • Üye İşyerine Bağlı Komisyon Sorgulama
    • Transaction Listesi
  • 💰Ödeme Servisleri
    • Payment 3d
    • Payment3DWithEventRedirect
    • Payment3dBySecure
    • Payment3dPay
    • Void
    • Refund
    • PreAuth
    • PostAuth
    • CreateLinkPayment
    • StartIFrame
    • StartIFrameResQueryString
    • Ödeme Bilgileri Sorgula
  • 🔍Sorgulama
    • Oluşturulmuş Linkleri Sorgula
    • Kampanya Sorgulama
    • Komisyon Sorgulama
    • Taksit Bilgileri Sorgula
    • BIN Sorgulama
    • BIN Listesi Sorgulama
    • İşyeri Komisyon Oranı Listesi
  • 📖Sistem Verileri
    • TxnType
    • İşlem Durumları
    • Para Birimleri
    • Kart Ailesi
    • Kart Tipleri
    • Ödeme Modelleri
  • 📚Hazır E-ticaret Modülleri
    • Woocommerce
    • Opencart
    • PrestaShop
    • Magento
  • 🔗Entegre Platformlar
  • 💳Test Kartları
  • 🚩Hata Kodları ve Açıklamaları
  • ❓Sıkça Sorulan Sorular
  • ⛑️Yardım
Powered by GitBook
On this page
  • URL
  • İstek
  • Cevap

Was this helpful?

  1. Ödeme Servisleri

Payment 3d

Müşteriden kredi kartı bilgileri alındıktan sonra, kredi kartı, sipariş bilgileri ve sanal POS API hesap bilgileri kullanılarak form verisi oluşturulur. Bu form verisi, bankanın sağladığı URL'ye POST edilerek müşteri banka sayfasına yönlendirilir. OTP tamamlandıktan sonra sonuç POST yöntemiyle iletilir. Tanımlanan okUrl ve failUrl'lerine kullanıcı bağımsız veri iletilir, bunlar gelen orderId üzerinden işlem sonuçlanır. Kullanıcıya sonucu göstermek için Ödeme Bilgileri Sorgula servisinden sonuç sorgulama isteği gönderebilir veya gerçek zamanlı bir işlem takibi gerekiyorsa, WebSocket & SignalR kullanarak işlem tamamlandığında sunucu tarafından bir WebSocket mesajı gönderilir ve istemci tarafında (frontend) bu mesaj alınarak kullanıcıya anında bildirim yapılır.

İşlem sonucu okUrl & failUrl direkt yönlendirme gerçekleşmemektedir.

Amount alanları string formattadır. Girilen değerler arka tarafta decimal formatına çevrilmektedir.

  "totalAmount": "100" -> 1.00 TL 
  "totalAmount": "111" -> 1.11 TL
  "totalAmount": "1001"-> 10.01 TL

URL

POST /api/Payment/Payment3d

Servise gönderilen parametreler şu şekildedir:

Parametre
Tip
Uzunluk
Zorunluluk
Açıklama

cardNumber

string

64

Evet

Kart numarası

expiryDateMonth

string

64

Evet

Kartın son kullanım tarihinin ayı

expiryDateYear

string

64

Evet

Kartın son kullanım tarihinin yılı

cvv

string

64

Evet

Kart güvenlik kodu

cardHolderName

string

64

Evet

Kart sahibinin adı/soyadı

merchantId

int

64

Evet

Üye işyeri numarası

totalAmount

string

64

Evet

Ödeme yapılacak tutar

memberId

int

64

Evet

Üye Id

userCode

string

64

Evet

Kullanıcı bilgisi

txnType

string

64

Evet

txnType

installmentCount

string

64

Evet

Taksit sayısı

currency

string

64

Evet

Ödemenin tahsil edileceği para birimi

orderId

string

64

Evet

Üye işyeri tarafındaki, ödemeye ilişkin sipariş numarasıdır. Sorgulama servislerinde bu id ile sorgulama yapabilirsiniz.

rnd

string

64

Evet

Hash hesaplamasında kullanılan random numaradır.

hash

string

2048

Evet

İşlemin güvenliği için oluşturulan hash bilgisidir.

webUrl

string

255

Evet

webUrl

description

string

255

Evet

Açıklama

requestIp

string

64

Evet

İstek Ip Adresi

okUrl

string

255

Evet

İşlem başarılı olursa yönlendirilecek url

failUrl

string

255

Evet

İşlem başarısız olursa yönlendirilecek url

Servisten dönen parametreler şu şekildedir:

Parametre
Tip
Uzunluk
Açıklama

isSuccess

boolean

-

İşlem başarılı (true) ; işlem başarısız (false) bilgisi döner

message

string

255

isSuccess: true olması durumunda "İşlem başarılıdır." ; false olması durumunda alınan hata mesajı gelmektedir.

errorCode

string

5

isSuccess: true olması durumunda null ; false olması durumunda alınan hata codu gelmektedir.

requestId

string

64

Sistem tarafından isteğe ait unique ID bilgisidir.

data

array

-

Dizi olarak aşağıdaki parametreler dönmektedir

Örnek JSON formatında istek ve cevap aşağıdaki gibidir:

İstek

  
{
  "cardNumber": "5188961939192544",
  "expiryDateMonth": "06",
  "expiryDateYear": "2025",
  "cvv": "929",
  "cardHolderName": "Görkem Bilekli",
  "merchantId": 97163,
  "totalAmount": "100",//1TL işlemdir.
  "memberId": 1,
  "userCode": "ahlatci@ahlpay.com.tr",
  "txnType": "Auth",
  "installmentCount": "0",
  "currency": "949",
  "orderId": "68dbb8cd-d1af-4b7b-bb73-78041db3af22",
  "rnd": "2023031321541332",
  "hash": "2023031321541332",
  "webUrl": "google.com",
  "description": "deneme",
  "requestIp": "string",
  "okUrl": "http://testahlsanalpos.ahlpay.com.tr/api/Event/AssecoThreeDSuccess",
  "failUrl": "http://testahlsanalpos.ahlpay.com.tr/api/Event/AssecoThreeDFail"
}
  

Cevap

Bankadan dönen html otp formu isteği başarılı olması durumunda okUrl'e; başarısız olması durumunda failUrl'e aşağıdaki istek gönderilmektedir.

{
    "orderId": "cd2120ba-9f3f-40b7-8113-d0b88aadea1e",
    "responseCode": "00",
    "rnd": "2023031321541332",
    "hostReferenceNumber": "hostid",
    "authCode": "12345",
    "cardNumber": "*****",
    "installmentCount": "0",
    "totalAmount": "100",
    "amount": "100",
    "responseHash": null,
    "responseMessage": "İşlem başarılıdır.",
    "vposId": "999",
    "extraData": null,
    "transId": null,
    "merchantId": "28831"
}
PreviousÖdeme ServisleriNextPayment3DWithEventRedirect

Last updated 7 months ago

Was this helpful?

💰