3D ile ödeme
3D’li ödeme iki adımdan oluşur. Bunlar 3D ödeme başlatma ve 3D ödemesi yapmaktır. 3D Ödeme başlatma servisi ile bankaların 3D doğrulama sayfalarına erişim yapılacak url ve ya html içeriğe erişebileceksiniz. 3D ödemesi ile de 3D doğrulama sonucuna göre ödeme işlemini sonlandırırsınız.
3D ödeme başlatma
Ödeme işleminden farklı olarak return_url parametresi gönderilir. Servisten dönen post_url ya da html_content parametrelerini kullanarak bankaların 3D doğrulama sayfasını açabilirsiniz.
https://api.paynet.com.tr/v2/transaction/tds_initial
Parametre İsmi | Tip | Zorunlu | Açıklama | |
amount | string | Evet | Kredi kartından çekilecek tutar. Ondalık ayıraç olarak virgül (,) kullanılmaktadır. | |
reference_no | string | Evet | Ödeme işleminin ilişkili olduğu referans numarası. Tekil (unique) bir veri olmalı. (örn: sipariş numarası) | |
agent_reference_no | string | Hayır | Ana firma bayi referans kodu | |
return_url | string | Evet | 3D doğrulama sonucunun post edileceği URL | |
domain | string | Evet | İşlemin yapıldığı uygulamanın domain bilgisi. (örn: www.acme.com ) | |
card_holder | string | Hayır | Kart sahibi bilgisi. Saklı kart ile işlem yapılmıyorsa zorunlu. | |
pan | string | Hayır | Kart numarası. Saklı kart ile işlem yapılmıyorsa zorunlu. | |
month | int | Hayır | Son kullanma tarihi Ay bilgisi. ( örn: 8,12 ) Saklı kart ile işlem yapılmıyorsa zorunlu. | |
year | int | Hayır | Son kullanma tarihi Yıl bilgisi. ( örn: 2020, 2030 ) Saklı kart ile işlem yapılmıyorsa zorunlu. | |
cvc | string | Hayır | Kart güvenlik kodu. Saklı kart ile işlem yapılmıyorsa zorunlu. | |
card_hash | string | Hayır | Saklı kartın token bilgisi. Kart bilgileri girilmemiş ise bu bilgi zorunlu. | |
card_holder_phone | string | Hayır | Kart sahibinin telefon numarası | |
card_holder_mail | string | Hayır | Kart sahibi email adresi. | |
description | string | Hayır | İşlem ile ilgili açıklama alanı. | |
instalment | int | Hayır | İşlemin kaç taksit yapılacağı bilgisi. Değer gönderilmezse tek çekim uygulanır. | |
agent_id | string | Hayır | Eğer alt bayileriniz var ise işlemin hangi bayi üzerinden geldiğini bu alana bayi kodu göndererek yapabilirsiniz. | |
user_id | string | Hayır | Kullanıcı kodu | |
company_amount | string | Hayır | Eğer alt bayileriniz var ise işlemin ne kadarının sizin hesabınıza aktarılacağını belirleyebilirsiniz. Ondalık ayıraç olarak virgül (,) kullanılmaktadır. | |
add_commission | bool | Hayır | İşlem hizmet bedelinin karttan çekilecek tutar'a eklenmesini istiyorsanız "true" gönderebilirsiniz. | |
ratio_code | string | Hayır | Paynet.com.tr yönetim ekranlarında “API oran tanımları” sayfasından tanımlayabileceğiniz oran tablolarının “oran kodunu” bu alanda gönderebilirsiniz. Gönderdiğiniz oran koduna ait oran tablosu üzerinden komisyon hesaplaması yapılır. Bu sayede API üzerinden istediğiniz oranlar ile işlem yapabilirsiniz. | |
save_card | bool | Hayır | Ödeme işlemi ile birlikte kredi kart numarasının da saklanması istiyorsanız bu parametreyi true yollayabilirsiniz. Kart saklama işlemi yapıyorsanız card_desc zorunlu, card_owner_id ya da user_unique_id değerlerinden en az birini göndermeniz zorunlu. | |
card_desc | string | Hayır | Kart saklama işlemi yapılıyor ise bu alan zorunludur. | |
user_unique_id | string | Hayır | Üye iş yeri tarafından verilen kullanıcıya özgü benzersiz id. İlk defa kart saklama yapılıyorsa zorunlu. İlk kart saklama tamamlandıktan sonra Paynet tarafından bu kullanıcıya benzersiz bir değer atanır( card_owner_id). Bu değeri kendi sisteminizde kullanıcınız ile ilişkilendirerek saklamalısınız. Daha sonra bu kullanıcıya yapılan kart saklama işlemlerinde user_unique_id yerine Paynet tarafından verilen card_owner_id değişkenini kullanmalısınız. | |
card_owner_id | string | Hayır | İlk defa kart saklama yapıldıktan sonra, Paynet tarafından user_unique_id’ye göre oluşturulan kart sahibinin benzersiz bilgisi. Bir sonraki kart saklama ve karttan ödeme alma işlemlerinde bu değer kullanılır. | |
user_gsm_no | string | Hayır | Kart saklama işleminde ek olarak OTP kontrolü yapmak isterseniz bu parametre kullanılır. Daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. | |
subscription_id | string | Hayır | Düzenli ödeme kodu, mevcut bir düzenli ödemenize manuel ödeme almak istediğinizde invoice_no ile beraber kullanılır. | |
invoice_no | string | Hayır | Düzenli ödeme fatura numarası. | |
ratio_code_method | char | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. | |
merge_option | bool | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. | |
pos_type | int | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz | |
approved_card | bool | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. | |
dont_apply_campaign | bool | Hayır | İşlem esnasında herhangi bir artı taksitten yararlanmak istemiyorsanız bu parametreyi true olarak göndermelisiniz, default false'tur | |
agent_customer_name | string | Hayır | Buraya yazacağınız değer slipte "Müşteri Adı" alanında görünecektir. Müşterinize göstermek istediğiniz firma adınızı yazabilirsiniz | |
is_escrow | bool | Hayır | Yapılan işlemin ana firma onaylı gerçekleşmesini istiyorsanız "true" göndermeniz gerekmektedir. Parametre gönderilmezse false kabul edilir. | |
iban | string | Hayır | Başında ülke kodu olacak şekilde (örn "TR") toplamda 26 karakter olacak şekilde girilmelidir. | |
transaction_type | int | Hayır | Satış ya da ön provizyon. 1 satış, 3 ön provizyon. Varsayılan satış işlemidir. |
3D Ödemesi Yapmak
3D doğrulama sonucunda kredi kartından ilgili tutarın çekim yapıldığı servis. "3D ödeme başlatma" servisinde kullandığınız return_url'e post edilen session_id ve token_id değerlerini bu service post edip ödeme akışını tamamlayabilirsiniz.
https://api.paynet.com.tr/v2/transaction/tds_charge
Parametre İsmi | Tip | Zorunlu | Açıklama |
session_id | string | Evet | 3D ödeme akışının session bilgisi |
token_id | string | Evet | İşlemin token bilgisi |
transaction_type | int | Hayır | Satış ya da ön provizyon. 1 satış, 3 ön provizyon. Varsayılan satış işlemidir. |
tds_charge işlemi sırasında eğer connection timeout ya da execution time out gibi sebeplerden dolayı cevap alamıyorsanız, aynı session_id ve token_id ile cevap alana kadar işleme devam edebilirsiniz. Sistem aynı session_id ve token_id ile daha önceden başarılı bir işlem var ise o işlemi döndürür. Bu durumda sonuç kodu 0 yerine 100 döner, sonuç mesajı da “Önceki Başarılı İşlem” şeklinde döner.
Last updated