Özelleştirilebilir Form
Paynet ile ödeme almanın diğer bir kolay yolu Paynet-custom.js’i ödeme formunuza gömmektir. Paynet-custom.js ödeme ekranını kendi tasarımınıza uygun şekilde dizayn etmenize olanak verir. Sizin için kart bilgilerinin güvenliğini sağlar, tüm doğrulamaları yapar. Hassas kart bilgileri hiçbir şekilde güvensiz ortamlarda dolaşmaz.
Paynet-custom.js ile ödeme almak üç aşamadan oluşur;
Özelleştirilebilir Form methodu ile script'i sayfanıza eklemek için Publishable key, ödeme işlemini sunucu tarafında onaylamak için de secret key'e ihtiyacınız vardır. Bakınız
Sistem | URL |
Canlı Sistem | |
Test Sistemi |
1.Adım: Paynet-custom.js’i formunuza ekleme
Paynet-custom.js’i aşağıdaki şekilde sayfanıza ekleyebilirsiniz. Eklenen bu script ile sayfanızı isteğiniz doğrultuda dizayn edebilirsiniz.
Paynet-custom.js Parametreleri
Data attribute | Zorunlu | Açıklama |
data-form | Evet | Kart bilgilerinin alıncağı formun id'si. css selector "#formid" şeklinde verilmeli |
data-key | Evet | Publishable key'iniz. |
data-amount | Evet | Kredi kartından çekilecek tutar. Ödeme tutarı ne ise onu göndermelisiniz. Örneğin: “100,55 TL” => “100,55” gibi gönderilmelidir. |
data-name | Hayır | Ödeme sırasında görünecek başlık. |
data-description | Hayır | Ödeme sırasında görünecek işlem açıklaması. Paynet API İşlem listesinde ve Paynet işlem listesinde burada gönderdiğiniz açıklama gösterilir. |
data-agent | Hayır | Eğer alt bayileriniz var ise işlemin hangi bayi üzerinden geldiğini bu alana bayi kodu göndererek yapabilirsiniz. |
data-add_commission_amount | Hayır | Komisyon tutarının ödeme tutarına eklenip eklenmeyeceği belirlenir. True olduğunda komisyon tutarı kredi kartından çekilecek tutara eklenir. |
data-no_instalment | Hayır | true/false, default: false. True olduğunda Taksitli çekime izin vermez, tek çekim yapılır. |
data-ratio_code | 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. |
data-reference_no | Hayır | Ödeme işleminin ilişkili olduğu referans numarası. |
data-show_tds_error | Hayır | Bankanın 3D sayfasında hata alması durumunda bunu direkt müşterinize göstermek isterseniz "true", onaylama adımında göstermek isterseniz "false". |
data-invoice_no | Hayır | Düzenli ödeme fatura numarası. |
data-save_card | 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, save_cardoid ya da save_carduid değerlerinden en az birini göndermeniz zorunlu. |
data-use_saved_card | Hayır | Ödeme işlemi sırasında data-use_saved_card parametresinin “true” ayarlandığı durumda card_hash parametresinin doğruluğu kontrol edilir. |
data-save_cardoid | 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. |
data-save_carduid | 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. |
data-save_card_desc | Hayır | Kart saklamada kullanılacak kart açıklaması. |
data-tds_required | Hayır | True/false, Default: true False : Eğer işlem yapılacak POS 3D’siz işlemi destekliyor ise, kullanıcının 3D’siz de işlem yapmasına izin verir. True: Eğer işlem yapılacak POS 3D’siz işlemi destekliyor ise, kullanıcının 3D’siz de işlem yapmasını engeller. |
data-merge_option | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. |
data-pos_type | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. |
data-ratio_code_method | Hayır | Bu alanla ilgili daha detaylı bilgi için lütfen destek ekibimiz ile iletişime geçiniz. |
data-return_url | Hayır | Form action parametresi yerine başka bir url'de ödeme onaylama işlemi yapacaksanız bu alanda ilgili url bilgisini gönderebilirsiniz. |
data-installments | Hayır | Eğer müşterinize sadece belirli taksitler ile alış veriş yapmasına izin vermek istiyorsanız, virgül ile ayırarak izinli taksit bilgisini gönderebilirsiniz. 0, 3, 4, 6 gibi |
data-subscription_id | Hayır | Düzenli ödeme kodu, mevcut bir düzenli ödemenize manuel ödeme almak istediğinizde invoice_no ile beraber kullanılır. |
2.Adım: HTML input elementlerinizi işaretleyin.
Ödeme bilgilerinin alınacağı HTML formunuz, tercihleriniz doğrultusunda diyazn edilir. Formunuzdaki input elementleri ve buton data-paynet attribute'u ile işaretlenir.
Kullanıcı kart bilgilerini girip formu post ettiğinde; Paynet-custom.js, “token_id” ve “session_id” parametrelerini formunuza hidden olarak ekler ve formu action adresi ile belirtiğiniz sayfaya post eder.
Form post işlemi ile sizin formunuza eklediğiniz parametreler ile beraber session_id ve token_id bilgisi web server’ınıza gelir.
Script tag’inin içinde data-from parametresinin değeri ödeme bilgilerinin alınacağı HTML formun ID"si olmalı. Değer "#formid" şeklinde verilmeli.
Eğer data-return_url parametresi kullanıyorsanır, Paynet-custom.js formun action adresi yerine return_url ile belirtilen adrese post işlemini yapar.
Formunuzda data-paynet attribute'u ile işaretlemediğiniz inputlar değişiklik olmadan post edilir.
data-paynet HTML form değerleri
Parametre İsmi | Zorunlu | Açıklama |
number | Evet | Kredi kartı numarasının alınacağı html input'u işaretlemek için kullanılır. |
installmentKey | Hayır | Seçilen taksitin ID’si |
holderName | Evet | Kart sahibinin alınacağı html input'u işaretlemek için kullanılır. |
exp-month | Evet | Kredi kartı son kullanma tarihinin ay bilgisinin alınacağı html input'u işaretlemek için kullanılır. |
exp-year | Evet | Kredi kartı son kullanma tarihinin yıl bilgisinin alınacağı html input'u işaretlemek için kullanılır. |
cvv | Evet | Kredi kartı CVC bilgisinin alınacağı html input'u işaretlemek için kullanılır. |
desc | Hayır | Ödeme ile ilgili açıklama bilgisinin alınacağı html input'u işaretlemek için kullanılır. |
Hayır | Ödeme yapan kişinin e-posta bilgisinin alınacağı html input'u işaretlemek için kullanılır. | |
phone | Hayır | Ödeme yapan kişinin telefon bilgisinin alınacağı html input'u işaretlemek için kullanılır. |
do3D | Hayır | 3D'li ya da 3D'siz ödemeyi kullanıcıların tercihine bırakmak istediğinizde HTML checkboxı işaretlemek için kullanılır. |
save_card | Hayır | Kart saklamayı kullanıcının tercihine bırakmak istediğinizde HTML checkbox'ı işaretlemek için kullanılır. |
save-card-desc | Hayır | Kart saklamada kart açıklamasının alınacağı HTML input'u işaretlemek için kullanılır. |
3.Adım : Ödemeyi onaylama
Form action adresi ya da data-return_url ile belirtiğiniz adrese session_id ve token_id parametreleri post edildikten sonra ödeme işlemini "Ödeme Onaylama" servisi ile onaylamalısınız. Bakınız
Ödeme OnaylamaÖdeme onaylama servisini başarılı şekilde çalıştırmazsanız kredi kartından tahsilat işlemi yapılmaz.
Event parametre ve Servisler
Paynet-custom.js javascript kütüphanesindeki aşağıdaki eventleri ve servisleri daha esnek bir uygulama oluşturmak için kullanabilirsiniz.
Last updated