3D ödeme modelini kullanarak başarılı bir tahsilat gerçekleştirmek için aşağıda maddeler halinde açıklanan işlemleri takip ederek entegrasyonunuzu tamamlamanız gerekmektedir.
1. Adım:
Üye işyeri kullanıcı, kart, sepet, ödeme tutar ve taksit bilgilerini, ödemenin sonucunun bildirilmesini istediği kendi web adresi(BACK_URL) bilgisi ile birlikte EsnekPos 3D ödeme servisine yukarıda belirtilmiş olan istek modelini kullanarak ödeme isteğini gönderir ve ödeme işlemini başlatmış olur.
Güvenli ve sorunsuz bir şekilde işlemlerin gerçekleşebilmesi ve fraud işlemlerin önlenebilmesi için tüm parametrelerin eksiksiz bir şekilde gönderilmesi gerekmektedir.
Servise gönderilmesi gereken parametreler şu şekildedir;
3D Ödeme Servisi İstek Mesajı Parametreleri
Product
Servise gönderilecek örnek bir JSON dosyası şu şekildedir;
{"Config": {"MERCHANT":"TEST1234","MERCHANT_KEY":"4oK26hK8MOXrIV1bzTRVPA==","BACK_URL":"İşlem sonucunun üye iş yerine döndürüleceği url adresi","PRICES_CURRENCY":"TRY","ORDER_REF_NUMBER":"RFN0001","ORDER_AMOUNT":"150" },"CreditCard": {"CC_NUMBER":"4159562885391991","EXP_MONTH":"12","EXP_YEAR":"2023","CC_CVV":"000","CC_OWNER":"TEST USER","INSTALLMENT_NUMBER":"1" },"Customer": {"FIRST_NAME":"Firstname","LAST_NAME":"Lastname","MAIL":"[email protected]","PHONE":"05435434343","CITY":"İstanbul","STATE":"Kağıthane","ADDRESS":"Merkez Mahallesi, Ayazma Cd. No:37/91 Papirus Plaza Kat:5, 34406 Kağıthane / İSTANBUL","CLIENT_IP":"123.44.66.38" },"Product": [ {"PRODUCT_ID":"1","PRODUCT_NAME":"Ürün Adı 1","PRODUCT_CATEGORY":"Elektronik","PRODUCT_DESCRIPTION":"Ürün Açıklaması","PRODUCT_AMOUNT":"80" }, {"PRODUCT_ID":"2","PRODUCT_NAME":"Ürün Adı 1","PRODUCT_CATEGORY":"Ev Tekstili","PRODUCT_DESCRIPTION":"Ürün Açıklaması","PRODUCT_AMOUNT":"70" } ]}
2. Adım:
EsnekPos bilgileri değerlendirerek üye iş yerine cevap mesajını gönderir.(Cevap mesajı içerisinde URL_3DS alanı bulunur.)
Servisten işlem sonrasında gönderilen cevap mesajına ait parametreler şu şekildedir;
3D Ödeme işlem cevap mesajında STATUS parametresinin değeri SUCCESS ve RETURN_CODE parametresinin değeri 0 olarak dönmesi 3D Ödeme işleminin kabul edildiğini ifade etmektedir. Bundan sonraki aşamada ödeme alınacak kullanıcıdan 3D doğrulama işlemi yapılacaktır.
3. Adım:
Üye işyeri aldığı cevabı değerlendirerek ödeme kabul edildi ise EsnekPos'un vermiş olduğu URL_3DS adresine müşteriyi yönlendirir.
4. Adım:
EsnekPos 3D doğrulama işlemlerini sonuçlandırır, ödemenin sonucunu üye işyerinin 1. adımda bildirmiş olduğu BACK_URL adresine FORM POST metodu ile bildirir.
Üye işyerine gönderilen FORM POST mesajında STATUS parametresinin değeri SUCCESS ve RETURN_CODE parametresinin değeri 0 olarak dönmesi 3D Ödeme işleminin sorunsuz bir şekilde gerçekleştiğini ifade etmektedir.
Ödeme durumundan emin olmak için PROCCESS_QUERY methodu ile sorgulama yapmanız ve PROCCESS_QUERY methodunun cevabını dikkate almanız gerekmektedir.
Bu sorguyu client-side tarafında değil server to server olacak şekilde kurgulamanız gerekmektedir müşteri tarayıcısında yaptığınız bu PROCCESS_QUERY methodunun görünmemesi ve takip edilememesi gerekmektedir.
Üye iş yerine özel oluşturulan eşsiz kimlik bilgisidir.
MERCHANT_KEY
string
Evet
Üye iş yerine özel oluşturulan anahtar bilgisidir.
BACK_URL
string
Evet
İşlem sonuç cevabının sistem tarafından döndürüleceği adres bilgisidir. İşlem cevabı üye iş yeri tarafından bu adresten okunacaktır. İşlem sonucu form post olarak gönderilir.
PRICES_CURRENCY
string
Evet
Ödeme işleminin gerçekleştirileceği para birimi bilgisidir. Şu an için sadece “TRY, USD, EUR, GBP” gönderilebilir.
ORDER_REF_NUMBER
string
Evet
Üye iş yeri tarafından verilecek referans numarası bilgisidir. Ödeme işlemleri bu referans numarası ile takip edilebilir. Maksimum 24 karakter kullanılabilir.
ORDER_AMOUNT
string
Evet
Ödeme işlemine ait işlem tutarı bilgisidir.
CC_NUMBER
string
Evet
Ödeme işleminin gerçekleştirileceği karta ait 16 haneli kart numarası bilgisidir.
EXP_MONTH
string
Evet
Ödeme işleminin gerçekleştirileceği karta ait 2 haneli son kullanım tarihini ay bilgisidir.
EXP_YEAR
string
Evet
Ödeme işleminin gerçekleştirileceği karta ait 4 haneli son kullanım tarihini yıl bilgisidir.
CC_CVV
string
Evet
Ödeme işleminin gerçekleştirileceği kartın arka yüzünde bulunan 3 haneli güvenlik kodu bilgisidir.
CC_OWNER
string
Evet
Ödeme işleminin gerçekleştirileceği kart sahibinin ad ve soyadı bilgisidir.
INSTALLMENT_NUMBER
string
Evet
Ödeme işlemi için istenen taksit sayısı bilgisidir. Tek çekim işlemler için “1” bilgisi gönderilmelidir.
FIRST_NAME
string
Evet
İşlemi gerçekleştiren kullanıcının(müşterinin) adı bilgisidir.