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. Servisden dönen post_url ya da html_content parametrelerini kullanarak bankaların 3D doğrulama sayfasını açabilirsiniz.
No | Parametre İsmi | Tip | Zorunlu | Açıklama |
1 | amount | decimal | Evet | Kredi kartından çekilecek tutar. |
2 | reference_no | string(50) | Evet | Ödeme işleminin ilişkili olduğu referans numarası. Tekil (unique) bir veri olmalı. ( örn: sipariş numarası ) |
3 | return_url | string(256) | Evet | 3D doğrulama sonucunun post edileceği URL |
4 | domain | string(256) | Evet | İşlemin yapıldığı uygulamanın domain bilgisi. ( örn: www.acme.com ) |
5 | card_holder | string(50) | Hayır | Kart sahibi bilgisi. Saklı kart ile işlem yapılmıyorsa zorunlu. |
6 | pan | string | Hayır | Kart numarası. Saklı kart ile işlem yapılmıyorsa zorunlu. |
7 | month | int | Hayır | Son kullanma tarihi Ay bilgisi. ( örn: 8,12 ) Saklı kart ile işlem yapılmıyorsa zorunlu. |
8 | year | int | Hayır | Son kullanma tarihi Yıl bilgisi. ( örn: 2020, 2030 ) Saklı kart ile işlem yapılmıyorsa zorunlu. |
9 | cvc | string | Hayır | Kart güvenlik kodu. Saklı kart ile işlem yapılmıyorsa zorunlu. |
10 | card_hash | string | Hayır | Saklı kartın token bilgisi. Kart bilgileri girilmemiş ise bu bilgi zorunlu. |
11 | card_holder_phone | string(10) | Hayır | Kart sahibinin telefon numarası |
12 | card_holder_mail | string(60) | Hayır | Kart sahibi email adresi. |
13 | description | string(140) | Hayır | İşlem ile ilgili açıklama alanı. |
14 | instalment | int | Hayır | İşlemin kaç taksit yapılacağı bilgisi. Değer gönderilmezse tek çekim uygulanır. |
15 | agent_id | string(10) | Hayır | Eğer alt bayileriniz var ise işlemin hangi bayi üzerinden geldiğini bu alana bayi kodu göndererek yapabilirsiniz. |
16 | company_amount | decimal | Hayır | Eğer alt bayileriniz var ise işlemin ne kadarının sizin hesabınıza aktarılacağını belirleyebilirsiniz. |
17 | add_commission | bool | Hayır | İşlem komisyonunun karttan çekilecek tutar'a eklenmesini istiyorsanız "true" gönderebilirsiniz. |
18 | transaction_type | char(1) | Hayır | Satış ya da ön provizyon. 1 satış, 3 ön provizyon. Varsayılan satış işlemidir. |
19 | ratio_code | string(8) | 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. |
20 | 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. |
21 | card_desc | string(100) | Hayır | Kart saklama işlemi yapılıyor ise bu alan zorunludur. |
22 | 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. |
23 | 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. |
24 | 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. |
25 | 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. |
26 | invoice_no | string | Hayır | Düzenli ödeme fatura numarası. |
27 | ratio_code_method | char(1) | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. |
28 | merge_option | bool | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. |
29 | pos_type | int | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz |
30 | approved_card | bool | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. |
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.
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 | char(1) | Hayır | Satış ya da ön provizyon. 1 satış, 3 ön provizyon. Varsayılan satış işlemidir. |
company_amount | decimal | Hayır | Eğer alt bayileriniz var ise işlemin ne kadarının sizin hesabınıza aktarılacağını belirleyebilirsiniz. |
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